BUG 0000 Rad Map Perdida de sesion cuando se ejecuta casos SOLVED

- Use another variable name, like __dynaformSVal__, __usernameLogged__ to prevent that someone overwrite the value.
- Rename variables to avoid duplicates.
This commit is contained in:
Hector Cortez
2013-05-16 10:39:51 -04:00
parent de31f17eaf
commit 93fd99b602
6 changed files with 11 additions and 11 deletions

View File

@@ -2905,7 +2905,7 @@ var changeStatusSubmitFields = function(newStatusTo) {
var validateForm = function(sRequiredFields) {
sFormName = document.getElementById('__DynaformName__');
if ((typeof(sFormName) != 'undefined' && sFormName != 'login') && (typeof(usernameLogged) != 'undefined' && usernameLogged != '') ) {
if ((typeof(sFormName) != 'undefined' && sFormName != 'login') && (typeof(__usernameLogged__) != 'undefined' && __usernameLogged__ != '') ) {
if (!sessionPersits()) {
showPromptLogin('session');
return false;
@@ -3288,7 +3288,7 @@ var saveAndRefreshForm = function(oObject) {
var sessionPersits = function() {
var rpc = new leimnud.module.rpc.xmlhttp({
url: '../services/sessionPersists',
args: 'dynaformRestoreValues=' + dynaformSVal,
args: 'dynaformRestoreValues=' + __dynaformSVal__,
async: false
});
rpc.make();
@@ -3369,7 +3369,7 @@ var verifyLogin = function() {
}
var rpc = new leimnud.module.rpc.xmlhttp({
url : '../login/authentication',
args: 'form[USR_USERNAME]=' + usernameLogged + '&form[USR_PASSWORD]=' + document.getElementById('thePassword').value.trim() + '&form[USR_LANG]=' + SYS_LANG
args: 'form[USR_USERNAME]=' + __usernameLogged__ + '&form[USR_PASSWORD]=' + document.getElementById('thePassword').value.trim() + '&form[USR_LANG]=' + SYS_LANG
});
rpc.callback = function(rpc) {
if (rpc.xmlhttp.responseText.indexOf('form[USR_USERNAME]') == -1) {

View File

@@ -1194,7 +1194,7 @@ vtext.failed();}else{vtext.passed();}}
dropdowns=grids[j].getElementsByTagName('select');for(i=0;i<dropdowns.length;i++){var vtext=new input(dropdowns[i]);if(dropdowns[i].getAttribute("pm:required")=="1"&&dropdowns[i].value==''){$label=dropdowns[i].name.split("[");$labelPM=dropdowns[i].getAttribute("pm:label");if($labelPM==''||$labelPM==null){$fieldName=$label[3].split("]")[0]+" "+$label[2].split("]")[0];}else{$fieldName=$labelPM+" "+$label[2].split("]")[0];}
fieldGridName=$label[1]+"["+$label[2]+"["+$label[3].split("]")[0];if(!notValidateThisFields.inArray(fieldGridName)){invalidFields.push($fieldName);}
vtext.failed();}else{vtext.passed();}}}
return(invalidFields);};var changeStatusSubmitFields=function(newStatusTo){var newStatus=newStatusTo=='disabled';var formElements=document.getElementsByTagName('form');for(var i=0;i<formElements.length;i++){var inputElements=formElements[i].getElementsByTagName('input');for(var j=0;j<inputElements.length;j++){if(typeof(inputElements[j].type)!='undefined'){if(inputElements[j].type=='submit'){inputElements[j].disabled=newStatus;}}}}};var validateForm=function(sRequiredFields){sFormName=document.getElementById('__DynaformName__');if((typeof(sFormName)!='undefined'&&sFormName!='login')&&(typeof(usernameLogged)!='undefined'&&usernameLogged!='')){if(!sessionPersits()){showPromptLogin('session');return false;}}
return(invalidFields);};var changeStatusSubmitFields=function(newStatusTo){var newStatus=newStatusTo=='disabled';var formElements=document.getElementsByTagName('form');for(var i=0;i<formElements.length;i++){var inputElements=formElements[i].getElementsByTagName('input');for(var j=0;j<inputElements.length;j++){if(typeof(inputElements[j].type)!='undefined'){if(inputElements[j].type=='submit'){inputElements[j].disabled=newStatus;}}}}};var validateForm=function(sRequiredFields){sFormName=document.getElementById('__DynaformName__');if((typeof(sFormName)!='undefined'&&sFormName!='login')&&(typeof(__usernameLogged__)!='undefined'&&__usernameLogged__!='')){if(!sessionPersits()){showPromptLogin('session');return false;}}
changeStatusSubmitFields('disabled');if(typeof(sRequiredFields)!='object'||sRequiredFields.indexOf("%27")>0){sRequiredFields=sRequiredFields.replace(/%27/gi,'"');}
if(typeof(sRequiredFields)!='object'||sRequiredFields.indexOf("%39")>0){sRequiredFields=sRequiredFields.replace(/%39/gi,"'");}
aRequiredFields=eval(sRequiredFields);var sMessage='';var invalid_fields=Array();var fielEmailInvalid=Array();for(var i=0;i<aRequiredFields.length;i++){aRequiredFields[i].label=(aRequiredFields[i].label=='')?aRequiredFields[i].name:aRequiredFields[i].label;if(!notValidateThisFields.inArray(aRequiredFields[i].name)){if(typeof aRequiredFields[i].required!='undefined'){required=aRequiredFields[i].required;}
@@ -1232,9 +1232,9 @@ else{var arrayForm=document.getElementsByTagName("form");var inputAux;var id="";
var arrayLink=frm.getElementsByTagName("a");for(i2=0;i2<=arrayLink.length-1;i2++){var link=arrayLink[i2];if(typeof link.id!="undefined"&&link.id!=""&&link.id!="form[DYN_BACKWARD]"&&link.id!="form[DYN_FORWARD]"){var strHtml=link.parentNode.innerHTML;strHtml=stringReplace("\\x0A","",strHtml);strHtml=stringReplace("\\x0D","",strHtml);strHtml=stringReplace("\\x09","",strHtml);if(/^.*pm:field.*$/.test(strHtml)){id=link.id+"_";if(!document.getElementById(id)){var strAux=link.id.replace("form[","");strAux=strAux.substring(0,strAux.length-1);inputAux=document.createElement("input");inputAux.type="hidden";inputAux.id=id;inputAux.name=link.id;inputAux.value=link.href;frm.appendChild(inputAux);inputAux=document.createElement("input");inputAux.type="hidden";inputAux.id=id+"label";inputAux.name="form["+strAux+"_label]";inputAux.value=link.innerHTML;frm.appendChild(inputAux);}}}}}
return true;}};var getObject=function(sObject){var i;var oAux=null;var iLength=__aObjects__.length;for(i=0;i<iLength;i++){oAux=__aObjects__[i].getElementByName(sObject);if(oAux){return oAux;}}
return oAux;};var saveAndRefreshForm=function(oObject){if(oObject){oObject.form.action+='&_REFRESH_=1';oObject.form.submit();}
else{var oAux=window.document.getElementsByTagName('form');if(oAux.length>0){oAux[0].action+='&_REFRESH_=1';oAux[0].submit();}}};var sessionPersits=function(){var rpc=new leimnud.module.rpc.xmlhttp({url:'../services/sessionPersists',args:'dynaformRestoreValues='+dynaformSVal,async:false});rpc.make();var response=rpc.xmlhttp.responseText.parseJSON();return response.status;};var showPromptLogin=function(lastAction){lastActionPerformed=lastAction;promptPanel=new leimnud.module.panel();promptPanel.options={statusBarButtons:[{value:_('LOGIN')}],position:{center:true},size:{w:300,h:130},control:{close:false,resize:false},fx:{modal:true}};promptPanel.setStyle={content:{padding:10,paddingBottom:2,textAlign:'left',paddingLeft:50,backgroundRepeat:'no-repeat',backgroundPosition:'10 50%',backgroundColor:'transparent',borderWidth:0}};promptPanel.make();promptPanel.addContent(_('ID_DYNAFORM_EDITOR_LOGIN_AGAIN'));promptPanel.addContent('<br />');var thePassword=$dce('input');thePassword.type='password';thePassword.id='thePassword';leimnud.dom.setStyle(thePassword,{font:'normal 8pt Tahoma,MiscFixed',color:'#000',width:'100%',marginTop:3,backgroundColor:'white',border:'1px solid #919B9C'});promptPanel.addContent(thePassword);thePassword.focus();thePassword.onkeyup=function(evt)
else{var oAux=window.document.getElementsByTagName('form');if(oAux.length>0){oAux[0].action+='&_REFRESH_=1';oAux[0].submit();}}};var sessionPersits=function(){var rpc=new leimnud.module.rpc.xmlhttp({url:'../services/sessionPersists',args:'dynaformRestoreValues='+__dynaformSVal__,async:false});rpc.make();var response=rpc.xmlhttp.responseText.parseJSON();return response.status;};var showPromptLogin=function(lastAction){lastActionPerformed=lastAction;promptPanel=new leimnud.module.panel();promptPanel.options={statusBarButtons:[{value:_('LOGIN')}],position:{center:true},size:{w:300,h:130},control:{close:false,resize:false},fx:{modal:true}};promptPanel.setStyle={content:{padding:10,paddingBottom:2,textAlign:'left',paddingLeft:50,backgroundRepeat:'no-repeat',backgroundPosition:'10 50%',backgroundColor:'transparent',borderWidth:0}};promptPanel.make();promptPanel.addContent(_('ID_DYNAFORM_EDITOR_LOGIN_AGAIN'));promptPanel.addContent('<br />');var thePassword=$dce('input');thePassword.type='password';thePassword.id='thePassword';leimnud.dom.setStyle(thePassword,{font:'normal 8pt Tahoma,MiscFixed',color:'#000',width:'100%',marginTop:3,backgroundColor:'white',border:'1px solid #919B9C'});promptPanel.addContent(thePassword);thePassword.focus();thePassword.onkeyup=function(evt)
{var evt=(window.event)?window.event:evt;var key=(evt.which)?evt.which:evt.keyCode;if(key==13){verifyLogin();}}.extend(this);promptPanel.fixContent();promptPanel.elements.statusBarButtons[0].onmouseup=verifyLogin;};var verifyLogin=function(){if(document.getElementById('thePassword').value.trim()==''){alert(_('ID_WRONG_PASS'));return;}
var rpc=new leimnud.module.rpc.xmlhttp({url:'../login/authentication',args:'form[USR_USERNAME]='+usernameLogged+'&form[USR_PASSWORD]='+document.getElementById('thePassword').value.trim()+'&form[USR_LANG]='+SYS_LANG});rpc.callback=function(rpc){if(rpc.xmlhttp.responseText.indexOf('form[USR_USERNAME]')==-1){promptPanel.remove();lastActionPerformed='';}else{alert(_('ID_WRONG_PASS'));}}.extend(this);rpc.make();};var saveForm=function(oObject,actionParameter){if(oObject){var actionUrl=actionParameter||oObject.form.action.replace('cases_SaveData','saveForm');ajax_post(actionUrl,oObject.form,'POST');}
var rpc=new leimnud.module.rpc.xmlhttp({url:'../login/authentication',args:'form[USR_USERNAME]='+__usernameLogged__+'&form[USR_PASSWORD]='+document.getElementById('thePassword').value.trim()+'&form[USR_LANG]='+SYS_LANG});rpc.callback=function(rpc){if(rpc.xmlhttp.responseText.indexOf('form[USR_USERNAME]')==-1){promptPanel.remove();lastActionPerformed='';}else{alert(_('ID_WRONG_PASS'));}}.extend(this);rpc.make();};var saveForm=function(oObject,actionParameter){if(oObject){var actionUrl=actionParameter||oObject.form.action.replace('cases_SaveData','saveForm');ajax_post(actionUrl,oObject.form,'POST');}
else{var oAux=window.document.getElementsByTagName('form');if(oAux.length>0){var actionUrl=actionParameter||oAux[0].action.replace('cases_SaveData','saveForm');ajax_post(actionUrl,oAux[0],'POST');}}};var validateURL=function(url){var regexp=/http?s?:\/\/([-\w\.]+)+(:\d+)?(\/([\w/_\.]*(\?\S+)?)?)?/;if(regexp.test(url)){return true;}else{return false;}};var saveAndRedirectForm=function(oObject,oLocation){saveForm(oObject);if(validateURL(oLocation)){if(typeof(parent)!="undefined"){parent.location.href=oLocation;}else{document.location.href=oLocation;}}};var removeRequiredById=function(sFieldName){if(!notValidateThisFields.inArray(sFieldName)){notValidateThisFields.push(sFieldName);var oAux=document.getElementById('__notValidateThisFields__');if(oAux){oAux.value=notValidateThisFields.toJSONString();}}};var enableRequiredById=function(sFieldName){if(notValidateThisFields.inArray(sFieldName)){var i;var aAux=[];for(i=0;i<notValidateThisFields.length;i++){if(notValidateThisFields[i]!=sFieldName){aAux.push(notValidateThisFields[i]);}}
notValidateThisFields=aAux;var oAux=document.getElementById('__notValidateThisFields__');if(oAux){oAux.value=notValidateThisFields.toJSONString();}}};function dynaformVerifyFieldName(){pme_validating=true;setTimeout('verifyFieldName1();',0);return true;}
function verifyFieldName1(){if(getField('PME_VALIDATE_NAME').value=='__error_session__'){showPrompt('refreshDynaformEditor');return;}

View File

@@ -90,7 +90,7 @@ class headPublisher
{
$this->addScriptFile("/js/maborak/core/maborak.js");
$this->translationsFile = "/js/ext/translation." . SYS_LANG . ".js";
$this->addScriptCode(' var usernameLogged = "' . (isset($_SESSION['USR_USERNAME']) ? $_SESSION['USR_USERNAME'] : '') . '";var SYS_LANG = "' . SYS_LANG . '";');
$this->addScriptCode(' var __usernameLogged__ = "' . (isset($_SESSION['USR_USERNAME']) ? $_SESSION['USR_USERNAME'] : '') . '";var SYS_LANG = "' . SYS_LANG . '";');
}
public function &getSingleton()

View File

@@ -235,7 +235,7 @@ class dynaformEditor extends WebResource
var DYNAFORM_URL="' . $Parameters['URL'] . '";
leimnud.event.add(window,"load",function(){ loadEditor(); });
');
$oHeadPublisher->addScriptCode(' var jsMeta;var usernameLogged = "' . (isset($_SESSION['USR_USERNAME']) ? $_SESSION['USR_USERNAME'] : '') . '";var SYS_LANG = "' . SYS_LANG . '";');
$oHeadPublisher->addScriptCode(' var jsMeta;var __usernameLogged__ = "' . (isset($_SESSION['USR_USERNAME']) ? $_SESSION['USR_USERNAME'] : '') . '";var SYS_LANG = "' . SYS_LANG . '";');
$oHeadPublisher->addScriptCode('var dynaformEditorParams = \'' . serialize($Parameters) . '\';');
G::RenderPage("publish", 'blank');
}

View File

@@ -28,7 +28,7 @@ var verifyLogin = function() {
}
var rpc = new leimnud.module.rpc.xmlhttp({
url : '../login/authentication',
args: 'form[USR_USERNAME]=' + usernameLogged + '&form[USR_PASSWORD]=' + document.getElementById('thePassword').value.trim() + '&form[USR_LANG]=' + SYS_LANG
args: 'form[USR_USERNAME]=' + __usernameLogged__ + '&form[USR_PASSWORD]=' + document.getElementById('thePassword').value.trim() + '&form[USR_LANG]=' + SYS_LANG
});
rpc.callback = function(rpc) {
if (rpc.xmlhttp.responseText.indexOf('form[USR_USERNAME]') == -1) {
@@ -106,7 +106,7 @@ var showPrompt = function(lastAction) {
promptPanel.options={
statusBarButtons:[{value: _('LOGIN')}],
position:{center:true},
size:{w:300,h:110},
size:{w:300,h:125},
control:{
close:false,
resize:false

View File

@@ -184,7 +184,7 @@ $aRequiredFields = array(
'INDEX' => $Fields['APP_DATA']['INDEX'],
'APP_DATA' => $Fields['APP_DATA']
);
$oHeadPublisher->addScriptCode('var dynaformSVal = \'' . serialize($aRequiredFields) . '\';');
$oHeadPublisher->addScriptCode('var __dynaformSVal__ = \'' . serialize($aRequiredFields) . '\';');
try {
//Add content content step - Start