Example #1
0
 /**
  * Returns registry data of admin.
  * @see Tinebase_Application_Json_Abstract
  * 
  * @return mixed array 'variable name' => 'data'
  */
 public function getRegistryData()
 {
     $appConfigDefaults = Admin_Controller::getInstance()->getConfigSettings();
     $smtpConfig = Tinebase_Config::getInstance()->getConfigAsArray(Tinebase_Config::SMTP);
     $registryData = array('manageSAM' => $this->_manageSAM, 'manageImapEmailUser' => $this->_manageImapEmailUser, 'manageSmtpEmailUser' => $this->_manageSmtpEmailUser, 'primarydomain' => array_key_exists('primarydomain', $smtpConfig) ? $smtpConfig['primarydomain'] : '', 'secondarydomains' => array_key_exists('secondarydomains', $smtpConfig) ? $smtpConfig['secondarydomains'] : '', 'defaultPrimaryGroup' => Tinebase_Group::getInstance()->getDefaultGroup()->toArray(), 'defaultInternalAddressbook' => $appConfigDefaults[Admin_Model_Config::DEFAULTINTERNALADDRESSBOOK] !== NULL ? Tinebase_Container::getInstance()->get($appConfigDefaults[Admin_Model_Config::DEFAULTINTERNALADDRESSBOOK])->toArray() : NULL);
     return $registryData;
 }
 /**
  * convert tine20config to dbal config
  *
  * @return array
  */
 public static function getDBParams()
 {
     $dbParams = Tinebase_Config::getInstance()->get('database')->toArray();
     $dbParams['driver'] = $dbParams['adapter'];
     $dbParams['user'] = $dbParams['username'];
     return $dbParams;
 }
 public function __construct($certificate, $dontSkip = FALSE)
 {
     $config = Tinebase_Config::getInstance()->get('modssl');
     if (is_object($config)) {
         $this->casfile = $config->casfile;
         $this->crlspath = $config->crlspath;
     }
     $this->status = array('isValid' => true, 'errors' => array());
     $this->certificate = self::_fixPemCertificate($certificate);
     $c = openssl_x509_parse($this->certificate);
     // define certificate properties
     $this->serialNumber = $c['serialNumber'];
     $this->version = $c['version'];
     $this->subject = $c['subject'];
     $this->cn = $c['subject']['CN'];
     $this->issuer = $c['issuer'];
     $this->issuerCn = $c['issuer']['CN'];
     $this->hash = $this->_calcHash();
     //        $dateTimezone = new DateTimeZone(Tinebase_Core::getUserTimezone());
     //        $locale = new Zend_Locale($_translation->getAdapter()->getLocale());
     // Date valid from
     $this->validFrom = Tinebase_Translation::dateToStringInTzAndLocaleFormat(new Tinebase_DateTime($c['validFrom_time_t']));
     // Date valid to
     $this->validTo = Tinebase_Translation::dateToStringInTzAndLocaleFormat(new Tinebase_DateTime($c['validTo_time_t']));
     $this->_parsePurpose($c['purposes']);
     $this->_parseExtensions($c['extensions']);
     if (strtolower($this->casfile) != 'skip') {
         $this->_validityCheck();
         // skip validation, we trust the server's result
     }
     if (strtolower($this->crlspath) != 'skip' | $dontSkip) {
         $this->_testRevoked();
         // skip test,
     }
 }
 public static function getThemeConfig()
 {
     $extJS = 'ext-all.css';
     $themePath = 'tine20';
     $favicon = 'images/favicon.ico';
     $title = 'Tine 2.0';
     $themeConfig = Tinebase_Core::getConfig()->theme;
     if ($themeConfig instanceof Tinebase_Config_Struct && $themeConfig->active) {
         if ($themeConfig->path) {
             $themePath = $themeConfig->path;
             //is useBlueAsBase set?
             if ($themeConfig->useBlueAsBase) {
                 $extJS = 'ext-all-notheme.css';
             }
             //is there a customized favicon?
             if (file_exists('themes/' . $themePath . '/resources/images/favicon.ico')) {
                 $favicon = 'themes/' . $themePath . '/resources/images/favicon.ico';
             }
         }
     }
     //Do we have a branding favicon?
     $favicon = Tinebase_Config::getInstance()->get(Tinebase_Config::BRANDING_FAVICON) ? Tinebase_Config::getInstance()->get(Tinebase_Config::BRANDING_FAVICON) : $favicon;
     //Do we have a branding title?
     $title = Tinebase_Config::getInstance()->get(Tinebase_Config::BRANDING_TITLE) ? Tinebase_Config::getInstance()->get(Tinebase_Config::BRANDING_TITLE) : $title;
     $result = array('favicon' => $favicon, 'extJs' => '<link rel="stylesheet" type="text/css" href="library/ExtJS/resources/css/' . $extJS . '" />', 'themePath' => '<link rel="stylesheet" type="text/css" href="themes/' . $themePath . '/resources/css/' . $themePath . '.css" />', 'title' => $title);
     return $result;
 }
 /**
  * update to 6.1
  * - changepw config option has moved
  */
 public function update_0()
 {
     $changepwSetting = Tinebase_User::getBackendConfiguration('changepw', TRUE);
     if (!$changepwSetting) {
         Tinebase_Config::getInstance()->set(Tinebase_Config::PASSWORD_CHANGE, FALSE);
     }
     $this->setApplicationVersion('Tinebase', '6.1');
 }
