diff options
author | alecpl <alec@alec.pl> | 2012-04-27 07:13:19 +0000 |
---|---|---|
committer | alecpl <alec@alec.pl> | 2012-04-27 07:13:19 +0000 |
commit | f4698cbfa1b6c7d3c1b5b88555f85c949c3adbef (patch) | |
tree | f15a1776bb512bce716db30f48446000b6cc4287 | |
parent | 6da093890c04a112a79724f4e05b708a9c0879e7 (diff) |
- Applied fixes from trunk up to r6129
-rw-r--r-- | index.php | 4 | ||||
-rw-r--r-- | program/js/app.js | 21 | ||||
-rw-r--r-- | program/steps/mail/func.inc | 4 | ||||
-rw-r--r-- | skins/default/mail.css | 4 | ||||
-rw-r--r-- | skins/larry/iehacks.css | 10 | ||||
-rw-r--r-- | skins/larry/mail.css | 41 | ||||
-rw-r--r-- | skins/larry/svggradients.css | 8 | ||||
-rw-r--r-- | skins/larry/ui.js | 7 |
8 files changed, 29 insertions, 70 deletions
@@ -129,6 +129,10 @@ if ($RCMAIL->task == 'login' && $RCMAIL->action == 'login') { // prevent endless looping on login page if ($query['_task'] == 'login') unset($query['_task']); + + // prevent redirect to compose with specified ID (#1488226) + if ($query['_action'] == 'compose' && !empty($query['_id'])) + $query = array(); } // allow plugins to control the redirect url after login success diff --git a/program/js/app.js b/program/js/app.js index d7bdfbf63..4fa8eff31 100644 --- a/program/js/app.js +++ b/program/js/app.js @@ -224,7 +224,7 @@ function rcube_webmail() this.env.message_commands = ['show', 'reply', 'reply-all', 'reply-list', 'forward', 'moveto', 'copy', 'delete', 'open', 'mark', 'edit', 'viewsource', 'download', - 'print', 'load-attachment', 'load-headers', 'forward-attachment']; + 'print', 'load-attachment', 'show-headers', 'hide-headers', 'forward-attachment']; if (this.env.action == 'show' || this.env.action == 'preview') { this.enable_command(this.env.message_commands, this.env.uid); @@ -579,10 +579,6 @@ function rcube_webmail() this.list_contacts(props); break; - case 'load-headers': - this.load_headers(obj); - break; - case 'sort': var sort_order, sort_col = props; @@ -1108,7 +1104,7 @@ function rcube_webmail() default: var func = command.replace(/-/g, '_'); if (this[func] && typeof this[func] === 'function') { - ret = this[func](props); + ret = this[func](props, obj); } break; } @@ -1856,8 +1852,11 @@ function rcube_webmail() else if (c == 'threads') html = expando; else if (c == 'subject') { - if (bw.ie) + if (bw.ie) { col.onmouseover = function() { rcube_webmail.long_subject_title_ie(this, message.depth+1); }; + if (bw.ie8) + tree = '<span></span>' + tree; // #1487821 + } html = tree + cols[c]; } else if (c == 'priority') { @@ -5829,14 +5828,14 @@ function rcube_webmail() }; // display all-headers row and fetch raw message headers - this.load_headers = function(elem) + this.show_headers = function(props, elem) { if (!this.gui_objects.all_headers_row || !this.gui_objects.all_headers_box || !this.env.uid) return; $(elem).removeClass('show-headers').addClass('hide-headers'); $(this.gui_objects.all_headers_row).show(); - elem.onclick = function() { rcmail.hide_headers(elem); }; + elem.onclick = function() { rcmail.command('hide-headers', '', elem); }; // fetch headers only once if (!this.gui_objects.all_headers_box.innerHTML) { @@ -5846,14 +5845,14 @@ function rcube_webmail() }; // hide all-headers row - this.hide_headers = function(elem) + this.hide_headers = function(props, elem) { if (!this.gui_objects.all_headers_row || !this.gui_objects.all_headers_box) return; $(elem).removeClass('hide-headers').addClass('show-headers'); $(this.gui_objects.all_headers_row).hide(); - elem.onclick = function() { rcmail.load_headers(elem); }; + elem.onclick = function() { rcmail.command('show-headers', '', elem); }; }; diff --git a/program/steps/mail/func.inc b/program/steps/mail/func.inc index 8dcd37b20..aeb917bd7 100644 --- a/program/steps/mail/func.inc +++ b/program/steps/mail/func.inc @@ -986,8 +986,8 @@ function rcmail_message_full_headers($attrib, $headers=NULL) { global $OUTPUT; - $html = html::div(array('class' => "more-headers show-headers", 'onclick' => "return ".JS_OBJECT_NAME.".command('load-headers','',this)"), ''); - $html .= html::div(array('id' => "all-headers", 'class' => "all", 'style' => 'display:none'), html::div(array('id' => 'headers-source'), '')); + $html = html::div(array('id' => "all-headers", 'class' => "all", 'style' => 'display:none'), html::div(array('id' => 'headers-source'), '')); + $html .= html::div(array('class' => "more-headers show-headers", 'onclick' => "return ".JS_OBJECT_NAME.".command('show-headers','',this)"), ''); $OUTPUT->add_gui_object('all_headers_row', 'all-headers'); $OUTPUT->add_gui_object('all_headers_box', 'headers-source'); diff --git a/skins/default/mail.css b/skins/default/mail.css index 2661afdf5..95b4c996a 100644 --- a/skins/default/mail.css +++ b/skins/default/mail.css @@ -1286,13 +1286,13 @@ div.hide-headers #headers-source { - margin: 0 0 2px 0; + margin: 2px 0; padding: 0.5em; height: 145px; background: white; overflow: auto; font-size: 11px; - border: 1px solid #999999; + border: 1px solid #CCC; display: none; text-align: left; color: #333; diff --git a/skins/larry/iehacks.css b/skins/larry/iehacks.css index 8eb1100e2..38d68acdd 100644 --- a/skins/larry/iehacks.css +++ b/skins/larry/iehacks.css @@ -143,14 +143,6 @@ ul.toolbarmenu li a.active:hover, filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e9e9e9', GradientType=0); } -#full-headers { - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eaeaea', endColorstr='#e9e9e9', GradientType=0); -} - -#all-headers { - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f3f3f3', endColorstr='#ffffff', GradientType=0); -} - #composeoptionsbox { border-top: 1px solid #999; } @@ -159,5 +151,3 @@ ul.toolbarmenu li a.active:hover, float: left; height: 18px; } - - diff --git a/skins/larry/mail.css b/skins/larry/mail.css index ba6f770a0..94e210a7c 100644 --- a/skins/larry/mail.css +++ b/skins/larry/mail.css @@ -734,18 +734,6 @@ h3.subject { background-position: -32px -242px; } -#full-headers { - position: relative; - color: #666; - text-align: center; - background-color: #f9f9f9; - background: -moz-linear-gradient(top, #eaeaea 0%, #e9e9e9 100%); - background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#eaeaea), color-stop(100%,#e9e9e9)); - background: -o-linear-gradient(top, #eaeaea 0%, #e9e9e9 100%); - background: -ms-linear-gradient(top, #eaeaea 0%, #e9e9e9 100%); - background: linear-gradient(top, #eaeaea 0%, #e9e9e9 100%); -} - div.more-headers { cursor: pointer; height: 10px; @@ -757,38 +745,23 @@ div.hide-headers { } #all-headers { - position: absolute; - top: 11px; - left: 10px; - right: 10px; + position: relative; + margin: 0 10px; + padding: 0; height: 180px; - z-index: 500; border: 1px solid #bbb; - border-top: 0; - border-radius: 0 0 4px 4px; - -webkit-box-shadow: 0px 3px 4px 0px rgba(80, 80, 80, 0.6); - -moz-box-shadow: 0px 3px 4px 0px rgba(80, 80, 80, 0.6); - box-shadow: 0px 3px 4px 0px rgba(80, 80, 80, 0.6); + border-radius: 4px; background: #fff; - background: -moz-linear-gradient(top, #f0f0f0 0%, #fff 8%, #fff 100%); - background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f0f0f0), color-stop(8%,#fff), color-stop(100%,#fff)); - background: -o-linear-gradient(top, #f0f0f0 0%, #fff 8%, #fff 100%); - background: -ms-linear-gradient(top, #f0f0f0 0%, #fff 8%, #fff 100%); - background: linear-gradient(top, #f0f0f0 0%, #fff 8%, #fff 100%); -} - -#all-headers .ui-resizable-s { - bottom: -2px; } #headers-source { display: none; position: absolute; - top: 8px; + top: 0; left: 0; right: 0; - bottom: 8px; - padding: 0 10px; + bottom: 0; + padding: 2px 5px; overflow: auto; text-align: left; color: #333; diff --git a/skins/larry/svggradients.css b/skins/larry/svggradients.css index 91192d79d..ba596e39f 100644 --- a/skins/larry/svggradients.css +++ b/skins/larry/svggradients.css @@ -137,14 +137,6 @@ ul.toolbarmenu li a.active:hover, background-image: url(svggradient.php?c=ffffff;e9e9e9); } -#full-headers { - background-image: url(svggradient.php?c=eaeaea;e9e9e9); -} - -#all-headers { - background-image: url(svggradient.php?c=f3f3f3;ffffff); -} - /*** jqueryui theme ***/ diff --git a/skins/larry/ui.js b/skins/larry/ui.js index cf7ff5537..ab56910bd 100644 --- a/skins/larry/ui.js +++ b/skins/larry/ui.js @@ -76,7 +76,8 @@ function rcube_mail_ui() if (rcmail.env.action == 'show' || rcmail.env.action == 'preview') { layout_messageview(); - $("#all-headers").resizable({ handles: 's', minHeight: 50 }); + rcmail.addEventListener('aftershow-headers', function() { layout_messageview(); }); + rcmail.addEventListener('afterhide-headers', function() { layout_messageview(); }); $('#previewheaderstoggle').click(function(e){ toggle_preview_headers(this); return false }); } else if (rcmail.env.action == 'compose') { @@ -291,7 +292,7 @@ function rcube_mail_ui() { $('#messagecontent').css('top', ($('#messageheader').outerHeight() + 10) + 'px'); $('#message-objects div a').addClass('button'); - + if (!$('#attachment-list li').length) { $('div.rightcol').hide(); $('div.leftcol').css('margin-right', '0'); @@ -549,7 +550,7 @@ function rcube_mail_ui() for (i in rcmail.env.spell_langs) { li = $('<li>'); - link = $('<a href="#">').text(rcmail.env.spell_langs[i]) + link = $('<a href="#"></a>').text(rcmail.env.spell_langs[i]) .addClass('active').data('lang', i) .click(function() { rcmail.spellcheck_lang_set($(this).data('lang')); |