summaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
authorvsapronov <vladimir.sapronov@gmail.com>2013-09-24 23:31:47 -0400
committervsapronov <vladimir.sapronov@gmail.com>2013-09-25 00:13:38 -0400
commitdc382bc9ccb0735ebc63b8bc8d43ff8512ac171a (patch)
treefd238940b040adc9828e07681607a66c70e0d267 /core
parent2d12e52769a30ba37d5760b1194f613bcc71035b (diff)
downloadnextcloud-server-dc382bc9ccb0735ebc63b8bc8d43ff8512ac171a.tar.gz
nextcloud-server-dc382bc9ccb0735ebc63b8bc8d43ff8512ac171a.zip
autoconfig.php could have only some of parameters; installation.php generates UI accordingly
Diffstat (limited to 'core')
-rw-r--r--core/setup.php17
-rw-r--r--core/templates/installation.php4
2 files changed, 18 insertions, 3 deletions
diff --git a/core/setup.php b/core/setup.php
index 4758c23b045..d18b1d54c2b 100644
--- a/core/setup.php
+++ b/core/setup.php
@@ -5,9 +5,18 @@ $autosetup_file = OC::$SERVERROOT."/config/autoconfig.php";
if( file_exists( $autosetup_file )) {
OC_Log::write('core', 'Autoconfig file found, setting up owncloud...', OC_Log::INFO);
include $autosetup_file;
- $_POST['install'] = 'true';
$_POST = array_merge ($_POST, $AUTOCONFIG);
- unlink($autosetup_file);
+}
+
+$dbSet = isset($_POST['dbtype']);
+$directorySet = isset($_POST['directory']);
+$adminAccountSet = isset($_POST['adminlogin']);
+
+if ($dbSet AND $directorySet AND $adminAccountSet) {
+ $_POST['install'] = 'true';
+ if( file_exists( $autosetup_file )) {
+ unlink($autosetup_file);
+ }
}
OC_Util::addScript('setup');
@@ -21,7 +30,7 @@ $datadir = OC_Config::getValue('datadirectory', OC::$SERVERROOT.'/data');
$vulnerableToNullByte = false;
if(@file_exists(__FILE__."\0Nullbyte")) { // Check if the used PHP version is vulnerable to the NULL Byte attack (CVE-2006-7243)
$vulnerableToNullByte = true;
-}
+}
// Protect data directory here, so we can test if the protection is working
OC_Setup::protectDataDirectory();
@@ -37,6 +46,8 @@ $opts = array(
'htaccessWorking' => OC_Util::isHtAccessWorking(),
'vulnerableToNullByte' => $vulnerableToNullByte,
'errors' => array(),
+ 'dbSet' => $dbSet,
+ 'directorySet' => $directorySet
);
if(isset($_POST['install']) AND $_POST['install']=='true') {
diff --git a/core/templates/installation.php b/core/templates/installation.php
index 8b087706801..ed8057452bd 100644
--- a/core/templates/installation.php
+++ b/core/templates/installation.php
@@ -61,6 +61,7 @@
</p>
</fieldset>
+ <?php if(!$_['directorySet']): ?>
<fieldset id="datadirField">
<legend><a id="showAdvanced"><?php p($l->t( 'Advanced' )); ?> <img class="svg" src="<?php print_unescaped(image_path('', 'actions/caret.svg')); ?>" /></a></legend>
<div id="datadirContent">
@@ -70,7 +71,9 @@
value="<?php p(OC_Helper::init_var('directory', $_['directory'])); ?>" />
</div>
</fieldset>
+ <?php endif; ?>
+ <?php if(!$_['dbSet']): ?>
<fieldset id='databaseField'>
<?php if($_['hasMySQL'] or $_['hasPostgreSQL'] or $_['hasOracle'] or $_['hasMSSQL'])
$hasOtherDB = true; else $hasOtherDB =false; //other than SQLite ?>
@@ -171,6 +174,7 @@
</div>
<?php endif; ?>
</fieldset>
+ <?php endif; ?>
<div class="buttons"><input type="submit" class="primary" value="<?php p($l->t( 'Finish setup' )); ?>" /></div>
</form>