summaryrefslogtreecommitdiffstats
path: root/inc/templates
diff options
context:
space:
mode:
authorRobin Appelman <icewind1991@gmail.com>2010-08-12 17:30:20 +0200
committerRobin Appelman <icewind1991@gmail.com>2010-08-12 17:30:20 +0200
commit1e4432c5d5b5cd26247e9fec6a82f3cef800fd68 (patch)
treed0ee7618d70c4d89340ab731f8cad3f08cf946ef /inc/templates
parent08454ce463a725facb86479e3aba7a337b8f42f2 (diff)
downloadnextcloud-server-1e4432c5d5b5cd26247e9fec6a82f3cef800fd68.tar.gz
nextcloud-server-1e4432c5d5b5cd26247e9fec6a82f3cef800fd68.zip
new settings page that allows plugins to integrate their own settings dialogs more with the existing ones
Diffstat (limited to 'inc/templates')
-rw-r--r--inc/templates/adminform.php10
-rw-r--r--inc/templates/configform.php3
-rw-r--r--inc/templates/settings.php38
3 files changed, 49 insertions, 2 deletions
diff --git a/inc/templates/adminform.php b/inc/templates/adminform.php
index 882c0dd3778..394df38da70 100644
--- a/inc/templates/adminform.php
+++ b/inc/templates/adminform.php
@@ -1,4 +1,5 @@
<?php
+global $WEBROOT;
global $FIRSTRUN;
global $CONFIG_ENABLEBACKUP;
global $CONFIG_DATADIRECTORY_ROOT;
@@ -50,7 +51,14 @@ function dbtypechange(){
}
}
</script>
-<form method="post" enctype="multipart/form-data" action="#">
+<?php
+if(!$FIRSTRUN){
+ $action=$WEBROOT.'/settings';
+}else{
+ $action='#';
+}
+echo('<form method="post" enctype="multipart/form-data" action="'.$action.'">')
+?>
<table cellpadding="5" cellspacing="5" border="0" class="loginform">
<?php
if(!empty($CONFIG_ERROR) and !$FIRSTRUN){
diff --git a/inc/templates/configform.php b/inc/templates/configform.php
index e53235cf820..d24c138612e 100644
--- a/inc/templates/configform.php
+++ b/inc/templates/configform.php
@@ -1,5 +1,6 @@
<?php
global $FIRSTRUN;
+global $WEBROOT;
global $CONFIG_ERROR;
if(!isset($fillDB)) $fillDB=true;
if(!isset($CONFIG_DBHOST)) $CONFIG_DBHOST='localhost';
@@ -18,7 +19,7 @@ changepassset=function(){
}
}
</script>
-<form method="post" enctype="multipart/form-data" action="#">
+<form method="post" enctype="multipart/form-data" action="<?php echo($WEBROOT);?>/settings/#">
<div><input type='hidden' name='config' value='1' /></div>
<table cellpadding="5" cellspacing="5" border="0" class="loginform">
<?php
diff --git a/inc/templates/settings.php b/inc/templates/settings.php
new file mode 100644
index 00000000000..ef181164d04
--- /dev/null
+++ b/inc/templates/settings.php
@@ -0,0 +1,38 @@
+<script type="text/javascript">
+function showForm(id){
+ hideAllForms();
+ form=document.getElementById('settingsContent_'+id);
+ form.setAttribute('class','settingsContent');
+}
+
+function hideAllForms(){
+ forms=document.getElementById('settingsHolder').childNodes;
+ for(var i=0;i<forms.length;i++){
+ form=forms.item(i);
+ if(form.nodeType==1 && (form.tagName=='div' || form.tagName=='DIV')){
+ form.setAttribute('class','settingsContent hidden');
+ }
+ }
+}
+</script>
+<div id='settingsNav'>
+<ul>
+<?php
+foreach(OC_CONFIG::$forms as $name=>$url){
+ $clean=strtolower(str_replace(' ','_',$name));
+ echo("<li><a onclick='showForm(\"$clean\")' href='settings/#$clean'>$name</a></li>\n");
+}
+?>
+</ul>
+</div>
+<div id='settingsHolder'>
+<div class='settingsContent'>Settings</div>
+<?php
+foreach(OC_CONFIG::$forms as $name=>$url){
+ $clean=strtolower(str_replace(' ','_',$name));
+ echo("<div id='settingsContent_$clean' class='settingsContent hidden'>\n");
+ oc_include($url);
+ echo("</div>\n");
+}
+?>
+</div>