public function save(Request $request)
 {
     if (!$this->user || !$this->user->isClerk()) {
         $this->alert('warning', 'Only Clerks are allowed to edit assets.', false);
         return $this->view;
     }
     $asset = Asset::firstOrNew(['id' => $request->input('id')]);
     $asset->identifier = $request->input('identifier');
     $asset->state_id = $request->input('state_id');
     $asset->suburb_id = $request->input('suburb_id');
     $asset->street_address = $request->input('street_address');
     $asset->location_description = $request->input('location_description');
     $asset->latitude = $request->input('latitude');
     $asset->longitude = $request->input('longitude');
     $asset->comments = $request->input('comments');
     $asset->save();
     $asset->tags()->sync(Tag::getIds($request->input('tags')));
     $file = File::createFromUploaded($request->file('file'));
     if ($file) {
         $asset->files()->attach($file->id);
     }
     return redirect('assets/' . $asset->id);
 }
 public function saveExisting(Request $request, $id)
 {
     DB::beginTransaction();
     $jobList = JobList::find($id);
     $jobList->name = $request->input('name');
     $jobList->type_id = $request->input('type_id');
     $jobList->start_date = $request->input('start_date');
     $jobList->due_date = $request->input('due_date');
     $jobList->crew_id = $request->input('crew_id');
     $jobList->comments = $request->input('comments');
     $jobList->save();
     $jobList->tags()->sync(Tag::getIds($request->input('tags')));
     DB::commit();
     return redirect('job-lists/' . $jobList->id);
 }