* Finish sort order on dept.
This commit is contained in:
@@ -40,7 +40,7 @@ class dept extends control
|
||||
{
|
||||
if(!empty($_POST))
|
||||
{
|
||||
$this->dept->updateOrder($_POST['orders']);
|
||||
$this->dept->updateOrder(explode(',', $_POST['orders']));
|
||||
return $this->send(array('result' => 'success', 'message' => $this->lang->saveSuccess, 'load' => true));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,3 +18,12 @@ window.operateDept = function(event, item, index)
|
||||
$button.addClass('ajax-submit');
|
||||
}
|
||||
}
|
||||
|
||||
window.onSort = function(event, orders, parentKey)
|
||||
{
|
||||
const url = $.createLink('dept', 'updateOrder');
|
||||
const form = new FormData();
|
||||
form.append('orders', orders);
|
||||
|
||||
$.ajaxSubmit({url, data:form});
|
||||
}
|
||||
|
||||
@@ -253,7 +253,12 @@ class deptModel extends model
|
||||
*/
|
||||
public function updateOrder($orders): bool
|
||||
{
|
||||
foreach($orders as $deptID => $order) $this->dao->update(TABLE_DEPT)->set('`order`')->eq($order)->where('id')->eq($deptID)->exec();
|
||||
$order = 1;
|
||||
foreach($orders as $deptID)
|
||||
{
|
||||
$this->dao->update(TABLE_DEPT)->set('`order`')->eq($order)->where('id')->eq($deptID)->exec();
|
||||
$order ++;
|
||||
}
|
||||
return !dao::isError();
|
||||
}
|
||||
|
||||
|
||||
@@ -16,9 +16,11 @@ $processTreeAction = function($tree) use (&$processTreeAction)
|
||||
|
||||
$canEditDept = hasPriv('dept', 'edit');
|
||||
$canDeleteDept = hasPriv('dept', 'delete');
|
||||
$canSortDept = hasPriv('dept', 'updateOrder');
|
||||
foreach($tree as $node)
|
||||
{
|
||||
$actions = array();
|
||||
if($canSortDept) $actions[] = array('key' => 'sort', 'icon' => 'move', 'hint' => $lang->dept->order, 'onClick' => jsRaw('window.operateDept'));
|
||||
if($canEditDept) $actions[] = array('key' => 'edit', 'icon' => 'edit', 'hint' => $lang->dept->edit, 'onClick' => jsRaw('window.operateDept'));
|
||||
if(empty($node->items) && $canDeleteDept) $actions[] = array('key' => 'delete', 'icon' => 'trash', 'hint' => $lang->dept->delete, 'onClick' => jsRaw('window.operateDept'));
|
||||
if(!empty($node->items)) $node->items = $processTreeAction($node->items);
|
||||
@@ -90,7 +92,9 @@ sidebar
|
||||
(
|
||||
set::id('deptTree'),
|
||||
set::items($tree),
|
||||
set::hover(true)
|
||||
set::hover(true),
|
||||
set::sortable(array('handle' => '.icon-move')),
|
||||
set::onSort(jsRaw('window.onSort'))
|
||||
)
|
||||
)
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user