예제 #1
0
 /**
  * Update the specified menu categories in storage.
  *
  * @param  int  $id
  * @return Response
  */
 public function update($id)
 {
     try {
         $input = \Input::all();
         $validator = \MenuCategory::validate($input, $id);
         unset($input['id']);
         if ($validator->passes()) {
             $menu_cat = \MenuCategory::findOrFail($id);
             if ($menu_cat->update($input)) {
                 if (\Request::ajax()) {
                     return \Response::json('The menu category was updated.', 200);
                 } else {
                     return \Redirect::to('backend/menu-categories')->with('success_message', 'The menu category was updated.');
                 }
             } else {
                 if (\Request::ajax()) {
                     return \Response::json('The menu category wasn\'t updated.', 400);
                 } else {
                     return \Redirect::to('backend/menu-categories')->with('error_message', 'The menu category wasn\'t updated.');
                 }
             }
         } else {
             // Menu validation failed
             if (\Request::ajax()) {
                 $errors = '<ul>' . implode('', $validator->getMessageBag()->all('<li>:message</li>')) . '</ul>';
                 return \Response::json($errors, 400);
             } else {
                 return \Redirect::back()->withInput()->withErrors($validator);
             }
         }
     } catch (\Exception $e) {
         if (\Request::ajax()) {
             return \Response::json('The menu category wasn\'t updated.', 400);
         } else {
             return \Redirect::to('backend/menu-categories')->with('error_message', 'The menu category wasn\'t created.');
         }
     }
 }