|
|
|
@ -559,39 +559,6 @@ prev_sibling: function(elm)
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var rcmail_ui;
|
|
|
|
|
|
|
|
|
|
function rcube_init_mail_ui()
|
|
|
|
|
{
|
|
|
|
|
rcmail_ui = new rcube_mail_ui();
|
|
|
|
|
rcube_event.add_listener({ object:rcmail_ui, method:'body_mouseup', event:'mouseup' });
|
|
|
|
|
rcube_event.add_listener({ object:rcmail_ui, method:'body_keydown', event:'keydown' });
|
|
|
|
|
|
|
|
|
|
$('iframe').load(iframe_events)
|
|
|
|
|
.contents().mouseup(function(e){rcmail_ui.body_mouseup(e)});
|
|
|
|
|
|
|
|
|
|
if (rcmail.env.task == 'mail') {
|
|
|
|
|
rcmail.addEventListener('menu-open', 'open_listmenu', rcmail_ui);
|
|
|
|
|
rcmail.addEventListener('menu-save', 'save_listmenu', rcmail_ui);
|
|
|
|
|
rcmail.addEventListener('aftersend-attachment', 'uploadmenu', rcmail_ui);
|
|
|
|
|
rcmail.addEventListener('aftertoggle-editor', 'resize_compose_body_ev', rcmail_ui);
|
|
|
|
|
rcmail.gui_object('message_dragmenu', 'dragmessagemenu');
|
|
|
|
|
|
|
|
|
|
if (rcmail.gui_objects.mailboxlist) {
|
|
|
|
|
rcmail.addEventListener('responseaftermark', rcube_render_mailboxlist);
|
|
|
|
|
rcmail.addEventListener('responseaftergetunread', rcube_render_mailboxlist);
|
|
|
|
|
rcmail.addEventListener('responseaftercheck-recent', rcube_render_mailboxlist);
|
|
|
|
|
rcmail.addEventListener('aftercollapse-folder', rcube_render_mailboxlist);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (rcmail.env.action == 'compose')
|
|
|
|
|
rcmail_ui.init_compose_form();
|
|
|
|
|
}
|
|
|
|
|
else if (rcmail.env.task == 'addressbook') {
|
|
|
|
|
rcmail.addEventListener('afterupload-photo', function(){ rcmail_ui.show_popup('uploadform', false); });
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Events handling in iframes (eg. preview pane)
|
|
|
|
|
function iframe_events()
|
|
|
|
|
{
|
|
|
|
@ -671,8 +638,114 @@ function fit_string_to_size(str, elem, len)
|
|
|
|
|
return result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function update_quota(data)
|
|
|
|
|
{
|
|
|
|
|
percent_indicator(rcmail.gui_objects.quotadisplay, data);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// percent (quota) indicator
|
|
|
|
|
function percent_indicator(obj, data)
|
|
|
|
|
{
|
|
|
|
|
if (!data || !obj)
|
|
|
|
|
return false;
|
|
|
|
|
|
|
|
|
|
var limit_high = 80,
|
|
|
|
|
limit_mid = 55,
|
|
|
|
|
width = data.width ? data.width : rcmail.env.indicator_width ? rcmail.env.indicator_width : 100,
|
|
|
|
|
height = data.height ? data.height : rcmail.env.indicator_height ? rcmail.env.indicator_height : 14,
|
|
|
|
|
quota = data.percent ? Math.abs(parseInt(data.percent)) : 0,
|
|
|
|
|
quota_width = parseInt(quota / 100 * width),
|
|
|
|
|
pos = $(obj).position();
|
|
|
|
|
|
|
|
|
|
// workarounds for Opera and Webkit bugs
|
|
|
|
|
pos.top = Math.max(0, pos.top);
|
|
|
|
|
pos.left = Math.max(0, pos.left);
|
|
|
|
|
|
|
|
|
|
rcmail.env.indicator_width = width;
|
|
|
|
|
rcmail.env.indicator_height = height;
|
|
|
|
|
|
|
|
|
|
// overlimit
|
|
|
|
|
if (quota_width > width) {
|
|
|
|
|
quota_width = width;
|
|
|
|
|
quota = 100;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (data.title)
|
|
|
|
|
data.title = rcmail.get_label('quota') + ': ' + data.title;
|
|
|
|
|
|
|
|
|
|
// main div
|
|
|
|
|
var main = $('<div>');
|
|
|
|
|
main.css({position: 'absolute', top: pos.top, left: pos.left,
|
|
|
|
|
width: width + 'px', height: height + 'px', zIndex: 100, lineHeight: height + 'px'})
|
|
|
|
|
.attr('title', data.title).addClass('quota_text').html(quota + '%');
|
|
|
|
|
// used bar
|
|
|
|
|
var bar1 = $('<div>');
|
|
|
|
|
bar1.css({position: 'absolute', top: pos.top + 1, left: pos.left + 1,
|
|
|
|
|
width: quota_width + 'px', height: height + 'px', zIndex: 99});
|
|
|
|
|
// background
|
|
|
|
|
var bar2 = $('<div>');
|
|
|
|
|
bar2.css({position: 'absolute', top: pos.top + 1, left: pos.left + 1,
|
|
|
|
|
width: width + 'px', height: height + 'px', zIndex: 98})
|
|
|
|
|
.addClass('quota_bg');
|
|
|
|
|
|
|
|
|
|
if (quota >= limit_high) {
|
|
|
|
|
main.addClass(' quota_text_high');
|
|
|
|
|
bar1.addClass('quota_high');
|
|
|
|
|
}
|
|
|
|
|
else if(quota >= limit_mid) {
|
|
|
|
|
main.addClass(' quota_text_mid');
|
|
|
|
|
bar1.addClass('quota_mid');
|
|
|
|
|
}
|
|
|
|
|
else {
|
|
|
|
|
main.addClass(' quota_text_low');
|
|
|
|
|
bar1.addClass('quota_low');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// replace quota image
|
|
|
|
|
$(obj).html('').append(bar1).append(bar2).append(main);
|
|
|
|
|
// update #quotaimg title
|
|
|
|
|
$('#quotaimg').attr('title', data.title);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Optional parameters used by TinyMCE
|
|
|
|
|
var rcmail_editor_settings = {
|
|
|
|
|
skin : "default", // "default", "o2k7"
|
|
|
|
|
skin_variant : "" // "", "silver", "black"
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
var rcmail_ui;
|
|
|
|
|
|
|
|
|
|
function rcube_init_mail_ui()
|
|
|
|
|
{
|
|
|
|
|
rcmail_ui = new rcube_mail_ui();
|
|
|
|
|
rcube_event.add_listener({ object:rcmail_ui, method:'body_mouseup', event:'mouseup' });
|
|
|
|
|
rcube_event.add_listener({ object:rcmail_ui, method:'body_keydown', event:'keydown' });
|
|
|
|
|
|
|
|
|
|
if (rcmail.env.quota_content)
|
|
|
|
|
update_quota(rcmail.env.quota_content);
|
|
|
|
|
rcmail.addEventListener('setquota', update_quota);
|
|
|
|
|
|
|
|
|
|
$('iframe').load(iframe_events)
|
|
|
|
|
.contents().mouseup(function(e){rcmail_ui.body_mouseup(e)});
|
|
|
|
|
|
|
|
|
|
if (rcmail.env.task == 'mail') {
|
|
|
|
|
rcmail.addEventListener('menu-open', 'open_listmenu', rcmail_ui);
|
|
|
|
|
rcmail.addEventListener('menu-save', 'save_listmenu', rcmail_ui);
|
|
|
|
|
rcmail.addEventListener('aftersend-attachment', 'uploadmenu', rcmail_ui);
|
|
|
|
|
rcmail.addEventListener('aftertoggle-editor', 'resize_compose_body_ev', rcmail_ui);
|
|
|
|
|
rcmail.gui_object('message_dragmenu', 'dragmessagemenu');
|
|
|
|
|
|
|
|
|
|
if (rcmail.gui_objects.mailboxlist) {
|
|
|
|
|
rcmail.addEventListener('responseaftermark', rcube_render_mailboxlist);
|
|
|
|
|
rcmail.addEventListener('responseaftergetunread', rcube_render_mailboxlist);
|
|
|
|
|
rcmail.addEventListener('responseaftercheck-recent', rcube_render_mailboxlist);
|
|
|
|
|
rcmail.addEventListener('aftercollapse-folder', rcube_render_mailboxlist);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (rcmail.env.action == 'compose')
|
|
|
|
|
rcmail_ui.init_compose_form();
|
|
|
|
|
}
|
|
|
|
|
else if (rcmail.env.task == 'addressbook') {
|
|
|
|
|
rcmail.addEventListener('afterupload-photo', function(){ rcmail_ui.show_popup('uploadform', false); });
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|