Ejemplo n.º 1
0
 /**
  * Setup the tests
  */
 public function setUp()
 {
     $this->app = IlluminageServiceProvider::make();
     $this->app->instance('path.public', 'tests/public');
     // Bind mocked config
     $this->app->bind('config', function () {
         return Mockery::mock('config', function ($mock) {
             $mock->shouldReceive('get')->with('illuminage::image_engine', '')->andReturn('Gd');
             $mock->shouldReceive('get')->with('illuminage::quality', '')->andReturn(75);
             $mock->shouldReceive('get')->with('illuminage::cache_folder', '')->andReturn('');
         });
     });
     // Create some dummy instances
     $this->image = $this->app['illuminage']->image('foo.jpg');
     $this->thumb = $this->app['illuminage']->thumb('foo.jpg', 100, 100);
 }
 public static function page_data($e)
 {
     $pid = $e->pid;
     $cid = $e->container;
     $dd = $e->as_array();
     $data = array();
     $fields = array('copy', 'title', 'date_added', 'date_modified', 'meta_keywords', 'meta_description');
     foreach ($fields as $field) {
         if (isset($dd[$field])) {
             $data[$field] = $dd[$field];
         }
     }
     $data['url'] = url::site('page/' . $dd['name'] . '.html');
     $data['plugins'] = array();
     $plugins = Container::instance($cid)->get_blocks_flat($pid);
     foreach ($plugins as $k => $v) {
         $d = $v->data();
         if (empty($d)) {
             continue;
         }
         $data['plugins'][$v->get_name()] = $d;
     }
     // var_dump( $data ); exit;
     return $data;
 }
 /**
  * render
  *
  * @return void
  * @author Andy Bennett
  */
 public static function render()
 {
     $content = array();
     $content['content'] = new stdClass();
     $content['content']->title = '';
     $content['content']->copy = Event::$data;
     $container = Container::instance(1)->render($content, null);
     Display::instance()->display($container);
 }
 /**
  * render list of plugins
  *
  * @param string $copy 
  * @return void
  * @author Andy Bennett
  */
 function render($copy)
 {
     $admin_container = Kohana::config('containers.admin_container');
     $content = new stdClass();
     $content->header = 'Containers Admin';
     $content->sub_header = '';
     $content->copy = $copy;
     $page_content = Container::instance()->init($admin_container)->render($content);
     Display::instance()->display($page_content);
 }
 /**
  * get container info
  *
  * @param string $container_id 
  * @return object
  * @author Andy Bennett
  */
 public static function get_container_info($container_id)
 {
     $info = new stdClass();
     Container::instance()->init($container_id);
     $info->template = Container::instance()->get_template();
     $info->section_nav = current(Container::instance()->get_plugins(array('column' => 'nav')));
     $info->left_column = Container::instance()->get_plugins(array('column' => 'left-col'));
     $info->mid_column = Container::instance()->get_plugins(array('column' => 'middle-col'));
     $info->right_column = Container::instance()->get_plugins(array('column' => 'right-col'));
     $info->palette_plugins = Container::instance()->get_plugins(array('column' => 'palette'));
     return $info;
 }
Ejemplo n.º 6
0
 /**
  * Get plugins and show
  *
  * @return void
  * @author Dan Chadwick
  */
 public function index()
 {
     Event::add('steamcore.aclcheck', array('acl_listeners', 'redirect'));
     $data = array('action' => 'admin', 'name' => null, 'role' => User::instance()->get_role());
     Event::run('steamcore.aclcheck', $data);
     Assets::instance()->add_css('admin');
     $view = View::factory('plugins_list');
     $view->plugins = PluginManager::instance()->getPluginObjects();
     $content = array('content' => new stdClass());
     $content['content']->title = 'Plugins Admin';
     $content['content']->copy = $view->render();
     Assets::instance()->add_css('/cache/css/display');
     Assets::instance()->add_javascript('/cache/js/display');
     Display::instance()->display(Container::instance('display')->render($content));
 }