Example #6
0
 /**
  * test client config retrival
  * 
  */
 public function testGetClientRegistryConfig()
 {
     $clientConfig = $this->_instance->getClientRegistryConfig();
     $this->assertTrue($clientConfig instanceof Tinebase_Config_Struct, 'clientconfig is not a struct');
     $this->assertTrue($clientConfig->Calendar instanceof Tinebase_Config_Struct, 'calendar clientconfig is not a struct');
     $this->assertEquals($this->_instance->calendar->fixedCalendars, $clientConfig->Calendar->fixedCalendars->value, 'fixed calendar config not correct');
     $this->assertFalse(array_key_exists('SMTP', $clientConfig->Tinebase), 'SMTP is not a client config');
 }
 /**
  * Sets up the fixture.
  * This method is called before a test is executed.
  */
 public function setUp()
 {
     $smtpConfig = Tinebase_Config::getInstance()->get(Tinebase_Config::SMTP, new Tinebase_Config_Struct())->toArray();
     if (empty($smtpConfig)) {
         $this->markTestSkipped('No SMTP config found: this is needed to send notifications.');
     }
     $this->_mailer = Tinebase_Smtp::getDefaultTransport();
 }
Example #8
0
 /**
  * move ods export config to import export definitions
  * 
  * @return void
  */
 public function update_1()
 {
     // remove Tinebase_Config::ODSEXPORTCONFIG
     Tinebase_Config::getInstance()->deleteConfigForApplication('odsexportconfig', 'Timetracker');
     // get import export definitions and save them in db
     Setup_Controller::getInstance()->createImportExportDefinitions(Tinebase_Application::getInstance()->getApplicationByName('Timetracker'));
     $this->setApplicationVersion('Timetracker', '3.2');
 }
 /**
  * Sets up the fixture.
  * This method is called before a test is executed.
  *
  * @access protected
  */
 protected function setUp()
 {
     $this->_backend = Tinebase_User::getInstance();
     if (!array_key_exists('Tinebase_EmailUser_Imap_Dbmail', $this->_backend->getPlugins())) {
         $this->markTestSkipped('Dbmail MySQL plugin not enabled');
     }
     $this->_config = Tinebase_Config::getInstance()->get(Tinebase_Config::IMAP, new Tinebase_Config_Struct())->toArray();
     $this->objects['users'] = array();
 }
 /**
  * the constructor
  *
  */
 public function __construct()
 {
     $smtpConfig = Tinebase_Config::getInstance()->get(Tinebase_Config::SMTP, new Tinebase_Config_Struct(array()))->toArray();
     $this->_fromAddress = isset($smtpConfig['from']) && !empty($smtpConfig['from']) ? $smtpConfig['from'] : '';
     // try to sanitize sender address
     if (empty($this->_fromAddress) && isset($smtpConfig['primarydomain']) && !empty($smtpConfig['primarydomain'])) {
         $this->_fromAddress = 'noreply@' . $smtpConfig['primarydomain'];
     }
 }
