first reimport from platal
[platal.git] / htdocs / listes / options.php
1 <?php
2 /***************************************************************************
3 * Copyright (C) 2003-2004 Polytechnique.org *
4 * http://opensource.polytechnique.org/ *
5 * *
6 * This program is free software; you can redistribute it and/or modify *
7 * it under the terms of the GNU General Public License as published by *
8 * the Free Software Foundation; either version 2 of the License, or *
9 * (at your option) any later version. *
10 * *
11 * This program is distributed in the hope that it will be useful, *
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
14 * GNU General Public License for more details. *
15 * *
16 * You should have received a copy of the GNU General Public License *
17 * along with this program; if not, write to the Free Software *
18 * Foundation, Inc., *
19 * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *
20 ***************************************************************************/
21
22 if (!$page) {
23 require_once("xorg.inc.php");
24 if (!Env::has('liste')) header('Location: index.php');
25 $liste = strtolower(Env::get('liste'));
26
27 new_skinned_page('listes/options.tpl', AUTH_MDP);
28 require_once('lists.inc.php');
29
30 $client =& lists_xmlrpc(Session::getInt('uid'), Session::get('password'));
31 }
32
33 if (Post::has('submit')) {
34 $values = $_POST;
35 $client->set_bogo_level($liste, intval($values['bogo_level']));
36 switch($values['moderate']) {
37 case '0':
38 $values['generic_nonmember_action'] = 0;
39 $values['default_member_moderation'] = 0;
40 break;
41 case '1':
42 $values['generic_nonmember_action'] = 1;
43 $values['default_member_moderation'] = 0;
44 break;
45 case '2':
46 $values['generic_nonmember_action'] = 1;
47 $values['default_member_moderation'] = 1;
48 break;
49 }
50 unset($values['submit'], $values['bogo_level'], $values['moderate']);
51 $values['send_goodbye_msg'] = !empty($values['send_goodbye_msg']);
52 $values['admin_notify_mchanges'] = !empty($values['admin_notify_mchanges']);
53 $values['subscribe_policy'] = empty($values['subscribe_policy']) ? 0 : 2;
54 if (isset($values['subject_prefix'])) {
55 $values['subject_prefix'] = trim($values['subject_prefix']).' ';
56 }
57 $client->set_owner_options($liste, $values);
58 } elseif (isvalid_email(Post::get('atn_add'))) {
59 $client->add_to_wl($liste, Post::get('atn_add'));
60 } elseif (Get::has('atn_del')) {
61 $client->del_from_wl($liste, Get::get('atn_del'));
62 header("Location: {$_SERVER['PHP_SELF']}?liste=$liste");
63 }
64
65 if(list($details,$options) = $client->get_owner_options($liste)) {
66 $page->assign_by_ref('details', $details);
67 $page->assign_by_ref('options', $options);
68 $page->assign('bogo_level', $client->get_bogo_level($liste));
69 } else {
70 $page->kill("La liste n'existe pas ou tu n'as pas le droit de l'administrer");
71 }
72
73 $page->run();
74 ?>