Ejemplo n.º 7
0
 /**
  * listing
  *
  * @return void
  * @author Andy Bennett
  */
 public function admin()
 {
     $data = array('action' => 'edit', 'name' => $this->name, 'role' => User::instance()->get_role());
     Event::run('steamcore.aclcheck', $data);
     $blog = URI::instance()->segment(3, 1);
     $nodes = ORM::factory('blogpost')->where(array('lvl' => 1, 'blog_id' => $blog))->orderby(array('date_added' => 'DESC'))->find_all();
     $lvl = ORM::factory('blogpost')->level_column;
     $data = array('nodes' => $nodes, 'level_column' => $lvl, 'controller' => 'blogposts');
     $copy = View::factory('blog/postslist_admin', $data)->render();
     $content = array();
     $content['content'] = new stdClass();
     $content['content']->title = 'Blog Posts';
     $content['content']->copy = $copy;
     $container = Container::instance(3)->render($content);
     Display::instance()->display($container);
 }
Ejemplo n.º 8
0
 public function admin()
 {
     $data = array('action' => 'edit', 'name' => $this->name, 'role' => User::instance()->get_role());
     Event::run('steamcore.aclcheck', $data);
     $root = ORM::factory('pages_position')->where('lft', 0)->find();
     $xml = $root->render_descendants('pages', false)->render();
     $l = xsl::translate_string($xml, 'pages_admin', array(), array('pages_helper::check_acl'));
     $pages = pages_helper::get_pages($root = true);
     $move = View::factory('pageadmin/movepage', array('pagelist' => $pages))->render();
     $c = View::factory('pages/pages', array('list' => $l, 'controller' => 'pages', 'move' => $move))->render();
     $content = array();
     $content['content'] = new stdClass();
     $content['content']->title = 'Pages';
     $content['content']->copy = $c;
     $container = Container::instance(3)->render($content);
     Display::instance()->display($container);
 }
 /**
  * get list of comments
  *
  * @param string $post_id 
  * @return void
  * @author Andy Bennett
  */
 public function comments_list($post_id)
 {
     try {
         $node = ORM::factory('blogpost', $post_id);
         if ($node->has_children()) {
             $data = array();
             $data['post_title'] = $node->title;
             $data['nodes'] = $node->descendants()->find_all();
             $data['controller'] = 'blog_comments';
             $copy = View::factory('blog/post_comments_admin', $data)->render();
             $content = array();
             $content['content'] = new stdClass();
             $content['content']->title = 'Blog Post Comments';
             $content['content']->copy = $copy;
             $container = Container::instance(3)->render($content);
             Display::instance()->display($container);
         }
     } catch (Exception $e) {
         var_dump($e->getMessage());
         Kohana::log('debug', $e->getMessage());
     }
 }
Ejemplo n.º 10
0
 /**
  * @expectedException \RuntimeException
  */
 public function testInstanceArgsFail2()
 {
     $container = new Container();
     $container['fixture'] = $container->instance('Packfire\\FuelBlade\\ServiceLoadingException');
     $obj = $container['fixture'];
 }
Ejemplo n.º 11
0
 /**
  * @return Container
  */
 public function getContainer()
 {
     return Container::instance();
 }
Ejemplo n.º 12
0
 public function testStaticInstance()
 {
     $di = new Container();
     $di1 = new Container();
     $this->assertNotSame($di, Container::instance());
     $this->assertSame($di1, Container::instance());
 }