Example #11
0
 /**
  * Sets up the fixture.
  * This method is called before a test is executed.
  *
  * @access protected
  */
 protected function setUp()
 {
     $this->_backend = Tinebase_User::getInstance();
     if (!array_key_exists('Tinebase_EmailUser_Imap_Cyrus', $this->_backend->getPlugins())) {
         $this->markTestSkipped('Cyrus IMAP plugin not enabled');
     }
     $this->_config = Tinebase_Config::getInstance()->getConfigAsArray(Tinebase_Config::IMAP);
     $this->objects['users'] = array();
 }
 /**
  * (non-PHPdoc)
  * @see tests/tine20/Crm/AbstractTest::setUp()
  */
 public function setUp()
 {
     parent::setUp();
     $smtpConfig = Tinebase_Config::getInstance()->get(Tinebase_Config::SMTP, new Tinebase_Config_Struct())->toArray();
     if (empty($smtpConfig)) {
         $this->markTestSkipped('No SMTP config found: this is needed to send notifications.');
     }
     $this->_leadController = Crm_Controller_Lead::getInstance();
 }
 /**
  * the constructor
  * 
  * @param array $_options
  */
 public function __construct(array $_options = array())
 {
     // get email user backend config options (host, dbname, username, password, port)
     $emailConfig = Tinebase_Config::getInstance()->get(Tinebase_Config::IMAP, new Tinebase_Config_Struct())->toArray();
     // merge _config and email backend config
     $this->_config = array_merge($this->_config, $emailConfig);
     if (Tinebase_Core::isLogLevel(Zend_Log::TRACE)) {
         Tinebase_Core::getLogger()->trace(__METHOD__ . '::' . __LINE__ . ' ' . print_r($this->_config, TRUE));
     }
 }
