public function getTags($id)
 {
     $entry = FileRecord::where('id', '=', $id)->firstOrFail();
     $tags = (array) json_decode($entry->tags);
     if (isset($tags[Auth::User()->username])) {
         $userTags = $tags[Auth::User()->username];
     } else {
         $userTags = [];
     }
     return view('nav.cards.fileTags')->with('tags', $userTags);
 }
 public function sharing($id)
 {
     $entry = FileRecord::where('id', '=', $id)->firstOrFail();
     $rawSharing = (array) json_decode($entry->sharing);
     $docType = $entry->doc_type_id;
     $users = User::get();
     $sharedUsers = (array) $rawSharing['users'];
     $departments = Department::get();
     $sharedDepartments = (array) $rawSharing['departments'];
     $editors = (array) json_decode($entry->user_editor);
     $mass = $rawSharing['mass'];
     return view('modals.sharingModal')->with('sharedUsers', $sharedUsers)->with('editors', $editors)->with('docType', $docType)->with('users', $users)->with('departments', $departments)->with('sharedDepartments', $sharedDepartments)->with('mass', $mass)->with('id', $id);
 }
 public function getHistory($id)
 {
     $entry = FileRecord::where('id', '=', $id)->firstOrFail();
     $audit = (array) json_decode($entry->version_details);
     $filename = $entry->filename;
     //return $audit;
     return view("audit")->with('audit', $audit)->with('filename', $filename);
 }
 public function decline($id)
 {
     $entry = Achievements::where('achievement_id', '=', $id)->firstOrFail();
     $file = FileRecord::where('id', $id)->firstOrFail();
     $owner = User::where('id', $file->owner_id)->firstOrFail();
     $data = ['fileName' => $entry->name];
     Mail::queue('mail.hrDeny', $data, function ($message) use(&$owner) {
         $message->to($owner->email, $owner->fname)->subject('Achievement rejected');
     });
     Storage::deleteDirectory($file->owner_id . $file->id . $file->filename);
     $entry->delete();
     $file->delete();
     return redirect('/hr/verify');
 }
 public function denDelReq($id)
 {
     $entry = Achievements::where('achievement_id', '=', $id)->firstOrFail();
     $file = FileRecord::where('id', '=', $id)->firstOrFail();
     $owner = User::where('id', '=', $file->owner_id)->firstOrFail();
     $entry->delete_pending = false;
     $entry->delete_details = "";
     $entry->save();
     $data = ['fileName' => $file->filename];
     Mail::queue('mail.denyDelete', $data, function ($message) use(&$owner) {
         $message->to($owner->email, $owner->fname)->subject('Delete request rejected.');
     });
     return redirect('/admin/delete');
 }