Skip to content

Commit

Permalink
Fixed issue #8439: Installer optional settings (6) not saved: error 1…
Browse files Browse the repository at this point in the history
…048 column stg_value cannot be null
  • Loading branch information
c-schmitz committed Dec 11, 2013
1 parent 9c9737a commit 757833b
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 12 deletions.
15 changes: 9 additions & 6 deletions application/controllers/InstallerController.php
Expand Up @@ -615,6 +615,7 @@ private function stepOptionalConfiguration()
$sDefaultAdminUserName = $model->adminLoginName;
$sDefaultAdminPassword = $model->adminLoginPwd;
$sDefaultAdminRealName = $model->adminName;
$sDefaultSiteName = $model->siteName;
$sDefaultSiteLanguage = $model->surveylang;
$sDefaultAdminEmail = $model->adminEmail;

Expand All @@ -630,6 +631,7 @@ private function stepOptionalConfiguration()
if ($this->connection->getActive() == true) {
$sPasswordHash=hash('sha256', $sDefaultAdminPassword);
try {
// Save user
$user=new User;
$user->users_name=$sDefaultAdminUserName;
$user->password=$sPasswordHash;
Expand All @@ -638,20 +640,21 @@ private function stepOptionalConfiguration()
$user->lang=$sDefaultSiteLanguage;
$user->email=$sDefaultAdminEmail;
$user->save();

// Save permissions
$permission=new Permission;
$permission->entity_id=0;
$permission->entity='global';
$permission->uid=$user->uid;
$permission->permission='superadmin';
$permission->read_p=1;
$permission->save();

// Save global settings
$this->connection->createCommand()->insert("{{settings_global}}", array('stg_name' => 'SessionName', 'stg_value' => self::_getRandomString()));

foreach(array('sitename', 'siteadminname', 'siteadminemail', 'siteadminbounce', 'defaultlang') as $insert) {
$this->connection->createCommand()->insert("{{settings_global}}", array('stg_name' => $insert, 'stg_value' => $$insert));
}
$this->connection->createCommand()->insert("{{settings_global}}", array('stg_name' => 'sitename', 'stg_value' => $sDefaultSiteName));
$this->connection->createCommand()->insert("{{settings_global}}", array('stg_name' => 'siteadminname', 'stg_value' => $sDefaultAdminRealName));
$this->connection->createCommand()->insert("{{settings_global}}", array('stg_name' => 'siteadminemail', 'stg_value' => $sDefaultAdminEmail));
$this->connection->createCommand()->insert("{{settings_global}}", array('stg_name' => 'siteadminbounce', 'stg_value' => $sDefaultAdminEmail));
$this->connection->createCommand()->insert("{{settings_global}}", array('stg_name' => 'defaultlang', 'stg_value' => $sDefaultSiteLanguage));
// only continue if we're error free otherwise setup is broken.
} catch (Exception $e) {
throw new Exception(sprintf('Could not add optional settings: %s.', $e));
Expand Down
7 changes: 1 addition & 6 deletions application/views/installer/dbsettings_view.php
Expand Up @@ -5,12 +5,8 @@
<div class="span9">
<h2><?php echo $title; ?></h2>
<p><?php echo $descp; ?></p>
<div class='messagebox'>
<div class='header'><?php $clang->eT('LimeSurvey setup'); ?>
</div>
<h3><?php $clang->eT('Database creation'); ?></h3>
<?php if (isset($adminoutputText)) echo $adminoutputText; ?>
</div>


<div class="row">
<div class="span3" >
Expand All @@ -32,4 +28,3 @@
?>

</div>
</div>

0 comments on commit 757833b

Please sign in to comment.