function scanForNewImages() { $return = array(); $new_images = $this->getImages(GALLERY_UPLOAD_DIR); foreach ($new_images as $image) { $image_newname = strtolower($image); $image_newname = translitCP1251toUTF8($image_newname); $temp_i = 0; $ext = array_reverse(explode('.', $image)); $ext = $ext[0]; while (in_array($image_newname, $this->indexes['filename']) || is_file(GALLERY_IMAGES_DIR . $image_newname)) { $temp_i++; $image_newname = substr($image, 0, -strlen($ext) - 1) . '_' . $temp_i . '.' . $ext; } if (substr($ext, 0, 2) == 'jp') { $type = 'jpeg'; } else { $type = $ext; } list($width, $height, $x, $x) = getimagesize(GALLERY_UPLOAD_DIR . $image); $size = $width . 'x' . $height; rcms_rename_file(GALLERY_UPLOAD_DIR . $image, GALLERY_IMAGES_DIR . $image_newname); $this->registerInIndex($image_newname, $image_newname, $size, $type); $return[$image] = $image_newname; } return $return; }
/** * Rename or delete problems symbols from filename * * @var $filename Name of file * @return string */ function make_safe_filename($filename) { $filename = preg_replace("/[^\\p{L}0-9\\+\\-\\_:\\.@ ]/u", '', $filename); return translitCP1251toUTF8($filename); }