public static function createEntityManager($configFilePath, $sourceFolder, $devMode) { $config = ConfigurationHandler::readConfiguration($configFilePath); // http://php.net/manual/en/ref.pdo-mysql.php#pdo.constants.mysql-attr-init-command $config['driverOptions'] = array(1002 => 'SET NAMES utf8'); return EntityManager::create($config[ConfigurationNames::DATABASE_PREFIX], self::getConfiguration($sourceFolder, $devMode)); }
public function __construct() { $config = ConfigurationHandler::readConfiguration(CONFIG_FILE); if (!array_key_exists('mail', $config) || !array_key_exists(SwiftMailerMailer::MAILER_NAME, $config['mail'])) { throw new InvalidConfigurationException(sprintf('Expected a mail configuration for %s', SwiftMailerMailer::MAILER_NAME)); } $swiftMailConfig = $config['mail'][SwiftMailerMailer::MAILER_NAME]; $transport = Swift_SmtpTransport::newInstance($swiftMailConfig[SwiftConstants::HOST], $swiftMailConfig[SwiftConstants::PORT], $swiftMailConfig[SwiftConstants::SECURITY])->setUsername($swiftMailConfig[SwiftConstants::USERNAME])->setPassword($swiftMailConfig[SwiftConstants::PASSWORD]); $this->mailer = Swift_Mailer::newInstance($transport); }
public function __construct() { $config = ConfigurationHandler::readConfiguration(CONFIG_FILE); if (!array_key_exists('mail', $config) || !array_key_exists(MandrillTemplateMailer::MAILER_NAME, $config['mail'])) { throw new InvalidConfigurationException(sprintf('Expected a mail configuration for %s', MandrillTemplateMailer::MAILER_NAME)); } $mailChimpConfig = $config['mail'][MandrillTemplateMailer::MAILER_NAME]; $globalMergeVars = []; foreach ($mailChimpConfig['global_merge_vars'] as $key => $val) { $globalMergeVars[] = ['name' => $key, 'content' => $val]; } $this->mandrill = new Mandrill($mailChimpConfig['api_key']); $this->templateName = $mailChimpConfig['template_name']; $this->templateContent = $mailChimpConfig['template_content']; $this->globalMergeVars = $globalMergeVars; }
!isset($_SERVER['HTTPS']) || $_SERVER['HTTPS'] === 'off' ? $protocol = 'http://' : ($protocol = 'https://'); define('PROTOCOL', $protocol); define('HTTP_ROOT', $protocol . $_SERVER['HTTP_HOST']); define('LOCAL_ROOT', __DIR__); define('HTTP_MEDIA_DIR', HTTP_ROOT . '/media'); define('LOCAL_MEDIA_DIR', LOCAL_ROOT . '/web/media'); define('CONFIG_FILE', LOCAL_ROOT . '/app/config/parameters.yml'); define('SRC_FOLDER', LOCAL_ROOT . '/src'); // set locale to german $newLocale = setlocale(LC_TIME, 'de_CH.UTF-8', 'de_CH'); // prevent PHP from sending conflicting cache expiration headers with the HTTP response session_cache_limiter(false); session_start(); // enable this for log writing to file $logWriter = new LogWriter(fopen(__DIR__ . '/app/log/cms.log', 'a')); $config = \rmatil\cms\Handler\ConfigurationHandler::readConfiguration(CONFIG_FILE); $app = new Slim(array('debug' => true, 'log.level' => \Slim\Log::DEBUG, 'log.enabled' => true, 'controller.class_prefix' => 'rmatil\\cms\\Controller', 'controller.class_suffix' => 'Controller', 'controller.method_suffix' => 'Action', 'controller.template_suffix' => 'php', 'log.writer' => $logWriter, 'templates.path' => LOCAL_ROOT . '/web/templates/' . $config[\rmatil\cms\Constants\ConfigurationNames::TEMPLATE][\rmatil\cms\Constants\ConfigurationNames::TEMPLATE_PATH], 'view' => new \Slim\Views\Twig())); $view = $app->view(); $view->parserOptions = array('debug' => true, 'cache' => __DIR__ . '/app/cache'); $view->parserExtensions = array(new \Slim\Views\TwigExtension(), new \Twig_Extension_Debug()); // Add JMS Serializer to app $app->container->singleton('serializer', function () { $namingStrategy = new \JMS\Serializer\Naming\CamelCaseNamingStrategy(); return SerializerBuilder::create()->addDefaultDeserializationVisitors()->addDefaultSerializationVisitors()->setSerializationVisitor('json', new \rmatil\cms\Serializer\JsonSerializationVisitor($namingStrategy))->build(); }); HandlerSingleton::setEntityManager($entityManager); $thumbnailHandler = HandlerSingleton::getThumbnailHandler(); $fileHandler = HandlerSingleton::getFileHandler(HTTP_MEDIA_DIR, LOCAL_MEDIA_DIR); $registrationHandler = HandlerSingleton::getRegistrationHandler($config['mail']['use']); $databaseHandler = HandlerSingleton::getDatabaseHandler(); $loginHandler = HandlerSingleton::getLoginHandler(array('^\\/authenticate' => array('ROLE_SUPER_ADMIN', 'ROLE_ANONYMOUS'), '^\\/api\\/.*' => array('ROLE_SUPER_ADMIN')));
protected function sendPhpMailerMail(RegistrationMail $registrationMail) { $config = ConfigurationHandler::readConfiguration(CONFIG_FILE); $mailConfig = $config['mail']['phpMailer']; $phpMailerMail = new PhpMailerMail($registrationMail->getSubject(), $registrationMail->getFromEmail(), $registrationMail->getFromName(), $registrationMail->getTo(), $registrationMail->getBody()); $phpMailer = new PhpMailer($mailConfig['host'], $mailConfig['username'], $mailConfig['password'], $mailConfig['port']); try { $phpMailer->send($phpMailerMail); } catch (Exception $e) { throw new RegistrationMailNotSentException($e->getMessage()); } }