| | |
| | | | program/steps/settings/func.inc | |
| | | | | |
| | | | This file is part of the Roundcube Webmail client | |
| | | | Copyright (C) 2005-2007, The Roundcube Dev Team | |
| | | | Copyright (C) 2005-2012, The Roundcube Dev Team | |
| | | | | |
| | | | Licensed under the GNU General Public License version 3 or | |
| | | | any later version with exceptions for skins & plugins. | |
| | |
| | | +-----------------------------------------------------------------------+ |
| | | | Author: Thomas Bruederli <roundcube@gmail.com> | |
| | | +-----------------------------------------------------------------------+ |
| | | |
| | | $Id$ |
| | | |
| | | */ |
| | | |
| | | if (!$OUTPUT->ajax_call) |
| | |
| | | $attrib['name'] = $attrib['id']; |
| | | |
| | | $OUTPUT->set_env('contentframe', $attrib['name']); |
| | | $OUTPUT->set_env('blankpage', $attrib['src'] ? $OUTPUT->abs_url($attrib['src']) : 'program/blank.gif'); |
| | | $OUTPUT->set_env('blankpage', $attrib['src'] ? $OUTPUT->abs_url($attrib['src']) : 'program/resources/blank.gif'); |
| | | |
| | | return html::iframe($attrib); |
| | | } |
| | |
| | | case 'general': |
| | | |
| | | $blocks = array( |
| | | 'main' => array('name' => Q(rcube_label('mainoptions'))), |
| | | 'main' => array('name' => Q(rcube_label('mainoptions'))), |
| | | 'browser' => array('name' => Q(rcube_label('browseroptions'))), |
| | | ); |
| | | |
| | | // language selection |
| | |
| | | $select_timezone = new html_select(array('name' => '_timezone', 'id' => $field_id)); |
| | | $select_timezone->add(rcube_label('autodetect'), 'auto'); |
| | | |
| | | $now = new DateTime(); |
| | | $zones = array(); |
| | | foreach (DateTimeZone::listIdentifiers() as $i => $tzs) { |
| | | $tz = new DateTimeZone($tzs); |
| | | $date = new DateTime('2012-12-21', $tz); |
| | | $offset = $date->format('Z') + 45000; |
| | | $sortkey = sprintf('%06d.%s', $offset, $tzs); |
| | | $zones[$sortkey] = array($tzs, $date->format('P')); |
| | | try { |
| | | $tz = new DateTimeZone($tzs); |
| | | $date = new DateTime('2012-12-21', $tz); |
| | | $offset = $date->format('Z') + 45000; |
| | | $sortkey = sprintf('%06d.%s', $offset, $tzs); |
| | | $zones[$sortkey] = array($tzs, $date->format('P')); |
| | | } |
| | | catch (Exception $e) {} |
| | | } |
| | | |
| | | ksort($zones); |
| | |
| | | ); |
| | | } |
| | | } |
| | | |
| | | $product_name = $RCMAIL->config->get('product_name', 'Roundcube Webmail'); |
| | | $RCMAIL->output->add_script(sprintf("%s.check_protocol_handler('%s', '#mailtoprotohandler');", |
| | | JS_OBJECT_NAME, JQ($product_name)), 'foot'); |
| | | |
| | | $blocks['browser']['options']['mailtoprotohandler'] = array( |
| | | 'content' => html::a(array( |
| | | 'href' => '#', |
| | | 'id' => 'mailtoprotohandler'), Q(rcube_label('mailtoprotohandler'))), |
| | | ); |
| | | |
| | | break; |
| | | |
| | |
| | | $select_htmleditor->add(rcube_label('never'), 0); |
| | | $select_htmleditor->add(rcube_label('always'), 1); |
| | | $select_htmleditor->add(rcube_label('htmlonreply'), 2); |
| | | $select_htmleditor->add(rcube_label('htmlonreplyandforward'), 3); |
| | | |
| | | $blocks['main']['options']['htmleditor'] = array( |
| | | 'title' => html::label($field_id, Q(rcube_label('htmleditor'))), |
| | |
| | | ); |
| | | } |
| | | |
| | | if (!isset($no_override['top_posting'])) { |
| | | $field_id = 'rcmfd_top_posting'; |
| | | $select_replymode = new html_select(array('name' => '_top_posting', 'id' => $field_id, |
| | | 'onchange' => "\$('#rcmfd_sig_above').attr('disabled',this.selectedIndex==0)")); |
| | | if (!isset($no_override['reply_mode'])) { |
| | | $field_id = 'rcmfd_reply_mode'; |
| | | $select_replymode = new html_select(array('name' => '_reply_mode', 'id' => $field_id, |
| | | 'onchange' => "\$('#rcmfd_sig_above').attr('disabled',this.selectedIndex<2)")); |
| | | $select_replymode->add(rcube_label('replyempty'), -1); |
| | | $select_replymode->add(rcube_label('replybottomposting'), 0); |
| | | $select_replymode->add(rcube_label('replytopposting'), 1); |
| | | |
| | | $blocks['main']['options']['top_posting'] = array( |
| | | $blocks['main']['options']['reply_mode'] = array( |
| | | 'title' => html::label($field_id, Q(rcube_label('whenreplying'))), |
| | | 'content' => $select_replymode->show($config['top_posting']?1:0), |
| | | 'content' => $select_replymode->show(intval($config['reply_mode'])), |
| | | ); |
| | | } |
| | | |
| | |
| | | |
| | | if (!isset($no_override['sig_above'])) { |
| | | $field_id = 'rcmfd_sig_above'; |
| | | $select_sigabove = new html_select(array('name' => '_sig_above', 'id' => $field_id, 'disabled' => !$config['top_posting'])); |
| | | $select_sigabove = new html_select(array('name' => '_sig_above', 'id' => $field_id, 'disabled' => $config['reply_mode'] < 1)); |
| | | $select_sigabove->add(rcube_label('belowquote'), 0); |
| | | $select_sigabove->add(rcube_label('abovequote'), 1); |
| | | |
| | |
| | | $blocks['sig']['options']['strip_existing_sig'] = array( |
| | | 'title' => html::label($field_id, Q(rcube_label('replyremovesignature'))), |
| | | 'content' => $input_stripexistingsig->show($config['strip_existing_sig']?1:0), |
| | | ); |
| | | } |
| | | |
| | | if (!isset($no_override['forward_attachment'])) { |
| | | $field_id = 'rcmfd_forward_attachment'; |
| | | $select = new html_select(array('name' => '_forward_attachment', 'id' => $field_id)); |
| | | $select->add(rcube_label('inline'), 0); |
| | | $select->add(rcube_label('asattachment'), 1); |
| | | |
| | | $blocks['main']['options']['forward_attachment'] = array( |
| | | 'title' => html::label($field_id, Q(rcube_label('forwardmode'))), |
| | | 'content' => $select->show(intval($config['forward_attachment'])), |
| | | ); |
| | | } |
| | | |
| | |
| | | ); |
| | | } |
| | | |
| | | if (!isset($no_override['autocomplete_single'])) { |
| | | $field_id = 'rcmfd_autocomplete_single'; |
| | | $checkbox = new html_checkbox(array('name' => '_autocomplete_single', 'id' => $field_id, 'value' => 1)); |
| | | // show addressbook listing mode selection |
| | | if (!isset($no_override['addressbook_name_listing'])) { |
| | | $field_id = 'rcmfd_addressbook_name_listing'; |
| | | $select_listing = new html_select(array('name' => '_addressbook_name_listing', 'id' => $field_id)); |
| | | $select_listing->add(rcube_label('name'), 0); |
| | | $select_listing->add(rcube_label('firstname') . ' ' . rcube_label('surname'), 1); |
| | | $select_listing->add(rcube_label('surname') . ' ' . rcube_label('firstname'), 2); |
| | | $select_listing->add(rcube_label('surname') . ', ' . rcube_label('firstname'), 3); |
| | | |
| | | $blocks['main']['options']['autocomplete_single'] = array( |
| | | 'title' => html::label($field_id, Q(rcube_label('autocompletesingle'))), |
| | | 'content' => $checkbox->show($config['autocomplete_single']?1:0), |
| | | $blocks['main']['options']['list_name_listing'] = array( |
| | | 'title' => html::label($field_id, Q(rcube_label('listnamedisplay'))), |
| | | 'content' => $select_listing->show($config['addressbook_name_listing']), |
| | | ); |
| | | } |
| | | |
| | | // show addressbook sort column |
| | | if (!isset($no_override['addressbook_sort_col'])) { |
| | | $field_id = 'rcmfd_addressbook_sort_col'; |
| | | $select_sort = new html_select(array('name' => '_addressbook_sort_col', 'id' => $field_id)); |
| | | $select_sort->add(rcube_label('name'), 'name'); |
| | | $select_sort->add(rcube_label('firstname'), 'firstname'); |
| | | $select_sort->add(rcube_label('surname'), 'surname'); |
| | | |
| | | $blocks['main']['options']['sort_col'] = array( |
| | | 'title' => html::label($field_id, Q(rcube_label('listsorting'))), |
| | | 'content' => $select_sort->show($config['addressbook_sort_col']), |
| | | ); |
| | | } |
| | | |
| | |
| | | $blocks['main']['options']['pagesize'] = array( |
| | | 'title' => html::label($field_id, Q(rcube_label('pagesize'))), |
| | | 'content' => $input_pagesize->show($size ? $size : 50), |
| | | ); |
| | | } |
| | | |
| | | if (!isset($no_override['autocomplete_single'])) { |
| | | $field_id = 'rcmfd_autocomplete_single'; |
| | | $checkbox = new html_checkbox(array('name' => '_autocomplete_single', 'id' => $field_id, 'value' => 1)); |
| | | |
| | | $blocks['main']['options']['autocomplete_single'] = array( |
| | | 'title' => html::label($field_id, Q(rcube_label('autocompletesingle'))), |
| | | 'content' => $checkbox->show($config['autocomplete_single']?1:0), |
| | | ); |
| | | } |
| | | |
| | |
| | | ); |
| | | } |
| | | |
| | | if (!isset($no_override['delete_junk'])) { |
| | | $field_id = 'rcmfd_delete_junk'; |
| | | $input_delete_junk = new html_checkbox(array('name' => '_delete_junk', 'id' => $field_id, 'value' => 1)); |
| | | |
| | | $blocks['main']['options']['delete_junk'] = array( |
| | | 'title' => html::label($field_id, Q(rcube_label('deletejunk'))), |
| | | 'content' => $input_delete_junk->show($config['delete_junk']?1:0), |
| | | ); |
| | | } |
| | | |
| | | // Trash purging on logout |
| | | if (!isset($no_override['logout_purge'])) { |
| | | $field_id = 'rcmfd_logout_purge'; |