本文整理汇总了PHP中InstallUtil::runInstallation方法的典型用法代码示例。如果您正苦于以下问题:PHP InstallUtil::runInstallation方法的具体用法?PHP InstallUtil::runInstallation怎么用?PHP InstallUtil::runInstallation使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类InstallUtil
的用法示例。
在下文中一共展示了InstallUtil::runInstallation方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: actionRunInstallation
protected function actionRunInstallation($form)
{
assert('$form instanceof InstallSettingsForm');
$nextView = new InstallCompleteView($this->getId(), $this->getModule()->getId());
$view = new InstallPageView($nextView);
echo $view->render();
$template = ZurmoHtml::script("\$('#logging-table').prepend('{message}<br/>');");
$messageStreamer = new MessageStreamer($template);
InstallUtil::runInstallation($form, $messageStreamer);
if ($form->installDemoData) {
echo ZurmoHtml::script('$("#progress-table").hide(); $("#demo-data-table").show();');
} else {
$messageStreamer->add(Zurmo::t('InstallModule', 'Locking Installation.'));
InstallUtil::writeInstallComplete(INSTANCE_ROOT);
ForgetAllCacheUtil::forgetAllCaches();
echo ZurmoHtml::script('$("#progress-table").hide(); $("#complete-table").show();');
}
}
示例2: runFromInstallCommand
/**
* Method to run installation from command line. Use @InstallCommand.
* @param array $args
*/
public static function runFromInstallCommand($args, $validateForm = false)
{
assert('is_array($args)');
$form = new InstallSettingsForm();
$template = "{message}\n";
$messageStreamer = new MessageStreamer($template);
$messageStreamer->setExtraRenderBytes(0);
$messageStreamer->add(Zurmo::t('InstallModule', 'Connecting to Database.'));
$form->databaseHostname = $args[0];
$form->databaseName = $args[1];
$form->databaseUsername = $args[2];
$form->databasePassword = $args[3];
$form->databasePort = $args[4];
$form->superUserPassword = $args[5];
$form->removeExistingData = 1;
if (!empty($args[6])) {
$form->hostInfo = $args[6];
Yii::app()->getRequest()->setHostInfo($form->hostInfo);
}
if (!empty($args[7])) {
$form->scriptUrl = $args[7];
}
$formHasErrors = false;
if ($validateForm) {
$form->validate();
if ($form->hasErrors()) {
$errors = $form->getErrors();
foreach ($errors as $fieldErrors) {
foreach ($fieldErrors as $fieldError) {
$messageStreamer->add($fieldError);
}
}
$formHasErrors = true;
}
}
if (!$formHasErrors) {
InstallUtil::runInstallation($form, $messageStreamer);
if (isset($args[8])) {
$messageStreamer->add(Zurmo::t('InstallModule', 'Starting to load demo data.'));
$messageLogger = new MessageLogger($messageStreamer);
$startTime = microtime(true);
if (isset($args[9])) {
DemoDataUtil::load($messageLogger, intval($args[9]));
} else {
DemoDataUtil::load($messageLogger, 6);
}
$endTime = microtime(true);
$messageStreamer->add(Zurmo::t('InstallModule', 'Total demodata build time: {formattedTime} seconds.', array('{formattedTime}' => number_format($endTime - $startTime, 3))));
if (SHOW_QUERY_DATA) {
$messageStreamer->add(PageView::getTotalAndDuplicateQueryCountContent());
$messageStreamer->add(PageView::makeNonHtmlDuplicateCountAndQueryContent());
}
$messageStreamer->add(Zurmo::t('InstallModule', 'Finished loading demo data.'));
}
if (empty($args[6]) || empty($args[7])) {
// Send notification to super admin that need to setup hostInfo and scriptUrl params in perInstance.php
$message = new NotificationMessage();
$message->textContent = Zurmo::t('InstallModule', 'The system has detected that the hostInfo and/or scriptUrl are ' . 'not set up. Please open the perInstance.php config file and ' . 'set up these parameters.');
$rules = new HostInfoAndScriptUrlNotSetupNotificationRules();
NotificationsUtil::submit($message, $rules);
}
$messageStreamer->add(Zurmo::t('InstallModule', 'Locking Installation.'));
InstallUtil::writeInstallComplete(INSTANCE_ROOT);
$messageStreamer->add(Zurmo::t('InstallModule', 'Installation Complete.'));
}
}
示例3: runInstallation
protected function runInstallation($memcacheOn = true)
{
$instanceRoot = INSTANCE_ROOT;
$form = new InstallSettingsForm();
$form->databaseType = 'mysql';
$form->databaseHostname = $this->temporaryDatabaseHostname;
$form->databaseName = $this->temporaryDatabaseName;
$form->databaseUsername = $this->temporaryDatabaseUsername;
$form->databasePassword = $this->temporaryDatabasePassword;
$form->databasePort = $this->temporaryDatabasePort;
$form->superUserPassword = $this->superUserPassword;
if (!$memcacheOn) {
$form->setMemcacheIsNotAvailable();
}
$messageStreamer = new MessageStreamer();
$messageStreamer->setExtraRenderBytes(0);
$messageStreamer->setEmptyTemplate();
$perInstanceConfigFile = "{$instanceRoot}/protected/config/perInstanceTest.php";
$debugConfigFile = "{$instanceRoot}/protected/config/debugTest.php";
if (is_file($perInstanceConfigFile)) {
$originalPerInstanceConfiguration = file_get_contents($perInstanceConfigFile);
unlink($perInstanceConfigFile);
}
if (is_file($debugConfigFile)) {
$originalDebugConfiguration = file_get_contents($debugConfigFile);
unlink($debugConfigFile);
}
$this->assertTrue(!is_file($perInstanceConfigFile));
$this->assertTrue(!is_file($debugConfigFile));
InstallUtil::runInstallation($form, $messageStreamer);
$notifications = Notification::getAll();
$this->assertCount(1, $notifications);
$this->assertEquals('If this website is in production mode, please remove the app/test.php file.', $notifications[0]->notificationMessage->textContent);
$perInstanceConfiguration = file_get_contents($perInstanceConfigFile);
$debugConfiguration = file_get_contents($debugConfigFile);
//Check if super user is created.
$user = User::getByUsername('super');
$this->assertEquals('super', $user->username);
//Check if config files is updated.
$this->assertRegExp('/\\$connectionString = \'mysql:host=' . $this->temporaryDatabaseHostname . ';port=' . $this->temporaryDatabasePort . ';dbname=' . $this->temporaryDatabaseName . '\';/', $perInstanceConfiguration);
$this->assertRegExp('/\\$username = \'' . $this->temporaryDatabaseUsername . '\';/', $perInstanceConfiguration);
$this->assertRegExp('/\\$password = \'' . $this->temporaryDatabasePassword . '\';/', $perInstanceConfiguration);
if ($memcacheOn) {
$this->assertRegExp('/\\$memcacheLevelCaching\\s*=\\s*true;/', $debugConfiguration);
} else {
$this->assertRegExp('/\\$memcacheLevelCaching\\s*=\\s*false;/', $debugConfiguration);
}
//Restore original config files.
unlink($debugConfigFile);
unlink($perInstanceConfigFile);
file_put_contents($perInstanceConfigFile, $originalPerInstanceConfiguration);
file_put_contents($debugConfigFile, $originalDebugConfiguration);
}