Example #14
0
 /**
  * update function (-> 3.3)
  * - renamed config useAsDefault -> useSystemAccount
  */
 public function update_2()
 {
     $imapConfig = Tinebase_Config::getInstance()->getConfigAsArray(Tinebase_Config::IMAP);
     if (array_key_exists('useAsDefault', $imapConfig)) {
         $imapConfig['useSystemAccount'] = $imapConfig['useAsDefault'];
         unset($imapConfig['useAsDefault']);
         Tinebase_Config::getInstance()->setConfigForApplication(Tinebase_Config::IMAP, Zend_Json::encode($imapConfig));
     }
     $this->setApplicationVersion('Felamimail', '3.3');
 }
 /**
  * update function (-> 3.3)
  * - renamed config useAsDefault -> useSystemAccount
  */
 public function update_2()
 {
     $imapConfig = Tinebase_Config::getInstance()->get(Tinebase_Config::IMAP, new Tinebase_Config_Struct())->toArray();
     if (isset($imapConfig['useAsDefault']) || array_key_exists('useAsDefault', $imapConfig)) {
         $imapConfig['useSystemAccount'] = $imapConfig['useAsDefault'];
         unset($imapConfig['useAsDefault']);
         Tinebase_Config::getInstance()->set(Tinebase_Config::IMAP, $imapConfig);
     }
     $this->setApplicationVersion('Felamimail', '3.3');
 }
 /**
  * send pending alarms
  *
  * @param mixed $_eventName
  * @return void
  * 
  * @todo sort alarms (by model/...)?
  * @todo what to do about Tinebase_Model_Alarm::STATUS_FAILURE alarms?
  */
 public function sendPendingAlarms($_eventName)
 {
     $eventName = is_array($_eventName) ? $_eventName['eventName'] : $_eventName;
     $job = Tinebase_AsyncJob::getInstance()->startJob($eventName);
     if (!$job) {
         return;
     }
     if (Tinebase_Core::isLogLevel(Zend_Log::DEBUG)) {
         Tinebase_Core::getLogger()->debug(__METHOD__ . '::' . __LINE__ . ' No ' . $eventName . ' is running. Starting new one.');
     }
     try {
         // get all pending alarms
         $filter = new Tinebase_Model_AlarmFilter(array(array('field' => 'alarm_time', 'operator' => 'before', 'value' => Tinebase_DateTime::now()->subMinute(1)->get(Tinebase_Record_Abstract::ISO8601LONG)), array('field' => 'sent_status', 'operator' => 'equals', 'value' => Tinebase_Model_Alarm::STATUS_PENDING)));
         $limit = Tinebase_Config::getInstance()->get(Tinebase_Config::ALARMS_EACH_JOB, 100);
         $pagination = $limit > 0 ? new Tinebase_Model_Pagination(array('limit' => $limit)) : null;
         $alarms = $this->_backend->search($filter, $pagination);
         if (Tinebase_Core::isLogLevel(Zend_Log::DEBUG)) {
             Tinebase_Core::getLogger()->debug(__METHOD__ . '::' . __LINE__ . ' Sending ' . count($alarms) . ' alarms (limit: ' . $limit . ').');
         }
         // loop alarms and call sendAlarm in controllers
         foreach ($alarms as $alarm) {
             list($appName, $i, $itemName) = explode('_', $alarm->model);
             $appController = Tinebase_Core::getApplicationInstance($appName, $itemName);
             if ($appController instanceof Tinebase_Controller_Alarm_Interface) {
                 $alarm->sent_time = Tinebase_DateTime::now();
                 try {
                     // NOTE: we set the status here, so controller can adopt the status itself
                     $alarm->sent_status = Tinebase_Model_Alarm::STATUS_SUCCESS;
                     $appController->sendAlarm($alarm);
                 } catch (Exception $e) {
                     Tinebase_Exception::log($e);
                     $alarm->sent_message = $e->getMessage();
                     $alarm->sent_status = Tinebase_Model_Alarm::STATUS_FAILURE;
                 }
                 if (Tinebase_Core::isLogLevel(Zend_Log::DEBUG)) {
                     Tinebase_Core::getLogger()->debug(__METHOD__ . '::' . __LINE__ . ' Updating alarm status: ' . $alarm->sent_status);
                 }
                 $this->update($alarm);
             }
         }
         $job = Tinebase_AsyncJob::getInstance()->finishJob($job);
     } catch (Exception $e) {
         // save new status 'failure'
         $job = Tinebase_AsyncJob::getInstance()->finishJob($job, Tinebase_Model_AsyncJob::STATUS_FAILURE, $e->getMessage());
         if (Tinebase_Core::isLogLevel(Zend_Log::WARN)) {
             Tinebase_Core::getLogger()->warn(__METHOD__ . '::' . __LINE__ . ' Job failed: ' . $e->getMessage());
         }
         if (Tinebase_Core::isLogLevel(Zend_Log::DEBUG)) {
             Tinebase_Core::getLogger()->debug(__METHOD__ . '::' . __LINE__ . ' ' . $e->getTraceAsString());
         }
     }
     if (Tinebase_Core::isLogLevel(Zend_Log::DEBUG)) {
         Tinebase_Core::getLogger()->debug(__METHOD__ . '::' . __LINE__ . ' Job ' . $eventName . ' finished.');
     }
 }
 /**
  * (non-PHPdoc)
  * @see tests/tine20/Calendar/Calendar_TestCase::setUp()
  */
 public function setUp()
 {
     parent::setUp();
     $smtpConfig = Tinebase_Config::getInstance()->getConfigAsArray(Tinebase_Config::SMTP);
     if (empty($smtpConfig)) {
         $this->markTestSkipped('No SMTP config found: this is needed to send notifications.');
     }
     $this->_eventController = Calendar_Controller_Event::getInstance();
     $this->_notificationController = Calendar_Controller_EventNotifications::getInstance();
     $this->_setupPreferences();
 }
