public function show() { PHPWS_Core::initCoreClass('Form.php'); $form = new PHPWS_Form(); $form->addDropBox('rlc', HMS_Learning_Community::getRlcList()); $form->setClass('rlc', 'form-control'); $form->addHidden('module', 'hms'); $form->addHidden('action', 'ShowSearchByRlc'); $form->addSubmit('submit', _('Search')); $form->setClass('submit', 'btn btn-primary pull-right'); $tags = $form->getTemplate(); $tags['TITLE'] = "RLC Search"; Layout::addPageTitle("RLC Search"); $final = PHPWS_Template::processTemplate($tags, 'hms', 'admin/search_by_rlc.tpl'); return $final; }
public function show() { PHPWS_Core::initModClass('hms', 'HMS_Lottery.php'); PHPWS_Core::initModClass('hms', 'LotteryApplication.php'); $this->setTitle('Special Interest Group'); javascript('jquery'); $tpl = array(); $groups = HMS_Lottery::getSpecialInterestGroupsMap(); // If a group was selected if (!is_null($this->group) && $this->group != 'none') { $tpl['GROUP_PAGER'] = LotteryApplication::specialInterestPager($this->group, PHPWS_Settings::get('hms', 'lottery_term')); $tpl['GROUP'] = $groups[$this->group]; } // Show the drop down box of groups $form = new PHPWS_Form('special_interest'); $form->setMethod('get'); $form->addDropBox('group', $groups); $form->setClass('group', 'form-control'); $form->setMatch('group', $this->group); $cmd = CommandFactory::getCommand('ShowSpecialInterestGroupApproval'); $cmd->initForm($form); $form->mergeTemplate($tpl); $tpl = $form->getTemplate(); return PHPWS_Template::process($tpl, 'hms', 'admin/special_interest_approval.tpl'); }
public static function contactForm() { $form = new \PHPWS_Form('contact-login'); $form->addHidden('module', 'properties'); $form->addHidden('cop', 'login'); $form->addText('c_username'); $form->setPlaceHolder('c_username', 'Username'); $form->setSize('c_username', 10); $form->setClass('c_username', 'form-control'); $form->addPassword('c_password'); $form->setPlaceHolder('c_password', 'Password'); $form->setSize('c_password', 10); $form->setClass('c_password', 'form-control'); $form->addSubmit('submit', 'Log in to Manager Account'); $form->setClass('submit', 'btn btn-success'); return $form; }
public function execute(CommandContext $context) { $options = array(ASSIGN_ADMIN => 'Administrative', ASSIGN_LOTTERY => 'Lottery', ASSIGN_FR => 'Freshmen', ASSIGN_TRANSFER => 'Transfer', ASSIGN_APH => 'APH', ASSIGN_RLC_FRESHMEN => 'RLC Freshmen', ASSIGN_RLC_TRANSFER => 'RLC Transfer', ASSIGN_RLC_CONTINUING => 'RLC Continuing', ASSIGN_HONORS_FRESHMEN => 'Honors Freshmen', ASSIGN_HONORS_CONTINUING => 'Honors Continuing', ASSIGN_LLC_FRESHMEN => 'LLC Freshmen', ASSIGN_LLC_CONTINUING => 'LLC Continuing', ASSIGN_INTL => 'International', ASSIGN_RA => 'RA', ASSIGN_RA_ROOMMATE => 'RA Roommate', ASSIGN_MEDICAL => 'Medical', ASSIGN_SPECIAL => 'Special Needs', ASSIGN_RHA => 'RHA/NRHH', ASSIGN_SCHOLARS => 'Diversity & Plemmons Scholars'); $form = new PHPWS_Form('select_assignment'); $form->addSelect('type', $options); $form->setMatch('type', ASSIGN_ADMIN); $form->setClass('type', 'form-control'); $template = $form->getTemplate(); echo \PHPWS_Template::process($template, 'hms', 'admin/assignment_type_dropbox.tpl'); exit; }
public function execute(CommandContext $context) { $options = array(BANNER_MEAL_LOW => 'Low', BANNER_MEAL_STD => 'Standard', BANNER_MEAL_HIGH => 'High', BANNER_MEAL_SUPER => 'Super', BANNER_MEAL_5WEEK => 'Summer (5 Weeks)', BANNER_MEAL_NONE => 'None'); $form = new PHPWS_Form('select_meal'); $form->addSelect('mealplan', $options); // If summer term, set default as Summer 5Week $term = Term::getSelectedTerm(); if (strlen($term) >= 2 && (substr($term, -2) == TERM_SUMMER1 || substr($term, -2) == TERM_SUMMER2)) { $form->setMatch('mealplan', BANNER_MEAL_5WEEK); } else { $form->setMatch('mealplan', BANNER_MEAL_STD); } $form->setClass('mealplan', 'form-control'); $template = $form->getTemplate(); echo \PHPWS_Template::process($template, 'hms', 'admin/get_meal_plan_dropbox.tpl'); exit; }
public function form() { javascript('jquery'); javascriptMod('properties', 'generate'); \Layout::addStyle('properties', 'forms.css'); $form = new \PHPWS_Form('contact'); $form->addHidden('module', 'properties'); if (!empty($this->id)) { $form->addHidden('cid', $this->id); $form->addSubmit('Update contact'); } else { $form->addSubmit('Add contact'); } if (isset($_SESSION['Contact_User']) && !\Current_User::allow('properties')) { $form->addHidden('cop', 'save_contact'); $form->addHidden('k', $_SESSION['Contact_User']->getKey()); } else { $form->addHidden('aop', 'save_contact'); $form->addText('username', $this->username); $form->setClass('username', 'form-control'); $form->setLabel('username', 'User name'); $form->setSize('username', '20', '20'); $form->setRequired('username'); $form->addButton('make_password', 'Create'); $form->setId('make_password', 'make-password'); $form->setClass('make_password', 'btn btn-default'); $form->addCheck('contact_contact', 1); $form->setLabel('contact_contact', 'Send contact email'); if (!$this->id) { $form->setMatch('contact_contact', 1); } } $form->addPassword('password'); $form->setLabel('password', 'Password'); $form->setClass('password', 'form-control'); $form->addPassword('pw_check'); $form->setLabel('pw_check', 'Retype password below'); $form->setClass('pw_check', 'form-control'); $form->addText('first_name', $this->first_name); $form->setLabel('first_name', 'Contact first name'); $form->setRequired('first_name'); $form->setClass('first_name', 'form-control'); $form->addText('last_name', $this->last_name); $form->setLabel('last_name', 'Contact last name'); $form->setRequired('last_name'); $form->setClass('last_name', 'form-control'); $form->addText('phone', $this->getPhone()); $form->setLabel('phone', 'Phone number'); $form->setRequired('phone'); $form->setClass('phone', 'form-control'); $form->addText('email_address', $this->email_address); $form->setLabel('email_address', 'Email address'); $form->setRequired('email_address'); $form->setSize('email_address', 40); $form->setClass('email_address', 'form-control'); $form->addText('company_name', $this->company_name); $form->setLabel('company_name', 'Company name'); $form->setRequired('company_name'); $form->setSize('company_name', 40); $form->setClass('company_name', 'form-control'); $form->addText('company_url', $this->company_url); $form->setLabel('company_url', 'Company url'); $form->setSize('company_url', 40); $form->setClass('company_url', 'form-control'); $form->addText('company_address', $this->company_address); $form->setLabel('company_address', 'Company (or renter) address'); $form->setClass('company_address', 'form-control'); $form->addTextArea('times_available', $this->times_available); $form->setLabel('times_available', 'Days and hours available for contact'); $form->setRows('times_available', 4); $form->setCols('times_available', 20); $form->setClass('times_available', 'form-control'); $tpl = $form->getTemplate(); if (!empty($this->errors)) { foreach ($this->errors as $key => $message) { $new_key = strtoupper($key) . '_ERROR'; $tpl[$new_key] = $message; } } return \PHPWS_Template::process($tpl, 'properties', 'edit_contact.tpl'); }
public static function editFeed($feed = null, $add_submit = false) { if (empty($feed)) { $feed = new RSS_Feed(); } $form = new PHPWS_Form(); $form->addHidden('feed_id', $feed->id); $form->addHidden('module', 'rss'); $form->addHidden('command', 'save_feed'); $form->addTextArea('address', $feed->address); $form->setClass('address', 'form-control'); $form->setLabel('address', dgettext('rss', 'Address')); $form->addText('title', $feed->title); $form->setClass('title', 'form-control'); $form->setLabel('title', dgettext('rss', 'Title')); $form->addText('item_limit', $feed->item_limit); $form->setClass('item_limit', 'form-control'); $form->setSize('item_limit', 2); $form->setLabel('item_limit', dgettext('rss', 'Item limit')); $form->addText('refresh_time', $feed->refresh_time); $form->setClass('refresh_time', 'form-control'); $form->setSize('refresh_time', 5); $form->setLabel('refresh_time', dgettext('rss', 'Refresh time')); if ($add_submit) { $form->addSubmit('submit', dgettext('rss', 'Save')); $form->setClass('submit', 'btn btn-primary'); } $template = $form->getTemplate(); $template['TITLE_WARNING'] = dgettext('rss', 'Feed title will be used if left empty'); $template['REFRESH_WARNING'] = dgettext('rss', 'In seconds'); $content = PHPWS_Template::process($template, 'rss', 'add_feed.tpl'); return $content; }
/** * Form for meta tags. Used for site mata tags and individual key * meta tags. */ public static function metaForm($key_id = 0) { $meta_description = $meta_keywords = $page_title = null; $meta_robots = '11'; if (!$key_id) { $vars = $_SESSION['Layout_Settings']->getMetaTags(); } else { $vars = $_SESSION['Layout_Settings']->getPageMetaTags($key_id); if (empty($vars)) { $vars = $_SESSION['Layout_Settings']->getMetaTags(); $key = new Key($key_id); $vars['page_title'] = $key->title; } } if (is_array($vars)) { extract($vars); } $index = substr($meta_robots, 0, 1); $follow = substr($meta_robots, 1, 1); $form = new PHPWS_Form('metatags'); if ($key_id) { $form->addHidden('key_id', $key_id); $form->addSubmit('reset', dgettext('layout', 'Restore to default')); } $form->addHidden('module', 'layout'); $form->addHidden('action', 'admin'); $form->addHidden('command', 'postMeta'); $form->addText('page_title', $page_title); $form->setClass('page_title', 'form-control'); $form->setLabel('page_title', dgettext('layout', 'Site Name')); $form->addTextArea('meta_keywords', $meta_keywords); $form->setLabel('meta_keywords', dgettext('layout', 'Keywords')); $form->setClass('meta_keywords', 'form-control'); $form->addTextArea('meta_description', $meta_description); $form->setLabel('meta_description', dgettext('layout', 'Description')); $form->setClass('meta_description', 'form-control'); $form->addCheckBox('index', 1); $form->setMatch('index', $index); $form->setLabel('index', dgettext('layout', 'Allow indexing')); $form->addCheckBox('follow', 1); $form->setMatch('follow', $follow); $form->setLabel('follow', dgettext('layout', 'Allow link following')); $form->addCheckBox('use_key_summaries', 1); $form->setMatch('use_key_summaries', PHPWS_Settings::get('layout', 'use_key_summaries')); $form->setLabel('use_key_summaries', dgettext('layout', 'Use Key summaries for meta description')); $form->addSubmit('submit', dgettext('layout', 'Update')); $template = $form->getTemplate(); $template['ROBOT_LABEL'] = dgettext('layout', 'Default Robot Settings'); return PHPWS_Template::process($template, 'layout', 'metatags.tpl'); }
/** */ public function editRTMP() { $form = new PHPWS_Form(); $form->setFormId('file-form'); $form->addHidden('multimedia_id', $this->multimedia->id); $form->addHidden('module', 'filecabinet'); $form->addHidden('mop', 'post_rtmp'); $form->addHidden('folder_id', $this->multimedia->folder_id); $form->addText('title', $this->multimedia->getTitle()); $form->setLabel('title', 'Stream title'); $form->setClass('title', 'form-control'); $form->addText('rtmp_server', $this->multimedia->file_directory); $form->setLabel('rtmp_server', 'RTMP server'); $form->setClass('rtmp_server', 'form-control'); $form->addText('rtmp_file', $this->multimedia->file_name); $form->setLabel('rtmp_file', 'Stream/File name'); $form->setClass('rtmp_file', 'form-control'); $form->addText('width', $this->multimedia->width); $form->setLabel('width', 'Width'); $form->setClass('width', 'form-control'); $form->addText('height', $this->multimedia->height); $form->setLabel('height', 'Height'); $form->setClass('height', 'form-control'); $tpl = $form->getTemplate(); $this->title = dgettext('filecabinet', 'Create/Update RTMP Stream'); $this->content = PHPWS_Template::process($tpl, 'filecabinet', 'Forms/rtmp_edit.tpl'); }
/** * Displays the page layout and lets user enter text fields, blocks, etc. */ public function pageLayout() { javascript('jquery'); javascript('jquery_ui'); javascript('ckeditor'); Layout::addStyle('pagesmith', 'admin.css'); Layout::addJSHeader('<script type="text/javascript" src="' . PHPWS_SOURCE_HTTP . 'mod/pagesmith/javascript/pageedit/script.js"></script>', 'pageedit'); Layout::addStyle('pagesmith'); $page = $this->ps->page; $pg_tpl_name =& $page->_tpl->name; $this->ps->killSaved($page->id); if (!empty($page->_content)) { foreach ($page->_content as $key => $cnt) { if (!PageSmith::checkLorum($cnt)) { $_SESSION['PS_Page'][$page->id][$key] = $cnt; } } } $form = new PHPWS_Form('pagesmith'); $form->addHidden('module', 'pagesmith'); $form->addHidden('aop', 'post_page'); $form->addHidden('tpl', $page->template); $form->addHidden('pid', $page->parent_page); $template_list = $this->ps->getTemplateList(); $form->addSelect('template_list', $template_list); $form->setMatch('template_list', $page->template); $form->addSubmit('change_tpl', dgettext('pagesmith', 'Change template')); if ($page->id) { $form->addHidden('id', $page->id); } if (empty($page->_tpl) || $page->_tpl->error) { $this->ps->content = dgettext('pagesmith', 'Unable to load page template.'); return; } $form->addSubmit('submit', dgettext('pagesmith', 'Save page')); $form->setClass('submit', 'btn btn-success'); $page->loadKey(); if ($page->_key->id && $page->_key->show_after) { $publish_date = $page->_key->show_after; } else { $publish_date = time(); } $this->pageTemplateForm($form); $tpl = $form->getTemplate(); $tpl['PUBLISH_DATE_LABEL'] = 'Show page after this date and time'; $tpl['PUBLISH_VALUE'] = strftime('%Y-%m-%dT%H:%M:%S', $publish_date); $tpl['PAGE_TITLE'] = $page->title; $jsvars['page_title_input'] = 'pagesmith_title'; $jsvars['page_title_id'] = sprintf('%s-page-title', $pg_tpl_name); javascriptMod('pagesmith', 'pagetitle', $jsvars); $tpl['HIDE_CHECK'] = $page->hide_title ? 'checked="checked"' : null; if (!empty($page->_orphans)) { $tpl['ORPHAN_LINK'] = sprintf('<a href="%s#orphans">%s</a>', PHPWS_Core::getCurrentUrl(), dgettext('pagesmith', 'Orphans')); $tpl['ORPHANS'] = $this->listOrphans($page->_orphans); } // We wrap the textarea in a form just so ckeditor will allow use of the "Save" button. $modal = new \Modal('edit-section', '<form><textarea id="block-edit-textarea"></textarea></form>', dgettext('pagesmith', 'Edit text area')); $modal->addButton('<button id="save-page" class="btn btn-success">' . dgettext('pagesmith', 'Save') . '</button>'); $modal->setWidthPercentage(90); $tpl['CONTENT_MODAL'] = $modal->__toString(); $title_modal = new \Modal('edit-title', '<input class="form-control" type="text" id="page-title-input" name="page_title" value="" />', dgettext('pagesmith', 'Edit page title')); $title_modal->addButton('<button id="save-title" class="btn btn-success">' . dgettext('pagesmith', 'Save') . '</button>'); $tpl['TITLE_MODAL'] = $title_modal->__toString(); $this->ps->content = PHPWS_Template::process($tpl, 'pagesmith', 'page_form.tpl'); }
public static function userForm(PHPWS_User $user, $message = NULL) { require_once PHPWS_SOURCE_DIR . 'core/class/Time.php'; javascript('jquery'); $form = new PHPWS_Form(); $form->addHidden('module', 'users'); $form->addHidden('action', 'user'); $form->addHidden('command', 'my_page'); $form->addHidden('subcommand', 'postUser'); if (Current_User::allow('users') || $user->display_name == $user->username) { $form->addText('display_name', $user->display_name); $form->setClass('display_name', 'form-control'); $form->setLabel('display_name', dgettext('users', 'Display Name')); } else { $form->addTplTag('DISPLAY_NAME_LABEL', dgettext('users', 'Display Name')); $tpl['DISPLAY_NAME'] = javascript('slider', array('link' => $user->display_name, 'id' => 'name-info', 'message' => dgettext('users', 'Once you change your display name, you may not change it again until reset by the site administrator.'))); } if ($user->canChangePassword()) { $form->addPassword('password1'); $form->setAutoComplete('password1'); $form->setClass('password1', 'form-control'); $form->addPassword('password2'); $form->setAutoComplete('password2'); $form->setClass('password2', 'form-control'); $form->setTitle('password2', dgettext('users', 'Password confirm')); $form->setLabel('password1', dgettext('users', 'Password')); } else { $tpl['PASSWORD1_LABEL'] = dgettext('users', 'Password'); $tpl['PASSWORD1'] = javascript('slider', array('link' => dgettext('users', 'Why can\'t I change my password?'), 'id' => 'pw-info', 'message' => dgettext('users', 'Your account is authorized external to this site. You will need to update it at the source.'))); } $form->addText('email', $user->getEmail()); $form->setSize('email', 40); $form->setLabel('email', dgettext('users', 'Email Address')); $form->setClass('email', 'form-control'); if (isset($tpl)) { $form->mergeTemplate($tpl); } $tz_list = PHPWS_Time::getTZList(); $timezones['server'] = dgettext('users', '-- Use server\'s time zone --'); foreach ($tz_list as $tz) { if (!empty($tz['codes'])) { $timezones[$tz['id']] = sprintf('%s : %s', $tz['id'], $tz['codes'][0]); } elseif (!empty($tz['city'])) { $timezones[$tz['id']] = sprintf('%s : %s', $tz['id'], $tz['city'][0]); } else { $timezones[$tz['id']] = $tz['id']; } } if (isset($_REQUEST['timezone'])) { $user_tz = $_REQUEST['timezone']; } else { $user_tz = PHPWS_Cookie::read('user_tz'); } $form->addSelect('timezone', $timezones); $form->setLabel('timezone', dgettext('users', 'Time Zone')); $form->setMatch('timezone', $user_tz); $form->setClass('timezone', 'form-control'); if (isset($_REQUEST['dst']) && $_REQUEST['timezone'] != 'server') { $dst = $_REQUEST['dst']; } else { $dst = PHPWS_Cookie::read('user_dst'); } $form->addCheckbox('dst', 1); $form->setMatch('dst', $dst); $form->setLabel('dst', dgettext('users', 'Use Daylight Savings Time')); if (isset($_POST['cp'])) { $cp = (int) $_POST['cp']; } else { $cp = (int) PHPWS_Cookie::read('user_cp'); } if (Current_User::allowRememberMe()) { // User must authorize locally if ($_SESSION['User']->authorize == 1) { $form->addCheckbox('remember_me', 1); if (PHPWS_Cookie::read('remember_me')) { $form->setMatch('remember_me', 1); } $form->setLabel('remember_me', dgettext('users', 'Remember me')); } } $form->addHidden('userId', $user->getId()); $form->addSubmit('submit', dgettext('users', 'Update my information')); $form->setClass('submit', 'btn btn-primary'); if (!DISABLE_TRANSLATION && !FORCE_DEFAULT_LANGUAGE) { $language_file = PHPWS_Core::getConfigFile('users', 'languages.php'); if ($language_file) { include $language_file; $form->addSelect('language', $languages); $form->setClass('language', 'form-control'); $form->setLabel('language', dgettext('users', 'Language preference')); if (isset($_COOKIE['phpws_default_language'])) { $language = preg_replace('/\\W/', '', $_COOKIE['phpws_default_language']); $form->setMatch('language', $language); } } } $template = $form->getTemplate(); if (isset($message)) { foreach ($message as $tag => $error) { $template[$tag] = $error; } } $template['ACCT_INFO'] = dgettext('users', 'Account Information'); $template['LOCAL_INFO'] = dgettext('users', 'Localization'); $template['PREF'] = dgettext('users', 'Preferences'); return PHPWS_Template::process($template, 'users', 'my_page/user_setting.tpl'); }
public static function display() { PHPWS_Core::initModClass('intern', 'Term.php'); PHPWS_Core::initModClass('intern', 'Department.php'); PHPWS_Core::initModClass('intern', 'Major.php'); PHPWS_Core::initModClass('intern', 'GradProgram.php'); PHPWS_Core::initModClass('intern', 'Internship.php'); PHPWS_Core::initModClass('intern', 'Agency.php'); PHPWS_Core::initModClass('intern', 'Subject.php'); PHPWS_Core::initModClass('intern', 'WorkflowStateFactory.php'); // Set up search fields $form = new PHPWS_Form(); $form->setMethod('get'); $form->addHidden('module', 'intern'); $form->addHidden('action', 'results'); $form->useRowRepeat(); $form->addText('name'); $form->setLabel('name', "Name or Banner ID"); $terms = Term::getTermsAssoc(); //$thisTerm = Term::timeToTerm(time()); $form->addSelect('term_select', $terms); $form->setLabel('term_select', 'Term'); $form->setClass('term_select', 'form-control'); //$form->setMatch('term_select', $thisTerm); // Deity can search for any department. Other users are restricted. if (Current_User::isDeity()) { $depts = Department::getDepartmentsAssoc(); } else { $depts = Department::getDepartmentsAssocForUsername(Current_User::getUsername()); } $form->addSelect('dept', $depts); $form->setLabel('dept', 'Department'); //$form->setClass('', 'form-control'); $form->setClass('dept', 'form-control'); // If the user only has one department, select it for them // sizeof($depts) == 2 because of the 'Select Deparmtnet' option if (sizeof($depts) == 2) { $keys = array_keys($depts); $form->setMatch('dept', $keys[1]); } // Student level radio button javascript('jquery'); javascriptMod('intern', 'majorSelector', array('form_id' => $form->id)); $levels = array('-1' => 'Any Level', 'ugrad' => 'Undergraduate', 'grad' => 'Graduate'); $form->addSelect('student_level', $levels); $form->setLabel('student_level', 'Level'); $form->setClass('student_level', 'form-control'); // Student Major dummy box (gets replaced by dropdowns below using JS when student_level is selected) $levels = array('-1' => 'Choose student level first'); $form->addDropBox('student_major', $levels); $form->setLabel('student_major', 'Major / Program'); $form->addCssClass('student_major', 'form-control'); // Undergrad major drop down if (isset($s)) { $majors = Major::getMajorsAssoc($s->ugrad_major); } else { $majors = Major::getMajorsAssoc(); } $form->addSelect('ugrad_major', $majors); $form->setLabel('ugrad_major', 'Undergraduate Majors & Certificate Programs'); $form->setClass('ugrad_major', 'form-control'); // Graduate major drop down if (isset($s)) { $progs = GradProgram::getGradProgsAssoc($s->grad_prog); } else { $progs = GradProgram::getGradProgsAssoc(); } $form->addSelect('grad_prog', $progs); $form->setLabel('grad_prog', 'Graduate Majors & Certificate Programs'); $form->setClass('grad_prog', 'form-control'); // Campus $campuses = array('main_campus' => 'Main Campus', 'distance_ed' => 'Distance Ed'); $form->addRadioAssoc('campus', $campuses); /*************** * Course Info * ***************/ $subjects = Subject::getSubjects(); $form->addSelect('course_subj', $subjects); $form->setLabel('course_subj', 'Subject'); $form->setClass('course_subj', 'form-control'); $form->addText('course_no'); $form->setLabel('course_no', 'Course Number'); $form->setSize('course_no', 6); $form->setMaxSize('course_no', 4); $form->setClass('course_no', 'form-control'); $form->addText('course_sect'); $form->setLabel('course_sect', 'Section'); $form->setSize('course_sect', 6); $form->setMaxSize('course_sect', 4); $form->setClass('course_sect', 'form-control'); // Internship types. $types = Internship::getTypesAssoc(); $form->addRadioAssoc('type', $types); // Location $loc = array('domestic' => 'Domestic', 'internat' => 'International'); $form->addRadioAssoc('loc', $loc); /* State search */ $db = new PHPWS_DB('intern_state'); $db->addWhere('active', 1); $db->addColumn('abbr'); $db->addColumn('full_name'); $db->setIndexBy('abbr'); // get backwards because we flip it $db->addOrder('full_name desc'); $states = $db->select('col'); if (empty($states)) { NQ::simple('intern', INTERN_ERROR, 'The list of allowed US states for internship locations has not been configured. Please use the administrative options to <a href="index.php?module=intern&action=edit_states">add allowed states.</a>'); NQ::close(); PHPWS_Core::goBack(); } $states[-1] = 'Select state'; $states = array_reverse($states, true); $form->addSelect('state', $states); $form->setLabel('state', 'State'); $form->setClass('state', 'form-control'); /* Province search */ $form->addText('prov'); $form->setLabel('prov', 'Province/Territory'); $form->setClass('prov', 'form-control'); // Workflow states $workflowStates = WorkflowStateFactory::getStatesAssoc(); unset($workflowStates['CreationState']); // Remove this state, since it's not valid (internal only state for initial creation) $form->addCheckAssoc('workflow_state', $workflowStates); unset($_REQUEST['module']); unset($_REQUEST['action']); unset($_REQUEST['submit']); //test($_REQUEST,1); $form->plugIn($_REQUEST); $form->addSubmit('submit', 'Search'); // Javascript... javascript('jquery'); javascriptMod('intern', 'resetSearch'); return PHPWS_Template::process($form->getTemplate(), 'intern', 'search.tpl'); }
public function display() { // Set up search fields $form = new \PHPWS_Form(); $form->setMethod('get'); $form->addHidden('module', 'intern'); $form->addHidden('action', 'results'); $form->useRowRepeat(); // Student name or Banner ID $form->addText('name'); $form->setLabel('name', "Name or Banner ID"); /*************** * Course Info * ***************/ $terms = Term::getTermsAssoc(); $form->addSelect('term_select', $terms); $form->setLabel('term_select', 'Term'); $form->setClass('term_select', 'form-control'); $subjects = array('-1' => 'Select subject ') + Subject::getSubjects(); $form->addSelect('course_subj', $subjects); $form->setLabel('course_subj', 'Subject'); $form->setClass('course_subj', 'form-control'); $form->addText('course_no'); $form->setLabel('course_no', 'Course Number'); $form->setSize('course_no', 6); $form->setMaxSize('course_no', 4); $form->setClass('course_no', 'form-control'); $form->addText('course_sect'); $form->setLabel('course_sect', 'Section'); $form->setSize('course_sect', 6); $form->setMaxSize('course_sect', 4); $form->setClass('course_sect', 'form-control'); /**************** * Faculty Info * ****************/ // Deity can search for any department. Other users are restricted. if (\Current_User::isDeity()) { $depts = Department::getDepartmentsAssoc(); } else { $depts = Department::getDepartmentsAssocForUsername(\Current_User::getUsername()); } $depts = array('-1' => 'Select Department') + $depts; $form->addSelect('dept', $depts); $form->setLabel('dept', 'Department'); //$form->setClass('', 'form-control'); $form->setClass('dept', 'form-control'); // If the user only has one department, select it for them // sizeof($depts) == 2 because of the 'Select Deparmtnet' option if (sizeof($depts) == 2) { $keys = array_keys($depts); $form->setMatch('dept', $keys[1]); } // Student level radio button javascript('jquery'); javascriptMod('intern', 'majorSelector', array('form_id' => $form->id)); // Student Major dummy box (gets replaced by dropdowns below using JS when student_level is selected) $levels = array('-1' => 'Choose student level first'); $form->addDropBox('student_major', $levels); $form->setLabel('student_major', 'Major / Program'); $form->addCssClass('student_major', 'form-control'); // Get the majors list $majorsList = MajorsProviderFactory::getProvider()->getMajors(Term::timeToTerm(time())); // Undergrad major drop down $undergradMajors = array('-1' => 'Select Undergraduate Major') + $majorsList->getUndergradMajorsAssoc(); $form->addSelect('undergrad_major', $undergradMajors); $form->setMatch('undergrad_major', '-1'); $form->setClass('undergrad_major', 'form-control'); // Graduate major drop down $graduateMajors = array('-1' => 'Select Graduate Major') + $majorsList->getGraduateMajorsAssoc(); $form->addSelect('graduate_major', $graduateMajors); $form->setMatch('graduate_major', '-1'); $form->setClass('graduate_major', 'form-control'); /******************* * Internship Type * *******************/ // Handeled directly in the html template /************ * Location * ************/ // Campus Handeled directly in the html template // International vs Domestic - Handeled directly in the html template // State search /******************* * Workflow States * *******************/ $workflowStates = WorkflowStateFactory::getStatesAssoc(); unset($workflowStates['Intern\\WorkflowState\\CreationState']); // Remove this state, since it's not valid (internal only state for initial creation) $form->addCheckAssoc('workflow_state', $workflowStates); $form->addSubmit('submit', 'Search'); // Javascript... javascriptMod('intern', 'resetSearch'); return \PHPWS_Template::process($form->getTemplate(), 'intern', 'search.tpl'); }
public static function settings() { $form = new PHPWS_Form(); $form->addHidden('module', 'blog'); $form->addHidden('action', 'admin'); $form->addHidden('command', 'post_settings'); $form->addText('blog_limit', PHPWS_Settings::get('blog', 'blog_limit')); $form->setSize('blog_limit', 2, 2); $form->setLabel('blog_limit', dgettext('blog', 'Entries shown per page')); $form->addCssClass('blog_limit', 'form-control'); $form->addText('past_entries', PHPWS_Settings::get('blog', 'past_entries')); $form->setLabel('past_entries', dgettext('blog', 'Previous entries shown')); $form->setSize('past_entries', 2, 2); $form->addCssClass('past_entries', 'form-control'); // Show/hide posted on date $form->addCheck('show_posted_date', 1); $form->setLabel('show_posted_date', dgettext('blog', 'Show the date the post was made')); $form->setMatch('show_posted_date', PHPWS_Settings::get('blog', 'show_posted_date')); // Show/hide posted by user full name $form->addCheck('show_posted_by', 1); $form->setLabel('show_posted_by', dgettext('blog', 'Show the author\'s name')); $form->setMatch('show_posted_by', PHPWS_Settings::get('blog', 'show_posted_by')); $form->addCheck('simple_image', 1); $form->setLabel('simple_image', dgettext('blog', 'Use Image Manager')); $form->setMatch('simple_image', PHPWS_Settings::get('blog', 'simple_image')); $form->addCheck('mod_folders_only', 1); $form->setLabel('mod_folders_only', dgettext('blog', 'Hide general image folders')); $form->setMatch('mod_folders_only', PHPWS_Settings::get('blog', 'mod_folders_only')); $form->addCheck('home_page_display', 1); $form->setLabel('home_page_display', dgettext('blog', 'Show blog on home page')); $form->setMatch('home_page_display', PHPWS_Settings::get('blog', 'home_page_display')); $form->addCheck('logged_users_only', 1); $form->setLabel('logged_users_only', dgettext('blog', 'Logged user view only')); $form->setMatch('logged_users_only', PHPWS_Settings::get('blog', 'logged_users_only')); PHPWS_Core::initModClass('users', 'Action.php'); $groups = User_Action::getGroups('group'); if (!empty($groups)) { $group_match = array(); $group_match_str = PHPWS_Settings::get('blog', 'view_only'); if (!empty($group_match_str)) { $group_match = explode(':', $group_match_str); } $form->addMultiple('view_only', $groups); $form->setLabel('view_only', dgettext('blog', 'Limit blog to specific groups')); $form->setMatch('view_only', $group_match); $form->addCssClass('view_only', 'form-control'); } $show[0] = dgettext('blog', 'Do not show'); $show[1] = dgettext('blog', 'Only on home page'); $show[2] = dgettext('blog', 'Always'); $form->addSelect('show_recent', $show); $form->setLabel('show_recent', dgettext('blog', 'Show recent entries')); $form->setMatch('show_recent', PHPWS_Settings::get('blog', 'show_recent')); $form->addCssClass('show_recent', 'form-control'); $form->addTextField('max_width', PHPWS_Settings::get('blog', 'max_width')); $form->setLabel('max_width', dgettext('blog', 'Maximum image width (50-2048)')); $form->setSize('max_width', 4, 4); $form->addCssClass('max_width', 'form-control'); $form->addTextField('max_height', PHPWS_Settings::get('blog', 'max_height')); $form->setLabel('max_height', dgettext('blog', 'Maximum image height (50-2048)')); $form->setSize('max_height', 4, 4); $form->addCssClass('max_height', 'form-control'); $form->addTextArea('comment_script', PHPWS_Settings::get('blog', 'comment_script')); $form->setLabel('comment_script', dgettext('blog', 'Paste in your comment code here (e.g. Disqus, Livefyre, Facebook, etc.)')); $form->addCssClass('comment_script', 'form-control'); $form->addSubmit(dgettext('blog', 'Save settings')); if (Current_User::isDeity()) { $date_script = javascript('datetimepicker', array('format' => 'Y/m/d', 'timepicker' => false, 'id' => 'phpws_form_purge_date'), false, true, true); $form->addText('purge_date', date('Y/m/d', time() - 31536000)); $form->setLabel('purge_date', dgettext('blog', 'Purge all entries before this date')); $form->addCssClass('purge_date', 'form-control datetimepicker'); $form->addSubmit('purge_confirm', dgettext('blog', 'Confirm purge')); $form->setClass('purge_confirm', 'btn btn-danger'); } else { $date_script = null; } $template = $form->getTemplate(); $template['date_script'] = $date_script; if (PHPWS_Settings::get('blog', 'allow_anonymous_submits')) { $template['MENU_LINK'] = PHPWS_Text::secureLink(dgettext('blog', 'Clip for menu'), 'blog', array('action' => 'admin', 'command' => 'menu_submit_link')); } $template['VIEW_LABEL'] = dgettext('blog', 'View'); $template['SUBMISSION_LABEL'] = dgettext('blog', 'Submission'); $template['PAST_NOTE'] = dgettext('blog', 'Set to zero to prevent display'); $template['COMMENTS_LABEL'] = dgettext('blog', 'Commenting'); return PHPWS_Template::process($template, 'blog', 'settings.tpl'); }
public static function loginPage() { if (isset($_REQUEST['phpws_username'])) { $username = $_REQUEST['phpws_username']; } else { $username = NULL; } $form = new PHPWS_Form('User_Login_Main'); $form->addHidden('module', 'users'); $form->addHidden('action', 'user'); $form->addHidden('command', 'login'); $form->addText('phpws_username', $username); $form->addPassword('phpws_password'); $form->addSubmit('submit', LOGIN_BUTTON); $form->setClass('phpws_username', 'form-control'); $form->setClass('phpws_password', 'form-control'); $form->setLabel('phpws_username', dgettext('users', 'Username')); $form->setLabel('phpws_password', dgettext('users', 'Password')); $template = $form->getTemplate(); $content = PHPWS_Template::process($template, 'users', 'forms/login_form.tpl'); return $content; }
public function editSheet() { $form = new PHPWS_Form('signup_sheet'); $sheet =& $this->signup->sheet; $form->addHidden('module', 'signup'); $form->addHidden('aop', 'post_sheet'); if ($sheet->id) { $form->addHidden('sheet_id', $sheet->id); $form->addSubmit(dgettext('signup', 'Update')); $this->signup->title = dgettext('signup', 'Update signup sheet'); $form->addTplTag('EDIT_SLOT', $this->signup->sheet->editSlotLink()); } else { $form->addSubmit(dgettext('signup', 'Create')); $this->signup->title = dgettext('signup', 'Create signup sheet'); } $form->addText('title', $sheet->title); $form->setLabel('title', dgettext('signup', 'Title')); $form->addTextArea('description', $sheet->description); $form->setLabel('description', dgettext('signup', 'Description')); $form->addText('contact_email', $sheet->contact_email); $form->setLabel('contact_email', dgettext('signup', 'Contact email')); $form->addCheck('multiple', 1); $form->setMatch('multiple', $sheet->multiple); $form->setLabel('multiple', dgettext('signup', 'Allow multiple signups')); // Functionality not finished. Hide for now. /* $form->addText('start_time', $sheet->getStartTime()); $form->setLabel('start_time', dgettext('signup', 'Start signup')); */ $form->addText('extra1', $sheet->extra1); $form->setSize('extra1', 40); $form->setLabel('extra1', dgettext('signup', 'Extra information 1')); $form->addText('extra2', $sheet->extra2); $form->setSize('extra2', 40); $form->setLabel('extra2', dgettext('signup', 'Extra information 2')); $form->addText('extra3', $sheet->extra3); $form->setSize('extra3', 40); $form->setLabel('extra3', dgettext('signup', 'Extra information 3')); $form->addText('end_time', $sheet->getEndTime()); $form->setClass('end_time', 'datepicker'); $form->setLabel('end_time', dgettext('signup', 'Close signup')); $js_vars['type'] = 'text_clock'; $js_vars['form_name'] = 'signup_sheet'; $js_vars['date_name'] = 'start_time'; $form->addTplTag('ST_JS', javascript('js_calendar', $js_vars)); $js_vars['date_name'] = 'end_time'; $form->addTplTag('ET_JS', javascript('js_calendar', $js_vars)); $tpl = $form->getTemplate(); $tpl['EXTRA_NOTE'] = dgettext('signup', 'Blank extra fields will not appear on signup.'); // Explain the purpose of the 'extra' fields to the user. $tpl['FIELDSET_NOTE'] = dgettext('signup', 'The signup form already asks for the user\'s first and last name, email address, and phone number. <br>If there is any other information you want to ask for, specify it here. These fields are not required.'); $this->signup->content = PHPWS_Template::process($tpl, 'signup', 'edit_sheet.tpl'); }
private function settingsForm() { \Layout::addStyle('properties', 'forms.css'); $form = new \PHPWS_Form(); $form->addHidden('module', 'properties'); $form->addHidden('aop', 'post_settings'); $form->addText('login_link', \PHPWS_Settings::get('properties', 'login_link')); $form->setLabel('login_link', 'Alternate authentication link'); $form->setClass('login_link', 'form-control'); $form->setSize('login_link', 30); $form->addText('email', \PHPWS_Settings::get('properties', 'email')); $form->setLabel('email', 'Site email'); $form->setClass('email', 'form-control'); $form->addText('approver_email', \PHPWS_Settings::get('properties', 'approver_email')); $form->setLabel('approver_email', 'Approver email'); $form->setClass('approver_email', 'form-control'); $form->addCheck('roommate_only'); $form->setMatch('roommate_only', \PHPWS_Settings::get('properties', 'roommate_only')); $form->setLabel('roommate_only', 'Only use the roommate functionality'); $form->addCheckbox('new_user_signup', 1); $form->setMatch('new_user_signup', \PHPWS_Settings::get('properties', 'new_user_signup')); $form->setLabel('new_user_signup', 'Allow new manager signup'); $form->addSubmit('Save settings'); $tpl = $form->getTemplate(); if (!empty($this->errors)) { foreach ($this->errors as $key => $message) { $new_key = strtoupper($key) . '_ERROR'; $tpl[$new_key] = $message; } } $this->title = 'Settings'; $this->content = \PHPWS_Template::process($tpl, 'properties', 'settings.tpl'); }
public function editFolder($folder, $js = false) { $form = new PHPWS_Form('file-form'); $form->addHidden('module', 'filecabinet'); $form->addHidden('aop', 'post_folder'); $form->addHidden('ftype', $folder->ftype); if ($js) { $form->addHidden('js', 1); } if ($folder->id) { $form->addHidden('folder_id', $folder->id); } $form->addTextField('title', $folder->title); $form->setLabel('title', dgettext('filecabinet', 'Title')); $form->setClass('title', 'form-control'); if ($folder->ftype == DOCUMENT_FOLDER) { $form->addRadio('public_folder', array(0, 1)); $form->setLabel('public_folder', array(dgettext('filecabinet', 'Indirect links'), dgettext('filecabinet', 'Direct links'))); } $form->setMatch('public_folder', $folder->public_folder); if ($folder->ftype == IMAGE_FOLDER) { $resizes = Cabinet::getResizes(0, true); $form->addSelect('max_image_dimension', $resizes); $form->setLabel('max_image_dimension', dgettext('filecabinet', 'Maximum image upload dimension')); $form->setMatch('max_image_dimension', $folder->max_image_dimension); $form->setClass('max_image_dimension', 'form-control'); } $form->addSubmit('submit', 'Save folder'); $form->setClass('submit', 'btn btn-primary'); $tpl = $form->getTemplate(); return PHPWS_Template::process($tpl, 'filecabinet', 'Forms/edit_folder.tpl'); }