source: trunk/expressoMail1_2/preferences.php @ 385

Revision 385, 14.6 KB checked in by niltonneto, 16 years ago (diff)
  • Property svn:eol-style set to native
  • Property svn:executable set to *
Line 
1<?php
2        /**************************************************************************/
3       
4        $GLOBALS['phpgw_info']['flags'] = array(
5                'currentapp' => 'expressoMail1_2',
6                'noheader'   => True,
7                'nonavbar'   => True,
8                'enable_nextmatchs_class' => True
9        );
10
11        include('../header.inc.php');
12        include('inc/class.imap_functions.inc.php');
13       
14        if (!$_POST['try_saved'])
15        {
16                // Read Config and get default values;
17               
18                $GLOBALS['phpgw']->preferences->read_repository();
19               
20                if($GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['max_email_per_page'])
21                        $GLOBALS['phpgw']->template->set_var('option_'.$GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['max_email_per_page'].'_selected','selected');
22                else
23                $GLOBALS['phpgw']->template->set_var('option_50_selected','selected');         
24
25                if ($GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['save_deleted_msg'])         
26                        $GLOBALS['phpgw']->template->set_var('checked_save_deleted_msg','checked');
27                else
28                        $GLOBALS['phpgw']->template->set_var('checked_save_deleted_msg','');
29
30                if($GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['delete_trash_messages_after_n_days'])
31                        $GLOBALS['phpgw']->template->set_var('delete_trash_messages_option_'.$GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['delete_trash_messages_after_n_days'].'_selected','selected');
32                else
33                        $GLOBALS['phpgw']->template->set_var('delete_trash_messages_option_0_selected','selected');             
34               
35                if ($GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['delete_and_show_previous_message'])         
36                        $GLOBALS['phpgw']->template->set_var('checked_delete_and_show_previous_message','checked');
37                else
38                        $GLOBALS['phpgw']->template->set_var('checked_delete_and_show_previous_message','');
39
40                if ($GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['alert_new_msg'])             
41                        $GLOBALS['phpgw']->template->set_var('checked_alert_new_msg','checked');
42                else
43                        $GLOBALS['phpgw']->template->set_var('checked_alert_new_msg','');
44
45                if ($GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['mainscreen_showmail'])
46                        $GLOBALS['phpgw']->template->set_var('checked_mainscreen_showmail','checked');
47                else
48                        $GLOBALS['phpgw']->template->set_var('checked_mainscreen_showmail','');
49
50                if ($GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['use_shortcuts'])
51                        $GLOBALS['phpgw']->template->set_var('checked_shortcuts','checked');
52                else
53                        $GLOBALS['phpgw']->template->set_var('checked_shortcuts','');
54
55                if ($GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['auto_save_draft'])
56                        $GLOBALS['phpgw']->template->set_var('checked_auto_save_draft','checked');
57                else
58                        $GLOBALS['phpgw']->template->set_var('checked_auto_save_draft','');
59
60                // Insert new expressoMail preference use_signature: defines if the signature will be automatically inserted
61                // at the e-mail body
62                if ($GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['use_signature'])
63                        $GLOBALS['phpgw']->template->set_var('checked_use_signature','checked');
64                else
65                        $GLOBALS['phpgw']->template->set_var('checked_use_signature','');
66
67                if ($GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['signature'])
68                        $GLOBALS['phpgw']->template->set_var('text_signature',$GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['signature']);
69                else
70                        $GLOBALS['phpgw']->template->set_var('text_signature','');
71
72                if ($GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['hide_folders'])
73                        $GLOBALS['phpgw']->template->set_var('checked_menu','checked');
74                else
75                        $GLOBALS['phpgw']->template->set_var('checked_menu','');
76
77                if($GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['line_height'])
78                        $GLOBALS['phpgw']->template->set_var('line_height_option_'.$GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['line_height'].'_selected','selected');
79                else
80                        $GLOBALS['phpgw']->template->set_var('line_height_option_20_selected','selected');
81               
82                if($GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['font_size'])
83                        $GLOBALS['phpgw']->template->set_var('font_size_option_'.$GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['font_size'].'_selected','selected');
84                else
85                        $GLOBALS['phpgw']->template->set_var('font_size_option_11_selected','selected');
86        }
87        else //Save Config
88        {
89                if ($GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['max_email_per_page'])
90                        $GLOBALS['phpgw']->preferences->change('expressoMail','max_email_per_page',$_POST['max_emails_per_page']);
91                else
92                        $GLOBALS['phpgw']->preferences->add('expressoMail','max_email_per_page',$_POST['max_emails_per_page']);
93               
94                if ($GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['save_deleted_msg'])
95                        $GLOBALS['phpgw']->preferences->change('expressoMail','save_deleted_msg',$_POST['save_deleted_msg']);
96                else
97                        $GLOBALS['phpgw']->preferences->add('expressoMail','save_deleted_msg',$_POST['save_deleted_msg']);
98
99                if ($GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['delete_trash_messages_after_n_days'])
100                        $GLOBALS['phpgw']->preferences->change('expressoMail','delete_trash_messages_after_n_days',$_POST['delete_trash_messages_after_n_days']);
101                else
102                        $GLOBALS['phpgw']->preferences->add('expressoMail','delete_trash_messages_after_n_days',$_POST['delete_trash_messages_after_n_days']);
103
104                if ($GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['delete_and_show_previous_message'])
105                        $GLOBALS['phpgw']->preferences->change('expressoMail','delete_and_show_previous_message',$_POST['delete_and_show_previous_message']);
106                else
107                        $GLOBALS['phpgw']->preferences->add('expressoMail','delete_and_show_previous_message',$_POST['delete_and_show_previous_message']);
108               
109                if ($GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['alert_new_msg'])
110                        $GLOBALS['phpgw']->preferences->change('expressoMail','alert_new_msg',$_POST['alert_new_msg']);
111                else
112                        $GLOBALS['phpgw']->preferences->add('expressoMail','alert_new_msg',$_POST['alert_new_msg']);
113
114                if ($GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['mainscreen_showmail'])
115                        $GLOBALS['phpgw']->preferences->change('expressoMail','mainscreen_showmail',$_POST['mainscreen_showmail']);
116                else
117                        $GLOBALS['phpgw']->preferences->add('expressoMail','mainscreen_showmail',$_POST['mainscreen_showmail']);
118
119                if ($GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['use_shortcuts'])
120                        $GLOBALS['phpgw']->preferences->change('expressoMail','use_shortcuts',$_POST['use_shortcuts']);
121                else
122                        $GLOBALS['phpgw']->preferences->add('expressoMail','use_shortcuts',$_POST['use_shortcuts']);
123                       
124                if ($GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['auto_save_draft'])
125                        $GLOBALS['phpgw']->preferences->change('expressoMail','auto_save_draft',$_POST['auto_save_draft']);
126                else
127                        $GLOBALS['phpgw']->preferences->add('expressoMail','auto_save_draft',$_POST['auto_save_draft']);       
128
129                // Insert new expressoMail preference use_signature: defines if the signature will be automatically inserted
130                // at the e-mail body
131                if ($GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['use_signature'])
132                        $GLOBALS['phpgw']->preferences->change('expressoMail','use_signature',$_POST['use_signature']);
133                else
134                        $GLOBALS['phpgw']->preferences->add('expressoMail','use_signature',$_POST['use_signature']);
135
136                if ($GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['signature'])
137                        $GLOBALS['phpgw']->preferences->change('expressoMail','signature',$_POST['signature']);
138                else
139                        $GLOBALS['phpgw']->preferences->add('expressoMail','signature',$_POST['signature']);
140
141                if ($GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['hide_folders'])
142                        $GLOBALS['phpgw']->preferences->change('expressoMail','hide_folders',$_POST['check_menu']);
143                else
144                        $GLOBALS['phpgw']->preferences->add('expressoMail','hide_folders',$_POST['check_menu']);
145                       
146                if ($GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['save_in_folder'])
147                        $GLOBALS['phpgw']->preferences->change('expressoMail','save_in_folder',$_POST['save_in_folder']);
148                else
149                        $GLOBALS['phpgw']->preferences->add('expressoMail','save_in_folder',$_POST['save_in_folder']);
150
151                if ($GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['line_height'])
152                        $GLOBALS['phpgw']->preferences->change('expressoMail','line_height',$_POST['line_height']);
153                else
154                        $GLOBALS['phpgw']->preferences->add('expressoMail','line_height',$_POST['line_height']);
155               
156                if ($GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['font_size'])
157                        $GLOBALS['phpgw']->preferences->change('expressoMail','font_size',$_POST['font_size']);
158                else
159                        $GLOBALS['phpgw']->preferences->add('expressoMail','font_size',$_POST['font_size']);           
160
161                $GLOBALS['phpgw']->preferences->save_repository();
162               
163                // Back to preferences.
164                $url = ($GLOBALS['phpgw']->link('/'.'expressoMail1_2'.'/index.php'));
165                $GLOBALS['phpgw']->redirect($url);
166        }
167       
168        $GLOBALS['phpgw']->common->phpgw_header();
169        print parse_navbar();
170
171        $GLOBALS['phpgw']->template->set_file(array(
172                'expressoMail_prefs' => 'preferences.tpl'
173        ));
174
175        $GLOBALS['phpgw']->template->set_var('lang_config_expressoMail',lang('Config for ExpressoMail'));
176        $GLOBALS['phpgw']->template->set_var('lang_max_emails_per_page',lang('What is the maximum number of messages per page?'));
177        $GLOBALS['phpgw']->template->set_var('lang_save_deleted_msg',lang('Save deleted messages in trash folder?'));
178        $GLOBALS['phpgw']->template->set_var('lang_delete_trash_messages_after_n_days',lang('Delete trash messages after how many days?'));
179        $GLOBALS['phpgw']->template->set_var('lang_delete_and_show_previous_message',lang('Show previous message, after delete actual message?'));
180        $GLOBALS['phpgw']->template->set_var('lang_alert_new_msg',lang('Do you wanna receive an alert for new messages?'));
181        $GLOBALS['phpgw']->template->set_var('lang_hook_home',lang('Show default view on main screen?'));
182        $GLOBALS['phpgw']->template->set_var('lang_save_in_folder',lang('Save sent messages in folder'));
183        $GLOBALS['phpgw']->template->set_var('lang_hide_menu',lang('Hide menu folders?'));
184        $GLOBALS['phpgw']->template->set_var('lang_line_height',lang('What is the height of the lines in the list of messages?'));
185        $GLOBALS['phpgw']->template->set_var('lang_font_size',lang('What the font size in the list of messages?'));
186        $GLOBALS['phpgw']->template->set_var('lang_use_shortcuts',lang('Use shortcuts?'));
187        $GLOBALS['phpgw']->template->set_var('lang_auto_save_draft',lang('Auto save draft'));
188        $GLOBALS['phpgw']->template->set_var('lang_signature',lang('Signature'));
189        $GLOBALS['phpgw']->template->set_var('lang_none',lang('None'));
190        $GLOBALS['phpgw']->template->set_var('one_day',lang('1 Day'));
191        $GLOBALS['phpgw']->template->set_var('two_days',lang('2 Days'));
192        $GLOBALS['phpgw']->template->set_var('three_days',lang('3 Days'));
193        $GLOBALS['phpgw']->template->set_var('four_days',lang('4 Days'));
194        $GLOBALS['phpgw']->template->set_var('five_days',lang('5 Day'));
195        $GLOBALS['phpgw']->template->set_var('small',lang('Small'));
196        $GLOBALS['phpgw']->template->set_var('medium',lang('Medium'));
197        $GLOBALS['phpgw']->template->set_var('normal',lang('Normal'));
198        $GLOBALS['phpgw']->template->set_var('big',lang('Big'));
199        $GLOBALS['phpgw']->template->set_var('lang_use_signature',lang('Insert signature automatically in new messages?'));
200        $GLOBALS['phpgw']->template->set_var('lang_signature',lang('Signature'));
201
202        $boemailadmin   = CreateObject('emailadmin.bo');
203        $emailadmin_profile = $boemailadmin->getProfileList();
204        $_SESSION['phpgw_info']['expressomail']['email_server'] = $boemailadmin->getProfile($emailadmin_profile[0]['profileID']);
205        $_SESSION['phpgw_info']['expressomail']['user'] = $GLOBALS['phpgw_info']['user'];
206        $e_server = $_SESSION['phpgw_info']['expressomail']['email_server'];
207        $imap = CreateObject('expressoMail1_2.imap_functions');
208        $save_in_folder_selected = $GLOBALS['phpgw_info']['user']['preferences']['expressoMail']['save_in_folder'];     
209        // Load Special Folders (Sent, Trash, Draft, Spam) from EmailAdmin (if exists, else get_lang)
210        $specialFolders = array ("Trash" => lang("Trash"), "Drafts" => lang("Drafts"), "Spam" => lang("Spam"), "Sent" => lang("Sent"));
211        foreach ($specialFolders as $key => $value){
212                if($e_server['imapDefault'.$key.'Folder'])
213                        $specialFolders[$key] = $e_server['imapDefault'.$key.'Folder'];
214        }       
215        // First access on ExpressoMail, load default preferences...
216        if(!$GLOBALS['phpgw_info']['user']['preferences']['expressoMail']) {
217                $GLOBALS['phpgw']->template->set_var('checked_save_deleted_msg','checked');
218                $GLOBALS['phpgw']->template->set_var('checked_delete_and_show_previous_message','checked');
219                $GLOBALS['phpgw']->template->set_var('checked_alert_new_msg','checked');
220                $GLOBALS['phpgw']->template->set_var('checked_use_signature','checked');
221                $GLOBALS['phpgw']->template->set_var('checked_mainscreen_showmail','checked');
222                $save_in_folder_selected = "INBOX".$e_server['imapDelimiter'].$specialFolders["Sent"];
223        }
224        $o_folders = "<option value='-1' ".(!$save_in_folder_selected ? 'selected' : '' ).">".lang("Select on send")."</option>";       
225       
226        foreach($imap -> get_folders_list() as $id => $folder){
227                // Ignores numeric indexes and shared folders....
228                if(!is_numeric($id) || (strstr($folder['folder_id'],"user".$e_server['imapDelimiter'])))
229                        continue;
230                // Translate INBOX (root folder)
231                elseif (strtolower($folder['folder_name']) == "inbox")
232                        $folder['folder_name'] = lang("Inbox");
233                // Translate Special Folders
234                elseif (($keyFolder = array_search($folder['folder_name'], $specialFolders)) !== false)
235                        $folder['folder_name'] = lang($keyFolder);
236                // Identation for subfolders
237                $folder_id = explode($e_server['imapDelimiter'],$folder['folder_id']);         
238                $level = count($folder_id);
239                $ident = '';
240                for($i = 2; $level > 2 && $i < $level;$i++)
241                        $ident .= ' - ';
242                $o_folders.= "<option value='".$folder['folder_id']."' ".($save_in_folder_selected == $folder['folder_id'] ? 'selected' : '' ).">".$ident.$folder['folder_name']."</option>";                   
243        }
244
245        $GLOBALS['phpgw']->template->set_var('value_save_in_folder',$o_folders);
246        $GLOBALS['phpgw']->template->set_var('lang_save',lang('Save'));
247        $GLOBALS['phpgw']->template->set_var('lang_cancel',lang('Cancel'));
248       
249        $GLOBALS['phpgw']->template->set_var('save_action',$GLOBALS['phpgw']->link('/'.'expressoMail1_2'.'/preferences.php'));
250        $GLOBALS['phpgw']->template->set_var('th_bg',$GLOBALS['phpgw_info']["theme"][th_bg]);
251
252        $tr_color = $GLOBALS['phpgw']->nextmatchs->alternate_row_color($tr_color);
253        $GLOBALS['phpgw']->template->set_var('tr_color1',$GLOBALS['phpgw_info']['theme']['row_on']);
254        $GLOBALS['phpgw']->template->set_var('tr_color2',$GLOBALS['phpgw_info']['theme']['row_off']);
255
256        $GLOBALS['phpgw']->template->parse('out','expressoMail_prefs',True);
257        $GLOBALS['phpgw']->template->p('out');
258        // Com o Módulo do IM habilitado, ocorre um erro no IE
259        //$GLOBALS['phpgw']->common->phpgw_footer();
260?>
Note: See TracBrowser for help on using the repository browser.