public function testMakeFormAndSetConfigurationFromForm() { $billy = User::getByUsername('billy'); Yii::app()->themeManager->customThemeColorsArray = array('#111111', '#222222', '#333333'); Yii::app()->themeManager->globalThemeColor = 'custom'; Yii::app()->themeManager->forceAllUsersTheme = true; $logoFileName = 'testLogo.png'; $logoFilePath = Yii::getPathOfAlias('application.modules.zurmo.tests.unit.files') . DIRECTORY_SEPARATOR . $logoFileName; ZurmoUserInterfaceConfigurationFormAdapter::resizeLogoImageFile($logoFilePath, $logoFilePath, null, ZurmoUserInterfaceConfigurationForm::DEFAULT_LOGO_HEIGHT); $logoFileId = ZurmoUserInterfaceConfigurationFormAdapter::saveLogoFile($logoFileName, $logoFilePath, 'logoFileModelId'); ZurmoUserInterfaceConfigurationFormAdapter::publishLogo($logoFileName, $logoFilePath); ZurmoConfigurationUtil::setByModuleName('ZurmoModule', 'logoFileModelId', $logoFileId); ZurmoConfigurationUtil::setByModuleName('ZurmoModule', 'logoThumbFileModelId', $logoFileId); //Getting values $form = ZurmoUserInterfaceConfigurationFormAdapter::makeFormFromGlobalConfiguration(); $this->assertEquals($logoFileName, $form->logoFileData['name']); $this->assertEquals('custom', $form->themeColor); $this->assertEquals('#111111', $form->customThemeColor1); $this->assertEquals('#222222', $form->customThemeColor2); $this->assertEquals('#333333', $form->customThemeColor3); $this->assertEquals('1', $form->forceAllUsersTheme); //Setting values $form->themeColor = 'lime'; $form->customThemeColor1 = '#999999'; $form->customThemeColor2 = '#888888'; $form->customThemeColor3 = '#777777'; $form->forceAllUsersTheme = false; $logoFileName2 = 'testLogo2.png'; $logoFilePath2 = Yii::getPathOfAlias('application.modules.zurmo.tests.unit.files') . DIRECTORY_SEPARATOR . $logoFileName2; copy($logoFilePath2, sys_get_temp_dir() . DIRECTORY_SEPARATOR . $logoFileName2); copy($logoFilePath2, sys_get_temp_dir() . DIRECTORY_SEPARATOR . ZurmoUserInterfaceConfigurationForm::LOGO_THUMB_FILE_NAME_PREFIX . $logoFileName2); Yii::app()->user->setState('logoFileName', $logoFileName2); ZurmoUserInterfaceConfigurationFormAdapter::setConfigurationFromForm($form); $form = ZurmoUserInterfaceConfigurationFormAdapter::makeFormFromGlobalConfiguration(); $this->assertEquals('lime', $form->themeColor); $this->assertEquals('#999999', $form->customThemeColor1); $this->assertEquals('#888888', $form->customThemeColor2); $this->assertEquals('#777777', $form->customThemeColor3); $this->assertEquals(false, $form->forceAllUsersTheme); $this->assertEquals($logoFileName2, $form->logoFileData['name']); }
public function actionUserInterfaceConfigurationEdit() { $breadCrumbLinks = array(Zurmo::t('ZurmoModule', 'User Interface Configuration')); $configurationForm = ZurmoUserInterfaceConfigurationFormAdapter::makeFormFromGlobalConfiguration(); $postVariableName = get_class($configurationForm); if (isset($_POST[$postVariableName])) { $configurationForm->setAttributes($_POST[$postVariableName]); if ($configurationForm->validate()) { ZurmoUserInterfaceConfigurationFormAdapter::setConfigurationFromForm($configurationForm); Yii::app()->user->setFlash('notification', Zurmo::t('ZurmoModule', 'User interface configuration saved successfully.')); $this->redirect(Yii::app()->createUrl('configuration/default/index')); } } $editView = new ZurmoUserInterfaceConfigurationEditAndDetailsView('Edit', $this->getId(), $this->getModule()->getId(), $configurationForm); $editView->setCssClasses(array('AdministrativeArea')); $view = new ZurmoConfigurationPageView(ZurmoDefaultAdminViewUtil::makeViewWithBreadcrumbsForCurrentUser($this, $editView, $breadCrumbLinks, 'SettingsBreadCrumbView')); echo $view->render(); }