예제 #1
0
 /**
  * Update the specified resource in storage.
  *
  * @param  \Illuminate\Http\Request  $request
  * @return \Illuminate\Http\Response
  */
 public function upload(ImageFormRequest $request, $id)
 {
     if (Input::hasFile('file')) {
         $file = $request->file('file');
         $filename = uniqid() . $file->getClientOriginalName();
         $original = 'assets\\images\\jobs\\original\\' . $filename;
         $thumbnail = 'assets\\images\\jobs\\thumbnail\\' . $filename;
         $resize = 'assets\\images\\jobs\\resize\\' . $filename;
         if (!File::exists('assets\\images\\jobs\\original')) {
             File::makeDirectory('assets\\images\\jobs\\original', $mode = 0777, true, true);
             if (!File::exists('assets\\images\\jobs\\thumbnail')) {
                 File::makeDirectory('assets\\images\\jobs\\thumbnail', $mode = 0777, true, true);
             }
             if (!File::exists('assets\\images\\jobs\\resize')) {
                 File::makeDirectory('assets\\images\\jobs\\resize', $mode = 0777, true, true);
             }
         }
         // upload new image
         $img = Image::make($file->getRealPath());
         $img->save($original);
         // original
         $img->fit('150', '150');
         // thumbnail (grab)
         $img->save($thumbnail);
         $img->resize('300', '300');
         // resize and set true if you want proportional image resize
         $img->save($resize);
         $img->destroy();
         $job = $this->jobs->find($id);
         $image = $job->images()->create(['job_id' => $request->input('job_id'), 'file_name' => $filename, 'file_size' => $file->getClientSize(), 'file_mime' => $file->getClientMimeType(), 'file_path' => '/assets/images/jobs/original/' . $filename, 'created_by' => \Auth::user() ? \Auth::user()->id : 0]);
         return response()->json($image, 200);
     } else {
         return response()->json(false, 200);
     }
 }
 /**
  * Remove the specified resource from storage.
  *
  * @param  int  $id
  * @return \Illuminate\Http\RedirectResponse
  */
 public function destroy($id)
 {
     $this->job_tags->findOrFail($id)->delete();
     return \Redirect::route('admin.job_tags.index')->withMessage(trans('tag.tags-controller-successfully_deleted'));
 }
예제 #3
0
<?php

Route::group(['namespace' => 'App\\Http\\Controllers', 'middleware' => ['web', 'throttle']], function () {
    //'prefix'=>'api/v1',
    Route::group(['prefix' => 'admin', 'middleware' => ['auth', 'admin'], 'namespace' => 'Admin'], function () {
        Route::resource('job_tags', 'JobTagController', ['only' => ['index', 'show', 'create', 'store', 'edit', 'update', 'destroy']]);
        Route::resource('jobs', 'JobController', ['only' => ['index', 'show', 'create', 'store', 'edit', 'update', 'destroy']]);
        Route::resource('job_categories', 'JobCategoryController', ['only' => ['index', 'show', 'create', 'store', 'edit', 'update', 'destroy']]);
        Route::post('jobs/{jobs}/upload', ['as' => 'admin.jobs.upload', 'uses' => 'JobController@upload']);
        Route::get('jobs/{jobs}/image-upload', ['as' => 'admin.jobs.image-upload', 'uses' => 'JobController@getUpload']);
    });
});
View::composer('*', function ($view) {
    $job_categories = \App\JobCategory::where('parent_id', '=', 0)->get();
    //
    if (!$job_categories) {
        $job_categories = [];
    }
    $job_tags = \App\JobTag::with('jobs')->get();
    if (!$job_tags) {
        $job_tags = [];
    }
    $view->with(compact('job_categories', 'job_tags'));
});