コード例 #1
0
 function install(&$pluginAPI, &$dbDriver, $siteDefaultLanguage)
 {
     $uM = new UserManager($dbDriver);
     $uM->installAllTables();
     $pageM = new pageManager($dbDriver);
     $t =& $pluginAPI->getI18NManager();
     $site = $pageM->getSitePage();
     $myaccount = $pageM->newPage();
     $regform = $pageM->newPage();
     $lostpass = $pageM->newPage();
     $regform->initFromArray(array('name' => 'MorgOS_RegisterForm', 'parent_page_id' => $site->getID(), 'action' => 'userRegisterForm', 'place_in_menu' => MORGOS_MENU_INVISIBLE, 'plugin_id' => MORGOS_USER_PLUGINID));
     $myaccount->initFromArray(array('name' => 'MorgOS_User_MyAccount', 'parent_page_id' => $site->getID(), 'action' => 'userMyAccount', 'place_in_menu' => MORGOS_MENU_INVISIBLE, 'plugin_id' => MORGOS_USER_PLUGINID));
     $lostpass->initFromArray(array('name' => 'MorgOS_User_ForgotPasswordForm', 'parent_page_id' => $site->getID(), 'action' => 'userForgotPasswordForm', 'place_in_menu' => MORGOS_MENU_INVISIBLE, 'plugin_id' => MORGOS_USER_PLUGINID));
     $pageM->addPageToDatabase($regform);
     $pageM->addPageToDatabase($myaccount);
     $pageM->addPageToDatabase($lostpass);
     $tMyAccount = $pageM->newTranslatedPage();
     $tRegForm = $pageM->newTranslatedPage();
     $tLostPass = $pageM->newTranslatedPage();
     $tMyAccount->initFromArray(array('language_code' => $siteDefaultLanguage, 'translated_title' => $t->translate('My Account'), 'translated_content' => $t->translate('This is your account page.')));
     $tRegForm->initFromArray(array('language_code' => $siteDefaultLanguage, 'translated_title' => $t->translate('Registration'), 'translated_content' => $t->translate('Give up all your user details in order to registrate to this site.')));
     $tLostPass->initFromArray(array('language_code' => $siteDefaultLanguage, 'translated_title' => $t->translate('Recover Passwrd'), 'translated_content' => $t->translate('Fill in your password OR your email. Your new password will be sent to you.')));
     $regform->addTranslation($tRegForm);
     $myaccount->addTranslation($tMyAccount);
     $lostpass->addTranslation($tLostPass);
     $this->_adminPlugin->install($pluginAPI, $dbDriver, $siteDefaultLanguage);
     // install 2 morgos -> user extensions
     $skinTable = new dbField('skin', DB_TYPE_STRING, 40);
     $langTable = new dbField('contentLanguage', DB_TYPE_STRING, 100);
     $uM->addExtraFieldForTable('users', $skinTable);
     $uM->addExtraFieldForTable('users', $langTable);
     $anonUser = $uM->getAnonymousUser();
     $anonGroup = $anonUser->getUserGroup();
     $anonGroup->assignPermission('view_page_' . $myaccount->getID(), false);
 }
コード例 #2
0
 function install(&$pluginAPI, &$dbDriver, $siteDefaultLanguage)
 {
     $pageM = new pageManager($dbDriver);
     $t =& $pluginAPI->getI18NManager();
     $pluman = $pageM->newPage();
     $admin = $pageM->getAdminPage();
     $pluman->initFromArray(array('name' => 'MorgOS_Admin_PluginManager', 'parent_page_id' => $admin->getID(), 'action' => 'adminPluginManager'));
     $pageM->addPageToDatabase($pluman);
     $tPlugMan = $pageM->newTranslatedPage();
     $tPlugMan->initFromArray(array('language_code' => $siteDefaultLanguage, 'translated_title' => $t->translate('Plugin Manager'), 'translated_Content' => $t->translate('Enable/disable plugins.')));
     $pluman->addTranslation($tPlugMan);
 }
コード例 #3
0
 function install(&$pluginAPI, &$dbModule, $siteDefaultLanguage)
 {
     $pageM = new pageManager($dbModule);
     $t =& $pluginAPI->getI18NManager();
     $admin = $pageM->getAdminPage();
     $adminUser = $pageM->newPage();
     $adminUser->initFromArray(array('name' => 'MorgOS_Admin_UserManager', 'parent_page_id' => $admin->getID(), 'action' => 'adminUserManager', 'plugin_id' => MORGOS_USER_PLUGINID, 'place_in_menu' => 2));
     $pageM->addPageToDatabase($adminUser);
     $tAdminUser = $pageM->newTranslatedPage();
     $tAdminUser->initFromArray(array('language_code' => $siteDefaultLanguage, 'translated_title' => $t->translate('User manager'), 'translated_content' => $t->translate('Manage users here, remove/add them from administrators list.')));
     $adminUser->addTranslation($tAdminUser);
 }
