//long script - 1st param
			var queryStr=document.location.search.substring(1);
			var pairs=queryStr.split("&"); //split the queryStr with "&" ..as "&" is the usual delimiters for parameters in URL
			//var pairs=queryStr.split("?");
			var dmsourceParam="";
			for (var i=0;i<pairs.length;i++) {
				if (pairs[i].indexOf("pi_proj")>-1) {//locate dmsource
					dmsourceParam=pairs[i];
					break;// need to put break so that it will stop looping when it finds the first occurence of dmsource
				}	
			}
			/*if (dmsourceParam!="")
				//dmsourceParam= "&"+dmsourceParam;
				dmsourceParam= "?"+dmsourceParam;*/
			var invalidChars2="'\"<>'\\/&% ";
			var dmvalue="";
			if (dmsourceParam.indexOf("=")>0)
				dmvalue=dmsourceParam.substring((dmsourceParam.indexOf("=")+1),dmsourceParam.length);
			if (dmsourceParam!="" && dmvalue.length>0) {
				hasInvalid=false;
				for (var j=0;j<dmvalue.length;j++) {
					for (var k=0;k<invalidChars2.length;k++) {
						if (dmvalue.charAt(j)==invalidChars2.charAt(k)) {
							hasInvalid=true;
							break;
						}
					}
					if (hasInvalid)
						break;
				}
				if (hasInvalid==true) 
				dmsourceParam="";
				//else dmsourceParam= "?"+dmsourceParam;
				//else dmsourceParam= "&"+dmsourceParam;
				//nothing here.. see ccl below
			} else dmsourceParam="";				
			//long script - 1st param	
			
			//old code -2nd param
			var queryString=document.location.search.substring(1);
			var pairs2=queryString.split("&");
			//var pairs2=queryString.split("?");
			var pi_actParam="";
			for (var i=0;i<pairs2.length;i++) {
				if (pairs2[i].indexOf("pi_act")>-1) {//locate pi_act
					pi_actParam=pairs2[i];
					break;// need to put break so that it will stop looping when it finds the first occurence of pi_act
				}	
			}
			/*if (pi_actParam!="") {
				append=(dmsourceParam!="" ? "&" : "?"); //to check if dmsourceParam is there put "&" , else put "?" before pi_actParam
				pi_actParam= append+pi_actParam;
			}*/	
			//old code -2nd param
			var invalidCharsPiact="'\"<>'\\/&% ";
			var piactvalue="";
			if (pi_actParam.indexOf("=")>0)
				piactvalue=pi_actParam.substring((pi_actParam.indexOf("=")+1),pi_actParam.length);
			if (pi_actParam!="" && piactvalue.length>0) {
				hasInvalidPiact=false;
				for (var j=0;j<piactvalue.length;j++) {
					for (var k=0;k<invalidCharsPiact.length;k++) {
						if (piactvalue.charAt(j)==invalidCharsPiact.charAt(k)) {
							hasInvalidPiact=true;
							break;
						}
					}
					if (hasInvalidPiact)
						break;
				}
				if (hasInvalidPiact==true) 
				pi_actParam="";
				//else pi_actParam= "?"+pi_actParam;
				//else pi_actParam= "&"+pi_actParam;
				else pi_actParam= pi_actParam;
				//ccl
				/*append=(dmsourceParam!="" ? "&" : "?"); //to check if dmsourceParam is there put "&" , else put "?" before pi_actParam
				pi_actParam= append+pi_actParam;*/
			} else pi_actParam="";			
		
		//end long script -2nd param		
		
			if ((dmsourceParam == "") && (pi_actParam == "")) 
		{	dynamicLink = dmsourceParam+pi_actParam;		
			dynamicLink = "";		
		 	staticLink = "";	
			}	
		
			//to solve the problem of dynamicLink & staticLink being undefined, "this block, end this block" is repeated
			if (dmsourceParam != "") 
			{	dynamicLink = "&"+dmsourceParam+"&"+pi_actParam;		
			 	staticLink = "?"+dmsourceParam+"&"+pi_actParam;		
					if (pi_actParam == "") 
					{	dynamicLink = "&"+dmsourceParam;		
						staticLink = "?"+dmsourceParam;						
					}		
				
			if ((dmsourceParam == "") && (pi_actParam != ""))		
			{ 	dynamicLink = "&"+pi_actParam;		
			  	staticLink = "?"+pi_actParam;
				
			}
			
			}
			
			