Esempio n. 1
0
 public static function get($config_name, $locale = null)
 {
     $configObject = new Config();
     if (!$locale) {
         $locale = $configObject->getLocale();
     }
     if (self::$data === null) {
         $con = \Propel::getConnection();
         $query = '
             SELECT ci.locale, c.name, ci.value, ci.data
             FROM config_i18n ci iNNER JOIN config c ON c.id = ci.id';
         $stmt = $con->prepare($query);
         $stmt->execute();
         $result = $stmt->fetchAll();
         foreach ($result as $k => $v) {
             self::$data[$v['locale']][$v['name']]['value'] = $v['value'];
             self::$data[$v['locale']][$v['name']]['data'] = $v['data'];
         }
     }
     if (isset(self::$data[$locale][$config_name]) && self::$data[$locale][$config_name]['value']) {
         $result = self::$data[$locale][$config_name];
     } else {
         if (isset(self::$data['en'][$config_name]) && self::$data['en'][$config_name]['value']) {
             $result = self::$data['en'][$config_name];
         } else {
             return false;
         }
     }
     $camelizedName = PropelInflector::camelize('get_' . $config_name);
     if (method_exists($configObject, $camelizedName)) {
         $configObject->setLocale($locale)->setName($config_name)->setData($result['data'])->setValue($result['value']);
         return $configObject->getData();
     } else {
         return $result['value'];
     }
 }
 /**
  * @param string $setting
  * @param null|string $locale
  * @return bool|string
  */
 public function configValue($setting, $locale = null)
 {
     return Config::get($setting, $locale);
 }