diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 1fd68ae..8b82e43 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -2,41 +2,49 @@ - + - - - + + + + + + + + + + + + + + + + + + + + - - - - - - - - + - - - - - - + + + + @@ -74,17 +82,43 @@ + + + + + - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + - @@ -275,17 +309,17 @@ - + + + - - @@ -525,6 +559,11 @@ + + + + + diff --git a/.phpstorm.meta.php b/.phpstorm.meta.php index 4a45a1a..bf118e1 100644 --- a/.phpstorm.meta.php +++ b/.phpstorm.meta.php @@ -5,7 +5,7 @@ namespace PHPSTORM_META { /** * PhpStorm Meta file, to provide autocomplete information for PhpStorm - * Generated on 2019-11-05 14:44:36. + * Generated on 2019-11-12 11:07:51. * * @author Barry vd. Heuvel * @see https://github.com/barryvdh/laravel-ide-helper diff --git a/_ide_helper.php b/_ide_helper.php index 22c1aa1..f8b200e 100644 --- a/_ide_helper.php +++ b/_ide_helper.php @@ -3,7 +3,7 @@ /** * A helper file for Laravel 5, to provide autocomplete information to your IDE - * Generated for Laravel 5.8.32 on 2019-11-05 14:44:35. + * Generated for Laravel 5.8.32 on 2019-11-12 11:07:51. * * This file should not be included in your code, only analyzed by your IDE! * diff --git a/_ide_helper_models.php b/_ide_helper_models.php index 5467345..b8c400d 100644 --- a/_ide_helper_models.php +++ b/_ide_helper_models.php @@ -104,6 +104,8 @@ namespace App\Models\Sym{ * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Sym\TravelCountry whereContactText2($value) * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Sym\TravelCountry whereContactText3($value) * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Sym\TravelCountry whereContactText4($value) + * @property array|null $contact_lands + * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Sym\TravelCountry whereContactLands($value) */ class TravelCountry extends \Eloquent {} } @@ -135,6 +137,8 @@ namespace App\Models\Sym{ * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Sym\CmsContent whereSlug($value) * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Sym\CmsContent whereText($value) * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Sym\CmsContent whereUpdatedAt($value) + * @mixin \Eloquent + * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Sym\CmsContent findSimilarSlugs($attribute, $config, $slug) */ class CmsContent extends \Eloquent {} } @@ -884,6 +888,8 @@ namespace App\Models{ * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\TravelCountry whereSlug($value) * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\TravelCountry whereTextAfter($value) * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\TravelCountry whereTextBefore($value) + * @property array|null $contact_lands + * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\TravelCountry whereContactLands($value) */ class TravelCountry extends \Eloquent {} } @@ -1878,3 +1884,164 @@ namespace App\Models{ class Draft extends \Eloquent {} } +namespace IqContent\LaravelFilemanager\Models{ +/** + * IqContent\LaravelFilemanager\Models\IQContentFile + * + * @property int $id + * @property int|null $folder_id + * @property string $name + * @property string|null $identifier + * @property string $slug + * @property string|null $ext + * @property string|null $mine + * @property int $size + * @property string|null $dimensions + * @property string|null $content + * @property int $color + * @property int $pos + * @property int $active + * @property \Illuminate\Support\Carbon|null $created_at + * @property \Illuminate\Support\Carbon|null $updated_at + * @property-read \Illuminate\Database\Eloquent\Collection|\IqContent\LaravelFilemanager\Models\IQContentFileTag[] $file_tags + * @property-read \IqContent\LaravelFilemanager\Models\IQContentFolder|null $folder + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile findSimilarSlugs($attribute, $config, $slug) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile query() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereActive($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereColor($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereContent($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereDimensions($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereExt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereFolderId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereIdentifier($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereMine($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereName($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile wherePos($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereSize($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereSlug($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereUpdatedAt($value) + */ + class IQContentFile extends \Eloquent {} +} + +namespace IqContent\LaravelFilemanager\Models{ +/** + * IqContent\LaravelFilemanager\Models\IQContentTag + * + * @property int $id + * @property int $category_id + * @property string $name + * @property string $slug + * @property int $pos + * @property int $active + * @property \Illuminate\Support\Carbon|null $created_at + * @property \Illuminate\Support\Carbon|null $updated_at + * @property-read \IqContent\LaravelFilemanager\Models\IQContentCategory $category + * @property-read \Illuminate\Database\Eloquent\Collection|\IqContent\LaravelFilemanager\Models\IQContentFileTag[] $file_tags + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentTag findSimilarSlugs($attribute, $config, $slug) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentTag newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentTag newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentTag query() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentTag whereActive($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentTag whereCategoryId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentTag whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentTag whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentTag whereName($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentTag wherePos($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentTag whereSlug($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentTag whereUpdatedAt($value) + */ + class IQContentTag extends \Eloquent {} +} + +namespace IqContent\LaravelFilemanager\Models{ +/** + * IqContent\LaravelFilemanager\Models\IQContentCategory + * + * @property int $id + * @property string $name + * @property string $slug + * @property int $pos + * @property int $active + * @property \Illuminate\Support\Carbon|null $created_at + * @property \Illuminate\Support\Carbon|null $updated_at + * @property-read \Illuminate\Database\Eloquent\Collection|\IqContent\LaravelFilemanager\Models\IQContentTag[] $tags + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentCategory findSimilarSlugs($attribute, $config, $slug) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentCategory newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentCategory newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentCategory query() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentCategory whereActive($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentCategory whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentCategory whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentCategory whereName($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentCategory wherePos($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentCategory whereSlug($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentCategory whereUpdatedAt($value) + */ + class IQContentCategory extends \Eloquent {} +} + +namespace IqContent\LaravelFilemanager\Models{ +/** + * IqContent\LaravelFilemanager\Models\IQContentFolder + * + * @property int $id + * @property int|null $folder_id + * @property string $name + * @property string $slug + * @property string|null $identifier + * @property string|null $path + * @property int $color + * @property int $pos + * @property int $active + * @property \Illuminate\Support\Carbon|null $created_at + * @property \Illuminate\Support\Carbon|null $updated_at + * @property-read \Illuminate\Database\Eloquent\Collection|\IqContent\LaravelFilemanager\Models\IQContentFile[] $files + * @property-read \IqContent\LaravelFilemanager\Models\IQContentFolder|null $folder + * @property-read \Illuminate\Database\Eloquent\Collection|\IqContent\LaravelFilemanager\Models\IQContentFolder[] $folders + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder findSimilarSlugs($attribute, $config, $slug) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder query() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder whereActive($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder whereColor($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder whereFolderId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder whereIdentifier($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder whereName($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder wherePath($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder wherePos($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder whereSlug($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder whereUpdatedAt($value) + */ + class IQContentFolder extends \Eloquent {} +} + +namespace IqContent\LaravelFilemanager\Models{ +/** + * IqContent\LaravelFilemanager\Models\IQContentFileTag + * + * @property int $id + * @property int $file_id + * @property int $tag_id + * @property \Illuminate\Support\Carbon|null $created_at + * @property \Illuminate\Support\Carbon|null $updated_at + * @property-read \IqContent\LaravelFilemanager\Models\IQContentFile $file + * @property-read \IqContent\LaravelFilemanager\Models\IQContentTag $tag + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFileTag newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFileTag newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFileTag query() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFileTag whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFileTag whereFileId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFileTag whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFileTag whereTagId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFileTag whereUpdatedAt($value) + */ + class IQContentFileTag extends \Eloquent {} +} + diff --git a/app/Models/Sym/CmsContent.php b/app/Models/Sym/CmsContent.php index a483afa..06cc881 100644 --- a/app/Models/Sym/CmsContent.php +++ b/app/Models/Sym/CmsContent.php @@ -33,6 +33,7 @@ use Illuminate\Database\Eloquent\Model; * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Sym\CmsContent whereText($value) * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Sym\CmsContent whereUpdatedAt($value) * @mixin \Eloquent + * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Sym\CmsContent findSimilarSlugs($attribute, $config, $slug) */ class CmsContent extends Model { diff --git a/app/Models/Sym/TravelCountry.php b/app/Models/Sym/TravelCountry.php index e614ec4..2c04dc3 100644 --- a/app/Models/Sym/TravelCountry.php +++ b/app/Models/Sym/TravelCountry.php @@ -32,6 +32,8 @@ use Illuminate\Database\Eloquent\Model; * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Sym\TravelCountry whereContactText2($value) * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Sym\TravelCountry whereContactText3($value) * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Sym\TravelCountry whereContactText4($value) + * @property array|null $contact_lands + * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\Sym\TravelCountry whereContactLands($value) */ class TravelCountry extends Model { diff --git a/app/Models/TravelCountry.php b/app/Models/TravelCountry.php index 8514f0e..8d036e0 100644 --- a/app/Models/TravelCountry.php +++ b/app/Models/TravelCountry.php @@ -55,6 +55,8 @@ use Illuminate\Support\Str; * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\TravelCountry whereSlug($value) * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\TravelCountry whereTextAfter($value) * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\TravelCountry whereTextBefore($value) + * @property array|null $contact_lands + * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\TravelCountry whereContactLands($value) */ class TravelCountry extends Model { diff --git a/config/ide-helper.php b/config/ide-helper.php index 38013a2..f0e595d 100644 --- a/config/ide-helper.php +++ b/config/ide-helper.php @@ -66,6 +66,7 @@ return array( 'model_locations' => array( 'app', + 'packages' ), diff --git a/config/lfm.php b/config/lfm.php index b0902d3..51a4710 100644 --- a/config/lfm.php +++ b/config/lfm.php @@ -136,6 +136,8 @@ return [ 'thumb_img_height' => 200, + 'default_color' => '#ffc926', + /* |-------------------------------------------------------------------------- | jQuery UI options diff --git a/packages/iqcontent/laravel-filemanager/database/migrations/2019_08_05_171716_create_i_q_content_folders_table.php b/packages/iqcontent/laravel-filemanager/database/migrations/2019_08_05_171716_create_i_q_content_folders_table.php index b6af42e..78b67c0 100755 --- a/packages/iqcontent/laravel-filemanager/database/migrations/2019_08_05_171716_create_i_q_content_folders_table.php +++ b/packages/iqcontent/laravel-filemanager/database/migrations/2019_08_05_171716_create_i_q_content_folders_table.php @@ -22,10 +22,9 @@ class CreateIQContentFoldersTable extends Migration $table->string('name')->index(); $table->string('slug')->unique()->index(); $table->string('identifier')->nullable(); - $table->string('path')->nullable(); + $table->string('color', 7)->nullable(); - $table->unsignedTinyInteger('color')->default(0); $table->unsignedTinyInteger('pos')->default(0); $table->boolean('active')->default(true); diff --git a/packages/iqcontent/laravel-filemanager/database/migrations/2019_08_05_171717_create_i_q_content_files_table.php b/packages/iqcontent/laravel-filemanager/database/migrations/2019_08_05_171717_create_i_q_content_files_table.php index 690b20e..d8654b0 100755 --- a/packages/iqcontent/laravel-filemanager/database/migrations/2019_08_05_171717_create_i_q_content_files_table.php +++ b/packages/iqcontent/laravel-filemanager/database/migrations/2019_08_05_171717_create_i_q_content_files_table.php @@ -29,7 +29,7 @@ class CreateIQContentFilesTable extends Migration $table->text('content')->nullable(); - $table->unsignedTinyInteger('color')->default(0); + $table->string('color', 7)->nullable(); $table->unsignedTinyInteger('pos')->default(0); $table->boolean('active')->default(true); diff --git a/packages/iqcontent/laravel-filemanager/src/Controllers/ColorController.php b/packages/iqcontent/laravel-filemanager/src/Controllers/ColorController.php new file mode 100644 index 0000000..0df8da4 --- /dev/null +++ b/packages/iqcontent/laravel-filemanager/src/Controllers/ColorController.php @@ -0,0 +1,29 @@ +helper->input('file'); + $new_color = $this->helper->input('new_color'); + + + $file = $this->lfm->pretty($file_name); + $is_directory = $file->isDirectory(); + + + $model = $file->model(); + if($model && $model->id){ + $model->color = $new_color; + $model->save(); + } + return parent::$success_response; + } +} diff --git a/packages/iqcontent/laravel-filemanager/src/Controllers/DeleteController.php b/packages/iqcontent/laravel-filemanager/src/Controllers/DeleteController.php index 328b73d..4b9ac20 100644 --- a/packages/iqcontent/laravel-filemanager/src/Controllers/DeleteController.php +++ b/packages/iqcontent/laravel-filemanager/src/Controllers/DeleteController.php @@ -43,7 +43,11 @@ class DeleteController extends LfmController $this->lfm->setName($name_to_delete)->thumb()->delete(); } } - $file_to_delete->deleteModel(); + $model = $file_to_delete->model(); + if($model && $model->id){ + $model->delete(); + } + $this->lfm->setName($name_to_delete)->delete(); event(new ImageWasDeleted($file_path)); diff --git a/packages/iqcontent/laravel-filemanager/src/Controllers/FolderController.php b/packages/iqcontent/laravel-filemanager/src/Controllers/FolderController.php index d779e86..349120f 100644 --- a/packages/iqcontent/laravel-filemanager/src/Controllers/FolderController.php +++ b/packages/iqcontent/laravel-filemanager/src/Controllers/FolderController.php @@ -38,7 +38,6 @@ class FolderController extends LfmController public function getAddfolder() { $folder_name = $this->helper->input('name'); - if(config('lfm.alphanumeric_directory')){ $folder_name = $this->helper->sanitize($folder_name); } diff --git a/packages/iqcontent/laravel-filemanager/src/Controllers/ItemsController.php b/packages/iqcontent/laravel-filemanager/src/Controllers/ItemsController.php index c7566bf..4aeb8cb 100644 --- a/packages/iqcontent/laravel-filemanager/src/Controllers/ItemsController.php +++ b/packages/iqcontent/laravel-filemanager/src/Controllers/ItemsController.php @@ -27,6 +27,7 @@ class ItemsController extends LfmController public function move() { + $items = request('items'); $folder_types = array_filter(['user', 'share'], function ($type) { return $this->helper->allowFolderType($type); @@ -35,11 +36,10 @@ class ItemsController extends LfmController ->with([ 'root_folders' => array_map(function ($type) use ($folder_types) { $path = $this->lfm->dir($this->helper->getRootFolder($type)); - return (object) [ 'name' => trans('laravel-filemanager::lfm.title-' . $type), 'url' => $path->path('working_dir'), - 'children' => $path->folders(), + 'children' => $path->recrusiveFolders($this->helper->getRootFolder($type)), 'has_next' => ! ($type == end($folder_types)), ]; }, $folder_types), @@ -49,29 +49,60 @@ class ItemsController extends LfmController public function domove() { + //target path $target = $this->helper->input('goToFolder'); + $items = $this->helper->input('items'); + // return $this->response('error', parent::getError('folder-name')); + foreach ($items as $item) { $old_file = $this->lfm->pretty($item); $is_directory = $old_file->isDirectory(); - if ($old_file->hasThumb()) { - $new_file = $this->lfm->setName($item)->thumb()->dir($target); - if ($is_directory) { - event(new FolderIsMoving($old_file->path(), $new_file->path())); - } else { - event(new FileIsMoving($old_file->path(), $new_file->path())); - } - $this->lfm->setName($item)->thumb()->move($new_file); + + if($old_file->path('working_dir') == $target){ + return $this->response('error', parent::getError('move-same')); } + + $lfm = $this->lfm->dir($target); + foreach ($lfm->folders() as $folder){ + if($folder->name() == $old_file->name()){ + return $this->response('error', parent::getError('move-exist')); + + } + } + + if($is_directory){ + if(strpos($target."/", $old_file->path('working_dir')."/") === 0){ + return $this->response('error', parent::getError('move-parent')); + } + } + + + if ($old_file->hasThumb()) { + $new_file_thmub = $this->lfm->setName($item)->thumb()->dir($target); + /* if ($is_directory) { + event(new FolderIsMoving($old_file->path(), $new_file_thmub->path())); + } else { + event(new FileIsMoving($old_file->path(), $new_file_thmub->path())); + }*/ + $this->lfm->setName($item)->thumb()->move($new_file_thmub); + } + $new_file = $this->lfm->setName($item)->dir($target); $this->lfm->setName($item)->move($new_file); - if ($is_directory) { - event(new FolderWasMoving($old_file->path(), $new_file->path())); - } else { - event(new FileWasMoving($old_file->path(), $new_file->path())); + $model = $old_file->model(); + if($model){ + $model->folder_id = $new_file->getModelParentFolderId(); + $model->save(); } + + /* if ($is_directory) { + event(new FolderWasMoving($old_file->path(), $new_file->path())); + } else { + event(new FileWasMoving($old_file->path(), $new_file->path())); + }*/ }; return parent::$success_response; diff --git a/packages/iqcontent/laravel-filemanager/src/Controllers/LfmController.php b/packages/iqcontent/laravel-filemanager/src/Controllers/LfmController.php index 1d3dbbd..149bc8f 100644 --- a/packages/iqcontent/laravel-filemanager/src/Controllers/LfmController.php +++ b/packages/iqcontent/laravel-filemanager/src/Controllers/LfmController.php @@ -4,6 +4,7 @@ namespace IqContent\LaravelFilemanager\Controllers; use IqContent\LaravelFilemanager\Lfm; use IqContent\LaravelFilemanager\LfmPath; +use IqContent\LaravelFilemanager\Models\IQContentFolder; class LfmController extends Controller { @@ -12,6 +13,7 @@ class LfmController extends Controller public function __construct() { $this->applyIniOverrides(); + $this->checkRootFolder(); } /** @@ -105,4 +107,17 @@ class LfmController extends Controller } } } + + public function checkRootFolder() + { + $shared_folder_name = config('lfm.shared_folder_name'); + $shared_folder = IQContentFolder::where('name', $shared_folder_name)->where('folder_id', null)->first(); + if(!$shared_folder){ + IQContentFolder::create([ + 'folder_id' => null, + 'name' => $shared_folder_name, + 'identifier' => $shared_folder_name, + ]); + } + } } diff --git a/packages/iqcontent/laravel-filemanager/src/Controllers/RenameController.php b/packages/iqcontent/laravel-filemanager/src/Controllers/RenameController.php index 20c66a5..7aca786 100644 --- a/packages/iqcontent/laravel-filemanager/src/Controllers/RenameController.php +++ b/packages/iqcontent/laravel-filemanager/src/Controllers/RenameController.php @@ -15,12 +15,7 @@ class RenameController extends LfmController $new_name = $this->helper->input('new_name'); - $old_file = $this->lfm->pretty($old_name); - - return $old_file->path('working_dir'); - - $is_directory = $old_file->isDirectory(); if (empty($new_name)) { @@ -31,7 +26,6 @@ class RenameController extends LfmController } } - if ($is_directory) { if(config('lfm.alphanumeric_directory')){ $new_name = $this->helper->sanitize($new_name); @@ -62,11 +56,11 @@ class RenameController extends LfmController $new_file = $this->lfm->setName($new_name)->path('absolute'); - if ($is_directory) { + /*if ($is_directory) { event(new FolderIsRenaming($old_file->path(), $new_file)); } else { event(new ImageIsRenaming($old_file->path(), $new_file)); - } + }*/ if ($old_file->hasThumb()) { $this->lfm->setName($old_name)->thumb() @@ -76,15 +70,20 @@ class RenameController extends LfmController $this->lfm->setName($old_name) ->move($this->lfm->setName($new_name)); - //->renameModel($new_name) + $model = $old_file->model(); + if($model && $model->id){ + $model->slug = ""; + $model->name = $new_name; + $model->identifier = $new_name; + $model->save(); + } - - if ($is_directory) { + /*if ($is_directory) { event(new FolderWasRenamed($old_file->path(), $new_file)); } else { event(new ImageWasRenamed($old_file->path(), $new_file)); - } + }*/ return parent::$success_response; } diff --git a/packages/iqcontent/laravel-filemanager/src/Lfm.php b/packages/iqcontent/laravel-filemanager/src/Lfm.php index a5b0a0e..1d7024f 100644 --- a/packages/iqcontent/laravel-filemanager/src/Lfm.php +++ b/packages/iqcontent/laravel-filemanager/src/Lfm.php @@ -352,6 +352,12 @@ class Lfm 'as' => 'getRename', ]); + // colorshue + Route::get('/colorshue', [ + 'uses' => 'ColorController@getColor', + 'as' => 'getColor', + ]); + // scale/resize Route::get('/resize', [ 'uses' => 'ResizeController@getResize', diff --git a/packages/iqcontent/laravel-filemanager/src/LfmItem.php b/packages/iqcontent/laravel-filemanager/src/LfmItem.php index 7abad5d..33416b7 100644 --- a/packages/iqcontent/laravel-filemanager/src/LfmItem.php +++ b/packages/iqcontent/laravel-filemanager/src/LfmItem.php @@ -9,7 +9,7 @@ class LfmItem private $lfm; private $helper; - private $columns = ['name', 'url', 'time', 'icon', 'is_file', 'is_image', 'thumb_url']; + private $columns = ['name', 'url', 'time', 'icon', 'color', 'is_file', 'is_image', 'thumb_url']; public $attributes = []; public function __construct(LfmPath $lfm, Lfm $helper) @@ -47,11 +47,6 @@ class LfmItem return $this->lfm->getModel(); } - public function deleteModel() - { - return $this->lfm->deleteModel(); - } - public function path($type = 'absolute') { return $this->lfm->path($type); @@ -157,6 +152,17 @@ class LfmItem //return $this->extension(); } + public function color() + { + + $model = $this->model(); + if($model && $model->color){ + return $this->model()->color; + } + return '#'; + + } + public function type() { if ($this->isDirectory()) { @@ -205,6 +211,11 @@ class LfmItem return $this->lfm->get(); } + public function getLfm() + { + return $this->lfm; + } + /** * Make file size readable. * diff --git a/packages/iqcontent/laravel-filemanager/src/LfmPath.php b/packages/iqcontent/laravel-filemanager/src/LfmPath.php index ebdd91c..21fd3ed 100644 --- a/packages/iqcontent/laravel-filemanager/src/LfmPath.php +++ b/packages/iqcontent/laravel-filemanager/src/LfmPath.php @@ -20,6 +20,7 @@ class LfmPath private $is_thumb = false; private $image_dimensions = ""; private $isDirectory = null; + private $parent_dir = ""; private $helper; @@ -57,45 +58,27 @@ class LfmPath public function setName($item_name) { $this->item_name = $item_name; - return $this; } public function setModel() { - $working_dir = $this->path('url'); - $parent_dir = substr($working_dir, 0, strrpos($working_dir, '/')); - $parent_folder = IQContentFolder::where('path', $parent_dir)->first(); - + $parent_folder_id = $this->getModelParentFolderId(); if ($this->isDirectory()) { if($this->folder_model == null){ - $this->folder_model = new IQContentFolder(); + if($parent_folder_id){ + $this->folder_model = IQContentFolder::where('name', $this->item_name)->where('folder_id', $parent_folder_id)->first(); + } else{ + $this->folder_model = new IQContentFolder(); + } } - }else{ if($this->file_model == null){ - $this->file_model = new IQContentFile(); - $this->file_model = IQContentFile::where('name', $this->item_name)->where('folder_id', $parent_folder->id)->first(); - } - } - // - - return $this; - } - - public function renameModel($new_name) - { - - if ($this->isDirectory()) { - if($this->folder_model != null){ - $this->folder_model->name = $new_name; - $this->folder_mode->save(); - } - - }else{ - if($this->file_model != null){ - $this->file_model->name = $new_name; - $this->file_model->save(); + if($parent_folder_id){ + $this->file_model = IQContentFile::where('name', $this->item_name)->where('folder_id', $parent_folder_id)->first(); + }else{ + $this->file_model = new IQContentFile(); + } } } return $this; @@ -111,12 +94,35 @@ class LfmPath { if ($this->isDirectory()) { return $this->folder_model; - }else{ return $this->file_model; } } + public function getModelParentFolderId(){ + $parent_folder = $this->getModelFolderByPath(); + if($parent_folder) { + return $parent_folder->id; + } + return null; + } + public function getModelFolderByPath($parent = false){ + $working_dir = $this->path('working_dir'); + $working_dir = substr($working_dir, 0, strrpos($working_dir, '/')); + $dirs = explode( "/", $working_dir); + $folder_id = null; + $folder = null; + foreach ($dirs as $dir){ + $folder = IQContentFolder::where('name', $dir)->where('folder_id', $folder_id)->first(); + if($folder){ + $folder_id = $folder->id; + $this->parent_dir = $folder; + } + } + return $this->parent_dir; + } + + public function path($type = 'storage') { if ($type == 'working_dir') { @@ -158,7 +164,6 @@ class LfmPath $all_folders = array_map(function ($directory_path) { return $this->pretty($directory_path); }, $this->storage->directories()); - $folders = array_filter($all_folders, function ($directory) { return $directory->name !== $this->helper->getThumbFolderName(); }); @@ -166,6 +171,20 @@ class LfmPath return $this->sortByColumn($folders); } + public function recrusiveFolders($parent){ + $folders = $this->folders(); + $b = []; + foreach ($folders as $folder){ + $b[$folder->name()] = $folder; + $lfm = $folder->getLfm(); + $lfm->dir($parent); + $a = $lfm->recrusiveFolders($folder->url()); + $b[$folder->name()."-childs"] = $a; + + } + return $b; + } + public function files() { $files = array_map(function ($file_path) { @@ -195,24 +214,6 @@ class LfmPath } } - public function deleteModel(){ - - if ($this->isDirectory()) { - if($this->folder_model){ - $this->folder_model->delete(); - return true; - } - }else{ - if($this->file_model){ - $this->file_model->delete(); - return true; - } - } - - - return false; - - } /** * Create folder if not exist. @@ -225,19 +226,13 @@ class LfmPath if ($this->storage->exists($this)) { return false; } - - $working_dir = $this->path('url'); - $parent_dir = substr($working_dir, 0, strrpos($working_dir, '/')); - $parent_folder = IQContentFolder::where('path', $parent_dir)->first(); - + $parent_folder_id = $this->getModelParentFolderId(); $this->storage->makeDirectory(0777, true, true); - IQContentFolder::create([ - 'folder_id' => $parent_folder->id, + 'folder_id' => $parent_folder_id, 'name' => $this->item_name, 'identifier' => $this->item_name, - 'path' => $this->path('url'), ]); } @@ -320,13 +315,9 @@ class LfmPath $new_file_path = $this->setName($new_file_name)->path('absolute'); - $working_url = $this->path('url'); - $working_dir = substr($working_url, 0, strrpos($working_url, '/')); + $working_folder_id = $this->getModelParentFolderId(); - $working_folder = IQContentFolder::where('path', $working_dir)->first(); - - - event(new ImageIsUploading($new_file_path)); + //event(new ImageIsUploading($new_file_path)); try { $new_file_name = $this->saveFile($file, $new_file_name); } catch (\Exception $e) { @@ -334,17 +325,17 @@ class LfmPath return $this->error('invalid'); } IQContentFile::create([ - 'folder_id' => $working_folder->id, + 'folder_id' => $working_folder_id, 'name' => $new_file_name, 'identifier' => $new_file_name, 'ext' => $file->guessClientExtension(), 'mine' => $file->getMimeType(), 'size' => $file->getSize() / 1000, 'dimensions' => $this->image_dimensions, - 'content' => $working_dir, + 'content' => '', ]); // TODO should be "FileWasUploaded" - event(new ImageWasUploaded($new_file_path)); + // event(new ImageWasUploaded($new_file_path)); return $new_file_name; } diff --git a/packages/iqcontent/laravel-filemanager/src/Models/IQContentCategory.php b/packages/iqcontent/laravel-filemanager/src/Models/IQContentCategory.php index 23016ba..e342f4f 100644 --- a/packages/iqcontent/laravel-filemanager/src/Models/IQContentCategory.php +++ b/packages/iqcontent/laravel-filemanager/src/Models/IQContentCategory.php @@ -5,6 +5,30 @@ namespace IqContent\LaravelFilemanager\Models; use Cviebrock\EloquentSluggable\Sluggable; use Illuminate\Database\Eloquent\Model; +/** + * IqContent\LaravelFilemanager\Models\IQContentCategory + * + * @property int $id + * @property string $name + * @property string $slug + * @property int $pos + * @property int $active + * @property \Illuminate\Support\Carbon|null $created_at + * @property \Illuminate\Support\Carbon|null $updated_at + * @property-read \Illuminate\Database\Eloquent\Collection|\IqContent\LaravelFilemanager\Models\IQContentTag[] $tags + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentCategory findSimilarSlugs($attribute, $config, $slug) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentCategory newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentCategory newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentCategory query() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentCategory whereActive($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentCategory whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentCategory whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentCategory whereName($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentCategory wherePos($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentCategory whereSlug($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentCategory whereUpdatedAt($value) + * @mixin \Eloquent + */ class IQContentCategory extends Model { use Sluggable; diff --git a/packages/iqcontent/laravel-filemanager/src/Models/IQContentFile.php b/packages/iqcontent/laravel-filemanager/src/Models/IQContentFile.php index 5d0c5f2..653fa57 100644 --- a/packages/iqcontent/laravel-filemanager/src/Models/IQContentFile.php +++ b/packages/iqcontent/laravel-filemanager/src/Models/IQContentFile.php @@ -6,6 +6,47 @@ use Cviebrock\EloquentSluggable\Sluggable; use Illuminate\Database\Eloquent\Model; use Illuminate\Support\Str; +/** + * IqContent\LaravelFilemanager\Models\IQContentFile + * + * @property int $id + * @property int|null $folder_id + * @property string $name + * @property string|null $identifier + * @property string $slug + * @property string|null $ext + * @property string|null $mine + * @property int $size + * @property string|null $dimensions + * @property string|null $content + * @property int $color + * @property int $pos + * @property int $active + * @property \Illuminate\Support\Carbon|null $created_at + * @property \Illuminate\Support\Carbon|null $updated_at + * @property-read \Illuminate\Database\Eloquent\Collection|\IqContent\LaravelFilemanager\Models\IQContentFileTag[] $file_tags + * @property-read \IqContent\LaravelFilemanager\Models\IQContentFolder|null $folder + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile findSimilarSlugs($attribute, $config, $slug) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile query() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereActive($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereColor($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereContent($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereDimensions($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereExt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereFolderId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereIdentifier($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereMine($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereName($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile wherePos($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereSize($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereSlug($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFile whereUpdatedAt($value) + * @mixin \Eloquent + */ class IQContentFile extends Model { diff --git a/packages/iqcontent/laravel-filemanager/src/Models/IQContentFileTag.php b/packages/iqcontent/laravel-filemanager/src/Models/IQContentFileTag.php index 17c48a8..2fbf23f 100644 --- a/packages/iqcontent/laravel-filemanager/src/Models/IQContentFileTag.php +++ b/packages/iqcontent/laravel-filemanager/src/Models/IQContentFileTag.php @@ -4,6 +4,26 @@ namespace IqContent\LaravelFilemanager\Models; use Illuminate\Database\Eloquent\Model; +/** + * IqContent\LaravelFilemanager\Models\IQContentFileTag + * + * @property int $id + * @property int $file_id + * @property int $tag_id + * @property \Illuminate\Support\Carbon|null $created_at + * @property \Illuminate\Support\Carbon|null $updated_at + * @property-read \IqContent\LaravelFilemanager\Models\IQContentFile $file + * @property-read \IqContent\LaravelFilemanager\Models\IQContentTag $tag + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFileTag newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFileTag newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFileTag query() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFileTag whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFileTag whereFileId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFileTag whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFileTag whereTagId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFileTag whereUpdatedAt($value) + * @mixin \Eloquent + */ class IQContentFileTag extends Model { diff --git a/packages/iqcontent/laravel-filemanager/src/Models/IQContentFolder.php b/packages/iqcontent/laravel-filemanager/src/Models/IQContentFolder.php index edcd66e..4aef4bb 100644 --- a/packages/iqcontent/laravel-filemanager/src/Models/IQContentFolder.php +++ b/packages/iqcontent/laravel-filemanager/src/Models/IQContentFolder.php @@ -6,6 +6,40 @@ use Cviebrock\EloquentSluggable\Sluggable; use Illuminate\Database\Eloquent\Model; use Illuminate\Support\Str; +/** + * IqContent\LaravelFilemanager\Models\IQContentFolder + * + * @property int $id + * @property int|null $folder_id + * @property string $name + * @property string $slug + * @property string|null $identifier + * @property string|null $path + * @property int $color + * @property int $pos + * @property int $active + * @property \Illuminate\Support\Carbon|null $created_at + * @property \Illuminate\Support\Carbon|null $updated_at + * @property-read \Illuminate\Database\Eloquent\Collection|\IqContent\LaravelFilemanager\Models\IQContentFile[] $files + * @property-read \IqContent\LaravelFilemanager\Models\IQContentFolder|null $folder + * @property-read \Illuminate\Database\Eloquent\Collection|\IqContent\LaravelFilemanager\Models\IQContentFolder[] $folders + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder findSimilarSlugs($attribute, $config, $slug) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder query() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder whereActive($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder whereColor($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder whereFolderId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder whereIdentifier($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder whereName($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder wherePath($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder wherePos($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder whereSlug($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentFolder whereUpdatedAt($value) + * @mixin \Eloquent + */ class IQContentFolder extends Model { @@ -17,7 +51,7 @@ class IQContentFolder extends Model protected $table = 'i_q_content_folders'; protected $fillable = [ - 'folder_id', 'name', 'slug', 'identifier', 'path', 'color', 'pos', 'active' + 'folder_id', 'name', 'slug', 'identifier', 'color', 'pos', 'active' ]; diff --git a/packages/iqcontent/laravel-filemanager/src/Models/IQContentTag.php b/packages/iqcontent/laravel-filemanager/src/Models/IQContentTag.php index 8bdcac8..923930f 100644 --- a/packages/iqcontent/laravel-filemanager/src/Models/IQContentTag.php +++ b/packages/iqcontent/laravel-filemanager/src/Models/IQContentTag.php @@ -5,6 +5,33 @@ namespace IqContent\LaravelFilemanager\Models; use Cviebrock\EloquentSluggable\Sluggable; use Illuminate\Database\Eloquent\Model; +/** + * IqContent\LaravelFilemanager\Models\IQContentTag + * + * @property int $id + * @property int $category_id + * @property string $name + * @property string $slug + * @property int $pos + * @property int $active + * @property \Illuminate\Support\Carbon|null $created_at + * @property \Illuminate\Support\Carbon|null $updated_at + * @property-read \IqContent\LaravelFilemanager\Models\IQContentCategory $category + * @property-read \Illuminate\Database\Eloquent\Collection|\IqContent\LaravelFilemanager\Models\IQContentFileTag[] $file_tags + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentTag findSimilarSlugs($attribute, $config, $slug) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentTag newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentTag newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentTag query() + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentTag whereActive($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentTag whereCategoryId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentTag whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentTag whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentTag whereName($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentTag wherePos($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentTag whereSlug($value) + * @method static \Illuminate\Database\Eloquent\Builder|\IqContent\LaravelFilemanager\Models\IQContentTag whereUpdatedAt($value) + * @mixin \Eloquent + */ class IQContentTag extends Model { use Sluggable; diff --git a/packages/iqcontent/laravel-filemanager/src/config/lfm.php b/packages/iqcontent/laravel-filemanager/src/config/lfm.php index 2ca05d5..dc7308c 100644 --- a/packages/iqcontent/laravel-filemanager/src/config/lfm.php +++ b/packages/iqcontent/laravel-filemanager/src/config/lfm.php @@ -128,6 +128,8 @@ return [ 'thumb_img_height' => 200, + 'default_color' => '#ffc926', + /* |-------------------------------------------------------------------------- | jQuery UI options diff --git a/packages/iqcontent/laravel-filemanager/src/lang/de/lfm.php b/packages/iqcontent/laravel-filemanager/src/lang/de/lfm.php index 47aa412..f002419 100644 --- a/packages/iqcontent/laravel-filemanager/src/lang/de/lfm.php +++ b/packages/iqcontent/laravel-filemanager/src/lang/de/lfm.php @@ -36,9 +36,10 @@ return [ 'message-empty' => 'Ordner ist leer.', 'message-choose' => 'Datei wählen', - 'message-delete' => 'Sind Sie sicher, dass Sie dieses Einzelteil löschen möchten?', + 'message-delete' => 'Sind Sie sicher, dass Sie dieses Datei/Ordner löschen möchten?', 'message-name' => 'Ordnernamen:', 'message-rename' => 'Umbenennen in:', + 'message-color' => 'Farbe ändern', 'message-extension_not_found' => 'Installieren Sie gd oder imagick Erweiterung um Bilder zuzuschneiden, Größe ändern und Thumbnails zu erstellen.', 'message-drop' => 'Or drop files here to upload', @@ -63,6 +64,11 @@ return [ 'error-cannotresize' => 'Sie sind nicht berechtigt, die Dateigröße zu ändern', 'error-folder-not-found'=> 'Folder not found! (:folder)', 'error-size' => 'Over limit size:', + 'error-move-exist' => 'Datei existiert bereits.', + 'error-move-same' => 'Datei und Ziel sind gleich.', + 'error-move-parent' => 'Unterordner kann nicht verschoben werden.', + + 'btn-upload' => 'Datei hochladen', 'btn-uploading' => 'Hochladen...', diff --git a/packages/iqcontent/laravel-filemanager/src/views/move-item.blade.php b/packages/iqcontent/laravel-filemanager/src/views/move-item.blade.php new file mode 100644 index 0000000..9f67cb4 --- /dev/null +++ b/packages/iqcontent/laravel-filemanager/src/views/move-item.blade.php @@ -0,0 +1,20 @@ + + +@foreach($children as $name => $value) + @if(strpos($name, 'child') === false) + + @endif + @if(strpos($name, 'child') !== false) + @include('laravel-filemanager::move-item', array('children'=>$value, 'deep'=>$deep+0.5)) + @endif +@endforeach \ No newline at end of file diff --git a/packages/iqcontent/laravel-filemanager/src/views/move.blade.php b/packages/iqcontent/laravel-filemanager/src/views/move.blade.php index c055f95..b36961d 100644 --- a/packages/iqcontent/laravel-filemanager/src/views/move.blade.php +++ b/packages/iqcontent/laravel-filemanager/src/views/move.blade.php @@ -11,20 +11,8 @@ - @foreach($root_folder->children as $directory) - + @include('laravel-filemanager::move-item', array('children'=>$root_folder->children, 'deep'=>1)) @endforeach - @endforeach + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + +
+
+ + +
+ + +
+ + Appwork + + + +
+ +
+ + + +
+ + + + + + +
+ + +
+
+ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/storage/app/public/files/shares/root/logo.png b/storage/app/public/files/shares/root/logo.png new file mode 100644 index 0000000..09d0973 Binary files /dev/null and b/storage/app/public/files/shares/root/logo.png differ diff --git a/storage/app/public/files/shares/root/thumbs/logo.png b/storage/app/public/files/shares/root/thumbs/logo.png new file mode 100644 index 0000000..08c6656 Binary files /dev/null and b/storage/app/public/files/shares/root/thumbs/logo.png differ diff --git a/storage/app/public/files/shares/root2/8.jpg b/storage/app/public/files/shares/root2/8.jpg new file mode 100644 index 0000000..5f46042 Binary files /dev/null and b/storage/app/public/files/shares/root2/8.jpg differ diff --git a/storage/app/public/files/shares/root2/thumbs/8.jpg b/storage/app/public/files/shares/root2/thumbs/8.jpg new file mode 100644 index 0000000..e26ea52 Binary files /dev/null and b/storage/app/public/files/shares/root2/thumbs/8.jpg differ diff --git a/storage/app/public/files/shares/thumbs/21.jpg b/storage/app/public/files/shares/thumbs/21.jpg deleted file mode 100644 index 6e77b44..0000000 Binary files a/storage/app/public/files/shares/thumbs/21.jpg and /dev/null differ diff --git a/storage/app/public/files/shares/thumbs/2110.jpg b/storage/app/public/files/shares/thumbs/2110.jpg deleted file mode 100644 index b397204..0000000 Binary files a/storage/app/public/files/shares/thumbs/2110.jpg and /dev/null differ diff --git a/storage/app/public/files/shares/thumbs/381.jpg b/storage/app/public/files/shares/thumbs/381.jpg deleted file mode 100644 index 801956f..0000000 Binary files a/storage/app/public/files/shares/thumbs/381.jpg and /dev/null differ diff --git a/storage/app/public/files/shares/thumbs/Bildschirmfoto-2019-08-15-um-205143.png b/storage/app/public/files/shares/thumbs/Bildschirmfoto-2019-08-15-um-205143.png deleted file mode 100644 index 65c43bb..0000000 Binary files a/storage/app/public/files/shares/thumbs/Bildschirmfoto-2019-08-15-um-205143.png and /dev/null differ