/** * @desc Formulario de creación/edición de categorías **/ function formCategos($edit = 0) { global $xoopsModule, $db; $id = rmc_server_var($_GET, 'id', 0); if ($edit) { //Verificamos si categoría es válida if ($id <= 0) { redirectMsg('categories.php', __('Specified category is not valid!', 'dtransport'), 1); } //Verificamos si la categoría existe $cat = new DTCategory($id); if ($cat->isNew()) { redirectMsg('categories.php', __('Specified category does not exists!', 'dtransport'), 1); } } DTFunctions::toolbar(); xoops_cp_location("<a href='./'>" . $xoopsModule->name() . "</a> » " . ($edit ? __('Edit category', 'dtransport') : __('New category', 'dtransport'))); xoops_cp_header(); $form = new RMForm($edit ? __('Edit Category', 'dtransport') : __('New Category', 'dtransport'), 'frmcat', 'categories.php'); $form->addElement(new RMFormText(__('Category name', 'dtransport'), 'name', 50, 150, $edit ? $cat->name() : ''), true); if ($edit) { $form->addElement(new RMFormText(__('Category short name', 'dtransport'), 'nameid', 50, 150, $edit ? $cat->nameId() : '')); } $form->addElement(new RMFormTextArea(__('Description', 'dtransport'), 'desc', 5, 40, $edit ? $cat->desc('e') : '')); //Lista de categorías $ele = new RMFormSelect(__('Root category', 'dtransport'), 'parent'); $ele->addOption(0, __('Select category...', 'dtransport')); $categos = array(); DTFunctions::getCategos($categos, 0, 0, $edit ? $cat->id() : array()); foreach ($categos as $catego) { $ele->addOption($catego['id_cat'], str_repeat('--', $catego['jumps']) . ' ' . $catego['name'], $edit ? $catego['id_cat'] == $cat->parent() ? 1 : 0 : 0); } $form->addElement($ele); $form->addElement(new RMFormYesno(__('Active category', 'dtransport'), 'active', $edit ? $cat->active() : 1)); $form->addElement(new RMFormHidden('action', $edit ? 'saveedit' : 'save')); $form->addElement(new RMFormHidden('id', $id)); $buttons = new RMFormButtonGroup(); $buttons->addButton('sbt', __('Submit', 'dtransport'), 'submit'); $buttons->addButton('cancel', __('Cancel', 'dtransport'), 'button', 'onclick="window.location=\'categories.php\';"'); $form->addElement($buttons); $form->display(); xoops_cp_footer(); }
/** * @desc Formulario de Elementos **/ function formItems($edit = 0) { global $xoopsModule, $xoopsConfig, $xoopsModuleConfig, $rmc_config, $xoopsSecurity, $functions; define('RMCSUBLOCATION', 'newitem'); // Get layout data $id = intval(rmc_server_var($_REQUEST, 'id', 0)); $page = intval(rmc_server_var($_REQUEST, 'page', 0)); $search = rmc_server_var($_REQUEST, 'search', ''); $sort = rmc_server_var($_REQUEST, 'sort', 'id_soft'); $mode = intval(rmc_server_var($_REQUEST, 'mode', 0)); $catid = intval(rmc_server_var($_REQUEST, 'car', 0)); $type = rmc_server_var($_REQUEST, 'type', ''); $ev = RMEvents::get(); $params = '?page=' . $page . '&search=' . $search . '&sort=' . $sort . '&mode=' . $mode . '&cat=' . $catid . '&type=' . $type; if ($edit) { //Verificamos que el software sea válido if ($id <= 0) { redirectMsg('items.php' . $params, __('Download item has not been specified!', 'dtransport'), 1); die; } //Verificamos que el software exista if ($type == 'edit') { $sw = new DTSoftwareEdited($id); $location = __('Verifying edited item!', 'dtransport'); } else { $sw = new DTSoftware($id); $location = __('Editing download item', 'dtransport'); } if ($sw->isNew()) { redirectMsg('./items.php' . $params, __('Specified download item does not exists!', 'dtransport'), 1); die; } } else { $sw = new DTSoftware(); $location = __('New Download Item', 'dtransport'); } $form = new RMForm('', '', ''); $ed = new RMFormEditor('', 'desc', '99%', '300px', $edit ? $sw->getVar('desc', $rmc_config['editor_type'] != 'tiny' ? 'e' : 's') : '', $rmc_config['editor_type']); $ed->addClass('required'); $db = XoopsDatabaseFactory::getDatabaseConnection(); //Lista de categorías $categos = array(); $swcats = $sw->categories(); DTFunctions::getCategos($categos, 0, 0, array(), false); foreach ($categos as $row) { $cat = new DTCategory(); $cat->assignVars($row); $categories[] = array('id' => $cat->id(), 'name' => $cat->name(), 'parent' => $cat->parent(), 'active' => $cat->active(), 'description' => $cat->desc(), 'indent' => $row['jumps'], 'selected' => $edit ? in_array($cat->id(), $swcats) : ''); } unset($categos); // Licencias $sql = "SELECT * FROM " . $db->prefix('dtrans_licences'); $result = $db->queryF($sql); $lics = array(); $lics[] = array('id' => 0, 'name' => __('Other license', 'dtransport'), 'selected' => !$edit || in_array(0, $sw->licences()) ? 1 : 0); while ($row = $db->fetchArray($result)) { $lic = new DTLicense(); $lic->assignVars($row); $lics[] = array('id' => $lic->id(), 'name' => $lic->name(), 'selected' => $edit ? in_array($lic->id(), $sw->licences()) : ''); } unset($lic); // Plataformas $sql = "SELECT * FROM " . $db->prefix('dtrans_platforms'); $result = $db->queryF($sql); $oss = array(); $oss[] = array('id' => 0, 'name' => __('Other platform', 'dtransport'), 'selected' => !$edit || in_array(0, $sw->platforms()) ? 1 : 0); while ($row = $db->fetchArray($result)) { $os = new DTPlatform(); $os->assignVars($row); $oss[] = array('id' => $os->id(), 'name' => $os->name(), 'selected' => $edit ? in_array($os->id(), $sw->platforms()) : ''); } unset($os); // Allowed groups $field = new RMFormGroups('', 'groups', 1, 1, 1, $edit ? $sw->getVar('groups') : array(1, 2)); $groups = $field->render(); // Tags $ftags = $sw->tags(true); $tags = array(); foreach ($ftags as $tag) { $tags[] = $tag->getVar('tag'); } unset($ftags); RMTemplate::get()->add_style('admin.css', 'dtransport'); RMTemplate::get()->add_style('items.css', 'dtransport'); RMTemplate::get()->add_local_script('itemsform.js', 'dtransport'); RMTemplate::get()->add_local_script('jquery.validate.min.js', 'rmcommon', 'include'); include DT_PATH . '/include/js_strings.php'; DTFunctions::toolbar(); xoops_cp_location($location); xoops_cp_header(); include RMTemplate::get()->get_template('admin/dtrans_formitems.php', 'module', 'dtransport'); xoops_cp_footer(); }