コード例 #4
0
 function installConfigAndDatabase($siteName, $databaseModule, $databaseHost, $databaseUser, $databasePassword, $databaseName, $databasePrefix, $adminLogin, $adminPassword, $adminMail)
 {
     $dbModule = databaseLoadModule($databaseModule);
     if (!isError($dbModule)) {
         $dbModule->connect($databaseHost, $databaseUser, $databasePassword);
         $dbModule->selectDatabase($databaseName);
         $dbModule->setPrefix($databasePrefix);
         $dbModule->queryFile('interface/installer/base-plugin/sqlCode.sql');
         //var_dump ($dbModule);
         //die ('End');
         $userM = new userManager($dbModule);
         $admin = $userM->newUser();
         $a = $admin->initFromArray(array('login' => $adminLogin, 'password' => md5($adminPassword), 'email' => $adminMail));
         $userM->addUserToDatabase($admin);
         $group = $userM->newGroup();
         $group->initFromArray(array('genericName' => 'administrator', 'genericDescription' => 'The admin users'));
         $userM->addGroupToDatabase($group);
         $group->assignPermission('edit_admin', true);
         $admin->addToGroup($group);
         $group = $userM->newGroup();
         $group->initFromArray(array('genericName' => 'normaluser', 'genericDescription' => 'All users'));
         $userM->addGroupToDatabase($group);
         $group->assignPermission('edit_admin', false);
         $admin->addToGroup($group);
         $group = $userM->newGroup();
         $group->initFromArray(array('genericName' => 'anonymous', 'genericDescription' => 'Not logged in'));
         $userM->addGroupToDatabase($group);
         $group->assignPermission('edit_admin', false);
         $pageM = new pageManager($dbModule);
         $site = $pageM->newPage();
         $admin = $pageM->newPage();
         $home = $pageM->newPage();
         $ahome = $pageM->newPage();
         $pman = $pageM->newPage();
         $pluman = $pageM->newPage();
         $regform = $pageM->newPage();
         $adminLogout = $pageM->newPage();
         $adminUser = $pageM->newPage();
         $site->initFromArray(array('name' => 'site', 'parentPageID' => 0, 'placeInMenu' => 0));
         $admin->initFromArray(array('name' => 'admin', 'parentPageID' => 0, 'placeInMenu' => 0));
         $pageM->addPageToDatabase($site);
         $pageM->addPageToDatabase($admin);
         $home->initFromArray(array('name' => 'MorgOS_Home', 'parentPageID' => $site->getID()));
         $ahome->initFromArray(array('name' => 'MorgOS_Admin_Home', 'parentPageID' => $admin->getID()));
         $pman->initFromArray(array('name' => 'MorgOS_Admin_PageManager', 'parentPageID' => $admin->getID(), 'action' => 'adminPageManager'));
         $pluman->initFromArray(array('name' => 'MorgOS_Admin_PluginManager', 'parentPageID' => $admin->getID(), 'action' => 'adminPluginManager'));
         $regform->initFromArray(array('name' => 'MorgOS_RegisterForm', 'parentPageID' => $site->getID(), 'action' => 'userRegisterForm', 'placeInMenu' => 0));
         $adminLogout->initFromArray(array('name' => 'MorgOS_Admin_Logout', 'parentPageID' => $admin->getID(), 'action' => 'adminLogout'));
         $adminUser->initFromArray(array('name' => 'MorgOS_Admin_UserManager', 'parentPageID' => $admin->getID(), 'action' => 'adminUserManager'));
         $pageM->addPageToDatabase($home);
         $pageM->addPageToDatabase($ahome);
         $pageM->addPageToDatabase($pman);
         $pageM->addPageToDatabase($adminUser);
         $pageM->addPageToDatabase($pluman);
         $pageM->addPageToDatabase($regform);
         $pageM->addPageToDatabase($adminLogout);
         $tHome = $pageM->newTranslatedPage();
         $tAHome = $pageM->newTranslatedPage();
         $tPMan = $pageM->newTranslatedPage();
         $tRegForm = $pageM->newTranslatedPage();
         $tPlugMan = $pageM->newTranslatedPage();
         $tALogout = $pageM->newTranslatedPage();
         $tAdminUser = $pageM->newTranslatedPage();
         $t =& $this->_pluginAPI->getI18NManager();
         $tHome->initFromArray(array('languageCode' => 'en_UK', 'translatedTitle' => $t->translate('Home'), 'translatedContent' => $t->translate('This is the homepage.')));
         $tAHome->initFromArray(array('languageCode' => 'en_UK', 'translatedTitle' => $t->translate('Admin'), 'translatedContent' => $t->translate('This is the admin. Here you can configure the site, add/remove and edit pages, or ban users.')));
         $tPMan->initFromArray(array('languageCode' => 'en_UK', 'translatedTitle' => $t->translate('Page Manager'), 'translatedContent' => $t->translate('Edit pages here.')));
         $tRegForm->initFromArray(array('languageCode' => 'en_UK', 'translatedTitle' => $t->translate('Registration'), 'translatedContent' => $t->translate('Give up all your user details in order to registrate to this site.')));
         $tPlugMan->initFromArray(array('languageCode' => 'en_UK', 'translatedTitle' => $t->translate('Plugin Manager'), 'translatedContent' => $t->translate('Enable/disable plugins.')));
         $tALogout->initFromArray(array('languageCode' => 'en_UK', 'translatedTitle' => $t->translate('Logout'), 'translatedContent' => $t->translate('Logout')));
         $tAdminUser->initFromArray(array('languageCode' => 'en_UK', 'translatedTitle' => $t->translate('User manager'), 'translatedContent' => $t->translate('Manage users here, remove/add them from administrators list.')));
         $home->addTranslation($tHome);
         $ahome->addTranslation($tAHome);
         $pman->addTranslation($tPMan);
         $regform->addTranslation($tRegForm);
         $pluman->addTranslation($tPlugMan);
         $adminLogout->addTranslation($tALogout);
         $adminUser->addTranslation($tAdminUser);
         $configContents = '<?php' . PHP_NL . PHP_NL;
         $configContents .= '$configItems[\'/databases/host\']=\'' . $databaseHost . '\';' . PHP_NL;
         $configContents .= '$configItems[\'/databases/password\']=\'' . $databasePassword . '\';' . PHP_NL;
         $configContents .= '$configItems[\'/databases/user\']=\'' . $databaseUser . '\';' . PHP_NL;
         $configContents .= '$configItems[\'/databases/database\']=\'' . $databaseName . '\';' . PHP_NL;
         $configContents .= '$configItems[\'/databases/table_prefix\']=\'' . $databasePrefix . '\';' . PHP_NL . PHP_NL;
         $configContents .= '$configItems[\'/site/title\']=\'' . $siteName . '\';' . PHP_NL;
         $configContents .= '?>';
         $c = @fopen('config.php', 'w');
         if ($c !== false) {
             fwrite($c, $configContents);
             fclose($c);
             header('Location: index.php');
         } else {
             echo $configContents;
         }
     } else {
         var_dump($dbModule);
     }
 }
