Fix problem in permissions printing
[dotclear.git] / widget.blog.owner.php
1 <?php
2
3 class xorgBlogOwnerWidget {
4 public static function behavior_adminBlogPreferencesForm(&$core) {
5 if ($core->auth->isSuperAdmin()) {
6 if (isset($_GET['id'])) {
7 $settings = new dcSettings($core, $_GET['id']);
8 } else {
9 $settings =& $core->blog->settings;
10 }
11 $types = array('user' => array('text' => 'Blog d\'utilisateur',
12 'selected' => false),
13 'group-member' => array('text' => 'Blog de groupe, édition par les membres',
14 'selected' => false),
15 'group-admin' => array('text' => 'Blog de groupe, édition par les administrateurs',
16 'selected' => false));
17 $type = $settings->xorgauth->get('xorg_blog_type');
18 if (!$type) {
19 $type = 'user';
20 }
21 $types[$type]['selected'] = true;
22 ?>
23 <fieldset>
24 <legend>Authentification X.org</legend>
25 <div class="two-cols">
26 <div class="col">
27 <p>
28 <label>
29 Type de blog&nbsp;:
30 <select name="xorg_blog_type">
31 <?php
32 foreach ($types as $key => $fields) {
33 echo '<option value="' . $key . '"' . ($fields['selected'] ? ' selected="selected"' : '') . '>'
34 . $fields['text'] . '</option>';
35 }
36 ?>
37 </select>
38 </label>
39 </p>
40 </div>
41 <div class="col">
42 <p>
43 <label>
44 Propriétaire du blog (*)&nbsp;:
45 <input type="text" name="xorg_blog_owner" value="<?php echo $settings->xorgauth->get('xorg_blog_owner'); ?> " />
46 </label>
47 </p>
48 <p>
49 <label>
50 (*) Dans le cas d'un blog de groupe, le propriétaire est le diminutif X.net du groupe<br />
51 (*) Dans le cas d'un blog d'utilisateur, le propriétaire est le forlife de l'utilisateur
52 </label>
53 </p>
54 </div>
55 </div>
56 </fieldset>
57 <?php
58 }
59 }
60
61 public static function behavior_adminBeforeBlogSettingsUpdate(&$settings) {
62 self::setXorgOwner($settings, $_POST['xorg_blog_type'], $_POST['xorg_blog_owner']);
63 }
64
65 public static function setXorgOwner(&$settings, $type, $owner) {
66 global $core;
67 if ($core->auth->isSuperAdmin()) {
68 $settings->xorgauth->put('xorg_blog_type', $type, 'string', 'Type de blog X.org');
69 $settings->xorgauth->put('xorg_blog_owner', $owner, 'string', 'Propriétaire X.org du blog');
70 }
71 }
72
73 }
74
75 ?>