Fix javascript errors when working in a page opened with taget="_blank"

pull/60/head
Aleksander Machniak 11 years ago
parent cf8b9fc004
commit 32da699830

@ -1,6 +1,7 @@
CHANGELOG Roundcube Webmail
===========================
- Fix javascript errors when working in a page opened with taget="_blank"
- Mention SQLite database format change in UPGRADING file (#1488983)
- Increase maxlength to 254 chars for email input fields in addressbook (#1488987)
- Add attachment menu with Open and Download options (#1488975)

@ -2984,10 +2984,10 @@ function rcube_webmail()
input_message = $("[name='_message']").get(0),
html_mode = $("input[name='_is_html']").val() == '1',
ac_fields = ['cc', 'bcc', 'replyto', 'followupto'],
ac_props;
ac_props, opener_rc = this.opener();
// close compose step in opener
if (window.opener && !window.opener.closed && opener.rcmail && opener.rcmail.env.action == 'compose') {
if (opener_rc && opener_rc.env.action == 'compose') {
setTimeout(function(){ opener.history.back(); }, 100);
this.env.opened_extwin = true;
}
@ -3666,9 +3666,10 @@ function rcube_webmail()
this.display_message(msg, type);
if (this.env.extwin) {
var opener_rc = this.opener();
this.lock_form(this.gui_objects.messageform);
if (window.opener && !window.opener.closed && opener.rcmail)
opener.rcmail.display_message(msg, type);
if (opener_rc)
opener_rc.display_message(msg, type);
setTimeout(function(){ window.close() }, 1000);
}
else {
@ -6500,6 +6501,17 @@ function rcube_webmail()
/********* helper methods *********/
/********************************************************/
// get window.opener.rcmail if available
this.opener = function()
{
// catch Error: Permission denied to access property rcmail
try {
if (window.opener && !opener.closed && opener.rcmail)
return opener.rcmail;
}
catch (e) {}
};
// check if we're in show mode or if we have a unique selection
// and return the message uid
this.get_single_uid = function()

@ -123,7 +123,8 @@ function rcube_mail_ui()
}).css('cursor', 'pointer');
// toggle compose options if opened in new window and they were visible before
if (window.opener && opener.rcmail && opener.rcmail.env.action == 'compose' && $('#composeoptionstoggle', opener.document).hasClass('remove'))
var opener_rc = rcmail.opener();
if (opener_rc && opener_rc.env.action == 'compose' && $('#composeoptionstoggle', opener.document).hasClass('remove'))
$('#composeoptionstoggle').click();
new rcube_splitter({ id:'composesplitterv', p1:'#composeview-left', p2:'#composeview-right',

Loading…
Cancel
Save