public function action_new() { $fieldset = array(); $folders = $this->getFolders(); $group = new Model_Material('groups'); $data['groups'] = $group->getTree(); $gid = $this->request->param('id'); if ($gid != NULL) { $fields = $group->getParams($gid); foreach ($fields as $field) { //генерируем код для каждого поля //если поле - список выбора if ($field['type'] == 'select') { $values = $group->getSelectValues($field['id']); $field['myValues'] = $values; } if ($field['type'] == 'photoalbum') { $base = new Model_Base(); $options = $base->getOptions(); $field['photos_base_path'] = $options['photos_base_path']; } if ($field['type'] == 'files') { $base = new Model_Base(); $options = $base->getOptions(); $field['files_base_path'] = $options['files_base_path']; } $fieldset[] = View::factory('admin/fields/' . $field['type'])->bind('data', $field)->bind('folders', $folders)->bind('multiselect', $field['multiselect'])->bind('user', $this->user)->render(); } $data['fieldset'] = $fieldset; } if (isset($_POST['new_material'])) { //PC::debug($_POST); //var_dump($_POST); $res = $group->newMaterial($_POST, $gid, $_FILES); if ($res) { Controller::redirect('admin/materials/' . $gid); } else { $data['errors'] = $group->getErrors(); } } if (isset($_POST['save_selects'])) { $selects = new Model_Params_Selects(); $values = $_POST; unset($values['save_selects']); $selects->saveSelectsValues($values, $_POST['save_selects']); } if (isset($_POST['save_param'])) { $selects = new Model_Selects(); $values = $_POST; unset($values['save_param']); $selects->saveSelectsParam($values, $_POST['save_param'], $_FILES); } $wpm['status'] = Cookie::get('wpm', FALSE); $wpm['folder'] = Cookie::get('wpm_folder', ''); $pictures = $this->action_pictures($wpm['folder']); $this->template->content = View::factory('admin/admMaterials', array('data' => $data, 'folders' => $folders, 'pictures' => $pictures, 'wpm' => $wpm, 'user' => $this->user)); }
public function action_new() { $fieldset = array(); $group = new Model_Material('groups'); $data['groups'] = $group->getTree(); $gid = $this->request->param('id'); if ($gid != NULL) { $fields = $group->getParams($gid); foreach ($fields as $field) { //генерируем код для каждого поля //если поле - список выбора if ($field['type'] == 'select') { $values = $group->getSelectValues($field['id']); $field['myValues'] = $values; } $fieldset[] = View::factory('admin/fields/' . $field['type'])->bind('data', $field)->render(); } $data['fieldset'] = $fieldset; } if (isset($_POST['new_material'])) { $res = $group->newMaterial($_POST, $gid, $_FILES); if ($res) { Controller::redirect('admin/materials/' . $gid); } else { $data['errors'] = $group->getErrors(); } } $wpm['status'] = Cookie::get('wpm', FALSE); $wpm['folder'] = Cookie::get('wpm_folder', ''); $folders = $this->getFolders(); $pictures = $this->action_pictures($wpm['folder']); $this->template->content = View::factory('admin/admMaterials', array('data' => $data, 'folders' => $folders, 'pictures' => $pictures, 'wpm' => $wpm, 'user' => $this->user)); }