Example #18
0
 public function testSaveBackendConfiguration()
 {
     Tinebase_User::setBackendType(Tinebase_User::LDAP);
     $rawConfigBefore = Tinebase_Config::getInstance()->getConfig(Tinebase_Config::USERBACKEND, null, 'null');
     $key = 'host';
     $testValue = 'phpunit-test-host2';
     Tinebase_User::setBackendConfiguration($testValue, $key);
     Tinebase_User::saveBackendConfiguration();
     $rawConfigAfter = Tinebase_Config::getInstance()->getConfig(Tinebase_Config::USERBACKEND);
     $this->assertNotEquals($rawConfigBefore, $rawConfigAfter);
 }
 /**
  * tests the correct replacement of markers with different contents
  */
 public function testMarkerReplacement()
 {
     $doc = new OpenDocument_Document(OpenDocument_Document::SPREADSHEET);
     $table = $doc->getBody()->appendTable('UNITTEST');
     $titleText = 'Hello unittest!';
     $row = $table->appendRow();
     $cell = $row->appendCell($titleText);
     $row = $table->appendRow();
     $row = $table->appendRow();
     $cell = $row->appendCell('###MATRIX###');
     $row = $table->appendRow();
     $row = $table->appendRow();
     $cell = $row->appendCell('###MARKER###');
     $filename = Tinebase_Config::getInstance()->get('tmpdir') . DIRECTORY_SEPARATOR . Tinebase_Record_Abstract::generateUID(4) . '-ods-unittest.ods';
     $ccc = Sales_Controller_CostCenter::getInstance();
     $cc1 = $ccc->create(new Sales_Model_CostCenter(array('number' => 'cc1', 'remark' => 'unittest-cc1')));
     $cc2 = $ccc->create(new Sales_Model_CostCenter(array('number' => 'cc2', 'remark' => 'unittest-cc2')));
     $colInfo = array();
     $colInfo[$cc1->getId()] = $cc1->number;
     $colInfo[$cc2->getId()] = $cc2->number;
     $matrixArray = array($cc1->getId() => array($cc2->getId() => '100'), $cc2->getId() => array($cc1->getId() => '200'));
     $matrix = new OpenDocument_Matrix($matrixArray, $colInfo, $colInfo, OpenDocument_Matrix::TYPE_FLOAT);
     $matrix->setColumnLegendDescription('Cat');
     $matrix->setRowLegendDescription('Dog');
     $markerText = 'unittest-marker';
     $doc->replaceMarker('marker', $markerText)->replaceMatrix('matrix', $matrix);
     $doc->getDocument($filename);
     $contentXml = file_get_contents('zip://' . $filename . '#content.xml');
     $xml = simplexml_load_string($contentXml);
     unlink($filename);
     $spreadSheets = $xml->xpath('//office:body/office:spreadsheet');
     $this->assertEquals(1, count($spreadSheets));
     $spreadSheet = $spreadSheets[0];
     $results = $spreadSheet->xpath("//text()[contains(., '{$markerText}')]");
     $this->assertEquals(1, count($results));
     $results = $spreadSheet->xpath("//text()[contains(., '{$titleText}')]");
     $this->assertEquals(1, count($results));
     $results = $spreadSheet->xpath("//text()[contains(., '{$cc1->number}')]");
     $this->assertEquals(2, count($results));
     $results = $spreadSheet->xpath("//text()[contains(., '{$cc2->number}')]");
     $this->assertEquals(2, count($results));
     $results = $spreadSheet->xpath("//text()[contains(., 'Sum')]");
     $this->assertEquals(2, count($results));
     $results = $spreadSheet->xpath("//text()[contains(., 'Cat')]");
     $this->assertEquals(1, count($results));
     $results = $spreadSheet->xpath("//text()[contains(., 'Dog')]");
     $this->assertEquals(1, count($results));
     $results = $spreadSheet->xpath("//text()[contains(., '100')]");
     $this->assertEquals(3, count($results));
     $results = $spreadSheet->xpath("//text()[contains(., '200')]");
     $this->assertEquals(3, count($results));
     $results = $spreadSheet->xpath("//text()[contains(., '300')]");
     $this->assertEquals(1, count($results));
 }
 /**
  * Test SetBoolConfig
  */
 public function testSetBoolConfig()
 {
     $this->_oldConfigs[Tinebase_Config::MAINTENANCE_MODE] = Tinebase_Config::getInstance()->get(Tinebase_Config::MAINTENANCE_MODE);
     $values = array(1, "true");
     foreach ($values as $configValue) {
         $output = $this->_cliHelper('setconfig', array('--setconfig', '--', 'configkey=maintenanceMode', 'configvalue=' . $configValue));
         $this->assertContains('OK - Updated configuration option maintenanceMode for application Tinebase', $output);
         $result = Tinebase_Config_Abstract::factory('Tinebase')->get(Tinebase_Config::MAINTENANCE_MODE);
         $this->assertTrue($result);
     }
 }
