Merged in bugfix/PMC-44 (pull request #6745)

PMC-44

Approved-by: Julio Cesar Laura Avendaño <contact@julio-laura.com>
This commit is contained in:
Fabio Guachalla
2019-01-18 15:11:24 +00:00
committed by Julio Cesar Laura Avendaño
9 changed files with 167 additions and 153 deletions

View File

@@ -318,8 +318,8 @@ try {
try {
if(top.opener) {
top.opener.location.reload();
top.close();
}
top.close();
} catch(e) {
}
</script>";

View File

@@ -9,6 +9,8 @@ $oHeadPublisher->addContent("cases/main"); //Adding a html file .html.
$keyMem = "USER_PREFERENCES" . $_SESSION["USER_LOGGED"];
$memcache = PMmemcached::getSingleton(config("system.workspace"));
$openCaseIE = false;
if (($arrayConfig = $memcache->get($keyMem)) === false) {
$conf->loadConfig($x, "USER_PREFERENCES", "", "", $_SESSION["USER_LOGGED"], "");
$arrayConfig = $conf->aConfig;
@@ -86,6 +88,7 @@ if (isset($_SESSION['__OPEN_APPLICATION_UID__'])) {
if (count($arrayDelIndex) === 1) {
//We will to open the case: one thread
$openCaseIE = true;
$defaultOption = '../cases/open?APP_UID=' . $openAppUid . '&DEL_INDEX=' . $arrayDelIndex[0] . '&action=' . $action;
} else {
//We will to show the list: more than one thread
@@ -117,6 +120,7 @@ $urlProxy = 'casesMenuLoader?action=getAllCountersEnterprise&r=';
$oHeadPublisher->assign('regionTreePanel', $regionTreePanel);
$oHeadPublisher->assign('regionDebug', $regionDebug);
$oHeadPublisher->assign('openCaseIE', $openCaseIE);
$oHeadPublisher->assign("defaultOption", $defaultOption); //User menu permissions
$oHeadPublisher->assign('urlProxy', $urlProxy); //sending the urlProxy to make
$oHeadPublisher->assign("_nodeId", isset($confDefaultOption) ? $confDefaultOption : "PM_USERS"); //User menu permissions
@@ -162,4 +166,4 @@ function getAuthorizationCode($client)
return $code;
}
/*----------------------------------********---------------------------------*/
/*----------------------------------********---------------------------------*/

View File

@@ -1,16 +1,18 @@
var PANEL_EAST_OPEN = false;
var centerPanel;
var setFlag;
var flagRefresh = true;
var debugVarTpl = new Ext.Template('<span style="font-size:11">{value}</span>');
var detailsText = '<i></i>';
var debugTriggersDetailTpl = new Ext.Template('<pre style="font-size:10px"><code>{code}</code></pre>');
var propStore;
var triggerStore;
var result;
var _action = '';
var PANEL_EAST_OPEN = false,
centerPanel,
setFlag,
flagRefresh = true,
debugVarTpl = new Ext.Template('<span style="font-size:11">{value}</span>'),
detailsText = '<i></i>',
debugTriggersDetailTpl = new Ext.Template('<pre style="font-size:10px"><code>{code}</code></pre>'),
propStore,
triggerStore,
result,
_action = '',
//@var treeMenuItemsLoaded -> added to flag the "treeMenuItems" tree, to ensure that its onload event is executed just once
var treeMenuItemsLoaded = false;
treeMenuItemsLoaded = false,
loader,
_BROWSER;
debugVarTpl.compile();
debugTriggersDetailTpl.compile();
@@ -97,34 +99,56 @@ Ext.onReady(function(){
'render': function(tp){}
}
});
var loader = treeMenuItems.getLoader();
loader.on("load", function() {
// it was added since the feature to reload a specific node of tree is now working
if (! treeMenuItemsLoaded) { // this section of code should be executed once
document.getElementById('casesSubFrame').src = defaultOption;
// check if a case was open directly
if (defaultOption.indexOf('open') > -1) {
//if it is, then update cases trees
updateCasesTree();
}
if(_nodeId !== ''){
treePanel1 = Ext.getCmp('tree-panel');
if(treePanel1)
node = treePanel1.getNodeById(_nodeId);
if(node) {
node.select();
if (_nodeId === 'CASES_START_CASE') {
updateCasesTree();
}
/**
* Gets the user client browser and its version
* @return (object)
*/
function getBrowserClient() {
var browsers = ["opera", "msie", "firefox", "opera", "safari", "trident"],
infoBrowser = navigator.userAgent.toLowerCase(),
versionBrowser,
currentBrowser = "";
for (var i = 0; i < browsers.length; i++) {
if ((currentBrowser === "") && (infoBrowser.indexOf(browsers[i]) !== -1)) {
currentBrowser = browsers[i];
versionBrowser = String(parseFloat(infoBrowser.substr(infoBrowser.indexOf(browsers[i]) + browsers[i].length + 1)));
return {name: currentBrowser, browser: currentBrowser, version: versionBrowser}
}
}
}
treeMenuItemsLoaded = true;
return false;
}
});
_BROWSER = getBrowserClient();
loader = treeMenuItems.getLoader();
loader.on("load", function () {
var treePanel1,
node;
// it was added since the feature to reload a specific node of tree is now working
if (!treeMenuItemsLoaded) { // this section of code should be executed once
if ((_BROWSER.name === "msie" || _BROWSER.name === "trident") && openCaseIE) {
parent.window.location.href = defaultOption;
} else {
document.getElementById('casesSubFrame').src = defaultOption;
// check if a case was open directly
if (defaultOption.indexOf('open') > -1) {
//if it is, then update cases trees
updateCasesTree();
}
if (_nodeId !== '') {
treePanel1 = Ext.getCmp('tree-panel');
if (treePanel1) {
node = treePanel1.getNodeById(_nodeId);
}
if (node) {
node.select();
if (_nodeId === 'CASES_START_CASE') {
updateCasesTree();
}
}
}
}
treeMenuItemsLoaded = true;
}
});
// set the root node
var root = new Ext.tree.AsyncTreeNode({
@@ -649,7 +673,7 @@ Ext.app.menuLoader = Ext.extend(Ext.ux.tree.XmlTreeLoader, {
//}
}else if(attr.title){
attr.text = Ext.util.Format.htmlDecode(attr.title);
if( attr.cases_count )
attr.text += ' (<label id="NOTIFIER_'+attr.id+'">' + attr.cases_count + '</label>)';

View File

@@ -32,13 +32,14 @@ function formatAMPM(date, initVal) {
return strTime;
};
function isBrowserIE(){
if ( (navigator.userAgent.indexOf("MSIE")!=-1) || (navigator.userAgent.indexOf("Trident")!=-1) ){
return true;
} else {
return false;
}
};
/**
* Verify if the browser is Internet Explorer
* @return {boolean}
*/
function isBrowserIE() {
var browserAgent = navigator.userAgent.toLowerCase();
return (browserAgent.indexOf("msie") !== -1) || (browserAgent.indexOf("trident") !== -1);
}
Ext.onReady(function(){
openToRevisePanel = function() {
@@ -157,7 +158,7 @@ Ext.onReady(function(){
tb.add(menu);
}
}
var olink = document.location.href;
if(olink.search("gmail") != -1){
Ext.getCmp('stepsMenu').hide();
@@ -229,7 +230,7 @@ Ext.onReady(function(){
if (node.attributes.url) {
//Set load event
if (navigator.userAgent.toLowerCase().indexOf("msie") != -1) {
if (navigator.userAgent.toLowerCase().indexOf("msie") !== -1 || navigator.userAgent.toLowerCase().indexOf("trident") !== -1) {
document.getElementById("openCaseFrame").onreadystatechange = function ()
{
if (document.getElementById("openCaseFrame").readyState == "complete") {