skeeks\cms\components\CurrentSite::getSite PHP Method

getSite() public method

public getSite ( ) : CmsSite
return skeeks\cms\models\CmsSite
    public function getSite()
    {
        if ($this->_site === null) {
            if (\Yii::$app instanceof \yii\console\Application) {
                $this->_site = CmsSite::find()->active()->andWhere(['def' => Cms::BOOL_Y])->one();
            } else {
                $this->_serverName = \Yii::$app->getRequest()->getServerName();
                $dependencySiteDomain = new TagDependency(['tags' => [(new CmsSiteDomain())->getTableCacheTag()]]);
                $cmsDomain = CmsSiteDomain::getDb()->cache(function ($db) {
                    return CmsSiteDomain::find()->where(['domain' => $this->_serverName])->one();
                }, null, $dependencySiteDomain);
                /**
                 * @var CmsSiteDomain $cmsDomain
                 */
                if ($cmsDomain) {
                    $this->_site = $cmsDomain->cmsSite;
                } else {
                    $this->_site = CmsSiteDomain::getDb()->cache(function ($db) {
                        return CmsSite::find()->active()->andWhere(['def' => Cms::BOOL_Y])->one();
                    }, null, new TagDependency(['tags' => [(new CmsSite())->getTableCacheTag()]]));
                }
            }
        }
        return $this->_site;
    }
CurrentSite