Example #21
0
 /**
  * Sets up the fixture.
  * This method is called before a test is executed.
  *
  * @access protected
  */
 protected function setUp()
 {
     $this->_config = Tinebase_Config::getInstance()->getConfigAsArray(Tinebase_Config::IMAP);
     if (!isset($this->_config['backend']) || !(ucfirst($this->_config['backend']) == Tinebase_EmailUser::DOVECOT_IMAP) || $this->_config['active'] != true) {
         $this->markTestSkipped('Dovecot MySQL backend not configured or not enabled');
     }
     $this->_backend = Tinebase_EmailUser::getInstance(Tinebase_Config::IMAP);
     $personas = Zend_Registry::get('personas');
     $this->_objects['user'] = clone $personas['jsmith'];
     $this->_objects['addedUsers'] = array();
 }
 /**
  * the constructor
  */
 public function __construct(array $_options = array())
 {
     parent::__construct($_options);
     $this->_config['emailGID'] = sprintf("%u", crc32(Tinebase_Application::getInstance()->getApplicationByName('Tinebase')->getId()));
     // get email user backend config options (host, dbname, username, password, port)
     $emailConfig = Tinebase_Config::getInstance()->get(Tinebase_Config::SMTP, new Tinebase_Config_Struct())->toArray();
     // merge _config and email backend config
     $this->_config = array_merge($this->_config, $emailConfig);
     if (Tinebase_Core::isLogLevel(Zend_Log::TRACE)) {
         Tinebase_Core::getLogger()->trace(__METHOD__ . '::' . __LINE__ . ' ' . print_r($this->_config, TRUE));
     }
 }
Example #23
0
 /**
  * test get smtp config
  */
 public function testGetSmtpConfig()
 {
     $smtpConfig = Tinebase_Config::getInstance()->getConfigAsArray(Tinebase_Config::SMTP);
     $account = new Felamimail_Model_Account(array('type' => Felamimail_Model_Account::TYPE_SYSTEM));
     $accountSmtpConfig = $account->getSmtpConfig();
     if (array_key_exists('primarydomain', $smtpConfig)) {
         $this->assertContains($smtpConfig['primarydomain'], $accountSmtpConfig['username']);
     }
     if (TestServer::getInstance()->getConfig()->mailserver) {
         $this->assertEquals(TestServer::getInstance()->getConfig()->mailserver, $accountSmtpConfig['hostname']);
     }
 }
 /**
  * Sets up the fixture.
  * This method is called before a test is executed.
  *
  * @access protected
  */
 protected function setUp()
 {
     if (Tinebase_User::getConfiguredBackend() !== Tinebase_User::LDAP) {
         $this->markTestSkipped('LDAP backend not enabled');
     }
     $this->_backend = Tinebase_User::getInstance();
     if (!array_key_exists('Tinebase_EmailUser_Smtp_LdapDbmailSchema', $this->_backend->getPlugins())) {
         $this->markTestSkipped('Dbmail LDAP plugin not enabled');
     }
     $this->_config = Tinebase_Config::getInstance()->get(Tinebase_Config::IMAP, new Tinebase_Config_Struct())->toArray();
     $this->objects['users'] = array();
 }
