public function run() { require_once _lms_ . '/lib/lib.kbres.php'; $kbres = new KbRes(); $data = false; if ($this->res_id > 0) { $data = $kbres->getResource($this->res_id, true, true); } else { if (!empty($this->r_item_id) && !empty($this->r_type)) { $data = $kbres->getResourceFromItem($this->r_item_id, $this->r_type, $this->r_env, true, true); } } if ($data == false) { $data = array('res_id' => 0, 'r_name' => '', 'original_name' => '', 'r_desc' => '', 'r_item_id' => $this->r_item_id, 'r_type' => $this->r_type, 'r_env' => $this->r_env, 'r_env_parent_id' => $this->r_env_parent_id, 'r_param' => $this->r_param, 'r_alt_desc' => '', 'r_lang' => !empty($this->language) ? $this->language : getLanguage(), 'force_visible' => 0, 'is_mobile' => 0, 'folders' => array(), 'tags' => array()); } if (!empty($this->original_name)) { $data['original_name'] = $this->original_name; } $c_folders = array_keys($data['folders']); unset($data['folders']); $c_tags = $data['tags']; unset($data['tags']); $json = new Services_JSON(); $this->render('kbcategorize', array('selected_node' => $this->_getSelectedNode(), 'back_url' => $this->back_url, 'form_url' => $this->form_url, 'form_extra_hidden' => $this->form_extra_hidden, 'data' => $data, 'c_folders' => $c_folders, 'c_tags_json' => $json->encode(array_values($c_tags)), 'all_tags_json' => $json->encode(array_values($kbres->getAllTags())))); }
public function categorize() { if (!$this->permissions['mod']) { $this->render('invalid', array('message' => $this->_getMessage('no permission'), 'back_url' => 'index.php?r=alms/games/show')); return; } $id_game = Get::req('id_game', DOTY_INT, 0); require_once _lms_ . '/lib/lib.kbres.php'; $kbres = new KbRes(); if ($id_game > 0) { $data = $this->model->findByPk($id_game); $r_data = $kbres->getResourceFromItem($data['id_resource'], $data['type_of'], 'games'); } if (isset($_POST['subcategorize_switch'])) { $cat_sub_items = Get::pReq('subcategorize_switch', DOTY_INT); $res_id = (int) $r_data['res_id']; $r_env_parent_id = (int) $r_data['r_env_parent_id']; $kbres->saveResourceSubCategorizePref($res_id, $cat_sub_items); Util::jump_to('index.php?r=alms/games/categorize&id_game=' . $r_env_parent_id); die; } else { if (isset($_POST['org_categorize_save'])) { require_once _lms_ . '/lib/lib.kbres.php'; $res_id = Get::req('res_id', DOTY_INT, 0); $name = Get::req('r_name', DOTY_STRING, ""); $original_name = ''; // won't update this field $desc = Get::req('r_desc', DOTY_STRING, ""); $r_item_id = Get::req('r_item_id', DOTY_INT, 0); $type = Get::req('r_type', DOTY_STRING, ""); $env = Get::req('r_env', DOTY_STRING, ""); $env_parent_id = Get::req('r_env_parent_id', DOTY_INT, 0); $param = Get::req('r_param', DOTY_STRING, ""); $alt_desc = ''; $lang_id = Get::req('r_lang', DOTY_INT, ""); $lang_arr = Docebo::langManager()->getAllLangCode(); $lang = $lang_arr[$lang_id]; $force_visible = Get::req('force_visible', DOTY_INT, 0); $is_mobile = Get::req('is_mobile', DOTY_INT, 0); $folders = Get::req('h_selected_folders', DOTY_STRING, ""); $json_tags = Util::strip_slashes(Get::req('tag_list', DOTY_STRING, "[]")); $kbres = new KbRes(); $res_id = $kbres->saveResource($res_id, $name, $original_name, $desc, $r_item_id, $type, $env, $env_parent_id, $param, $alt_desc, $lang, $force_visible, $is_mobile, $folders, $json_tags); Util::jump_to('index.php?r=alms/games/show'); } else { if (isset($_POST['org_categorize_cancel'])) { Util::jump_to('index.php?r=alms/games/show'); } else { if ($data['type_of'] == 'scorm' && $r_data && $r_data['sub_categorize'] == 1) { $this->categorize_sco($id_game, $data); } else { $data = $this->model->findByPk($id_game); $data['item_id'] = $id_game; $this->render('categorize', array('id_game' => $id_game, 'data' => $data, 'r_param' => '', 'back_url' => 'index.php?r=alms/games/show', 'form_url' => 'index.php?r=alms/games/categorize&id_game=' . $id_game)); } } } } }
function organization_categorize_switch_subcat(&$treeView, $idItem) { require_once _lms_ . '/lib/lib.kbres.php'; $kbres = new KbRes(); $folder = $treeView->tdb->getFolderById($idItem); $data = $folder->otherValues; $type = $data[REPOFIELDOBJECTTYPE]; $r_data = $kbres->getResourceFromItem($data[REPOFIELDIDRESOURCE], $type, 'course_lo'); $cat_sub_items = Get::pReq('subcategorize_switch', DOTY_INT); $res_id = (int) $r_data['res_id']; $r_env_parent_id = (int) $r_data['r_env_parent_id']; $kbres->saveResourceSubCategorizePref($res_id, $cat_sub_items); if ($cat_sub_items == 1) { organization_jump_select_sco($treeView, $idItem, $folder, $data, $type); die; } else { organization_categorize($treeView, $idItem); } }