\"\" ..\n"; // Print List Of Target Directories if(!is_array($dir_list)) return; while(list($new_item,) = each($dir_list)) { $s_item=$new_item; if(strlen($s_item)>40) $s_item=substr($s_item,0,37)."..."; echo "\"\" ".$s_item."\n"; } } //------------------------------------------------------------------------------ function copy_move_items($dir) { // copy/move file/dir if(($GLOBALS["permissions"]&01)!=01) show_error($GLOBALS["error_msg"]["accessfunc"]); // Vars $first = $GLOBALS['__POST']["first"]; if($first=="y") $new_dir=$dir; else $new_dir = stripslashes($GLOBALS['__POST']["new_dir"]); if($new_dir==".") $new_dir=""; $cnt=count($GLOBALS['__POST']["selitems"]); // Get New Location & Names if(!isset($GLOBALS['__POST']["confirm"]) || $GLOBALS['__POST']["confirm"]!="true") { show_menu(); show_header(($GLOBALS["action"]!="move"? $GLOBALS["messages"]["actcopyitems"]: $GLOBALS["messages"]["actmoveitems"] )); // JavaScript for Form: // Select new target directory / execute action ?>
'; echo $GLOBALS["messages"]["movewarning"] ."
"; // "Copy / Move from .. to .." $s_dir=$dir; if(strlen($s_dir)>40) $s_dir="...".substr($s_dir,-37); $s_ndir=$new_dir; if(strlen($s_ndir)>40) $s_ndir="...".substr($s_ndir,-37); echo "
"; echo sprintf(($GLOBALS["action"]!="move"?$GLOBALS["messages"]["actcopyfrom"]: $GLOBALS["messages"]["actmovefrom"]),$s_dir, $s_ndir); echo "\n"; // Form for Target Directory & New Names echo "

\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; // List Directories to select Target dir_print(dir_list($new_dir),$new_dir); echo "

\n"; // Print Text Inputs to change Names for($i=0;$i<$cnt;++$i) { $selitem=stripslashes($GLOBALS['__POST']["selitems"][$i]); if(isset($GLOBALS['__POST']["newitems"][$i])) { $newitem=stripslashes($GLOBALS['__POST']["newitems"][$i]); if($first=="y") $newitem=$selitem; } else $newitem=$selitem; $s_item=$selitem; if(strlen($s_item)>50) $s_item=substr($s_item,0,47)."..."; echo "\n"; } // Submit & Cancel echo "
"; // old name echo " ".$s_item." "; // New Name echo "

\n\n\n
"; echo ""; echo "

\n"; return; } // DO COPY/MOVE // ALL OK? if(!@file_exists(get_abs_dir($new_dir))) show_error($new_dir.": ".$GLOBALS["error_msg"]["targetexist"]); if(!get_show_item($new_dir,"")) show_error($new_dir.": ".$GLOBALS["error_msg"]["accesstarget"]); if(!down_home(get_abs_dir($new_dir))) show_error($new_dir.": ".$GLOBALS["error_msg"]["targetabovehome"]); // copy / move files $err=false; for($i=0;$i<$cnt;++$i) { $tmp = stripslashes($GLOBALS['__POST']["selitems"][$i]); $new = basename(stripslashes($GLOBALS['__POST']["newitems"][$i])); $abs_item = get_abs_item($dir,$tmp); $abs_new_item = get_abs_item($new_dir,$new); $items[$i] = $tmp; // Check if($new=="") { $error[$i]= $GLOBALS["error_msg"]["miscnoname"]; $err=true; continue; } if(!@file_exists($abs_item)) { $error[$i]= $GLOBALS["error_msg"]["itemexist"]; $err=true; continue; } if(!get_show_item($dir, $tmp)) { $error[$i]= $GLOBALS["error_msg"]["accessitem"]; $err=true; continue; } if(@file_exists($abs_new_item)) { $error[$i]= $GLOBALS["error_msg"]["targetdoesexist"]; $err=true; continue; } // Copy / Move if($GLOBALS["action"]=="copy") { if(@is_link($abs_item) || @is_file($abs_item)) { // check file-exists to avoid error with 0-size files (PHP 4.3.0) $ok=@copy($abs_item,$abs_new_item); //||@file_exists($abs_new_item); } elseif(@is_dir($abs_item)) { $ok=copy_dir($abs_item,$abs_new_item); } } else { $ok= rename($abs_item,$abs_new_item); } if($ok===false) { $error[$i]=($GLOBALS["action"]=="copy"? $GLOBALS["error_msg"]["copyitem"]: $GLOBALS["error_msg"]["moveitem"] ); $err=true; continue; } $error[$i]=NULL; } if($err) { // there were errors $err_msg=""; for($i=0;$i<$cnt;++$i) { if($error[$i]==NULL) continue; $err_msg .= $items[$i]." : ".$error[$i]."
\n"; } show_error($err_msg); } header("Location: ".make_link("list",$dir,NULL)); } //------------------------------------------------------------------------------ ?>