forked from extern/egroupware
* Mail: Make multiple mail selection available for both "save to disk" and :save to filemanager" actions
This commit is contained in:
parent
f15ff70a10
commit
38b930d51c
@ -1124,7 +1124,7 @@ class mail_ui
|
|||||||
'group' => $group,
|
'group' => $group,
|
||||||
'icon' => 'fileexport',
|
'icon' => 'fileexport',
|
||||||
'onExecute' => 'javaScript:app.mail.mail_save',
|
'onExecute' => 'javaScript:app.mail.mail_save',
|
||||||
'allowOnMultiple' => false,
|
'allowOnMultiple' => true,
|
||||||
'hideOnMobile' => true
|
'hideOnMobile' => true
|
||||||
),
|
),
|
||||||
'save2filemanager' => array(
|
'save2filemanager' => array(
|
||||||
@ -1133,7 +1133,7 @@ class mail_ui
|
|||||||
'group' => $group,
|
'group' => $group,
|
||||||
'icon' => 'filemanager/navbar',
|
'icon' => 'filemanager/navbar',
|
||||||
'onExecute' => 'javaScript:app.mail.mail_save2fm',
|
'onExecute' => 'javaScript:app.mail.mail_save2fm',
|
||||||
'allowOnMultiple' => false,
|
'allowOnMultiple' => true,
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
'hideOnMobile' => true
|
'hideOnMobile' => true
|
||||||
|
@ -2520,12 +2520,23 @@ app.classes.mail = AppJS.extend(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
for (var i in _elems)
|
||||||
|
{
|
||||||
//alert('mail_save('+_elems[0].id+')');
|
//alert('mail_save('+_elems[0].id+')');
|
||||||
var url = window.egw_webserverUrl+'/index.php?';
|
var url = window.egw_webserverUrl+'/index.php?';
|
||||||
url += 'menuaction=mail.mail_ui.saveMessage'; // todo compose for Draft folder
|
url += 'menuaction=mail.mail_ui.saveMessage'; // todo compose for Draft folder
|
||||||
url += '&id='+_elems[0].id;
|
url += '&id='+_elems[i].id;
|
||||||
//window.open(url,'_blank','dependent=yes,width=100,height=100,scrollbars=yes,status=yes');
|
var a = document.createElement('a');
|
||||||
this.et2._inst.download(url);
|
a = jQuery(a)
|
||||||
|
.prop('href', url)
|
||||||
|
.prop('download',"")
|
||||||
|
.appendTo(this.et2.getDOMNode());
|
||||||
|
var evt = document.createEvent('MouseEvent');
|
||||||
|
evt.initMouseEvent('click', true, true, window, 1, 0, 0, 0, 0, false, false, false, false, 0, null);
|
||||||
|
a[0].dispatchEvent(evt);
|
||||||
|
a.remove();
|
||||||
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -2872,20 +2883,32 @@ app.classes.mail = AppJS.extend(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
var _id = _elems[0].id;
|
|
||||||
var dataElem = egw.dataGetUIDdata(_id);
|
|
||||||
var url = window.egw_webserverUrl+'/index.php?';
|
var url = window.egw_webserverUrl+'/index.php?';
|
||||||
url += 'menuaction=filemanager.filemanager_select.select'; // todo compose for Draft folder
|
url += 'menuaction=filemanager.filemanager_select.select'; // todo compose for Draft folder
|
||||||
url += '&mode=saveas';
|
url += '&mode='+ (_elems.length>1?'select-dir':'saveas');
|
||||||
var subject = dataElem? dataElem.data.subject: _elems[0].subject;
|
|
||||||
var filename = subject.replace(/[\f\n\t\v]/g,"_")|| 'unknown';
|
|
||||||
url += '&name='+encodeURIComponent(filename+'.eml');
|
|
||||||
url += '&mime=message'+encodeURIComponent('/')+'rfc822';
|
url += '&mime=message'+encodeURIComponent('/')+'rfc822';
|
||||||
url += '&method=mail.mail_ui.vfsSaveMessage';
|
url += '&method=mail.mail_ui.vfsSaveMessage';
|
||||||
url += '&id='+_elems[0].id;
|
url += '&label='+(_elems.length>1?egw.lang('Save all'):egw.lang('save'));
|
||||||
url += '&label=Save';
|
|
||||||
egw_openWindowCentered(url,'vfs_save_message_'+_elems[0].id,'680','400',window.outerWidth/2,window.outerHeight/2);
|
|
||||||
|
|
||||||
|
for (var i in _elems)
|
||||||
|
{
|
||||||
|
var _id = _elems[i].id;
|
||||||
|
var dataElem = egw.dataGetUIDdata(_id);
|
||||||
|
var subject = dataElem? dataElem.data.subject: _elems[i].subject;
|
||||||
|
var filename = subject.replace(/[\f\n\t\v]/g,"_")|| 'unknown';
|
||||||
|
if (_elems.length>1)
|
||||||
|
{
|
||||||
|
url += '&id['+i+']='+_id;
|
||||||
|
url += '&name['+i+']='+encodeURIComponent(filename+'.eml');
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
url += '&id='+_id;
|
||||||
|
url += '&name='+encodeURIComponent(filename+'.eml');
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
egw.openPopup(url,'680','400','vfs_save_messages', 'filemanager');
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
Reference in New Issue
Block a user