Ticket #1484008: roundcube-preview-svn361.patch
| File roundcube-preview-svn361.patch, 10.2 KB (added by wobin, 4 years ago) |
|---|
-
config/main.inc.php.dist
171 171 // Leave empty for default set of Google spell check languages 172 172 $rcmail_config['spellcheck_languages'] = NULL; 173 173 174 // Enable preview pane 175 $rcmail_config['enable_preview'] = FALSE; 176 174 177 // path to a text file which will be added to each sent message 175 178 // paths are relative to the RoundCube root folder 176 179 $rcmail_config['generic_message_footer'] = ''; … … 216 219 // prefer displaying HTML messages 217 220 $rcmail_config['prefer_html'] = TRUE; 218 221 222 // display preview pane if enabled 223 $rcmail_config['preview'] = FALSE; 224 219 225 // show pretty dates as standard 220 226 $rcmail_config['prettydate'] = TRUE; 221 227 -
program/include/main.inc
1200 1200 'editorselector' => 'rcmail_editor_selector', 1201 1201 'searchform' => 'rcmail_search_form', 1202 1202 'receiptcheckbox' => 'rcmail_receipt_checkbox', 1203 'preview' => 'rcmail_message_preview', 1203 1204 1204 1205 // ADDRESS BOOK 1205 1206 'addresslist' => 'rcmail_contacts_list', -
program/localization/nl_NL/labels.inc
202 202 $labels['pagesize'] = 'Rijen per pagina'; 203 203 $labels['signature'] = 'Onderschrift'; 204 204 $labels['dstactive'] = 'Zomertijd'; 205 $labels['preview'] = 'Voorbeeldvenster'; 205 206 206 207 $labels['folder'] = 'Map'; 207 208 $labels['folders'] = 'Mappen'; -
program/localization/en_US/labels.inc
207 207 $labels['dstactive'] = 'Daylight savings'; 208 208 $labels['htmleditor'] = 'Compose HTML messages'; 209 209 $labels['htmlsignature'] = 'HTML signature'; 210 $labels['preview'] = 'Preview message'; 210 211 211 212 $labels['autosavedraft'] = 'Automatically save draft'; 212 213 $labels['everynminutes'] = 'every $n minutes'; -
program/js/app.js
135 135 } 136 136 137 137 // enable mail commands 138 this.enable_command('list', 'checkmail', 'compose', 'add-contact', 'search', 'reset-search', true);138 this.enable_command('list', 'checkmail', 'compose', 'add-contact', 'search', 'reset-search', 'load-attachment', true); 139 139 140 140 if (this.env.action=='show') 141 141 { … … 552 552 var input_pagesize = rcube_find_object('_pagesize'); 553 553 var input_name = rcube_find_object('_name'); 554 554 var input_email = rcube_find_object('_email'); 555 var input_preview = rcube_find_object('_preview'); 555 556 556 557 // user prefs 557 558 if (input_pagesize && isNaN(input_pagesize.value)) … … 1039 1040 this.enable_command('show', 'reply', 'reply-all', 'forward', 'print', selected); 1040 1041 this.enable_command('delete', 'moveto', list.selection.length>0 ? true : false); 1041 1042 } 1043 if (selected && this.env.enable_preview && this.env.preview) 1044 this.show_preview(list.selection[0]); 1042 1045 }; 1043 1046 1044 1047 … … 1067 1070 /*********************************************************/ 1068 1071 1069 1072 1073 this.show_preview = function(id, safe) 1074 { 1075 var add_url = ''; 1076 var target = window; 1077 var contentframe = rcube_find_object('mailcontframe'); 1078 var previewpane = rcube_find_object('previewpane'); 1079 1080 if (id && contentframe && previewpane) 1081 { 1082 rcmail.set_busy(true, 'loading'); 1083 if (previewpane.style.display=='none') 1084 { 1085 contentframe.style.height = (contentframe.offsetHeight/2) + 'px'; 1086 previewpane.style.top = (contentframe.offsetTop+contentframe.offsetHeight) + 'px'; 1087 previewpane.style.display = 'block'; 1088 var message = rcube_find_object('rcmrow' + id); 1089 message.scrollIntoView(); 1090 } 1091 var url = '_action=preview&_uid='+id; 1092 rcmail.http_request('preview', url, true); 1093 } 1094 }; 1095 1096 1070 1097 // when user doble-clicks on a row 1071 1098 this.show_message = function(id, safe) 1072 1099 { … … 3115 3142 case 'expunge': 3116 3143 this.enable_command('select-all', 'select-none', 'expunge', this.env.messagecount ? true : false); 3117 3144 break; 3145 3146 case 'preview': 3147 var previewpane = rcube_find_object('previewpane'); 3148 previewpane.innerHTML = request_obj.get_text(); 3149 previewpane.scrollTop = 0; 3150 break; 3118 3151 } 3119 3152 3120 3153 request_obj.reset(); -
program/steps/settings/func.inc
155 155 rep_specialchars_output(rcube_label('htmleditor')), 156 156 $input_htmleditor->show($CONFIG['htmleditor']?1:0)); 157 157 158 // Show option for preview pane 159 if ($CONFIG['enable_preview']) 160 { 161 $field_id = 'rcmfd_preview'; 162 $input_preview = new checkbox(array('name' => '_preview', 'id' => $field_id, 'value' => 1)); 163 $out .= sprintf("<tr><td class=\"title\"><label for=\"%s\">%s</label></td><td>%s</td></tr>\n", 164 $field_id, 165 rep_specialchars_output(rcube_label('preview')), 166 $input_preview->show($CONFIG['preview']?1:0)); 167 } 168 158 169 if (!empty($CONFIG['drafts_mbox'])) 159 170 { 160 171 $field_id = 'rcmfd_autosave'; … … 242 253 } 243 254 244 255 245 ?> 246 No newline at end of file 256 ?> -
program/steps/settings/save_prefs.inc
29 29 $a_user_prefs['pagesize'] = is_numeric($_POST['_pagesize']) ? (int)$_POST['_pagesize'] : $CONFIG['pagesize']; 30 30 $a_user_prefs['prefer_html'] = isset($_POST['_prefer_html']) ? TRUE : FALSE; 31 31 $a_user_prefs['htmleditor'] = isset($_POST['_htmleditor']) ? TRUE : FALSE; 32 if ($CONFIG['enable_preview']) 33 $a_user_prefs['preview'] = isset($_POST['_preview']) ? TRUE : FALSE; 32 34 $a_user_prefs['draft_autosave'] = isset($_POST['_draft_autosave']) ? intval($_POST['_draft_autosave']) : 0; 33 35 36 34 37 // MM: Date format toggle (Pretty / Standard) 35 38 $a_user_prefs['prettydate'] = isset($_POST['_pretty_date']) ? TRUE : FALSE; 36 39 -
program/steps/mail/show.inc
171 171 172 172 if ($_action=='print') 173 173 parse_template('printmessage'); 174 else if ($_action=='preview') 175 parse_template('previewmessage'); 174 176 else 175 177 parse_template('message'); 176 ?> 177 No newline at end of file 178 ?> -
program/steps/mail/func.inc
480 480 $javascript .= sprintf("%s.set_env('pagecount', %d);\n", $JS_OBJECT_NAME, ceil($message_count/$IMAP->page_size)); 481 481 $javascript .= sprintf("%s.set_env('sort_col', '%s');\n", $JS_OBJECT_NAME, $sort_col); 482 482 $javascript .= sprintf("%s.set_env('sort_order', '%s');\n", $JS_OBJECT_NAME, $sort_order); 483 if ($CONFIG['enable_preview']) 484 $javascript .= sprintf("%s.set_env('preview', '%s');\n", $JS_OBJECT_NAME, $CONFIG['preview']); 483 485 484 486 if ($attrib['messageicon']) 485 487 $javascript .= sprintf("%s.set_env('messageicon', '%s%s');\n", $JS_OBJECT_NAME, $skin_path, $attrib['messageicon']); -
skins/default/templates/mail.html
52 52 attachmentIcon="/images/icons/attachment.png" /> 53 53 </div> 54 54 55 <div id="previewpane" style="display: none;"></div> 56 55 57 <div id="listcontrols"> 56 58 <roundcube:label name="select" />: 57 59 <roundcube:button command="select-all" label="all" classAct="active" /> -
skins/default/templates/previewmessage.html
1 <roundcube:object name="messageHeaders" class="headers-table" cellspacing="0" cellpadding="2" addicon="/images/icons/plus.gif" summary="Message headers" /> 2 <roundcube:object name="messageAttachments" id="attachment-list" /> 3 <roundcube:object name="blockedObjects" id="remote-objects-message" /> 4 <pre><roundcube:object name="messageBody" id="messagebody" showImages="true" /></pre> -
skins/default/mail.css
120 120 height: expression((parseInt(document.documentElement.clientHeight)-125)+'px'); 121 121 } 122 122 123 #previewpane 124 { 125 position: absolute; 126 display: none; 127 top: 85px; 128 left: 200px; 129 right: 40px; 130 bottom: 40px; 131 border: 1px solid #999999; 132 border-top: none; 133 background-color: #F9F9F9; 134 overflow: auto; 135 /* css hack for IE */ 136 width: expression((parseInt(document.documentElement.clientWidth)-240)+'px'); 137 height: expression(( 138 parseInt(document.documentElement.clientHeight) - 139 parseInt(document.getElementById('mailcontframe').clientHeight) - 125)+'px'); 140 } 123 141 142 body > div#previewpane 143 { 144 height: auto; 145 } 146 124 147 #messagepartframe 125 148 { 126 149 border: 1px solid #999999; -
index.php
262 262 { 263 263 include_once('program/steps/mail/func.inc'); 264 264 265 if ($_action=='show' || $_action=='print' )265 if ($_action=='show' || $_action=='print' || $_action=='preview') 266 266 include('program/steps/mail/show.inc'); 267 267 268 268 if ($_action=='get')
