- Timestamp:
- 05/04/11 10:27:59 (13 years ago)
- Location:
- branches/2.2
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2.2/expressoMail1_2/inc/class.imap_functions.inc.php
r4165 r4202 2132 2132 $mail->AddReplyTo($replytoaddress); 2133 2133 $mail->Subject = $subject; 2134 $mail->IsHTML( $params['type'] != 'textplain');2134 $mail->IsHTML( ( array_key_exists( 'type', $params ) && in_array( strtolower( $params[ 'type' ] ), array( 'html', 'plain' ) ) ) ? strtolower( $params[ 'type' ] ) != 'plain' : true ); 2135 2135 $mail->Body = $body; 2136 2136 -
branches/2.2/expressoMail1_2/js/abas.js
r4136 r4202 56 56 try 57 57 { 58 if (Element('viewsource_rt_checkbox ').checked)58 if (Element('viewsource_rt_checkbox_' + ID).checked) 59 59 { 60 60 connector.loadScript("rich_text_editor"); -
branches/2.2/expressoMail1_2/js/color_palette.js
r320 r4202 24 24 cColorPalette.prototype.repos = function (intElemScrollTop) 25 25 { 26 var new_pos = findPosY(Element("forecolor")) - intElemScrollTop + 20; 27 this.div.style.top = new_pos; 26 if ( Element("forecolor") ) 27 { 28 var new_pos = findPosY(Element("forecolor")) - intElemScrollTop + 20; 29 this.div.style.top = new_pos; 30 } 28 31 } 29 32 -
branches/2.2/expressoMail1_2/js/draw_api.js
r4136 r4202 2270 2270 2271 2271 tr_menu_new_message.appendChild(td_menu_new_message); 2272 2273 if ( ! expresso_offline ) 2274 { 2275 var text_plain = td_menu_new_message.appendChild( 2276 document.createElement( 'span' ) 2277 ).appendChild( 2278 document.createTextNode( ' | ' ) 2279 ).parentNode.appendChild( 2280 document.createElement( 'input' ) 2281 ).parentNode.appendChild( 2282 document.createTextNode( get_lang('Send this mail as text plain') + '.') 2283 ).previousSibling; 2284 text_plain.setAttribute( 'tabIndex', '-1' ); 2285 text_plain.id = 'textplain_rt_checkbox_' + ID ; 2286 text_plain.type = "checkbox"; 2287 text_plain.onclick = function () 2288 { 2289 RichTextEditor.plain( ( ! this.checked ) ? this.checked : mobile_device || ( this.checked = confirm( 'The text format will be lost.' ) ) ); 2290 document.getElementById( 'viewsource_rt_checkbox_' + ID ).parentNode.style.display = ( this.checked ) ? 'none' : ''; 2291 }; 2292 } 2293 2272 2294 tbody_menu_new_message.appendChild(tr_menu_new_message); 2273 2295 table_menu_new_message.appendChild(tbody_menu_new_message); … … 2866 2888 draw_from_field(sel_from,tr1_1); 2867 2889 resizeWindow(); 2890 2891 if ( ! expresso_offline ) 2892 { 2893 if ( mobile_device ) 2894 { 2895 text_plain.click( ); 2896 text_plain.parentNode.style.display = 'none'; 2897 } 2898 } 2899 2868 2900 return ID; 2869 2901 } -
branches/2.2/expressoMail1_2/js/globals.js
r3384 r4202 45 45 var divStatusBar = document.getElementById("divStatusBar"); 46 46 var denyFileExtensions = new Array('exe','com','reg','chm','cnf','hta','ins','jse','job','lnk','pif','src','scf','sct','shb','vbe','vbs','wsc','wsf','wsh','cer','its','mau','','mda','mar','mdz','prf','pst'); 47 47 var mobile_device = false; -
branches/2.2/expressoMail1_2/js/main.js
r4136 r4202 79 79 80 80 cExecute ("$this.functions.get_preferences", save_preferences); 81 cExecute ("phpgwapi.browser.isMobile", function( data ) 82 { 83 mobile_device = ( ( data.constructor == Boolean ) ? data : ( data === 'true' ) ); 84 } ); 81 85 setTimeout('auto_refresh()', time_refresh); 82 86 … … 1645 1649 } 1646 1650 1647 if ( document.getElementById('viewsource_rt_checkbox ').checked == true )1648 document.getElementById('viewsource_rt_checkbox ').click();1651 if ( document.getElementById('viewsource_rt_checkbox_' + ID).checked == true ) 1652 document.getElementById('viewsource_rt_checkbox_' + ID).click(); 1649 1653 1650 1654 var save_link = Element("save_message_options_"+ID); … … 1657 1661 send_message_return(data, this.ID_tmp); // this is a hack to escape quotation form connector bug 1658 1662 }; 1663 1664 var mail_as_plain = document.getElementById( 'textplain_rt_checkbox_' + ID ); 1665 mail_as_plain = ( mail_as_plain ) ? mail_as_plain.checked : false; 1659 1666 1660 1667 var textArea = document.createElement("TEXTAREA"); … … 1662 1669 textArea.name = "body"; 1663 1670 body = document.getElementById("body_"+ID); 1664 textArea.value += '<body>\r\n'; 1665 textArea.value += body.contentWindow.document.body.innerHTML; 1666 textArea.value += '\r\n</body>'; 1671 textArea.value += ( ( mail_as_plain ) ? body.previousSibling.value : ( '<body>\r\n' + body.contentWindow.document.body.innerHTML + '\r\n</body>' ) ); 1667 1672 var input_folder = document.createElement("INPUT"); 1668 1673 input_folder.style.display='none'; … … 1698 1703 form.appendChild(input_folder); 1699 1704 form.appendChild(msg_id); 1705 1706 var mail_type = form.appendChild( document.createElement( 'input' ) ); 1707 mail_type.name = 'type'; 1708 mail_type.type = 'hidden'; 1709 mail_type.value = ( mail_as_plain ) ? 'plain' : 'html'; 1700 1710 1701 1711 var _subject = trim(Element("subject_"+ID).value); … … 1903 1913 withImage = false; 1904 1914 1905 var rt_checkbox = Element('viewsource_rt_checkbox ');1915 var rt_checkbox = Element('viewsource_rt_checkbox_' + ID); 1906 1916 if (rt_checkbox == null) 1907 1917 return false; -
branches/2.2/expressoMail1_2/js/rich_text_editor.js
r3865 r4202 25 25 parentDiv.appendChild(this.table); 26 26 27 var mail_as_plain = document.getElementById( 'textplain_rt_checkbox_' + this.id ); 28 this.table.style.visibility = ( mail_as_plain && mail_as_plain.checked ) ? 'hidden' : 'visible'; 29 27 30 if(!Element(this.editor)) 28 31 { … … 31 34 else 32 35 { 33 Element( "viewsource_rt_checkbox").checked=false;36 Element( 'viewsource_rt_checkbox_' + this.id ).checked=false; 34 37 } 35 38 … … 50 53 config_events( iframe, 'onload', function( ) 51 54 { 52 iframe.contentWindow.document.designMode = "on"; 55 if ( iframe.contentWindow.document.body && iframe.contentWindow.document.body.contentEditable ) 56 iframe.contentWindow.document.body.contentEditable = true; 57 53 58 if ( iframe.contentWindow.document.documentElement ){ 54 59 iframe.contentWindow.document.documentElement.style.background = '#fff'; … … 57 62 }); 58 63 59 var checkbox = document.createElement("INPUT");60 checkbox.id = 'viewsource_rt_checkbox';61 checkbox.type = "checkbox";62 checkbox.setAttribute("tabIndex","-1");63 checkbox.onclick = function () {RichTextEditor.viewsource(this.checked)};64 var text = document.createTextNode(get_lang('View HTML source') + '.');65 64 parentDiv.appendChild(iframe); 66 parentDiv.appendChild(checkbox); 67 parentDiv.appendChild(text); 65 66 var source = document.createElement( 'input' ); 67 source.id = 'viewsource_rt_checkbox_' + this.id; 68 source.type = "checkbox"; 69 source.setAttribute("tabIndex","-1"); 70 source.onclick = function( ) 71 { 72 RichTextEditor.viewsource(this.checked); 73 }; 74 source = parentDiv.appendChild( 75 document.createElement( 'span' ).appendChild( source ).parentNode 76 ).appendChild( 77 document.createTextNode( get_lang( 'View HTML source' ) + '.' ) 78 ).parentNode; 68 79 } 69 80 … … 138 149 document.getElementById(this.editor).contentWindow.document.body.innerHTML = html.toString(); 139 150 document.getElementById("table_richtext_toolbar").style.visibility="visible"; 151 } 152 } 153 } 154 155 cRichTextEditor.prototype.plain = function(source) { 156 var html; 157 var editor = document.getElementById( this.editor ); 158 159 if (source) { 160 if (is_ie){ 161 connector.loadScript('html2xhtml'); 162 html = frames[this.editor].document.body; 163 var xhtml = get_xhtml(html, 'en', 'iso-8859-1'); 164 frames[this.editor].document.body.innerText = xhtml; 165 document.getElementById("table_richtext_toolbar").style.visibility="hidden"; 166 } 167 else{ 168 html = document.createTextNode( editor.contentWindow.document.body.innerHTML ); 169 this.table.style.visibility="hidden"; 170 editor.contentWindow.document.body.innerHTML = ''; 171 172 var textarea = document.createElement( 'textarea' ); 173 textarea.style.width = '99%'; 174 textarea.style.height = '300px'; 175 textarea.style.fontSize = '12pt'; 176 textarea.innerHTML = html.nodeValue.replace( /<br\s*\/?>/mg, "\n" ).replace( /(<([^>]+)>)/ig, '' ); 177 178 editor.style.width = '0px'; 179 editor.style.height = '0px'; 180 editor.style.visibility = 'hidden'; 181 182 editor.parentNode.insertBefore( textarea, editor ); 183 textarea.focus( ); 184 } 185 } else { 186 if (is_ie){ 187 var output = escape(frames[this.editor].document.body.innerText); 188 output = output.replace("%3CP%3E%0D%0A%3CHR%3E", "%3CHR%3E"); 189 output = output.replace("%3CHR%3E%0D%0A%3C/P%3E", "%3CHR%3E"); 190 frames[this.editor].document.body.innerHTML = unescape(output); 191 document.getElementById("table_richtext_toolbar").style.visibility="visible"; 192 } 193 else{ 194 editor.contentWindow.document.body.innerHTML = editor.previousSibling.value.replace( /\n/g, '<br/>' ); 195 editor.parentNode.removeChild( editor.previousSibling ); 196 197 editor.style.width = '99%'; 198 editor.style.height = '300px'; 199 editor.style.visibility = 'visible'; 200 201 this.loadEditor( this.id ); 140 202 } 141 203 } -
branches/2.2/phpgwapi/inc/class.browser.inc.php
r3621 r4202 199 199 } 200 200 201 function isMobile( ) 202 { 203 return $this -> is_ipad( ) 204 || $this -> is_iphone( ) 205 || $this -> is_nokia( ) 206 || $this -> is_ipod( ) 207 || $this -> is_blackberry( ) 208 || $this -> is_android( ); 209 } 210 201 211 function is_beos() 202 212 {
Note: See TracChangeset
for help on using the changeset viewer.