/**
  * @inheritdoc
  */
 public function attributeLabels()
 {
     $attributeLabels = parent::attributeLabels();
     $attributeLabels['language_i18n_title'] = Yii::t('kalibao', 'language_group_language:language_id');
     $attributeLabels['language_group_i18n_title'] = Yii::t('kalibao', 'language_group_language:language_group_id');
     return $attributeLabels;
 }
 /**
  * @return \yii\db\ActiveQuery
  */
 public function getLanguageGroupLanguages()
 {
     return $this->hasMany(LanguageGroupLanguage::className(), ['language_group_id' => 'id']);
 }
 /**
  * Get application languages
  * @return string[] application languages
  * @throws InvalidConfigException
  */
 public function getAppLanguages()
 {
     if (empty($this->validLanguages)) {
         $cacheKey = 'language_group:' . $this->languageGroupName;
         if (($languages = Yii::$app->commonCache->get($cacheKey)) === false) {
             $languages = LanguageGroupLanguage::find()->select('language_id')->where(['activated' => true, 'language_group_id' => Yii::$app->variable->get('kalibao', 'language_group_id:' . $this->languageGroupName)])->all();
             if (!empty($languages)) {
                 foreach ($languages as $language) {
                     $this->validLanguages[] = $language->language_id;
                 }
                 Yii::$app->commonCache->set($cacheKey, $this->validLanguages, $this->cacheDuration, new TagDependency(['tags' => [self::getCacheTag(), self::getCacheTag($this->languageGroupName)]]));
             } else {
                 throw new InvalidConfigException("The language group name does not exist: {$this->languageGroupName}");
             }
         } else {
             $this->validLanguages = $languages;
         }
     }
     return $this->validLanguages;
 }