/** * Output a list a images in a director for use in inline editing * @static */ public static function InlineList($dir_piece) { global $langmessage, $dataDir, $page; $page->ajaxReplace = array(); $dir_piece = \gp\tool::WinPath($dir_piece); $dir = $dataDir . '/data/_uploaded' . $dir_piece; $prev_piece = false; while ($dir_piece != '/' && !file_exists($dir)) { $prev_piece = $dir_piece; $dir = \gp\tool::DirName($dir); $dir_piece = \gp\tool::DirName($dir_piece); } //new directory? if ($prev_piece) { $prev_piece = \gp\tool\Editing::CleanArg($prev_piece); $dir_piece = $prev_piece; $dir = $dataDir . '/data/_uploaded' . $prev_piece; if (!\gp\tool\Files::CheckDir($dir)) { message($langmessage['OOPS']); $dir = \gp\tool::DirName($dir); $dir_piece = \gp\tool::DirName($prev_piece); } } //folder information $folders = $files = array(); $allFiles = \gp\tool\Files::ReadFolderAndFiles($dir); list($folders, $files) = $allFiles; //available images ob_start(); $image_count = 0; foreach ($files as $file) { $img = self::ShowFile_Gallery($dir_piece, $file); if (is_string($img)) { echo $img; $image_count++; } } $gp_gallery_avail_imgs = ob_get_clean(); $gp_option_area = self::InlineList_Options($dir_piece, $folders); $folder_options = self::InlineList_Folder($image_count, $dir_piece); //send content according to request $cmd = \gp\tool::GetCommand(); switch ($cmd) { case 'gallery_folder': $page->ajaxReplace[] = array('inner', '#gp_option_area', $gp_option_area); $page->ajaxReplace[] = array('inner', '#gp_gallery_avail_imgs', $gp_gallery_avail_imgs); break; default: $content = '<div id="gp_option_area">' . $gp_option_area . '</div>' . '<div id="gp_gallery_avail_imgs">' . $gp_gallery_avail_imgs . '</div>'; $page->ajaxReplace[] = array('inner', '#gp_image_area', $content); break; } $page->ajaxReplace[] = array('inner', '#gp_folder_options', $folder_options); $page->ajaxReplace[] = array('gp_gallery_images', '', ''); //tell the script the images have been loaded }