Mercurial > hg > rc2
comparison program/steps/settings/edit_prefs.inc @ 0:4681f974d28b
vanilla 1.3.3 distro, I hope
author | Charlie Root |
---|---|
date | Thu, 04 Jan 2018 15:52:31 -0500 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:4681f974d28b |
---|---|
1 <?php | |
2 | |
3 /** | |
4 +-----------------------------------------------------------------------+ | |
5 | program/steps/settings/edit_prefs.inc | | |
6 | | | |
7 | This file is part of the Roundcube Webmail client | | |
8 | Copyright (C) 2005-2013, The Roundcube Dev Team | | |
9 | | | |
10 | Licensed under the GNU General Public License version 3 or | | |
11 | any later version with exceptions for skins & plugins. | | |
12 | See the README file for a full license statement. | | |
13 | | | |
14 | PURPOSE: | | |
15 | Provide functionality for user's settings & preferences | | |
16 | | | |
17 +-----------------------------------------------------------------------+ | |
18 | Author: Thomas Bruederli <roundcube@gmail.com> | | |
19 +-----------------------------------------------------------------------+ | |
20 */ | |
21 | |
22 | |
23 if (!$OUTPUT->ajax_call) { | |
24 $OUTPUT->set_pagetitle($RCMAIL->gettext('preferences')); | |
25 } | |
26 | |
27 $CURR_SECTION = rcube_utils::get_input_value('_section', rcube_utils::INPUT_GPC); | |
28 list($SECTIONS,) = rcmail_user_prefs($CURR_SECTION); | |
29 | |
30 // register UI objects | |
31 $OUTPUT->add_handlers(array( | |
32 'userprefs' => 'rcmail_user_prefs_form', | |
33 'sectionname' => 'rcmail_prefs_section_name', | |
34 )); | |
35 | |
36 $OUTPUT->send('settingsedit'); | |
37 | |
38 | |
39 | |
40 function rcmail_user_prefs_form($attrib) | |
41 { | |
42 global $RCMAIL, $CURR_SECTION, $SECTIONS; | |
43 | |
44 // add some labels to client | |
45 $RCMAIL->output->add_label('nopagesizewarning'); | |
46 | |
47 unset($attrib['form']); | |
48 | |
49 list($form_start, $form_end) = get_form_tags($attrib, 'save-prefs', null, | |
50 array('name' => '_section', 'value' => $CURR_SECTION)); | |
51 | |
52 $out = $form_start; | |
53 | |
54 if(!empty($SECTIONS[$CURR_SECTION]['header'])) { | |
55 $out .= html::div(array('id' => 'preferences-header', 'class' =>'boxcontent'), $SECTIONS[$CURR_SECTION]['header']); | |
56 } | |
57 | |
58 foreach ($SECTIONS[$CURR_SECTION]['blocks'] as $class => $block) { | |
59 if (!empty($block['options'])) { | |
60 $table = new html_table(array('cols' => 2)); | |
61 | |
62 foreach ($block['options'] as $option) { | |
63 if (isset($option['title'])) { | |
64 $table->add('title', $option['title']); | |
65 $table->add(null, $option['content']); | |
66 } | |
67 else { | |
68 $table->add(array('colspan' => 2), $option['content']); | |
69 } | |
70 } | |
71 | |
72 $out .= html::tag('fieldset', $class, html::tag('legend', null, $block['name']) . $table->show($attrib)); | |
73 } | |
74 else if (!empty($block['content'])) { | |
75 $out .= html::tag('fieldset', null, html::tag('legend', null, $block['name']) . $block['content']); | |
76 } | |
77 } | |
78 | |
79 return $out . $form_end; | |
80 } | |
81 | |
82 function rcmail_prefs_section_name() | |
83 { | |
84 global $SECTIONS, $CURR_SECTION; | |
85 | |
86 return $SECTIONS[$CURR_SECTION]['section']; | |
87 } |