/** * Muestra el formulario para la creación de un nuevo artículo */ function newForm($edit = 0, $redir = false) { global $db, $mc, $xoopsModule, $myts, $util; foreach ($_REQUEST as $k => $v) { ${$k} = $v; } $page = isset($page) ? $page : 1; if ($edit) { $id = isset($_REQUEST['id']) ? $_REQUEST['id'] : 0; if ($id <= 0) { redirectMsg("pages.php?cat={$cat}&page={$page}", __('You must provide a page ID to edit!', 'qpages'), 1); die; } $page = new QPPage($id); } RMTemplate::get()->add_script('../include/js/forms_pages.js'); xoops_cp_location('<a href="./">' . $xoopsModule->name() . '</a> » ' . ($edit ? __('Edit page', 'qpages') : __('New page', 'qpages'))); xoops_cp_header(); $form = new RMForm($edit ? __('Edit Page', 'qpages') : __('New Page', 'qpages'), 'frmNew', 'pages.php'); $form->styles('width: 25%;', 'odd'); $form->addElement(new RMFormText(__('Page title', 'qpages'), 'titulo', 50, 255, $edit ? $page->getTitle() : ''), true); if ($edit) { $ele = new RMFormText(__('Friendly title', 'qpages'), 'titulo_amigo', 50, 255, $page->getFriendTitle()); $ele->setDescription(__('Specify a title to use in friendly urls. Remember, this title must not contain any blank space or special char, only numbers or letters.')); $form->addElement($ele); $form->addElement(new RMFormHidden('id', $page->getID())); } $ele = new RMFormSelect(__('Category', 'qpages'), 'catego', 0); $categos = array(); qpArrayCategos($categos); $ele->addOption('0', __('Select category...', 'qpages'), $edit ? 0 : 1); foreach ($categos as $k) { $ele->addOption($k['id_cat'], str_repeat("-", $k['saltos']) . " " . $k['nombre'], $edit ? $k['id_cat'] == $page->getCategory() ? 1 : 0 : 0); } $form->addElement($ele, true, "Select:0"); $form->addElement(new RMFormTextArea(__('Introduction', 'qpages'), 'desc', 5, 60, $edit ? $page->getVar('desc', 'e') : '')); $ele = new RMFormEditor(__('Page content', 'qpages'), 'texto', '100%', '450px', $edit ? $page->getText() : ''); $form->addElement($ele, true); if ($edit) { $html = $page->html(); $xcode = $page->xcode(); $br = $page->br(); $image = $page->image(); $smiley = $page->smiley(); } else { $html = 1; $xcode = 0; $br = 0; $image = 0; $smiley = 1; } $form->addElement(new RMFormTextOptions(__('Text options', 'qpages'), $html, $xcode, $image, $smiley, $br)); // Grupos $ele = new RMFormGroups(__('Allowed groups', 'qpages'), 'grupos', 1, 1, 3, $edit ? $page->getGroups() : array(0)); $ele->setDescription(__('These groups can access and read page content.', 'qpages')); $form->addElement($ele); $ele = new RMFormRadio(__('Status', 'qpages'), 'acceso', 1); $ele->addOption(__('Public', 'qpages'), '1', $edit ? $page->getAccess() ? 1 : 0 : 0); $ele->addOption(__('Draft', 'qpages'), '0', $edit ? $page->getAccess() ? 0 : 1 : 1); $form->addElement($ele); $page_metas = $edit ? $page->get_meta() : array(); $available_metas = qp_get_metas(); include 'metas.php'; $form->addElement(new RMFormLabel(__('Custom Fields', 'qpages'), $meta_data)); $ele = new RMFormButtonGroup(); $ele->addButton('sbt', $edit ? __('Update Page', 'qpages') : __('Save Page', 'qpages'), 'submit'); $ele->addButton('cancel', __('Cancel', 'qpages'), 'button', 'onclick="history.go(-1);"'); $form->addElement($ele); $form->addElement(new RMFormHidden('op', $edit ? 'saveedit' : 'save')); $form->addElement(new RMFormHidden('type', 0)); $form->addElement(new RMFormHidden('cat', $cat)); $form->addElement(new RMFormHidden('page', $page)); $form->display(); xoops_cp_footer(); }