public function init() { $this->engine = \Clips\context('smarty'); $this->engine->template_dir = \Clips\clips_config('template_dir'); $this->engine->compile_dir = \Clips\clips_config('smarty_compile_dir')[0]; $this->engine->config_dir = \Clips\clips_config('smarty_config_dir'); $this->engine->cache_dir = \Clips\clips_config('smarty_cache_dir')[0]; $this->engine->addPluginsDir(\Clips\clips_config('smarty_plugin_dir', array())); }
protected function getConfig() { if (!isset($this->_config)) { $this->_config = array(); // Load the config foreach ($this->value as $config) { $datatable_config_dir = \Clips\clips_config('pagination_config_dir'); if ($datatable_config_dir) { $datatable_config_dir = $datatable_config_dir[0]; $p = \Clips\path_join($datatable_config_dir, $config . '.json'); if (file_exists($p)) { $this->_config[$config] = \Clips\parse_json(file_get_contents($p)); } } } } return $this->_config; }
public function readFile($file) { if (strpos($file, "://") !== false) { $r = new \Clips\Resource($file); return $r->contents(); } // Try the absolute path first if (file_exists($file)) { return file_get_contents($file); } foreach (\Clips\clips_config('sass_folders', array()) as $folder) { $r = \Clips\try_path(\Clips\path_join($folder, $file)); if ($r) { return file_get_contents($r); } } foreach ($this->includePathes as $path) { $filepath = $path . '/' . $file; if (file_exists($filepath) && is_file($filepath) && is_readable($filepath)) { return file_get_contents($filepath); } } return ''; }
public function widget() { $config = \Clips\interactive('interactive/widget', $this); $config->date = strftime("%a %b %e %H:%M:%S %Y"); $config->widget = ucfirst($config->widget); $namespace = \Clips\config('namespace'); if ($namespace) { $config->namespace = $namespace[0]; } else { $config->namespace = 'Clips\\'; } $widget_dir = \Clips\clips_config('widget_dir'); foreach ($widget_dir as $p) { $path = \Clips\try_path($p); if ($path) { break; } } if (!$path) { $this->output('Can\'t find any widget directory, generation failed!'); return -1; } $dir = \Clips\path_join($path, $config->widget); if (\file_exists($dir)) { $this->output('Widget %s exists!', $config->widget); return -1; } // Make the widget dir first mkdir($dir, 0755, true); // Write the widget configuration \file_put_contents(\Clips\path_join($dir, 'widget.yml'), \Clips\clips_out('widget', $config, false)); // Write the widget class \file_put_contents(\Clips\path_join($dir, 'Widget.php'), \Clips\clips_out('widget_class', $config, false)); $this->output('Done!'); }