public function dashboardSaveAction() { if (!wa()->getUser()->isAdmin('webasyst')) { throw new waException('Access denied', 403); } $id = waRequest::request('id', 0, 'int'); $data = waRequest::request('dashboard', array(), 'array'); $dashboard_model = new waDashboardModel(); $data = array_intersect_key($data, $dashboard_model->getEmptyRow()); unset($data['id'], $data['hash']); if ($id) { $dashboard_model->updateById($id, $data); } else { $data['hash'] = self::generateHash(); $id = $dashboard_model->insert($data); } $this->displayJson($dashboard_model->getById($id)); }