public function testMakeFormAndSetConfigurationFromForm() { $billy = User::getByUsername('billy'); Yii::app()->timeZoneHelper->setTimeZone('America/New_York'); Yii::app()->pagination->setGlobalValueByType('listPageSize', 50); Yii::app()->pagination->setGlobalValueByType('subListPageSize', 51); Yii::app()->pagination->setGlobalValueByType('modalListPageSize', 52); Yii::app()->pagination->setGlobalValueByType('dashboardListPageSize', 53); ZurmoConfigurationUtil::setByModuleName('ZurmoModule', 'applicationName', 'demoCompany'); $logoFileName = 'testLogo.png'; $logoFilePath = Yii::getPathOfAlias('application.modules.zurmo.tests.unit.files') . DIRECTORY_SEPARATOR . $logoFileName; ZurmoConfigurationFormAdapter::resizeLogoImageFile($logoFilePath, $logoFilePath, null, ZurmoConfigurationForm::DEFAULT_LOGO_HEIGHT); $logoFileId = ZurmoConfigurationFormAdapter::saveLogoFile($logoFileName, $logoFilePath, 'logoFileModelId'); ZurmoConfigurationFormAdapter::publishLogo($logoFileName, $logoFilePath); ZurmoConfigurationUtil::setByModuleName('ZurmoModule', 'logoFileModelId', $logoFileId); ZurmoConfigurationUtil::setByModuleName('ZurmoModule', 'logoThumbFileModelId', $logoFileId); $form = ZurmoConfigurationFormAdapter::makeFormFromGlobalConfiguration(); $this->assertEquals('America/New_York', $form->timeZone); $this->assertEquals(50, $form->listPageSize); $this->assertEquals(51, $form->subListPageSize); $this->assertEquals(52, $form->modalListPageSize); $this->assertEquals(53, $form->dashboardListPageSize); $this->assertEquals('demoCompany', $form->applicationName); $this->assertEquals(AutoresponderOrCampaignBatchSizeConfigUtil::CONFIG_DEFAULT_VALUE, $form->autoresponderOrCampaignBatchSize); $this->assertEquals(UnsubscribeAndManageSubscriptionsPlaceholderUtil::getContentByType(false), $form->autoresponderOrCampaignFooterPlainText); $this->assertEquals(UnsubscribeAndManageSubscriptionsPlaceholderUtil::getContentByType(true), $form->autoresponderOrCampaignFooterRichText); $this->assertEquals($logoFileName, $form->logoFileData['name']); $form->timeZone = 'America/Chicago'; $form->listPageSize = 60; $form->subListPageSize = 61; $form->modalListPageSize = 62; $form->dashboardListPageSize = 63; $form->applicationName = 'demoCompany2'; $form->autoresponderOrCampaignBatchSize = 20; $logoFileName2 = 'testLogo2.png'; $form->autoresponderOrCampaignFooterPlainText = 'abc'; $form->autoresponderOrCampaignFooterRichText = 'def'; $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 . ZurmoConfigurationForm::LOGO_THUMB_FILE_NAME_PREFIX . $logoFileName2); Yii::app()->user->setState('logoFileName', $logoFileName2); ZurmoConfigurationFormAdapter::setConfigurationFromForm($form); $form = ZurmoConfigurationFormAdapter::makeFormFromGlobalConfiguration(); $this->assertEquals('America/Chicago', $form->timeZone); $this->assertEquals(60, $form->listPageSize); $this->assertEquals(61, $form->subListPageSize); $this->assertEquals(62, $form->modalListPageSize); $this->assertEquals(63, $form->dashboardListPageSize); $this->assertEquals('demoCompany2', $form->applicationName); $this->assertEquals(20, $form->autoresponderOrCampaignBatchSize); $this->assertEquals('abc', $form->autoresponderOrCampaignFooterPlainText); $this->assertEquals('def', $form->autoresponderOrCampaignFooterRichText); $this->assertEquals($logoFileName2, $form->logoFileData['name']); }
public function actionUploadLogo($filesVariableName) { assert('is_string($filesVariableName)'); try { $uploadedFile = CUploadedFile::getInstanceByName($filesVariableName); assert('$uploadedFile instanceof CUploadedFile'); $logoFilePath = sys_get_temp_dir() . DIRECTORY_SEPARATOR . $uploadedFile->getName(); $thumbFilePath = sys_get_temp_dir() . DIRECTORY_SEPARATOR . ZurmoConfigurationForm::LOGO_THUMB_FILE_NAME_PREFIX . $uploadedFile->getName(); $uploadedFile->saveAs($logoFilePath); ZurmoConfigurationFormAdapter::resizeLogoImageFile($logoFilePath, $thumbFilePath, ZurmoConfigurationForm::DEFAULT_LOGO_THUMBNAIL_WIDTH, ZurmoConfigurationForm::DEFAULT_LOGO_THUMBNAIL_HEIGHT); Yii::app()->user->setState('logoFileName', $uploadedFile->getName()); $logoFileData = array('name' => $uploadedFile->getName(), 'type' => $uploadedFile->getType(), 'size' => $uploadedFile->getSize(), 'thumbnail_url' => Yii::app()->createUrl('zurmo/default/thumbnail/', array('filePath' => $thumbFilePath))); } catch (FailedFileUploadException $e) { $logoFileData = array('error' => Zurmo::t('ZurmoModule', 'Error') . ' ' . $e->getMessage()); } echo CJSON::encode(array($logoFileData)); Yii::app()->end(0, false); }