Example #25
0
 /**
  * set up test environment
  */
 protected function setUp()
 {
     $imapConfig = Tinebase_Config::getInstance()->getConfigAsArray(Tinebase_Config::IMAP);
     if (empty($imapConfig) || !array_key_exists('useSystemAccount', $imapConfig) || $imapConfig['useSystemAccount'] != true) {
         $this->markTestSkipped('IMAP backend not configured');
     }
     $this->_testUser = Tinebase_Core::getUser();
     $this->_domDocument = $this->_getOutputDOMDocument();
     $this->_emailTestClass = new Felamimail_Controller_MessageTest();
     $this->_emailTestClass->setup();
     $this->objects['devices'] = array();
 }
 /**
  * testMaintenanceModeLoginFail
  */
 public function testMaintenanceModeLoginFail()
 {
     if (Tinebase_User::getConfiguredBackend() === Tinebase_User::LDAP || Tinebase_User::getConfiguredBackend() === Tinebase_User::ACTIVEDIRECTORY) {
         $this->markTestSkipped('FIXME: Does not work with LDAP/AD backend (full test suite run)');
     }
     Tinebase_Config::getInstance()->maintenanceMode = 1;
     try {
         $this->_instance->login('sclever', Tinebase_Helper::array_value('password', TestServer::getInstance()->getTestCredentials()), new \Zend\Http\PhpEnvironment\Request());
         $this->fail('expecting exception: Tinebase_Exception_MaintenanceMode');
     } catch (Tinebase_Exception_MaintenanceMode $temm) {
         $this->assertEquals('Installation is in maintenance mode. Please try again later', $temm->getMessage());
     }
 }
 /**
  * test get smtp config
  */
 public function testGetSmtpConfig()
 {
     $this->markTestSkipped('this test has to be refactored');
     $smtpConfig = Tinebase_Config::getInstance()->get(Tinebase_Config::SMTP, new Tinebase_Config_Struct())->toArray();
     $account = new Felamimail_Model_Account(array('type' => Felamimail_Model_Account::TYPE_SYSTEM));
     $accountSmtpConfig = $account->getSmtpConfig();
     if (isset($smtpConfig['primarydomain']) || array_key_exists('primarydomain', $smtpConfig)) {
         $this->assertContains($smtpConfig['primarydomain'], $accountSmtpConfig['username']);
     }
     if (TestServer::getInstance()->getConfig()->mailserver) {
         $this->assertEquals(TestServer::getInstance()->getConfig()->mailserver, $accountSmtpConfig['hostname']);
     }
 }
 /**
  * (non-PHPdoc)
  * @see tests/tine20/Calendar/Calendar_TestCase::setUp()
  */
 public function setUp()
 {
     parent::setUp();
     Calendar_Controller_Event::getInstance()->sendNotifications(true);
     $smtpConfig = Tinebase_Config::getInstance()->get(Tinebase_Config::SMTP, new Tinebase_Config_Struct())->toArray();
     if (empty($smtpConfig)) {
         $this->markTestSkipped('No SMTP config found: this is needed to send notifications.');
     }
     $this->_eventController = Calendar_Controller_Event::getInstance();
     $this->_notificationController = Calendar_Controller_EventNotifications::getInstance();
     $this->_setupPreferences();
     Calendar_Config::getInstance()->set(Calendar_Config::MAX_NOTIFICATION_PERIOD_FROM, 52 * 10);
 }
 /**
  * (non-PHPdoc)
  * @see ActiveSync/ActiveSync_TestCase::setUp()
  */
 protected function setUp()
 {
     $imapConfig = Tinebase_Config::getInstance()->get(Tinebase_Config::IMAP);
     if (!$imapConfig || !isset($imapConfig->useSystemAccount) || $imapConfig->useSystemAccount != TRUE) {
         $this->markTestSkipped('IMAP backend not configured');
     }
     $this->_emailTestClass = new Felamimail_Controller_MessageTest();
     $this->_emailTestClass->setup();
     $this->_createdMessages = new Tinebase_Record_RecordSet('Felamimail_Model_Message');
     Tinebase_TransactionManager::getInstance()->startTransaction(Tinebase_Core::getDb());
     $testDevice = ActiveSync_Backend_DeviceTests::getTestDevice();
     $this->objects['device'] = ActiveSync_Controller_Device::getInstance()->create($testDevice);
 }
 /**
  * Sets up the fixture.
  * This method is called before a test is executed.
  *
  * @access protected
  */
 protected function setUp()
 {
     $this->_config = Tinebase_Config::getInstance()->get(Tinebase_Config::IMAP, new Tinebase_Config_Struct())->toArray();
     if (!isset($this->_config['backend']) || !('Imap_' . ucfirst($this->_config['backend']) == Tinebase_EmailUser::IMAP_DOVECOT) || $this->_config['active'] != true) {
         $this->markTestSkipped('Dovecot MySQL backend not configured or not enabled');
     }
     $this->_backend = Tinebase_EmailUser::getInstance(Tinebase_Config::IMAP);
     $personas = Zend_Registry::get('personas');
     $this->_objects['user'] = clone $personas['jsmith'];
     //$this->_objects['user']->setId(Tinebase_Record_Abstract::generateUID());
     $this->_objects['addedUsers'] = array();
     $this->_objects['fullUsers'] = array();
 }