/** * @return string */ public function getRename() { $old_name = Input::get('file'); $new_name = Input::get('new_name'); $file_path = parent::getPath('directory'); $thumb_path = parent::getPath('thumb'); $old_file = $file_path . $old_name; if (!File::isDirectory($old_file)) { $extension = File::extension($old_file); $new_name = str_replace('.' . $extension, '', $new_name) . '.' . $extension; } $new_file = $file_path . $new_name; if (File::exists($new_file)) { return Lang::get('laravel-filemanager::lfm.error-rename'); } if (File::isDirectory($old_file)) { File::move($old_file, $new_file); return 'OK'; } File::move($old_file, $new_file); if ('Images' === $this->file_type) { File::move($thumb_path . $old_name, $thumb_path . $new_name); } return 'OK'; }
private function getFileInfos($files, $type = 'Images') { $file_info = []; foreach ($files as $key => $file) { $file_name = parent::getFileName($file)['short']; $file_created = filemtime($file); $file_size = number_format(File::size($file) / 1024, 2, ".", ""); if ($file_size > 1024) { $file_size = number_format($file_size / 1024, 2, ".", "") . " Mb"; } else { $file_size = $file_size . " Kb"; } if ($type === 'Images') { $file_type = File::mimeType($file); $icon = ''; } else { $extension = strtolower(File::extension($file_name)); $icon_array = Config::get('lfm.file_icon_array'); $type_array = Config::get('lfm.file_type_array'); if (array_key_exists($extension, $icon_array)) { $icon = $icon_array[$extension]; $file_type = $type_array[$extension]; } else { $icon = "fa-file"; $file_type = "File"; } } $file_info[$key] = ['name' => $file_name, 'size' => $file_size, 'created' => $file_created, 'type' => $file_type, 'icon' => $icon]; } return $file_info; }
/** * Add a new folder * * @return mixed */ public function getAddfolder() { $folder_name = Input::get('name'); $path = parent::getPath('directory') . $folder_name; if (!File::exists($path)) { File::makeDirectory($path, $mode = 0777, true, true); return 'OK'; } else { if (empty($folder_name)) { return Lang::get('laravel-filemanager::lfm.error-folder-name'); } else { return Lang::get('laravel-filemanager::lfm.error-folder-exist'); } } }
/** * Crop the image (called via ajax) */ public function getCropimage() { $image = Input::get('img'); $dataX = Input::get('dataX'); $dataY = Input::get('dataY'); $dataHeight = Input::get('dataHeight'); $dataWidth = Input::get('dataWidth'); $image = parent::getTruePath($image); // crop image $tmp_img = Image::make(base_path($image)); $tmp_img->crop($dataWidth, $dataHeight, $dataX, $dataY)->save(base_path($image)); // make new thumbnail $thumb_img = Image::make(base_path($image)); $thumb_img->fit(200, 200)->save(parent::getPath('thumb') . parent::getFileName($image)['short']); }
public function performResize() { $img = Input::get('img'); $dataX = Input::get('dataX'); $dataY = Input::get('dataY'); $height = Input::get('dataHeight'); $width = Input::get('dataWidth'); $img = parent::getTruePath($img); try { Image::make(base_path($img))->resize($width, $height)->save(); return "OK"; } catch (Exception $e) { return "width : " . $width . " height: " . $height; return $e; } }
/** * Delete image and associated thumbnail * * @return mixed */ public function getDelete() { $name_to_delete = Input::get('items'); $file_path = parent::getPath('directory'); $file_to_delete = $file_path . $name_to_delete; $thumb_to_delete = parent::getPath('thumb') . $name_to_delete; if (!File::exists($file_to_delete)) { return $file_to_delete . ' not found!'; } if (File::isDirectory($file_to_delete)) { if (sizeof(File::files($file_to_delete)) != 0) { return Lang::get('laravel-filemanager::lfm.error-delete'); } File::deleteDirectory($file_to_delete); return 'OK'; } File::delete($file_to_delete); Event::fire(new ImageWasDeleted($file_to_delete)); if ('Images' === $this->file_type) { File::delete($thumb_to_delete); } return 'OK'; }
/** * Use the file if it has been uploaded via CKEditor or TinyMCE * * @param $new_filename * @return string */ private function useFile($new_filename) { $file = parent::getUrl() . $new_filename; return "<script type='text/javascript'>\n\n function getUrlParam(paramName) {\n var reParam = new RegExp('(?:[\\?&]|&)' + paramName + '=([^&]+)', 'i');\n var match = window.location.search.match(reParam);\n return ( match && match.length > 1 ) ? match[1] : null;\n }\n\n var funcNum = getUrlParam('CKEditorFuncNum');\n\n var par = window.parent,\n op = window.opener,\n o = (par && par.CKEDITOR) ? par : ((op && op.CKEDITOR) ? op : false);\n\n if (op) window.close();\n if (o !== false) o.CKEDITOR.tools.callFunction(funcNum, '{$file}');\n </script>"; }
/** * Download a file * * @return mixed */ public function getDownload() { return Response::download(parent::getPath('directory') . Input::get('file')); }