From 7f4f748c23f83858e1e6975d3bae718db3616ca3 Mon Sep 17 00:00:00 2001
From: Joey Hess <joey@kodama.kitenet.net>
Date: Mon, 21 Jul 2008 00:40:50 -0400
Subject: [PATCH] add

---
 doc/todo/oneine_configuration.mdwn | 37 ++++++++++++++++++++++++++++++
 1 file changed, 37 insertions(+)
 create mode 100644 doc/todo/oneine_configuration.mdwn

diff --git a/doc/todo/oneine_configuration.mdwn b/doc/todo/oneine_configuration.mdwn
new file mode 100644
index 000000000..59c979819
--- /dev/null
+++ b/doc/todo/oneine_configuration.mdwn
@@ -0,0 +1,37 @@
+It should be possible to configure ikiwiki online, in the wiki admin's
+preferences form. Rather than the current situation where most settings are
+in ikiwiki.setup, and one or two (like locked pages and upload limits) in
+the admin preferences.
+
+In theory, every setting could be configured there. In practice, some
+settings, like `srcdir` and `destdir` are ones you want to keep far away
+from editing via the web.
+
+One way to do it would be for the ikiwiki.setup to allow delegating
+specific settings to the admin prefs.. lets say by setting them to undef,
+while values that the admin prefs can't set would be set as usual:
+
+	rss => undef,
+	atom => undef,
+	discussion => undef,
+	syslog => undef,
+	srcdir => "/srv/www",
+	plugins => undef,
+
+Currently admin prefs are per-admin, and are stored in the userdb.
+That seems like a bad choice in the context of this idea. Instead, admin
+prefs should be shared amoung all admins, and the ideal storage would be
+another ikiwiki setup file, which could be loaded in, and written back out.
+
+If `ikiwiki-makerepo` were extended a little bit to generate the stub setup
+file that's enough to get `ikiwiki.cgi` working, and that sets values for
+all the dangerous options, leaving only safe ones 'undef', then users could
+set up ikiwiki using it, and configure the rest with the web interface,
+without ever needing to edit a setup file.
+
+Implementing this probably means, for every setup option, adding a short
+description, that links to a long description on a basewiki page, and a type
+specifier so that it can be represented well in the web interface. Also
+some way to group options into sections. --[[Joey]]
+
+[[tag wishlist]]
-- 
2.39.5