Ejemplo n.º 13
0
 /**
  * list the containers
  *
  * @return void
  * @author Andy Bennett
  */
 private function listing()
 {
     $data = array('action' => 'edit', 'name' => null, 'role' => User::instance()->get_role());
     Event::run('steamcore.aclcheck', $data);
     $root = ORM::factory('pages_position')->where('lft', 0)->find();
     $xml = $root->render_descendants('pages', false)->render();
     $l = xsl::translate_string($xml, 'page_plugins_list', array(), array(''));
     $c = View::factory('pages/page_plugins_list', array('list' => $l, 'controller' => 'page_plugins'))->render();
     preg_match_all('/{pid=([0-9]+)}/', $c, $matches);
     $count = count($matches[0]);
     for ($i = 0; $i < $count; $i++) {
         $c = str_replace($matches[0][$i], plugins::page_plugins_admin($matches[1][$i]), $c);
     }
     $content = array();
     $content['content'] = new stdClass();
     $content['content']->title = 'Page Plugins';
     $content['content']->copy = $c;
     Assets::instance()->add_css('/cache/css/display');
     Assets::instance()->add_javascript('/cache/js/display');
     $container = Container::instance('display')->render($content);
     Display::instance()->display($container);
 }
Ejemplo n.º 14
0
 /**
  * @return static
  */
 public static function getProvider()
 {
     return Container::instance(static::class);
 }
 /**
  * item view
  *
  * @return void
  * @author Andy Bennett
  */
 public static function item_view_listener()
 {
     $cid = Event::$data['data']['row']->container;
     $pid = Event::$data['data']['row']->pid;
     $content = array();
     $content['content'] = new stdClass();
     $content['content']->title = Event::$data['data']['row']->title;
     $content['content']->copy = View::factory('pages/' . Event::$data['view'], Event::$data['data'])->render();
     $container = Container::instance($cid)->render($content, null, $pid);
     Display::instance()->display($container);
 }
Ejemplo n.º 16
0
 /**
  * list the containers
  *
  * @return void
  * @author Andy Bennett
  */
 private function listing()
 {
     $containers = ORM::factory('container')->find_all();
     $content = array('content' => new stdClass());
     $content['content']->title = 'Containers Admin';
     $content['content']->copy = View::factory('containers_list', array('containers' => $containers))->render();
     Assets::instance()->add_css('/cache/css/display');
     Assets::instance()->add_javascript('/cache/js/display');
     Display::instance()->display(Container::instance('display')->render($content));
 }
Ejemplo n.º 17
0
date_default_timezone_set('UTC');
setlocale(LC_ALL, 'en_US.utf-8');
ini_set('unserialize_callback_func', 'spl_autoload_call');

Elastic::set_option('base_domain', $_SERVER['HTTP_HOST']);
Elastic::set_option('base_path', '/');

Container::instance()->set_implementation('Session_StorageInterface', 'Session_Storage_Cookie');
Container::instance()->set_implementation('Session_IdentifierInterface', 'Session_Identifier_Cookie');

Container::instance()->set_scope('StorageInterface', 'singleton');
Container::instance('page_cache')->set_scope('StorageInterface', 'singleton');
Container::instance()->set_implementation('StorageInterface', 'Storage_Array');

Container::instance()->set_implementation('Config_ReaderInterface', 'Config_Reader_PHP');
Container::instance()->set_implementation('Config_WriterInterface', 'Config_Writer_PHP');

Elastic::module('doctrine', MOD_ROOT.'/doctrine');
Elastic::module('twig',     MOD_ROOT.'/twig');

Route::set('front/page')
  ->uri('(<controller>(/<action>(/<id>)))')
  ->options(array('class' => 'Controller_Front_Page_<controller>', 'method' => 'action_<action>', 'directory' => 'front/page'))
  ->segments(array('id' => '\d+'))
  ->defaults(array('controller' => 'home', 'action' => 'index'));

Route::set('front/pagelet')
  ->uri('pagelet(/<controller>(/<action>(/<id>)))')
  ->options(array('class' => 'Controller_Front_Pagelet_<controller>', 'method' => 'action_<action>', 'directory' => 'front/pagelet'))
  ->segments(array('id' => '\d+'))
  ->defaults(array('controller' => 'home', 'action' => 'index'));