/**
  * Display a listing of the resource.
  *
  * @return \Illuminate\Http\Response
  */
 public function index()
 {
     $allowed_departments = Session::get('allowed_departments');
     $user = Session::get('user');
     $data = array('allowed_departments' => $allowed_departments, 'backgrounds' => Background::all(), 'user' => $user);
     return view('pages/dashboard', $data);
 }
 /**
  * Filter backgrounds by criteria
  * @param \Illuminate\Http\Request $request
  * @return \Illuminate\Http\Response
  */
 public function filter(Request $request)
 {
     $user = Session::get('user');
     // Get request inputs
     $btnFindbackground = $request->input('btnFindBackground');
     $btnFindAll = $request->input('btnFindAll');
     $backgroundName = $request->input('txtBackgroundSearch');
     // Get all backgrounds
     $backgrounds = Background::all();
     // Check which action to perform
     if (isset($btnFindbackground)) {
         $filtered = collect([]);
         // First filter by name
         if ($backgroundName != null) {
             $filtered = $backgrounds->filter(function ($item) use($backgroundName) {
                 if (strpos($item->name, $backgroundName) !== false) {
                     // Get rough match
                     return true;
                 }
             });
         }
         $backgrounds = $filtered;
     } else {
         if (isset($btnFindAll)) {
             // Reset search input box
             $backgroundName = null;
         } else {
             abort(401, 'Un-authorised');
         }
     }
     $data = array('user' => $user, 'backgrounds' => $backgrounds);
     return view('pages/backgroundsEditor', $data);
 }
Пример #3
0
 /**
  * Filters adverts by criteria
  * @param \Illuminate\Http\Request $request
  * @return \Illuminate\Http\Response
  */
 public function filter(Request $request)
 {
     // Get user details
     $user = Session::get('user');
     $allowed_departments = Session::get('allowed_departments');
     // Get request inputs
     $btnFindAdvert = $request->input('btnFindAdvert');
     $btnFindAll = $request->input('btnFindAll');
     $advertName = $request->input('txtAdvertSearch');
     $departmentID = $request->input('drpDepartments');
     // Get all adverts this user can view
     $adverts = $this->getAllowedAdverts($user, $allowed_departments);
     // Determine operation
     if (isset($btnFindAdvert)) {
         $filtered = collect([]);
         if ($advertName != null) {
             // Search by name
             $filtered = $adverts->filter(function ($item) use($advertName) {
                 if (strpos($item->name, $advertName) != false) {
                     // Match name?
                     return true;
                 }
             });
         }
         // Search by department
         if ($filtered->count() == 0) {
             $filtered = $adverts->filter(function ($item) use($departmentID) {
                 if ($item->department_id == $departmentID) {
                     // Match ID
                     return true;
                 }
             });
         }
         $adverts = $filtered;
     } else {
         if (isset($btnFindAll)) {
             // Reset search input box
             $advertName = null;
         } else {
             abort(401, 'Un-authorised');
         }
     }
     $data = array('user' => $user, 'adverts' => $adverts, 'allowed_departments' => $allowed_departments, 'backgrounds' => Background::all());
     return view('pages/adverts', $data);
 }
Пример #4
0
 /**
  * Display the specified resource.
  *
  * @param  int  $id ID of the page to show
  * @return \Illuminate\Http\Response
  */
 public function show($adID, $id)
 {
     $match = ['id' => $id, 'deleted' => 0];
     $page = Page::where($match)->first();
     // one to one only return 1
     if ($page == null) {
         return redirect()->route('dashboard.advert.edit', [$adID])->with('message', 'Error: Could not find page');
     }
     $pageData = $page->PageData->where('id', $page->page_data_id)->orderBy('heading', 'ASC')->first();
     $advert = Advert::find($adID);
     if ($advert == null) {
         return redirect()->route('dashboard.advert.edit', [$adID])->with('message', 'Error: Advert removed before update');
     }
     $background = Background::find($advert->background_id);
     if ($background == null) {
         return redirect()->route('dashboard.advert.edit', [$adID])->with('message', 'Error: Background removed before update');
     }
     $data = array('page' => $page, 'pageData' => $pageData, 'activeTemplate' => $page->Template, 'templates' => Template::all(), 'advertBackground' => $background);
     return view('pages/pageeditor', $data);
 }