/**
  * Display restaurants having a particular category
  *
  * @param $id
  * @return \Illuminate\View\View
  */
 public function viewAction($id)
 {
     $data = array();
     if (!$id) {
         $data['errors'][] = 'Invalid ID';
     } else {
         $data['id'] = $id;
     }
     $category = Categories::find($id);
     if (!$category) {
         $data['errors'][] = 'Category not found.';
         return view('cms.category.view', $data);
     }
     $restaurants_category = RestaurantsCategory::where('category_id', $id)->get();
     if ($restaurants_category) {
         $restaurants = array();
         foreach ($restaurants_category as $restaurant_category) {
             $restaurant = Restaurants::find($restaurant_category->restaurant_id);
             if (!$restaurant) {
                 $data['errors'][] = 'Cannot find restaurant ID ' . $restaurant->id . '.';
                 return view('cms.category.view', $data);
             }
             $restaurants[] = array('id' => $restaurant->id, 'name' => $restaurant->name, 'address' => $restaurant->address, 'telephone' => $restaurant->telephone, 'rating' => $restaurant->rating, 'budget' => $restaurant->budget);
             $restaurant = null;
         }
         $data['restaurants'] = $restaurants;
     }
     $data['page_title'] = ': ' . $category->name;
     return view('cms.category.view', $data);
 }
 public function store(CategoriesRequest $request, $id = null)
 {
     if ($id == null) {
         $categories = new Categories();
     } else {
         $categories = Categories::find($id);
     }
     $categories->title = $request->titre;
     $categories->description = $request->description;
     $categories->save();
     Session::flash('success', "La categorie : {$categories->title} a bien été ajouté !");
     return Redirect::route('categories_index');
     //recupere le film de mon film ac la methode POST
     //input (name de mon champ) permet de recuperer la donéne titre de maniere safely
 }
 /**
  * action pour enregistrer en bdd les données du formulaire
  * la classe Request permet de receptionner les données en POST de manière sécurisée
  * @param $id (facultatif), valeur null par defaut
  */
 public function store(Request $request, $id = null)
 {
     if (!empty($id)) {
         $categorie = Categories::find($id);
     } else {
         $categorie = new Categories();
     }
     if (!empty($request->title)) {
         $categorie->title = $request->title;
     }
     $categorie->description = $request->description;
     /**
      * traitement de l'upload de l'image
      */
     $filename = "";
     // si j'ai un fichier image
     if ($request->hasFile('image')) {
         //recuperation de l'image
         $file = $request->file('image');
         //recuperation du nom du fichier
         $filename = $file->getClientOriginalName();
         //stockage du chemin vers lequel l'image va etre envoyée
         $destinationPath = public_path() . '/uploads/categories';
         //deplacement de l'image uploadée
         $file->move($destinationPath, $filename);
         //mise à jour de la propriété de l'objet Categories
         $categorie->image = asset('/uploads/categories/' . $filename);
     }
     if (!empty($categorie->title)) {
         // mise à jour de la propriété slug, reprise du title en minuscule, sans espace
         $categorie->slug = str_replace(" ", "-", strtolower($request->title));
     }
     //sauvegarde de l'objet Categories en base
     $categorie->save();
     //creer un messsage flash de type success
     if (!empty($id)) {
         Session::flash('success', "La catégorie {$categorie->title} a bien été modifiée.");
     } else {
         Session::flash('success', "La catégorie {$categorie->title} a bien été créée.");
     }
     //redirection vers la liste des catégories
     return Redirect::route('categories_index');
 }
Example #4
0
            $category_cur = Categories::find($category_cur->parent);
            $categories[$category_cur->category_key] = $category_cur->name;
        } else {
            $categories[$category_cur->category_key] = $category_cur->name;
            break;
        }
    }
    $categories = array_reverse($categories);
    foreach ($categories as $key => $name) {
        $breadcrumbs->push($name, route('frontend.category', $key));
    }
});
// Detail
Breadcrumbs::register('detail', function ($breadcrumbs, $news_info) {
    $category_cur = Categories::find($news_info->category_id);
    $breadcrumbs->parent('home');
    $categories[$category_cur->category_key] = $category_cur->name;
    while (true) {
        if ($category_cur->parent != 0) {
            $category_cur = Categories::find($category_cur->parent);
            $categories[$category_cur->category_key] = $category_cur->name;
        } else {
            $categories[$category_cur->category_key] = $category_cur->name;
            break;
        }
    }
    $categories = array_reverse($categories);
    foreach ($categories as $key => $name) {
        $breadcrumbs->push($name, route('frontend.category', $key));
    }
});