Exemplo n.º 1
0
 public function run()
 {
     $db = Loader::db();
     $cnt = $db->GetOne('select count(*) from TaskPermissions where tpHandle = ?', array('delete_user'));
     if ($cnt < 1) {
         $g3 = Group::getByID(ADMIN_GROUP_ID);
         $tip = TaskPermission::addTask('delete_user', t('Delete Users'), false);
         if (is_object($g3)) {
             $tip->addAccess($g3);
         }
     }
     Loader::model('single_page');
     $sp = Page::getByPath('/dashboard/settings/multilingual');
     if ($sp->isError()) {
         $d1a = SinglePage::add('/dashboard/settings/multilingual');
         $d1a->update(array('cName' => t('Multilingual Setup')));
     }
     $sp = Page::getByPath('/dashboard/composer');
     if ($sp->isError()) {
         $d2 = SinglePage::add('/dashboard/composer');
         $d2->update(array('cName' => t('Composer Beta'), 'cDescription' => t('Write for your site.')));
     }
     $sp = Page::getByPath('/dashboard/composer/write');
     if ($sp->isError()) {
         $d3 = SinglePage::add('/dashboard/composer/write');
     }
     $sp = Page::getByPath('/dashboard/composer/drafts');
     if ($sp->isError()) {
         $d4 = SinglePage::add('/dashboard/composer/drafts');
     }
     $sp = Page::getByPath('/dashboard/pages/types/composer');
     if ($sp->isError()) {
         $d5 = SinglePage::add('/dashboard/pages/types/composer');
     }
 }
Exemplo n.º 2
0
 public function run()
 {
     $db = Loader::db();
     $columns = $db->MetaColumns('Pages');
     if (!isset($columns['CISSYSTEMPAGE'])) {
         $db->Execute('alter table Pages add column cIsSystemPage tinyint(1) not null default 0');
         $db->Execute('alter table Pages add index (cIsSystemPage)');
     }
     $columns = $db->MetaColumns('Pages');
     if (!isset($columns['CISACTIVE'])) {
         $db->Execute('alter table Pages add column cIsActive tinyint(1) not null default 1');
         $db->Execute('alter table Pages add index (cIsActive)');
         $db->Execute('update Pages set cIsActive = 1');
     }
     $columns = $db->MetaColumns('PageSearchIndex');
     if (!isset($columns['CREQUIRESREINDEX'])) {
         $db->Execute('alter table PageSearchIndex add column cRequiresReindex tinyint(1) not null default 0');
         $db->Execute('alter table PageSearchIndex add index (cRequiresReindex)');
     }
     // install version job
     Loader::model("job");
     Job::installByHandle('remove_old_page_versions');
     // flag system pages appropriately
     Page::rescanSystemPages();
     // add a newsflow task permission
     $db = Loader::db();
     $cnt = $db->GetOne('select count(*) from TaskPermissions where tpHandle = ?', array('view_newsflow'));
     if ($cnt < 1) {
         $g3 = Group::getByID(ADMIN_GROUP_ID);
         $tip = TaskPermission::addTask('view_newsflow', t('View Newsflow'), false);
         if (is_object($g3)) {
             $tip->addAccess($g3);
         }
     }
     // Install new block types
     $this->installBlockTypes();
     // install stacks, trash and drafts
     $this->installSinglePages();
     // move the old dashboard
     $newDashPage = Page::getByPath('/dashboard/welcome');
     if (!is_object($newDashPage) || $newDashPage->isError()) {
         $dashboard = Page::getByPath('/dashboard');
         $dashboard->moveToTrash();
         // install new dashboard + page types
         $this->installDashboard();
         $this->migrateOldDashboard();
     }
     Loader::model('system/captcha/library');
     $scl = SystemCaptchaLibrary::getByHandle('securimage');
     if (!is_object($scl)) {
         $scl = SystemCaptchaLibrary::add('securimage', t('SecurImage (Default)'));
         $scl->activate();
     }
     Config::save('SEEN_INTRODUCTION', 1);
 }
Exemplo n.º 3
0
 public function run()
 {
     $db = Loader::db();
     $cnt = $db->GetOne('select count(*) from TaskPermissions where tpHandle = ?', array('install_packages'));
     if ($cnt < 1) {
         $g3 = Group::getByID(ADMIN_GROUP_ID);
         $tip = TaskPermission::addTask('install_packages', t('Install Packages and Connect to the Marketplace'), false);
         if (is_object($g3)) {
             $tip->addAccess($g3);
         }
     }
     // ensure we have a proper ocID
     $db->Execute("alter table Files modify column ocID int unsigned not null default 0");
 }
Exemplo n.º 4
0
 protected function installTaskPermissions()
 {
     $g3 = Group::getByID(ADMIN_GROUP_ID);
     $tpo = TaskPermission::getByHandle('access_task_permissions');
     if (!is_object($tpo)) {
         $tp0 = TaskPermission::addTask('access_task_permissions', t('Change Task Permissions'), false);
         $tp1 = TaskPermission::addTask('access_sitemap', t('Access Sitemap and Page Search'), false);
         $tp2 = TaskPermission::addTask('access_user_search', t('Access User Search'), false);
         $tp3 = TaskPermission::addTask('access_group_search', t('Access Group Search'), false);
         $tp4 = TaskPermission::addTask('access_page_defaults', t('Change Content on Page Type Default Pages'), false);
         $tp5 = TaskPermission::addTask('backup', t('Perform Full Database Backups'), false);
         $tp6 = TaskPermission::addTask('sudo', t('Sign in as User'), false);
         $tp7 = TaskPermission::addTask('uninstall_packages', t('Uninstall Packages'), false);
         $tp1->addAccess($g3);
         $tp2->addAccess($g3);
         $tp3->addAccess($g3);
         $tp5->addAccess($g3);
     }
 }
Exemplo n.º 5
0
 protected function importTaskPermissions(\SimpleXMLElement $sx)
 {
     if (isset($sx->taskpermissions)) {
         foreach ($sx->taskpermissions->taskpermission as $tp) {
             $pkg = static::getPackageObject($tp['package']);
             $tpa = TaskPermission::addTask($tp['handle'], $tp['name'], $tp['description'], $pkg);
             if (isset($tp->access)) {
                 foreach ($tp->access->children() as $ch) {
                     if ($ch->getName() == 'group') {
                         $g = Group::getByName($ch['name']);
                         if (!is_object($g)) {
                             $g = Group::add($ch['name'], $ch['description']);
                         }
                         $tpa->addAccess($g);
                     }
                 }
             }
         }
     }
 }