/** * @desc Formulario de creación/edición de clientes **/ function formClients($edit = 0) { global $xoopsModule, $db; $id = isset($_REQUEST['id']) ? intval($_REQUEST['id']) : 0; $page = isset($_REQUEST['pag']) ? $_REQUEST['pag'] : ''; $limit = isset($_REQUEST['limit']) ? intval($_REQUEST['limit']) : 15; $ruta = "pag={$page}&limit={$limit}"; if ($edit) { //Verificamos si el cliente es válido if ($id <= 0) { redirectMsg('./clients.php?' . $ruta, __('You must provide a customer ID', 'works'), 1); die; } //Verificamos si el cliente existe $client = new PWClient($id); if ($client->isNew()) { redirectMsg('./clients.php?' . $ruta, __('Specified customer does not exists!', 'works'), 1); die; } } xoops_cp_location('<a href="./">' . $xoopsModule->name() . "</a> » <a href='./clients.php'>" . __('Customers', 'works') . "</a> »" . ($edit ? __('Edit Customer', 'works') : __('New Customer', 'works'))); RMTemplate::get()->assign('xoops_pagetitle', __('Customers', 'works')); PWFunctions::toolbar(); xoops_cp_header(); $form = new RMForm($edit ? __('Edit Customer', 'works') : __('New Customer', 'works'), 'frmClient', 'clients.php'); $form->addElement(new RMFormText(__('Name', 'works'), 'name', 50, 200, $edit ? $client->name() : ''), true); $form->addElement(new RMFormText(__('Company', 'works'), 'business', 50, 200, $edit ? $client->businessName() : '')); $form->addElement(new RMFormText(__('Email address', 'works'), 'mail', 50, 100, $edit ? $client->email() : '')); $form->addElement(new RMFormTextArea(__('Description', 'works'), 'desc', 4, 50, $edit ? $client->desc() : ''), true); //Tipos de Cliente $ele = new RMFormSelect(__('Type', 'works'), 'type'); $ele->addOption(0, _SELECT); $result = $db->query("SELECT * FROM " . $db->prefix('pw_types')); while ($row = $db->fetchArray($result)) { $ele->addOption($row['id_type'], $row['type'], $edit ? $row['id_type'] == $client->type() ? 1 : 0 : 0); } $form->addElement($ele, true, 'noselect:0'); $form->addElement(new RMFormHidden('op', $edit ? 'saveedit' : 'save')); $form->addElement(new RMFormHidden('id', $id)); $form->addElement(new RMFormHidden('page', $page)); $form->addElement(new RMFormHidden('limit', $limit)); $ele = new RMFormButtonGroup(); $ele->addButton('sbt', $edit ? __('Save Changes', 'works') : __('Create Customer', 'works'), 'submit'); $ele->addButton('cancel', __('Cancel', 'works'), 'button', 'onclick="window.location=\'clients.php?' . $ruta . '\';"'); $form->addElement($ele); //Event $form = RMEvents::get()->run_event('works.form.customers', $form); $form->display(); xoops_cp_footer(); }
/** * @desc Visualiza todos los trabajos existentes **/ function showWorks() { global $xoopsModule, $xoopsSecurity; $db = XoopsDatabaseFactory::getDatabaseConnection(); $page = rmc_server_var($_REQUEST, 'page', 1); $limit = rmc_server_var($_REQUEST, 'limit', 15); $show = rmc_server_var($_REQUEST, 'show', ''); //Barra de Navegación $sql = "SELECT COUNT(*) FROM " . $db->prefix('pw_works'); if ($show == 'public') { $sql .= " WHERE public=1"; } elseif ($show == 'hidden') { $sql .= " WHERE public=0"; } list($num) = $db->fetchRow($db->query($sql)); $tpages = ceil($num / $limit); $page = $page > $tpages ? $tpages : $page; $start = $num <= 0 ? 0 : ($page - 1) * $limit; $nav = new RMPageNav($num, $limit, $page, 5); $nav->target_url('works.php?page={PAGE_NUM}'); $sql = "SELECT * FROM " . $db->prefix('pw_works'); if ($show == 'public') { $sql .= " WHERE public=1"; } elseif ($show == 'hidden') { $sql .= " WHERE public=0"; } $sql .= " ORDER BY id_work DESC LIMIT {$start}, {$limit}"; $result = $db->query($sql); $works = array(); //Container while ($row = $db->fetchArray($result)) { $work = new PWWork(); $work->assignVars($row); //Obtenemos la categoría $cat = new PWCategory($work->category()); //Obtenemos el cliente $user = new PWClient($work->client()); $works[] = array('id' => $work->id(), 'title' => $work->title(), 'catego' => $cat->name(), 'client' => $user->name(), 'start' => formatTimeStamp($work->start(), 's'), 'mark' => $work->mark(), 'public' => $work->isPublic(), 'description' => $work->descShort()); } PWFunctions::toolbar(); RMTemplate::get()->add_style('admin.css', 'works'); RMTemplate::get()->add_script(RMCURL . '/include/js/jquery.checkboxes.js'); RMTemplate::get()->add_script('../include/js/admin_works.js'); RMTemplate::get()->add_head("<script type='text/javascript'>\nvar pw_message='" . __('Do you really want to delete selected works?', 'works') . "';\n\n var pw_select_message = '" . __('You must select some work before to execute this action!', 'works') . "';</script>"); xoops_cp_location('<a href="./">' . $xoopsModule->name() . "</a> » " . __('Works', 'works')); xoops_cp_header(); include RMTemplate::get()->get_template("admin/pw_works.php", 'module', 'works'); xoops_cp_footer(); }
function pw_works_edit($options) { global $db; include_once XOOPS_ROOT_PATH . '/modules/works/class/pwclient.class.php'; include_once XOOPS_ROOT_PATH . '/modules/works/class/pwcategory.class.php'; //Tipo de Trabajo $form = new RMForm(__('Block Options', 'works'), 'form_options', ''); $ele = new RMFormSelect(__('Works type', 'works'), 'options[0]'); $ele->addOption(0, __('Reandom works', 'works'), $options[0] == 0 ? 1 : 0); $ele->addOption(1, __('Featured works', 'works'), $options[0] == 1 ? 1 : 0); $ele->addOption(2, __('Recent works', 'works'), $options[0] == 2 ? 1 : 0); $form->addElement($ele); //Obtenemos las categorías $ele = new RMFormSelect(__('Category', 'works'), 'options[1]'); $ele->addOption(0, __('All categories', 'works')); $db = XoopsDatabaseFactory::getDatabaseConnection(); $result = $db->query("SELECT * FROM " . $db->prefix('pw_categos') . " WHERE active=1"); while ($row = $db->fetchArray($result)) { $cat = new PWCategory(); $cat->assignVars($row); $ele->addOption($cat->id(), $cat->name(), $options[1] == $cat->id() ? 1 : 0); } $form->addElement($ele, true); //Obtenemos los clientes $ele = new RMFormSelect(__('Customer', 'works'), 'options[2]'); $ele->addOption(0, __('All customers', 'works')); $result = $db->query("SELECT * FROM " . $db->prefix('pw_clients')); while ($row = $db->fetchArray($result)) { $client = new PWClient(); $client->assignVars($row); $ele->addOption($client->id(), $client->name(), isset($ptions[2]) ? $options[2] == $client->id() ? 1 : 0 : 0); } $form->addElement($ele, true); //Número de trabajos $form->addElement(new RMFormText(__('Works number', 'works'), 'options[3]', 5, 5, isset($options[3]) ? $options[3] : ''), true); $form->addElement(new RMFormText(__('Columns', 'works'), 'options[4]', 5, 5, isset($options[4]) ? $options[4] : ''), true); $form->addElement(new RMFormYesno(__('Show work image', 'works'), 'options[5]', isset($options[5]) ? $options[5] ? 1 : 0 : 0), true); $form->addElement(new RMFormYesno(__('Show description', 'works'), 'options[6]', isset($options[6]) ? $options[6] ? 1 : 0 : 0), true); return $form->render(false); }