public function postSave($id = false) { #Helper::dd($entity); if (@$id) { Allow::permission($this->module['group'], 'edit'); } else { Allow::permission($this->module['group'], 'create'); } if (!Request::ajax()) { App::abort(404); } #$id = Input::get('id'); $input = Input::all(); if (Allow::action($this->module['group'], 'settings')) { $input['entity'] = Input::get('entity') ? 1 : NULL; $input['hide_slug'] = Input::get('hide_slug') ? 1 : NULL; $input['make_slug_from_name'] = Input::get('make_slug_from_name') > 0 ? (int) Input::get('make_slug_from_name') : NULL; $input['name_title'] = Input::get('name_title') ?: NULL; $input['view_access'] = is_numeric(Input::get('view_access')) ? (int) Input::get('view_access') : NULL; $input['sortable'] = Input::get('sortable') ? (int) Input::get('sortable') : 0; $input['sort_by'] = Input::get('sort_by') != 'order' ? Input::get('sort_by') : NULL; } $json_request['responseText'] = "<pre>" . print_r($_POST, 1) . "</pre>"; #return Response::json($json_request,200); $json_request = array('status' => FALSE, 'responseText' => '', 'responseErrorText' => '', 'redirect' => FALSE); $validator = Validator::make($input, array('name' => 'required')); if ($validator->passes()) { $redirect = false; if ($id > 0 && NULL !== ($element = Dictionary::find($id))) { #$json_request['responseText'] = "<pre>" . print_r($_POST, 1) . "</pre>"; #return Response::json($json_request,200); $element->update($input); $redirect = false; } else { $element = new Dictionary(); $element->save(); $element->update($input); $dic_id = $element->id; $redirect = action('dicval.index', array('dic_id' => $dic_id)); } ## Clear & reload dics cache Dic::drop_cache(); Dic::preload(); $json_request['responseText'] = 'Сохранено'; if ($redirect) { $json_request['redirect'] = $redirect; } $json_request['status'] = TRUE; } else { $json_request['responseText'] = 'Неверно заполнены поля'; $json_request['responseErrorText'] = $validator->messages()->all(); } return Response::json($json_request, 200); }