コード例 #5
0
 function install(&$pluginAPI, &$dbDriver, $siteDefaultLanguage)
 {
     $pageM = new pageManager($dbDriver);
     $t =& $pluginAPI->getI18NManager();
     $admin = $pageM->getAdminPage();
     $ahome = $pageM->newPage();
     $ahome->initFromArray(array('name' => 'MorgOS_Admin_Home', 'parent_page_id' => $admin->getID(), 'action' => 'adminHome', 'place_in_menu' => MORGOS_MENU_FIRST));
     $pageM->addPageToDatabase($ahome);
     $tAHome = $pageM->newTranslatedPage();
     $tAHome->initFromArray(array('language_code' => $siteDefaultLanguage, 'translated_title' => $t->translate('Admin'), 'translated_content' => $t->translate('This is the admin.' . ' Here you can configure the site, add/remove and edit' . ' pages, or ban users.')));
     $ahome->addTranslation($tAHome);
     $adminSaveConfig = $pageM->newPage();
     $adminSaveConfig->initFromArray(array('name' => 'MorgOS_Admin_SaveConfig', 'parent_page_id' => $admin->getID(), 'place_in_menu' => MORGOS_MENU_INVISIBLE));
     $pageM->addPageToDatabase($adminSaveConfig);
     $tASaveConfig = $pageM->newTranslatedPage();
     $tASaveConfig->initFromArray(array('language_code' => $siteDefaultLanguage, 'translated_title' => $t->translate('Save config'), 'translated_content' => $t->translate('')));
     $adminSaveConfig->addTranslation($tASaveConfig);
     $this->_pluginAdmin->install($pluginAPI, $dbDriver, $siteDefaultLanguage);
     $adminLogout = $pageM->newPage();
     $adminLogout->initFromArray(array('name' => 'MorgOS_Admin_Logout', 'parent_page_id' => $admin->getID(), 'action' => 'adminLogout', 'place_in_menu' => MORGOS_MENU_LAST));
     $pageM->addPageToDatabase($adminLogout);
     $tALogout = $pageM->newTranslatedPage();
     $tALogout->initFromArray(array('language_code' => $siteDefaultLanguage, 'translated_title' => $t->translate('Logout'), 'translated_content' => $t->translate('Logout')));
     $adminLogout->addTranslation($tALogout);
 }
コード例 #6
0
 function install(&$pluginAPI, &$dbModule, $siteDefaultLanguage)
 {
     $pageM = new pageManager($dbModule);
     $t =& $pluginAPI->getI18NManager();
     $admin = $pageM->getAdminPage();
     $pman = $pageM->newPage();
     $pman->initFromArray(array('name' => 'MorgOS_Admin_PageManager', 'parent_page_id' => $admin->getID(), 'action' => 'adminPageManager', 'place_in_menu' => 1));
     $pageM->addPageToDatabase($pman);
     $tPMan = $pageM->newTranslatedPage();
     $tPMan->initFromArray(array('language_code' => $siteDefaultLanguage, 'translated_title' => $t->translate('Page Manager'), 'translated_content' => $t->translate('Edit pages here.')));
     $pman->addTranslation($tPMan);
 }