function changeFromFtp() { global $message; global $specialchars; $success = false; $dirgallery = getDirAsArray(GALLERIES_DIR_REL, "dir"); foreach ($dirgallery as $currentgalerien) { $change = false; if (true !== ($error = setChmod(GALLERIES_DIR_REL . $currentgalerien))) { $message .= returnMessage(false, $error); return; } $test_galerie = $specialchars->replaceSpecialChars($specialchars->rebuildSpecialChars($currentgalerien, false, false), false); if ($test_galerie != $currentgalerien) { $nr = 0; $new_name = $test_galerie; while (in_array($new_name, $dirgallery)) { $new_name = "%23_" . $nr . "_" . $test_galerie; $nr++; } if (true !== ($error = moveFileDir(GALLERIES_DIR_REL . $currentgalerien, GALLERIES_DIR_REL . $new_name))) { $message .= returnMessage(false, $error); return; } $change = true; $currentgalerien = $new_name; } if (!is_dir(GALLERIES_DIR_REL . $currentgalerien . '/' . PREVIEW_DIR_NAME)) { if (true !== ($error = mkdirMulti(GALLERIES_DIR_REL . $currentgalerien . '/' . PREVIEW_DIR_NAME))) { $message .= returnMessage(false, $error); return; } $change = true; } if (!file_exists(GALLERIES_DIR_REL . $currentgalerien . "/texte.conf.php")) { if (false === newConf(GALLERIES_DIR_REL . $currentgalerien . "/texte.conf.php")) { $message .= returnMessage(false, getLanguageValue("gallery_error_subtitle_conf")); return; } $change = true; } $dirimg = getDirAsArray(GALLERIES_DIR_REL . $currentgalerien, "img"); foreach ($dirimg as $currentimg) { if (true !== ($error = setChmod(GALLERIES_DIR_REL . $currentgalerien . "/" . $currentimg))) { $message .= returnMessage(false, $error); return; } $test_img = cleanUploadFile($currentimg); if ($test_img != $currentimg) { $nr = 0; $new_name = $test_img; while (in_array($new_name, $dirimg)) { $new_name = "_" . $nr . "_" . $test_img; $nr++; } if (true !== ($error = moveFileDir(GALLERIES_DIR_REL . $currentgalerien . "/" . $currentimg, GALLERIES_DIR_REL . $currentgalerien . "/" . $new_name))) { $message .= returnMessage(false, $error); return; } $change = true; if (is_file(GALLERIES_DIR_REL . $currentgalerien . '/' . PREVIEW_DIR_NAME . "/" . $currentimg)) { if (true !== ($error = moveFileDir(GALLERIES_DIR_REL . $currentgalerien . '/' . PREVIEW_DIR_NAME . "/" . $currentimg, GALLERIES_DIR_REL . $currentgalerien . '/' . PREVIEW_DIR_NAME . "/" . $new_name))) { $message .= returnMessage(false, $error); return; } $change = true; } } } if ($change) { $success .= "<b>" . $specialchars->rebuildSpecialChars($currentgalerien, false, true) . "</b><br />"; } } if ($success) { $message .= returnMessage(true, getLanguageValue("gallery_messages_from_ftp") . "<br /><br />" . $success); } else { $message .= returnMessage(true, getLanguageValue("gallery_messages_from_ftp_no") . ""); } }
protected function trim_file_name($name, $type) { // Remove path information and dots around the filename, to prevent uploading // into different directories or replacing hidden system files. // Also remove control characters and spaces (\x00..\x20) around the filename: $file_name = basename($name); // Add missing file extension for known image types: if (strpos($file_name, '.') === false && preg_match('/^image\\/(gif|jpe?g|png)/', $type, $matches)) { $file_name .= '.' . $matches[1]; } $file_name = cleanUploadFile($file_name); if ($this->options['discard_aborted_uploads']) { while (is_file($this->options['upload_dir'] . $file_name)) { $file_name = $this->upcount_name($file_name); } } return $file_name; }
function moveFileDir($org, $new, $datei_file = false) { // Existenz prüfen if (!file_exists($org)) { return returnMessage(false, getLanguageValue("error_no_file_dir")); } if (file_exists($new)) { return returnMessage(false, getLanguageValue("error_exists_file_dir")); } if ($datei_file and cleanUploadFile(basename($new)) != basename($new)) { return returnMessage(false, getLanguageValue("error_datei_file_name")); } if (true !== @rename($org, $new)) { return returnMessage(false, getLanguageValue("error_move_file_dir")); } updateFileNameInAll($org, $new); return true; }
function isUpdateFileName($file, $type = false, $getnewname = false) { $tmpfile = $file; if ($type == "catpage") { $oldext = array(".txt", ".hid", ".tmp", ".lnk"); if (strlen($file) > 3 and ctype_digit(substr($file, 0, 2)) and $file[2] == "_") { if (!$getnewname) { return true; } $file = substr($file, 3); } if (strlen($file) > 4) { $test = substr($file, -4); if (in_array($test, $oldext)) { if (!$getnewname) { return true; } $file = $file . ".php"; } } } elseif ($type == "file") { if ($tmpfile != ($file = cleanUploadFile(changeMoziloOldSpecialChars($file, false)))) { if (!$getnewname) { return true; } if (strlen($file) > 0) { return $file; } } return false; } if ($tmpfile != ($file = changeMoziloOldSpecialChars($file))) { if (!$getnewname) { return true; } if (strlen($file) > 0) { return $file; } } return false; }