Example #1
0
 /**
  * @return void
  */
 public function install()
 {
     // create default config
     /**
      * @var $configManager ConfigManager
      * @var $dynamicFieldHandler DynamicFieldHandler
      * @var $documentHandler DocumentHandler
      */
     $configManager = app('xe.config');
     $dynamicFieldHandler = app('xe.dynamicField');
     $documentHandler = app('xe.document');
     $configHandler = new ConfigHandler($configManager, $dynamicFieldHandler->getConfigHandler(), $documentHandler->getConfigHandler());
     $configHandler->getDefault();
     // create default permission
     /**
      * @var $permission PermissionFactory
      * @var $group Assignor
      */
     $permission = app('xe.permission');
     $group = app('xe.member.groups');
     $action = new Action();
     $permission = new PermissionHandler($permission, $group, $action, $configHandler);
     $permission->setDefault($permission->getDefault());
     // create slug database table
     $m = new Migrations\BoardMigration();
     $m->install();
     // put board translation source
     /** @var Translator $trans */
     $trans = app('xe.translator');
     $trans->putFromLangDataSource('board', base_path('plugins/board/langs/lang.php'));
     // set config for counter
     /** @var Counter $counter */
     $counter = app('xe.counter');
     $counter->getConfigHandler()->set(ReadCounter::COUNTER_NAME, Counter::TYPE_SESSION);
     $counter->getConfigHandler()->set(VoteCounter::COUNTER_NAME, Counter::TYPE_ID);
 }