예제 #1
0
 /**
  * Process datatables re-order ajax request.
  * Used by 'Datatables'
  * @return \Illuminate\Http\JsonResponse
  */
 public function sort(Request $request)
 {
     $sortArray = $request->get('sortable_');
     if (is_null($sortArray)) {
         $data = ['status' => 'warning', 'statusText' => 'Geen update', 'responseText' => 'Er was geen wijziging!? (sortArray is null)'];
         return response()->json($data, 400);
     }
     try {
         $cnt = 0;
         foreach ($sortArray as $key => $sitemapId) {
             $sitemap = sitemap::find($sitemapId);
             $sitemap->timestamps = false;
             $sitemap->order_by_number = ++$cnt;
             $sitemap->save();
             //- See more at: http://findnerd.com/list/view/Update-without-touching-timestamps-Laravel/10269/#sthash.8m6PWJpT.dpuf
             //Sitemap::where('id',$sitemapId)->update(['order_by_number'=>++$cnt]);
         }
         $data = ['status' => 'success', 'statusText' => 'Update is gelukt', 'responseText' => 'De volgorde is aangepast'];
         return response()->json($data, 200);
     } catch (\Exception $e) {
         $data = ['status' => 'danger', 'statusText' => 'Update is mislukt!', 'responseText' => '' . $e->getMessage() . '<br>line: (' . $e->getLine() . ')<bR>file: (' . $e->getFile() . ')'];
         return response()->json($data, 400);
     }
     return "sort";
 }