public static function adminThemes() { $form = new PHPWS_Form('themes'); $form->addHidden('module', 'layout'); $form->addHidden('action', 'admin'); $form->addHidden('command', 'postTheme'); $form->addSubmit('update', dgettext('layout', 'Update Theme Settings')); $themeList = Layout_Admin::getThemeList(); if (PHPWS_Error::isError($themeList)) { PHPWS_Error::log($themeList); return dgettext('layout', 'There was a problem reading the theme directories.'); } $form->addSelect('default_theme', $themeList); $form->reindexValue('default_theme'); $form->setMatch('default_theme', Layout::getDefaultTheme()); $form->setLabel('default_theme', dgettext('layout', 'Default Theme')); $include_order[0] = dgettext('layout', 'Do not include module style sheets'); $include_order[1] = dgettext('layout', 'Modules before theme'); $include_order[2] = dgettext('layout', 'Theme before modules'); $form->addSelect('include_css_order', $include_order); $form->setMatch('include_css_order', PHPWS_Settings::get('layout', 'include_css_order')); $form->setLabel('include_css_order', dgettext('layout', 'CSS inclusion order')); $template = $form->getTemplate(); return PHPWS_Template::process($template, 'layout', 'themes.tpl'); }
/** * Form for adding and choosing default authorization scripts */ public static function authorizationSetup() { $template = array(); PHPWS_Core::initCoreClass('File.php'); $auth_list = User_Action::getAuthorizationList(); $db = new PHPWS_DB('users_groups'); $db->addOrder('name'); $db->addColumn('name'); $db->addColumn('id'); $db->setIndexBy('id'); $db->addWhere('user_id', 0); $groups = $db->select('col'); if (PHPWS_Error::logIfError($groups)) { $groups = array(0 => dgettext('users', '- None -')); } else { $groups = array("0" => dgettext('users', '- None -')) + $groups; } foreach ($auth_list as $auth) { $file_compare[] = $auth['filename']; } $form = new PHPWS_Form(); $form->addHidden('module', 'users'); $form->addHidden('action', 'admin'); $form->addHidden('command', 'postAuthorization'); $file_list = PHPWS_File::readDirectory(PHPWS_SOURCE_DIR . 'mod/users/scripts/', FALSE, TRUE, FALSE, array('php')); if (!empty($file_list)) { $remaining_files = array_diff($file_list, $file_compare); } else { $remaining_files = NULL; } if (empty($remaining_files)) { $template['FILE_LIST'] = dgettext('users', 'No new scripts found'); } else { $form->addSelect('file_list', $remaining_files); $form->reindexValue('file_list'); $form->addSubmit('add_script', dgettext('users', 'Add Script File')); } $form->mergeTemplate($template); $form->addSubmit('submit', dgettext('users', 'Update authorization scripts')); $template = $form->getTemplate(); $template['AUTH_LIST_LABEL'] = dgettext('users', 'Authorization Scripts'); $template['DEFAULT_LABEL'] = dgettext('users', 'Default'); $template['DISPLAY_LABEL'] = dgettext('users', 'Display Name'); $template['FILENAME_LABEL'] = dgettext('users', 'Script Filename'); $template['DEFAULT_GROUP_LABEL'] = dgettext('users', 'Default group'); $template['ACTION_LABEL'] = dgettext('users', 'Action'); $default_authorization = PHPWS_User::getUserSetting('default_authorization'); foreach ($auth_list as $authorize) { $links = array(); extract($authorize); if ($default_authorization == $id) { $checked = 'checked="checked"'; } else { $checked = NULL; } $getVars['module'] = 'users'; $getVars['action'] = 'admin'; $getVars['command'] = 'dropScript'; if ($filename != 'local.php' && $filename != 'global.php') { $vars['QUESTION'] = dgettext('users', 'Are you sure you want to drop this authorization script?'); $vars['ADDRESS'] = sprintf('index.php?module=users&action=admin&command=dropAuthScript&script_id=%s&authkey=%s', $id, Current_User::getAuthKey()); $vars['LINK'] = dgettext('users', 'Drop'); $links[1] = javascript('confirm', $vars); } $getVars['command'] = 'editScript'; // May enable this later. No need for an edit link right now. // $links[2] = PHPWS_Text::secureLink(dgettext('users', 'Edit'), 'users', $getVars); $row['CHECK'] = sprintf('<input type="radio" name="default_authorization" value="%s" %s />', $id, $checked); $form = new PHPWS_Form(); $form->addSelect("default_group[{$id}]", $groups); $form->setMatch("default_group[{$id}]", $default_group); $row['DEFAULT_GROUP'] = $form->get("default_group[{$id}]"); $row['DISPLAY_NAME'] = $display_name; $row['FILENAME'] = $filename; if (!empty($links)) { $row['ACTION'] = implode(' | ', $links); } else { $row['ACTION'] = dgettext('users', 'None'); } $template['auth-rows'][] = $row; } return PHPWS_Template::process($template, 'users', 'forms/authorization.tpl'); }