From 7d26c37dbd9dac998e2e36036683e233dd78b02c Mon Sep 17 00:00:00 2001 From: Florent Bruneau Date: Sat, 31 May 2008 21:29:46 +0200 Subject: [PATCH] Add X.org settings to the blog. Signed-off-by: Florent Bruneau --- _admin.php | 41 +++++++++++++++++++++++++++++++++++++++++ class.xorg.auth.php | 4 ++-- 2 files changed, 43 insertions(+), 2 deletions(-) diff --git a/_admin.php b/_admin.php index faf3d83..0da0d37 100644 --- a/_admin.php +++ b/_admin.php @@ -14,4 +14,45 @@ $core->addBehavior('adminBeforePostUpdate', array('xorgPostPermsWidget', 'behavi /* Stuff to set user preferences about post permissions */ $core->addBehavior('adminPreferencesForm', array('xorgPostPermsWidget', 'behavior_adminPreferencesForm')); $core->addBehavior('adminBeforeUserUpdate', array('xorgPostPermsWidget', 'behavior_adminBeforeUserUpdate')); + + +/* Declare the form to assign the ownership of the blog */ +$core->addBehavior('adminBlogPreferencesForm', array('xorgBlogOwnerWidget', 'behavior_adminBlogPreferencesForm')); +$core->addBehavior('adminBeforeBlogSettingsUpdate', array('xorgBlogOwnerWidget', 'behavior_adminBeforeBlogSettingsUpdate')); + +class xorgBlogOwnerWidget { + public static function behavior_adminBlogPreferencesForm(&$core) { + if ($core->auth->isSuperAdmin()) { + $types = array('user' => array('text' => 'Blog d\'utilisateur', + 'selected' => false), + 'group-member' => array('text' => 'Blog de groupe, édition par les membres', + 'selected' => false), + 'group-admin' => array('text' => 'Blog de groupe, édition par les administrateurs', + 'selected' => false)); + $type = $core->blog->settings->get('xorg_blog_type'); + if (!$type) { + $type = 'user'; + } + $types[$type]['selected'] = true; + echo '
Authentification X.org
'; + echo '

'; + echo '

'; + echo '

'; + } + } + + public static function behavior_adminBeforeBlogSettingsUpdate(&$settings) { + global $core; + if ($core->auth->isSuperAdmin()) { + $settings->put('xorg_blog_type', $_POST['xorg_blog_type'], 'string', 'Type de blog X.org'); + $settings->put('xorg_blog_owner', $_POST['xorg_blog_owner'], 'string', 'Propriétaire X.org du blog'); + } + } +} ?> diff --git a/class.xorg.auth.php b/class.xorg.auth.php index e284f1a..a13bd5a 100644 --- a/class.xorg.auth.php +++ b/class.xorg.auth.php @@ -170,11 +170,11 @@ class xorgAuth extends dcAuth { $this->buildFromSession(); return parent::getOption($n); } -/* + public function isSuperAdmin() { return parent::isSuperAdmin() || ($this->user_id == 'florent.bruneau.2003'); } -*/ + public function getOptions() { $this->buildFromSession(); return parent::getOptions(); -- 2.1.4