public function testget_config_prefix() { $admin = new Administration(); //test with empty string $expected = array(false, false); $actual = $admin->get_config_prefix(''); $this->assertSame($expected, $actual); //test with a valid string $expected = array('category', 'test'); $actual = $admin->get_config_prefix('category_test'); $this->assertSame($expected, $actual); }
/** * @see SugarView::display() */ public function display() { global $mod_strings, $app_strings, $app_list_strings; require_once "modules/Configurator/metadata/SugarpdfSettingsdefs.php"; if (file_exists('custom/modules/Configurator/metadata/SugarpdfSettingsdefs.php')) { require_once 'custom/modules/Configurator/metadata/SugarpdfSettingsdefs.php'; } if (!empty($_POST['save'])) { // Save the logos $error = $this->checkUploadImage(); if (empty($error)) { $focus = new Administration(); foreach ($SugarpdfSettings as $k => $v) { if ($v['type'] == 'password') { if (isset($_POST[$k])) { $_POST[$k] = blowfishEncode(blowfishGetKey($k), $_POST[$k]); } } } if (!empty($_POST["sugarpdf_pdf_class"]) && $_POST["sugarpdf_pdf_class"] != PDF_CLASS) { // clear the cache for quotes detailview in order to switch the pdf class. if (is_file($cachedfile = sugar_cached('modules/Quotes/DetailView.tpl'))) { unlink($cachedfile); } } $focus->saveConfig(); header('Location: index.php?module=Administration&action=index'); } } if (!empty($_POST['restore'])) { $focus = new Administration(); foreach ($_POST as $key => $val) { $prefix = $focus->get_config_prefix($key); if (in_array($prefix[0], $focus->config_categories)) { $result = $focus->db->query("SELECT count(*) AS the_count FROM config WHERE category = '{$prefix[0]}' AND name = '{$prefix[1]}'"); $row = $focus->db->fetchByAssoc($result); if ($row['the_count'] != 0) { $focus->db->query("DELETE FROM config WHERE category = '{$prefix[0]}' AND name = '{$prefix[1]}'"); } } } header('Location: index.php?module=Configurator&action=SugarpdfSettings'); } echo getClassicModuleTitle("Administration", array("<a href='index.php?module=Administration&action=index'>" . translate('LBL_MODULE_NAME', 'Administration') . "</a>", $mod_strings['LBL_PDFMODULE_NAME']), false); $pdf_class = array("TCPDF" => "TCPDF", "EZPDF" => "EZPDF"); $this->ss->assign('APP_LIST', $app_list_strings); $this->ss->assign("JAVASCRIPT", get_set_focus_js()); $this->ss->assign("SugarpdfSettings", $SugarpdfSettings); $this->ss->assign("pdf_enable_ezpdf", PDF_ENABLE_EZPDF); if (PDF_ENABLE_EZPDF == "0" && PDF_CLASS == "EZPDF") { $error = "ERR_EZPDF_DISABLE"; $this->ss->assign("selected_pdf_class", "TCPDF"); } else { $this->ss->assign("selected_pdf_class", PDF_CLASS); } $this->ss->assign("pdf_class", $pdf_class); if (!empty($error)) { $this->ss->assign("error", $mod_strings[$error]); } if (!function_exists('imagecreatefrompng')) { $this->ss->assign("GD_WARNING", 1); } else { $this->ss->assign("GD_WARNING", 0); } $this->ss->display('modules/Configurator/tpls/SugarpdfSettings.tpl'); require_once "include/javascript/javascript.php"; $javascript = new javascript(); $javascript->setFormName("ConfigureSugarpdfSettings"); foreach ($SugarpdfSettings as $k => $v) { if (isset($v["required"]) && $v["required"] == true) { $javascript->addFieldGeneric($k, "varchar", $v['label'], TRUE, ""); } } echo $javascript->getScript(); }
* "Powered by SugarCRM". ********************************************************************************/ /********************************************************************************* * Description: TODO: To be written. * Portions created by SugarCRM are Copyright (C) SugarCRM, Inc. * All Rights Reserved. * Contributor(s): ______________________________________.. ********************************************************************************/ global $current_user; if (!is_admin($current_user)) { sugar_die("Unauthorized access to administration."); } $focus = new Administration(); // filter for relevant POST data and update config table foreach ($_POST as $key => $val) { $prefix = $focus->get_config_prefix($key); if (in_array($prefix[0], $focus->config_categories)) { if ($prefix[0] == "license") { if ($prefix[1] == "expire_date") { global $timedate; $val = $timedate->swap_formats($val, $timedate->get_date_format(), $timedate->dbDayFormat); } else { if ($prefix[1] == "key") { $val = trim($val); // bug 16860 tyoung - trim whitespace from the start and end of the licence key value } } } $focus->saveSetting($prefix[0], $prefix[1], $val); } }