diff --git a/app/Http/Controllers/TransactionController.php b/app/Http/Controllers/TransactionController.php index be952d0a99..dd12f4ed8f 100644 --- a/app/Http/Controllers/TransactionController.php +++ b/app/Http/Controllers/TransactionController.php @@ -15,7 +15,7 @@ use Input; use Redirect; use Session; use View; - +use Response; /** * Class TransactionController @@ -199,7 +199,14 @@ class TransactionController extends Controller $page = intval(\Input::get('page')); $offset = $page > 0 ? ($page - 1) * 50 : 0; - $set = Auth::user()->transactionJournals()->transactionTypes($types)->withRelevantData()->take(50)->offset($offset)->orderBy('date', 'DESC')->get( + $set = Auth::user()-> + transactionJournals()-> + transactionTypes($types)-> + withRelevantData()->take(50)->offset($offset) + ->orderBy('date', 'DESC') + ->orderBy('order','ASC') + ->orderBy('id','DESC') + ->get( ['transaction_journals.*'] ); $count = Auth::user()->transactionJournals()->transactionTypes($types)->count(); @@ -216,6 +223,18 @@ class TransactionController extends Controller public function reorder() { $ids = Input::get('items'); + if (count($ids) > 0) { + $order = 0; + foreach ($ids as $id) { + $journal = Auth::user()->transactionjournals()->where('id', $id)->where('date', Input::get('date'))->first(); + if($journal) { + $journal->order = $order; + $order++; + $journal->save(); + } + } + } + return Response::json(true); } diff --git a/public/js/transactions.js b/public/js/transactions.js index a6d5ee37e1..b607a98cd1 100644 --- a/public/js/transactions.js +++ b/public/js/transactions.js @@ -33,8 +33,7 @@ $(document).ready(function () { helper: fixHelper, items: 'tr:not(.ignore)', stop: sortStop, - handle: '.handle', - revert: 'invalid' + handle: '.handle' } ).disableSelection(); }); @@ -69,7 +68,8 @@ function sortStop(event, ui) { submit.push(id); }); - $.post('/transaction/reorder',{items: submit,_token:token}); + // do extra animation when done? + $.post('/transaction/reorder',{items: submit,date: thisDate,_token:token}); console.log(submit); //console.log('TRUE!');