/** * Get mail transport * * @return Zend_Mail_Transport */ public static function getMailTransport() { if (self::$_transport == null) { require_once LIB_DIR . DS . 'phpmailer' . DS . 'class.phpmailer.php'; require_once LIB_DIR . DS . 'phpmailer' . DS . 'class.smtp.php'; $config = Gio_Core_Module::getConfig('mail', true); self::$_transport = new PHPMailer(); self::$_transport->CharSet = 'utf-8'; switch ($config['protocol']['protocol']) { case 'mail': self::$_transport->Mailer = 'mail'; break; case 'smtp': self::$_transport->Mailer = 'smtp'; $options = array(); /** * Check host setting */ if (isset($config['smtp']['host'])) { $options['host'] = $config['smtp']['host']; } /** * Check port setting */ if (isset($config['smtp']['port'])) { $options['port'] = $config['smtp']['port']; } /** * Check authentication settings */ if (isset($config['smtp']['username']) && isset($config['smtp']['password'])) { $options['auth'] = 'login'; $options['username'] = $config['smtp']['username']; $options['password'] = $config['smtp']['password']; } /** * Check security setting */ if (isset($config['smtp']['security'])) { $options['ssl'] = $config['smtp']['security']; } self::$_transport->Host = $options['host']; // specify main and backup server self::$_transport->Port = $options['port']; // set the port to use self::$_transport->SMTPAuth = true; // turn on SMTP authentication self::$_transport->SMTPSecure = $options['ssl']; self::$_transport->Username = $options['username']; // your SMTP username or your gmail username self::$_transport->Password = $options['password']; // your SMTP password or your gmail password break; } } return self::$_transport; }
public static function factory() { $request = Gio_Core_Request::getInstance(); $config = Gio_Core_Module::getConfig('page'); $param = isset($config['url']['param']) ? $config['url']['param'] : 'page_id'; $category = null; switch ($param) { case 'slug': $page = Modules_Page_Services_Page::getBySlug($request->getParam($param)); break; } if (null == $page) { $page = Modules_Page_Services_Page::getById($request->getParam('page_id')); } return $page; }
public static function factory() { $request = Gio_Core_Request::getInstance(); $config = Gio_Core_Module::getConfig('category'); $param = isset($config['url']['param']) ? $config['url']['param'] : 'category_id'; $category = null; switch ($param) { case 'category_path': $category = Modules_Category_Services_Category::getByPath($request->getParam($param)); break; } if (null == $category) { $category = Modules_Category_Services_Category::getById($request->getParam('category_id')); } return $category; }
public function run() { $request = Gio_Core_Request::getInstance(); $configs = Gio_Core_Config_Xml::getConfig('web'); /** * Do nothing if we are in page of managing permalink */ $uri = $request->getRequestUri(); $uri = strtolower($uri); $uri = rtrim($uri, '/') . '/'; $adminPrefix = $configs->admin->url_prefix; $adminPrefix = rtrim(ltrim($adminPrefix, '/'), '/'); if (is_int(strpos($uri, '/' . $adminPrefix . '/core/permalink'))) { return; } $defaultFile = ROOT_DIR . DS . 'configs' . DS . 'permalink.xml'; $host = $request->getServerName(); $host = substr($host, 0, 3) == 'www' ? substr($host, 4) : $host; $file = ROOT_DIR . DS . 'configs' . DS . $host . '.' . 'permalink.xml'; $file = file_exists($file) ? $file : $defaultFile; if (!file_exists($file)) { return; } $route = Gio_Core_Route::getInstance(); $config = @simplexml_load_file($file); if (!isset($config->item) || empty($config->item)) { return; } $categoryConfig = Gio_Core_Module::getConfig('category'); $param = isset($categoryConfig['url']['param']) ? $categoryConfig['url']['param'] : 'category_id'; foreach ($config->item as $index => $item) { $item = (array) $item; if (!in_array($item['name'], $this->_inArray)) { $route->setRoute($item['name'], $item); } elseif ($param == 'category_path' && in_array($item['name'], $this->_inArray)) { $route->setRoute($item['name'], $item); } } }
/** * Get mail server configurations * * @return array */ public static function getConfig() { return Gio_Core_Module::getConfig('mail', true); }
public function registerAction() { $request = $this->getRequest(); if ($request->isPost()) { $userData = $request->getPost('user'); $userData = Modules_Core_Services_User::validate($userData); /** * Check user exist */ if ($userData['username'] && Modules_Core_Services_User::getByUsername($userData['username'])) { $userData['messages_error'] = true; $userData['messages']['username'] = '******'; } /** * Check user exist */ if ($userData['email'] && Modules_Core_Services_User::getByEmail($userData['email'])) { $userData['messages_error'] = true; $userData['messages']['email'] = 'user_email_exist'; } if (isset($userData['messages_error']) && $userData['messages_error']) { $this->view->errorMessages = $userData['messages']; $this->view->userData = $userData; return; } $config = Gio_Core_Module::getConfig('core', true); if (!isset($config['user']['default_role_id']) || null == ($role = Modules_Core_Services_Role::getById($config['user']['default_role_id']))) { return; } $salt = md5(time()); $user = array('username' => $userData['username'], 'password' => md5(md5($userData['password']) . $salt), 'email' => $this->view->STRING->escape($userData['email']), 'fullname' => $this->view->STRING->escape($userData['fullname']), 'salt' => $salt, 'status' => 'active', 'created_date' => date('Y-m-d H:i:s'), 'role_id' => $role['role_id']); $userId = Modules_Core_Services_User::add($user); /** * Send welcome mail */ Modules_Core_Services_User::registerSuccess($user['username'], $user['email']); Gio_Core_Messenger::getInstance()->addMessage($this->view->TRANSLATOR->translator('user_register_success')); $this->redirect($this->view->url('core_user_register')); } }