コード例 #1
0
 /**
  * We override our function here because for certain URLs, we can have them created securely
  * and also handle our Shared SSL when needed
  * @param string $route
  * @param array $params
  * @param string $schema
  * @param string $ampersand
  * @return string
  */
 public function createAbsoluteUrl($route, $params = array(), $schema = '', $ampersand = '&')
 {
     //If we explicitly passing schema, bypass our trickery and just do it normally
     if ($schema != '') {
         return parent::createAbsoluteUrl($route, $params, $schema, $ampersand);
     }
     if (Yii::app()->params['ENABLE_SSL'] || Yii::app()->hasCommonSSL) {
         //Since our custom createUrl may create a full in most circumstances, append here if it doesn't
         $url = $this->createUrl($route, $params, $ampersand, $schema);
         if (strpos($url, 'http') === 0) {
             return $url;
         } else {
             return $this->getRequest()->getHostInfo($schema) . $url;
         }
     } else {
         return parent::createAbsoluteUrl($route, $params, $schema, $ampersand);
     }
 }