Ejemplo n.º 1
0
 public static function init($config = null)
 {
     if ($config) {
         self::$config = $config;
     } else {
         self::$config = ini('base/attachment');
     }
     self::$attachment_dir = Package::get_folder(self::$config['attachment_dir']);
 }
Ejemplo n.º 2
0
 public static function start()
 {
     if (ini('base/SESSION/CUSTOM')) {
         if (ini('base/SESSION/SAVE') == 'file') {
             ini_set('session.save_path', Package::get_folder(ini('base/SESSION/DIR')));
         }
     }
     @session_start();
     self::$started = true;
 }
Ejemplo n.º 3
0
 public static function is_available($cache_backend_name)
 {
     switch ($cache_backend_name) {
         case 'xcache':
             return function_exists('xcache_set');
         case 'file':
             return is_dir(Package::get_folder(self::$config['cache_dir'])) && is_writeable(Package::get_folder(self::$config['cache_dir']));
         case 'memcache':
             return class_exists('Memcached');
     }
     return false;
 }
Ejemplo n.º 4
0
Archivo: file.php Proyecto: uwitec/mgoa
 public function check_available()
 {
     if (!$this->config['cache_dir']) {
         $this->error_message = $this->config['cache_dir'];
         return 1004;
     }
     $cache_dir = Package::get_folder($this->config['cache_dir']);
     if (!is_writable($cache_dir)) {
         $this->error_message = $this->config['cache_dir'];
         return 1005;
     }
     return true;
 }
Ejemplo n.º 5
0
        function smarty_function_get_gravatar($params, $tpl_obj)
        {
            RuntimeConfig::load_application_config('gravatar');
            /*
             * the params
             */
            $email = md5($params['email']);
            $size = $params['size'] ? $params['size'] : ini('gravatar_config/size');
            $size = $size ? $size : '80';
            $rating = $params['rating'] ? $params['rating'] : ini('gravatar_config/rating');
            $rating = $rating ? $rating : 'G';
            $default = $params['default'] ? $params['default'] : ini('gravatar_config/default');
            $default = $default ? $default : 'wavatar';
            /*
             * Cache the remote avatar to local server
             */
            $cache_dir = Package::get_folder(ini('gravatar_config/cache_dir'));
            $cache_img = $cache_dir . DS . $email . '_' . $size . '.jpg';
            if (is_file($cache_img) && filemtime($cache_img) + ini('gravatar_config/cache_life') > time()) {
                $link = str_ireplace(BASE_DIR . DS, ini('base/BASE_URL'), $cache_img);
                $link = str_ireplace(DS, '/', $link);
            } else {
                $link = sprintf('http://www.gravatar.com/avatar/%s?rating=%s&size=%s&default=%s', $email, $rating, $size, $default);
                $content = @file_get_contents($link);
                if (!$content) {
                    $link = $params['onerror'] ? $params['onerror'] : ini('gravatar_config/onerror_img');
                } else {
                    if (ini('gravatar_config/caching') && $cache_dir && $params['email']) {
                        if (!is_dir($cache_dir)) {
                            @mkdir($cache_dir, 0777);
                        }
                        @file_put_contents($cache_img, $content);
                    }
                }
            }
            return <<<EOF
                <img src="{$link}" width="{$size}" height="{$size}" />
EOF;
        }
Ejemplo n.º 6
0
Archivo: base.php Proyecto: uwitec/mgoa
 private function use_i18n()
 {
     ini_set('date.timezone', ini('base/TIME_ZONE'));
     if (!ini('base/USE_I18N')) {
         define('USE_I18N', false);
         return true;
     }
     define('USE_I18N', true);
     self::$lang = $lang = ini('base/LANGUAGE_CODE');
     if (!$lang) {
         $lang = 'en_US';
     }
     $package = 'messages';
     if (SERVER_OS == 'linux') {
         $lang .= '.utf8';
         setlocale(LC_ALL, $lang);
     } else {
         putenv("LANG=" . $lang);
         setlocale(LC_ALL, $lang);
     }
     bindtextdomain($package, Package::get_folder('etc/locale.d'));
     textdomain($package);
     bind_textdomain_codeset($package, 'UTF-8');
 }
Ejemplo n.º 7
0
 public function __construct()
 {
     parent::__construct();
     $this->template_dir = Package::get_folder('var/templates');
     $this->compile_dir = Package::get_folder('tmp/tpl_compiled');
     if (strtolower(ini('base/RUN_MODE')) == 'devel') {
         $this->debugging = false;
         $this->debug_tpl = Package::get_file('var/templates/smarty_debug', 'tpl');
         $this->config_dir = Package::get_folder('etc/conf.d/smarty');
     } else {
         $this->caching = false;
         $this->cache_lifetime = ini('runtime/template/cache_life');
         $this->cache_dir = Package::get_folder('tmp/tpl_caches');
     }
     if (USE_I18N) {
         import('system/share/web/smarty_plugins/gettext');
         $this->registerPlugin('block', 'trans', 'smarty_translate');
     }
     import('system/share/web/smarty_plugins/common');
     $this->registerPlugin('function', 'url', 'smarty_function_url');
     $this->registerPlugin('function', 'load', 'smarty_function_load_dynamic_plugins');
     $this->assign_public_tpl_vars();
     return $this;
 }
Ejemplo n.º 8
0
 public static function syncdb($apps = null, $drop_database = false, $append = true)
 {
     if (!self::$inited || !self::$connections) {
         self::init();
     }
     if (!$apps) {
         $apps = ini('base/INSTALLED_APPS');
     }
     if (!$apps) {
         return true;
     }
     if ($drop_database) {
         Doctrine_Core::dropDatabases();
         Doctrine_Core::createDatabases();
     }
     foreach ((array) $apps as $k => $app) {
         $app = str_replace('.', '/', $app);
         try {
             /*
              * Generate the models
              */
             if (isset($_GET['use_yaml'])) {
                 $schemas = Package::get_file(sprintf('applications/%s/%s', $app, 'schemas.yml'));
                 if (!is_file($schemas)) {
                     continue;
                 }
                 Doctrine_Core::generateModelsFromYaml($schemas, Package::get_folder(sprintf('applications/%s/models', $app)), self::$_generate_options);
             } else {
                 try {
                     import(sprintf('applications/%s/models/generated/*', $app));
                 } catch (DoesNotExistsException $e) {
                     continue;
                 }
             }
             /*
              * syncdb
              */
             Doctrine_Core::createTablesFromModels(Package::get_folder(sprintf('applications/%s/models', $app)), self::$_generate_options);
             /*
              * Insert test data
              */
             $dir = Package::get_folder(sprintf('applications/%s/fixtures', $app));
             if (is_dir($dir)) {
                 Doctrine_Core::loadData($dir, $append);
             }
         } catch (PDOException $e) {
             continue;
         }
     }
 }