From: garvinhicking Date: Thu, 17 Aug 2006 13:20:01 +0000 (+0000) Subject: Refresh media frame tree when directory was deleted X-Git-Tag: 1.1~122 X-Git-Url: http://git.mjollnir.org/gw?a=commitdiff_plain;h=d8b163b3237b66da3c9cf5e14f9d9852c8edc98a;p=s9y.git Refresh media frame tree when directory was deleted --- diff --git a/serendipity_admin_image_selector.php b/serendipity_admin_image_selector.php index 9708d74..ff11530 100644 --- a/serendipity_admin_image_selector.php +++ b/serendipity_admin_image_selector.php @@ -10,7 +10,7 @@ if (IN_serendipity !== true) { header('Content-Type: text/html; charset=' . LANG_CHARSET); -if ($_SESSION['serendipityAuthedUser'] !== true) { +if ($_SESSION['serendipityAuthedUser'] !== true && $serendipity['GET']['step'] != 'showItem') { die(HAVE_TO_BE_LOGGED_ON); } @@ -22,265 +22,286 @@ if (!isset($serendipity['GET']['step'])) { $serendipity['GET']['step'] = (isset($serendipity['POST']['step']) ? $serendipity['POST']['step'] : ''); } -function ifRemember($name, $value, $isDefault = false, $att = 'checked') { - global $serendipity; - - if (!is_array($serendipity['COOKIE']) && !$isDefault) { - return false; - } - - if ((!is_array($serendipity['COOKIE']) && $isDefault) || - (!isset($serendipity['COOKIE']['serendipity_' . $name]) && $isDefault) || - (isset($serendipity['COOKIE']['serendipity_' . $name]) && $serendipity['COOKIE']['serendipity_' . $name] == $value)) { - - return " $att=\"$att\" "; - } +if (empty($serendipity['GET']['step']) && isset($serendipity['GET']['adminAction'])) { + $serendipity['GET']['step'] = $serendipity['GET']['adminAction']; } -?> - - - <?php echo SELECT_FILE; ?> - - - - - - +serendipity_smarty_init(); +if (empty($serendipity['GET']['step']) && $serendipity['GET']['page'] < 1) { + $media = array( + 'GET_STRING' => serendipity_build_query($_GET), + 'frameset' => true + ); + $serendipity['smarty']->assign_by_ref('media', $media); + $serendipity['smarty']->display(serendipity_getTemplateFile('admin/media_choose.tpl', 'serendipityPath')); + return; +} + +$import_vars = $serendipity['GET']; +unset($import_vars['step']); +unset($import_vars['only_path']); + +$showFile = 'admin/media_choose.tpl'; +$body_id = 'serendipityAdminBodyImageSelector'; +if ($serendipity['GET']['step'] === 'tree') { + $body_id = 'serendipityAdminBodyImageSelectorTree'; +} + +$media = array( + 'body_id' => $body_id, + 'only_path' => $serendipity['GET']['only_path'], + 'css' => serendipity_rewriteURL('serendipity_admin.css'), + 'css_tree' => serendipity_getTemplateFile('treeview/tree.css'), + 'css_front' => serendipity_rewriteURL('serendipity.css'), + 'token_url' => serendipity_setFormToken('url'), + 'imgID' => (int)$serendipity['GET']['image'], + 'from' => $serendipity['GET']['from'], + 'GET_STRING' => serendipity_build_query($import_vars, 'serendipity', '&'), + 'paths' => serendipity_getMediaPaths() +); -
- 1, + 'textarea' => (!empty($serendipity['GET']['textarea']) ? $serendipity['GET']['textarea'] : ''), + 'htmltarget' => (!empty($serendipity['GET']['htmltarget']) ? $serendipity['GET']['htmltarget'] : ''), + 'filename_only' => (!empty($serendipity['GET']['filename_only']) ? $serendipity['GET']['filename_only'] : '') + ); + switch ($serendipity['GET']['adminAction']) { case 'addSelect': - $image_selector_addvars = array( - 'step' => 1, - 'textarea' => (!empty($serendipity['GET']['textarea']) ? $serendipity['GET']['textarea'] : ''), - 'htmltarget' => (!empty($serendipity['GET']['htmltarget']) ? $serendipity['GET']['htmltarget'] : ''), - 'filename_only' => (!empty($serendipity['GET']['filename_only']) ? $serendipity['GET']['filename_only'] : '') - ); + $media['case'] = 'external'; + ob_start(); include S9Y_INCLUDE_PATH . 'include/admin/images.inc.php'; + $media['external'] = ob_get_contents(); + ob_end_clean(); break 2; case 'add': + $media['case'] = 'external'; + ob_start(); include S9Y_INCLUDE_PATH . 'include/admin/images.inc.php'; - if (isset($created_thumbnail) && is_array($created_thumbnail)) { - $serendipity['GET']['image'] = (int)$image_id; // $image_id is passed from images.inc.php - - if (!empty($serendipity['POST']['htmltarget'])) { - $serendipity['GET']['htmltarget'] = $serendipity['POST']['htmltarget']; - } - - if (!empty($serendipity['POST']['filename_only'])) { - $serendipity['GET']['filename_only'] = $serendipity['POST']['filename_only']; - } - - if (!empty($serendipity['POST']['textarea'])) { - $serendipity['GET']['textarea'] = $serendipity['POST']['textarea']; - } + $media['external'] = ob_get_contents(); + ob_end_clean(); + if (isset($created_thumbnail) && isset($image_id)) { + $serendipity['GET']['image'] = $media['imgID'] = (int)$image_id; // $image_id is passed from images.inc.php break; } else { break 2; } } } + $media['case'] = 'choose'; $file = serendipity_fetchImageFromDatabase($serendipity['GET']['image']); + $media['file'] = &$file; if (!is_array($file)) { - echo PERM_DENIED; + $media['perm_denied'] = true; break; } - $file['imgsrc'] = $serendipity['serendipityHTTPPath'] . $serendipity['uploadHTTPPath'] . $file['path'] . $file['name'] . (!empty($file['thumbnail_name']) ? '.' . $file['thumbnail_name'] : '') . '.' . $file['extension']; - if ($file['hotlink']) { - $imgName = $file['path']; - } else { - $imgName = $serendipity['serendipityHTTPPath'] . $serendipity['uploadHTTPPath'] . $file['path'] . $file['name'] .'.'. $file['extension']; + + serendipity_prepareMedia($file); + + $media['file']['props'] =& serendipity_fetchMediaProperties((int)$serendipity['GET']['image']); + serendipity_plugin_api::hook_event('media_getproperties_cached', $media['file']['props']['base_metadata'], $media['file']['realfile']); + + if ($file['is_image']) { + $file['finishJSFunction'] = $file['origfinishJSFunction'] = 'serendipity_imageSelector_done(\'' . htmlspecialchars($serendipity['GET']['textarea']) . '\')'; + + if (!empty($serendipity['GET']['filename_only']) && $serendipity['GET']['filename_only'] !== 'true') { + $file['fast_select'] = true; + } } + break; - $thumbbasename = $file['path'] . $file['name'] . (!empty($file['thumbnail_name']) ? '.' . $file['thumbnail_name'] : '') . '.' . $file['extension']; + case 'directoryDoCreate': + case 'directoryDoDelete': + $is_created = true; + if ($serendipity['GET']['step'] == 'directoryDoDelete') { + $is_deleted = true; + } + case 'directoryCreate': + $serendipity['GET']['adminAction'] = $serendipity['GET']['step']; + $media['case'] = 'external'; + ob_start(); + include S9Y_INCLUDE_PATH . 'include/admin/images.inc.php'; + if ($is_created || $is_deleted) { + $media['is_created'] = $is_created; + $media['is_deleted'] = $is_deleted; + $media['new_dir'] = $new_dir; + } + $media['external'] = ob_get_contents(); + ob_end_clean(); + break; - if ($file['hotlink']) { - $thumbName = $file['path']; - } else { - $thumbName = $serendipity['serendipityHTTPPath'] . $serendipity['uploadHTTPPath'] . $thumbbasename; + case 'tree': + $media['case'] = 'tree'; + break; + + case 'showItem': + serendipity_plugin_api::hook_event('frontend_media_showitem_init', $media); + + if ($media['perm_denied']) { + break; } - $thumbsize = @getimagesize($serendipity['serendipityPath'] . $serendipity['uploadPath'] . $thumbbasename); - $is_image = serendipity_isImage($file, true); -?> - - - -
- - -

-

-

-
- - - - - - - - - - - - - - - - - : -
- />
- />
- -
- - - : -
- value="" />
- value="left" />
- value="right" />
- -
- - : -
- />
- /> - -
- -
- - -
- - : -
- - -
- - - - - - - -
-
-

- - - $width, + 'height' => $height + ), + $showfile, + true + ); + } + } + + $hit = serendipity_db_query("SELECT id + FROM {$serendipity['dbPrefix']}references + WHERE link = '" . serendipity_db_escape_string($_SERVER['HTTP_REFERER']) . "' + AND entry_id = " . (int)$serendipity['GET']['image'] . " + AND type = 'media'", true, 'assoc'); + if (!is_array($hit) || !isset($hit['id'])) { + serendipity_db_query("INSERT INTO {$serendipity['dbPrefix']}references + (entry_id, link, name, type) + VALUES (" . (int)$serendipity['GET']['image'] . ", '" . serendipity_db_escape_string($_SERVER['HTTP_REFERER']) . "', 1, 'media')"); } else { -?> - - -

-

-
- -
- - +$media = array_merge($serendipity['GET'], $media); +$serendipity['smarty']->assign_by_ref('media', $media); +$serendipity['smarty']->display(serendipity_getTemplateFile($showFile, 'serendipityPath')); - + + {$CONST.SERENDIPITY_ADMIN_SUITE}: {$CONST.SELECT_FILE} + + + + + + {if $media.is_imgedit} + + + + {/if} + + + + + + + +{if $media.frameset} + + + + + +{else} + + +
+{if $media.case == 'external'} + + + {if $media.is_created OR $media.is_deleted} + + {/if} + {$media.external} + + {if $media.is_imgedit} + {$IMGEDIT} + {/if} + + + +{elseif $media.case == 'default'} + + +

{$CONST.SELECT_FILE}

+

{$CONST.CLICK_FILE_TO_INSERT}

+
+ {$media.external} + {$MEDIA_LIST} + + +{elseif $media.case == 'choose'} + + {if $perm_denied} + {$CONST.PERM_DENIED} + {else} + + + {$media.external} + + +
+ {if $media.file.is_image} + {serendipity_hookPlugin hook="frontend_image_selector" eventData=$media.file hookAll=true} + +

{$CONST.YOU_CHOSE|@sprintf:$media.file.realname}

+

+

+
+ {serendipity_hookPlugin hookAll=true hook='frontend_image_selector_hiddenfields' eventData=$media.file} + + + + + + + + + + + {if $media.htmltarget} + + {/if} + {if $media.filename_only} + + {/if} + + {if $media.file.fast_select} + + {else} + {$CONST.IMAGE_SIZE}: +
+
+
+ {serendipity_hookPlugin hookAll=true hook='frontend_image_selector_imagesize' eventData=$media.file} +
+ + {if NOT $media.filename_only} + {$CONST.IMAGE_ALIGNMENT}: +
+
+
+
+ {serendipity_hookPlugin hookAll=true hook='frontend_image_selector_imagealign' eventData=$media.file} +
+ + {$CONST.IMAGE_AS_A_LINK}: +
+
+ + {if $media.file.hotlink} +
+ {else} + {serendipity_hookPlugin hookAll=true hook='frontend_image_selector_link_url' eventData=$media.file.links} +
+ {/if} + + + +
+ + {serendipity_hookPlugin hookAll=true hook='frontend_image_selector_imagelink2' eventData=$media.file} +
+ + {$CONST.COMMENT}: +
+ + {serendipity_hookPlugin hookAll=true hook='frontend_image_selector_imagecomment' eventData=$media.file} +
+ {/if} + + {serendipity_hookPlugin hookAll=true hook='frontend_image_selector_more' eventData=$media.file} + + + + {serendipity_hookPlugin hookAll=true hook='frontend_image_selector_submit' eventData=$media.file} + {/if} +
+
+

+ {else} + {if $media.filename_only} + + {else} + + {/if} + {/if} + {/if} +{elseif $media.case == 'tree'} +
+
+ +
+
+ + + + +{/if} +
+ + +{/if} \ No newline at end of file