コード例 #1
0
ファイル: routes.php プロジェクト: n1n7axiii/laravel-gallery
<?php

/*
 * todo
 * the middleware auth.admin is from another dependent package.
 * the javascript and layouts.master-admin is also from another dependent package.
 */
Route::bind('n1n7a_gallery_category', function ($value) {
    return \N1n7aXIII\Gallery\Models\GalleryCategory::where('alias', $value)->orWhere('id', $value)->first();
});
/* For Admin */
Route::group(['prefix' => config('gallery.admin_path'), 'namespace' => 'N1n7aXIII\\Gallery', 'middleware' => 'auth.admin'], function () {
    Route::get('/gallery', ['as' => 'admin.gallery.index', 'uses' => 'GalleryAdminCategoryController@index']);
    Route::get('/gallery/category/create', ['as' => 'admin.gallery.category.create', 'uses' => 'GalleryAdminCategoryController@create']);
    Route::post('/gallery/category/store/{n1n7a_gallery_category}', ['as' => 'admin.gallery.category.store', 'uses' => 'GalleryAdminCategoryController@store']);
    Route::get('/gallery/category/show/{n1n7a_gallery_category}', ['as' => 'admin.gallery.category.show', 'uses' => 'GalleryAdminCategoryController@show']);
    Route::get('/gallery/category/edit/{n1n7a_gallery_category}', ['as' => 'admin.gallery.category.edit', 'uses' => 'GalleryAdminCategoryController@edit']);
    Route::put('/gallery/category/update/{n1n7a_gallery_category}', ['as' => 'admin.gallery.category.update', 'uses' => 'GalleryAdminCategoryController@update']);
    Route::delete('/gallery/category/destroy/{n1n7a_gallery_category}', ['as' => 'admin.gallery.category.destroy', 'uses' => 'GalleryAdminCategoryController@destroy']);
    Route::get('/gallery/{n1n7a_gallery_category}/item', ['as' => 'admin.gallery.item.create', 'uses' => 'GalleryAdminItemController@create']);
    Route::post('/gallery/{n1n7a_gallery_category}/item', ['as' => 'admin.gallery.item.store', 'uses' => 'GalleryAdminItemController@store']);
    Route::get('/gallery/{n1n7a_gallery_category}/item/{id}', ['as' => 'admin.gallery.item.edit', 'uses' => 'GalleryAdminItemController@edit']);
    Route::put('/gallery/{n1n7a_gallery_category}/item/{id}', ['as' => 'admin.gallery.item.update', 'uses' => 'GalleryAdminItemController@update']);
    Route::delete('/gallery/{n1n7a_gallery_category}/item/{id}', ['as' => 'admin.gallery.item.destroy', 'uses' => 'GalleryAdminItemController@destroy']);
});
コード例 #2
0
 protected function storeOrUpdateCategory(GalleryCategory $category, $request)
 {
     $category->name = $request->get('name');
     $category->alias = str_replace(' ', '-', strtolower($request->get('alias'))) ?: str_replace(' ', '-', strtolower($request->get('name')));
     if (!$category->position) {
         $category->position = GalleryCategory::all()->count() + 1;
     }
     $category->save();
     $img_dir = config('gallery.gallery_path') . '/' . $category->id . '/';
     if (!file_exists($img_dir)) {
         mkdir($img_dir, 0777, true);
     }
     if ($request->hasFile('thumbnail')) {
         $thumb = $request->file('thumbnail');
         if ($thumb->isValid()) {
             $img_name = 'cat-thumb.' . $thumb->getExtension();
             $img = \Image::make($thumb)->fit(config('gallery.category_thumb_width'), config('gallery.category_thumb_height'));
             if (file_exists($img_dir . $category->thumbnail)) {
                 unlink($img_dir . $category->thumbnail);
             }
             $category->thumbnail = $img_name;
             $img->save($img_dir . $img_name, 80);
         }
     }
     if ($request->has('description')) {
         $category->description = $request->get('description');
     }
     $category->save();
     return true;
 }