mirror of
https://github.com/EGroupware/egroupware.git
synced 2025-03-31 11:06:54 +02:00
flag messages from preview; load translations for ajaxcalls, when needed
This commit is contained in:
parent
2685f4d46e
commit
22d6fc05ee
@ -687,13 +687,13 @@ class mail_ui
|
|||||||
array_unshift($fFP,$this->mail_bo->profileID);
|
array_unshift($fFP,$this->mail_bo->profileID);
|
||||||
$oA['path'] = $fFP;
|
$oA['path'] = $fFP;
|
||||||
$path = $key; //$obj->folderName; //$obj->delimiter
|
$path = $key; //$obj->folderName; //$obj->delimiter
|
||||||
if ($fS['unseen']) $oA['text'] = '<b>'.$oA['text'].' ('.$fS['unseen'].')</b>';
|
|
||||||
if ($path=='INBOX')
|
if ($path=='INBOX')
|
||||||
{
|
{
|
||||||
$oA['im0'] = $oA['im1']= $oA['im2'] = "kfm_home.png";
|
$oA['im0'] = $oA['im1']= $oA['im2'] = "kfm_home.png";
|
||||||
}
|
}
|
||||||
elseif (in_array($obj->shortFolderName,mail_bo::$autoFolders))
|
elseif (in_array($obj->shortFolderName,mail_bo::$autoFolders))
|
||||||
{
|
{
|
||||||
|
$oA['text'] = lang($oA['text']);
|
||||||
//echo $obj->shortFolderName.'<br>';
|
//echo $obj->shortFolderName.'<br>';
|
||||||
$oA['im0'] = $oA['im1']= $oA['im2'] = "MailFolder".$obj->shortFolderName.".png";
|
$oA['im0'] = $oA['im1']= $oA['im2'] = "MailFolder".$obj->shortFolderName.".png";
|
||||||
//$image2 = "'MailFolderPlain.png'";
|
//$image2 = "'MailFolderPlain.png'";
|
||||||
@ -710,6 +710,7 @@ class mail_ui
|
|||||||
$oA['im1'] = "folderOpen.gif";
|
$oA['im1'] = "folderOpen.gif";
|
||||||
$oA['im2'] = "MailFolderClosed.png"; // has Children
|
$oA['im2'] = "MailFolderClosed.png"; // has Children
|
||||||
}
|
}
|
||||||
|
if ($fS['unseen']) $oA['text'] = '<b>'.$oA['text'].' ('.$fS['unseen'].')</b>';
|
||||||
$path = $this->mail_bo->profileID.self::$delimiter.$key; //$obj->folderName; //$obj->delimiter
|
$path = $this->mail_bo->profileID.self::$delimiter.$key; //$obj->folderName; //$obj->delimiter
|
||||||
$oA['id'] = $path; // ID holds the PATH
|
$oA['id'] = $path; // ID holds the PATH
|
||||||
if (!empty($fS['attributes']) && stripos(array2string($fS['attributes']),'\noselect')!== false)
|
if (!empty($fS['attributes']) && stripos(array2string($fS['attributes']),'\noselect')!== false)
|
||||||
@ -3228,6 +3229,7 @@ blockquote[type=cite] {
|
|||||||
*/
|
*/
|
||||||
function ajax_setFolderStatus($_folder)
|
function ajax_setFolderStatus($_folder)
|
||||||
{
|
{
|
||||||
|
translation::add_app('mail');
|
||||||
//error_log(__METHOD__.__LINE__.array2string($_folder));
|
//error_log(__METHOD__.__LINE__.array2string($_folder));
|
||||||
if ($_folder)
|
if ($_folder)
|
||||||
{
|
{
|
||||||
@ -3242,6 +3244,7 @@ blockquote[type=cite] {
|
|||||||
if ($folderName)
|
if ($folderName)
|
||||||
{
|
{
|
||||||
$fS = $this->mail_bo->getFolderStatus($folderName,false);
|
$fS = $this->mail_bo->getFolderStatus($folderName,false);
|
||||||
|
if (in_array($fS['shortDisplayName'],mail_bo::$autoFolders)) $fS['shortDisplayName']=lang($fS['shortDisplayName']);
|
||||||
//error_log(__METHOD__.__LINE__.array2string($fS));
|
//error_log(__METHOD__.__LINE__.array2string($fS));
|
||||||
if ($fS['unseen'])
|
if ($fS['unseen'])
|
||||||
{
|
{
|
||||||
@ -3334,6 +3337,7 @@ blockquote[type=cite] {
|
|||||||
//error_log(__METHOD__.__LINE__.' OldFolderName:'.array2string($_folderName).' NewName:'.array2string($_newName));
|
//error_log(__METHOD__.__LINE__.' OldFolderName:'.array2string($_folderName).' NewName:'.array2string($_newName));
|
||||||
if ($_folderName)
|
if ($_folderName)
|
||||||
{
|
{
|
||||||
|
translation::add_app('mail');
|
||||||
$decodedFolderName = $this->mail_bo->decodeEntityFolderName($_folderName);
|
$decodedFolderName = $this->mail_bo->decodeEntityFolderName($_folderName);
|
||||||
$_newName = $this->mail_bo->decodeEntityFolderName($_newName);
|
$_newName = $this->mail_bo->decodeEntityFolderName($_newName);
|
||||||
$del = $this->mail_bo->getHierarchyDelimiter(false);
|
$del = $this->mail_bo->getHierarchyDelimiter(false);
|
||||||
@ -3574,6 +3578,8 @@ blockquote[type=cite] {
|
|||||||
$response = egw_json_response::get();
|
$response = egw_json_response::get();
|
||||||
if ($success)
|
if ($success)
|
||||||
{
|
{
|
||||||
|
translation::add_app('mail');
|
||||||
|
|
||||||
$oldFolderInfo = $this->mail_bo->getFolderStatus($oldParentFolder,false);
|
$oldFolderInfo = $this->mail_bo->getFolderStatus($oldParentFolder,false);
|
||||||
$folderInfo = $this->mail_bo->getFolderStatus($parentFolder,false);
|
$folderInfo = $this->mail_bo->getFolderStatus($parentFolder,false);
|
||||||
$refreshData = array(
|
$refreshData = array(
|
||||||
@ -3733,6 +3739,8 @@ blockquote[type=cite] {
|
|||||||
// Send full info back in the response
|
// Send full info back in the response
|
||||||
if($getFolders)
|
if($getFolders)
|
||||||
{
|
{
|
||||||
|
translation::add_app('mail');
|
||||||
|
|
||||||
$refreshData = array(
|
$refreshData = array(
|
||||||
$icServerID => $this->getFolderTree(true, $icServerID, true)
|
$icServerID => $this->getFolderTree(true, $icServerID, true)
|
||||||
);
|
);
|
||||||
@ -3748,6 +3756,7 @@ blockquote[type=cite] {
|
|||||||
function ajax_refreshQuotaDisplay($icServerID=null)
|
function ajax_refreshQuotaDisplay($icServerID=null)
|
||||||
{
|
{
|
||||||
//error_log(__METHOD__.__LINE__.array2string($icServerID));
|
//error_log(__METHOD__.__LINE__.array2string($icServerID));
|
||||||
|
translation::add_app('mail');
|
||||||
if (is_null($icServerID)) $icServerID = $this->mail_bo->profileID;
|
if (is_null($icServerID)) $icServerID = $this->mail_bo->profileID;
|
||||||
$rememberServerID = $this->mail_bo->profileID;
|
$rememberServerID = $this->mail_bo->profileID;
|
||||||
if ($icServerID && $icServerID != $this->mail_bo->profileID)
|
if ($icServerID && $icServerID != $this->mail_bo->profileID)
|
||||||
@ -3789,7 +3798,9 @@ blockquote[type=cite] {
|
|||||||
*/
|
*/
|
||||||
function ajax_emptyTrash($icServerID)
|
function ajax_emptyTrash($icServerID)
|
||||||
{
|
{
|
||||||
error_log(__METHOD__.__LINE__.' '.$icServerID);
|
//error_log(__METHOD__.__LINE__.' '.$icServerID);
|
||||||
|
translation::add_app('mail');
|
||||||
|
|
||||||
$rememberServerID = $this->mail_bo->profileID;
|
$rememberServerID = $this->mail_bo->profileID;
|
||||||
if ($icServerID && $icServerID != $this->mail_bo->profileID)
|
if ($icServerID && $icServerID != $this->mail_bo->profileID)
|
||||||
{
|
{
|
||||||
@ -3824,7 +3835,9 @@ blockquote[type=cite] {
|
|||||||
*/
|
*/
|
||||||
function ajax_compressFolder($_folderName)
|
function ajax_compressFolder($_folderName)
|
||||||
{
|
{
|
||||||
error_log(__METHOD__.__LINE__.' '.$_folderName);
|
//error_log(__METHOD__.__LINE__.' '.$_folderName);
|
||||||
|
translation::add_app('mail');
|
||||||
|
|
||||||
$this->mail_bo->restoreSessionData();
|
$this->mail_bo->restoreSessionData();
|
||||||
$decodedFolderName = $this->mail_bo->decodeEntityFolderName($_folderName);
|
$decodedFolderName = $this->mail_bo->decodeEntityFolderName($_folderName);
|
||||||
list($icServerID,$folderName) = explode(self::$delimiter,$decodedFolderName,2);
|
list($icServerID,$folderName) = explode(self::$delimiter,$decodedFolderName,2);
|
||||||
|
@ -726,7 +726,7 @@ app.classes.mail = AppJS.extend(
|
|||||||
|
|
||||||
var activeFolders = tree_wdg.getTreeNodeOpenItems(nodeToRefresh,mode2use);
|
var activeFolders = tree_wdg.getTreeNodeOpenItems(nodeToRefresh,mode2use);
|
||||||
//alert(activeFolders.join('#,#'));
|
//alert(activeFolders.join('#,#'));
|
||||||
this.mail_queueRefreshFolderList(activeFolders);
|
this.mail_queueRefreshFolderList((mode=='thisfolderonly'&&nodeToRefresh?[_nodeID]:activeFolders));
|
||||||
if (_refreshGridArea)
|
if (_refreshGridArea)
|
||||||
{
|
{
|
||||||
// maybe to use the mode forced as trigger for grid reload and using the grids own autorefresh
|
// maybe to use the mode forced as trigger for grid reload and using the grids own autorefresh
|
||||||
@ -770,28 +770,16 @@ app.classes.mail = AppJS.extend(
|
|||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Queues a refreshFolderList request for 1ms. Actually this will just execute the
|
* Queues a refreshFolderList request for 10ms. Actually this will just execute the
|
||||||
* code after the calling script has finished.
|
* code after the calling script has finished.
|
||||||
*/
|
*/
|
||||||
mail_queueRefreshFolderList: function(_folders)
|
mail_queueRefreshFolderList: function(_folders)
|
||||||
{
|
{
|
||||||
this.mail_queuedFolders.push(_folders);
|
// as jsonq is too fast wrap it to be delayed a bit, to ensure the folder actions
|
||||||
this.mail_queuedFoldersIndex++;
|
// are executed last of the queue
|
||||||
|
|
||||||
// Copy idx onto the anonymous function scope
|
|
||||||
var idx = this.mail_queuedFoldersIndex;
|
|
||||||
var self = this;
|
|
||||||
window.setTimeout(function() {
|
window.setTimeout(function() {
|
||||||
if (idx == self.mail_queuedFoldersIndex)
|
egw.jsonq('mail.mail_ui.ajax_setFolderStatus',[_folders]);
|
||||||
{
|
}, 100);
|
||||||
//var folders = mail_queuedFolders.join(",");
|
|
||||||
self.mail_queuedFoldersIndex = 0;
|
|
||||||
self.mail_queuedFolders = [];
|
|
||||||
|
|
||||||
egw.json('mail.mail_ui.ajax_setFolderStatus',[_folders])
|
|
||||||
.sendRequest(true);
|
|
||||||
}
|
|
||||||
}, 10);
|
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -1170,6 +1158,14 @@ app.classes.mail = AppJS.extend(
|
|||||||
{
|
{
|
||||||
var do_nmactions = true;
|
var do_nmactions = true;
|
||||||
var msg;
|
var msg;
|
||||||
|
var ftree;
|
||||||
|
var _folder;
|
||||||
|
if (_action.id=='read')
|
||||||
|
{
|
||||||
|
ftree = this.et2.getWidgetById(this.nm_index+'[foldertree]');
|
||||||
|
var _foldernode = ftree.getSelectedNode();
|
||||||
|
_folder = _foldernode.id;
|
||||||
|
}
|
||||||
if (typeof _elems == 'undefined')
|
if (typeof _elems == 'undefined')
|
||||||
{
|
{
|
||||||
do_nmactions = false;//indicates that this action is probably a popup?
|
do_nmactions = false;//indicates that this action is probably a popup?
|
||||||
@ -1184,6 +1180,8 @@ app.classes.mail = AppJS.extend(
|
|||||||
{
|
{
|
||||||
msg = {};
|
msg = {};
|
||||||
msg['msg'] = [this.mail_currentlyFocussed];
|
msg['msg'] = [this.mail_currentlyFocussed];
|
||||||
|
_elems = msg;
|
||||||
|
do_nmactions = true;// is triggered from preview
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1271,7 +1269,8 @@ app.classes.mail = AppJS.extend(
|
|||||||
{
|
{
|
||||||
this.mail_flagMessages(_action.id,msg_set);
|
this.mail_flagMessages(_action.id,msg_set);
|
||||||
}
|
}
|
||||||
// No further update needed
|
// No further update needed, only in case of read, the counters should be refreshed
|
||||||
|
if (_action.id=='read') this.mail_refreshFolderStatus(_folder,'thisfolderonly',false,true);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1279,7 +1278,10 @@ app.classes.mail = AppJS.extend(
|
|||||||
{
|
{
|
||||||
this.mail_flagMessages(_action.id,msg,(do_nmactions?false:true));
|
this.mail_flagMessages(_action.id,msg,(do_nmactions?false:true));
|
||||||
}
|
}
|
||||||
this.mail_refreshFolderStatus();
|
// only refresh counter. not grid as the ajaxmethod is called asyncronously
|
||||||
|
// on flagging, only seen/unseen has effect on counterdisplay
|
||||||
|
if (_action.id=='read') this.mail_refreshFolderStatus(_folder,'thisfolderonly',false,true);
|
||||||
|
//this.mail_refreshFolderStatus();
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -1752,6 +1754,8 @@ app.classes.mail = AppJS.extend(
|
|||||||
*/
|
*/
|
||||||
mail_getFormData: function(_actionObjects) {
|
mail_getFormData: function(_actionObjects) {
|
||||||
var messages = {};
|
var messages = {};
|
||||||
|
// if
|
||||||
|
if (typeof _actionObjects['msg'] != 'undefined' && _actionObjects['msg'].length>0) return _actionObjects;
|
||||||
if (_actionObjects.length>0)
|
if (_actionObjects.length>0)
|
||||||
{
|
{
|
||||||
messages['msg'] = [];
|
messages['msg'] = [];
|
||||||
|
Loading…
Reference in New Issue
Block a user