From 516996fe9fc8d82a5f2dc719a360e4005948326c Mon Sep 17 00:00:00 2001
From: Evan Prodromou <evan@prodromou.name>
Date: Sat, 17 May 2008 11:29:58 -0400
Subject: [PATCH] make config kinda work

darcs-hash:20080517152958-84dde-1170f017a6cf42845d74f75057c923be91404c29.gz
---
 config.php        | 26 --------------------------
 config.php.sample | 19 +++++++++++++++++++
 doc/TODO          |  5 +++++
 lib/common.php    | 26 +++++++++++++++-----------
 4 files changed, 39 insertions(+), 37 deletions(-)
 delete mode 100644 config.php
 create mode 100644 config.php.sample

diff --git a/config.php b/config.php
deleted file mode 100644
index cd00072a6f..0000000000
--- a/config.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-
-if (!defined('MICROBLOG')) { exit(1) }
-
-$dsn = array(
-			     'phptype'  => 'pgsql',
-			     'username' => 'someuser',
-			     'password' => 'apasswd',
-			     'hostspec' => 'localhost',
-			     'database' => 'thedb',
-			 );
-
-$options = array(
-				     'debug'       => 2,
-				     'portability' => DB_PORTABILITY_ALL,
-				 );
-
-$db =& DB::connect($dsn, $options);
-if (PEAR::isError($db)) {
-	    die($db->getMessage());
-}
-
-$config['db'] =
-  array( 'username' => 'stoica',
-		 'password' => 'replaceme',
-
diff --git a/config.php.sample b/config.php.sample
new file mode 100644
index 0000000000..dea20ec951
--- /dev/null
+++ b/config.php.sample
@@ -0,0 +1,19 @@
+<?php
+/* -*- mode: php -*- */
+
+if (!defined('LACONICA')) { exit(1) }
+
+# We get called by common.php, $config is a tree with lots of config
+# options
+# These are for configuring your URLs
+
+$config['site']['name'] = 'Just another Laconica microblog';
+$config['site']['server'] = 'localhost';
+$config['site']['path'] = 'laconica';
+
+# This is a PEAR DB DSN, see http://pear.php.net/manual/en/package.database.db.intro-dsn.php
+# Set it to match your actual database
+
+$config['db']['database'] = 'mysql://laconica:microblog@localhost/laconica';
+
+
diff --git a/doc/TODO b/doc/TODO
index 56f74de1b8..8310c092a7 100644
--- a/doc/TODO
+++ b/doc/TODO
@@ -40,6 +40,10 @@
 - design from Open Source Web Designs
 - TOS checkbox on register
 - pretty URLs
+- XML sitemap generation
+- site logo
+- theme per site
+- theme per profile
 - release 0.2
 - content negotiation for interface language
 - content negotiation for content type
@@ -60,6 +64,7 @@
 - RDFa for stream pages
 - RDFa for subscriber pages
 - RDFa for subscribed pages
+- plugins and hooks
 - release 0.3
 - @ messages
 - # tags
diff --git a/lib/common.php b/lib/common.php
index 4cef9f0d90..0695410264 100644
--- a/lib/common.php
+++ b/lib/common.php
@@ -29,28 +29,32 @@ define('MAX_AVATAR_SIZE', 256 * 1024);
 
 # global configuration object
 
+require_once('PEAR.php');
+require_once('DB_DataObject.php');
+
 // default configuration, overwritten in config.php
 
 $config =
   array('site' =>
-		array('name' => 'Just another µB',
+		array('name' => 'Just another Laconica microblog',
 			  'server' => 'localhost',
 			  'path' => '/'),
 		'avatar' =>
 		array('directory' => INSTALLDIR . 'files',
 			  'path' => '/files'),
-		'dsn' =>
-		array('phptype' => 'mysql',
-			  'username' => 'stoica',
-			  'password' => 'apasswd',
-			  'hostspec' => 'localhost',
-			  'database' => 'thedb')
-		'dboptions' =>
-		array('debug' => 2,
-			  'portability' => DB_PORTABILITY_ALL));
+		'db' => &PEAR::getStaticProperty('DB_DataObject','options'),
+);
+
+$config['db'] = 
+  array('database' => 'YOU HAVE TO SET THIS IN config.php',
+	    'schema_location' => $INSTALLDIR . '/classes',
+		'class_location' => $INSTALLDIR . '/classes',
+		'require_prefix' => 'classes/',
+		'class_prefix' => '',
+        'db_driver' => 'MDB2',
+		'quote_identifiers' => false);
 
 require_once(INSTALLDIR . '/config.php');
-require_once('DB.php');
 
 # Show a server error
 
-- 
2.39.5