
/*	@ The following function is called from vaious places where we have to remove the leading/trailing  the blank spaces
*/
function RemoveLeadingTrailingSpace(s) {
	s = s.replace(/(^\s*)|(\s*$)/gi,"");
	s = s.replace(/[ ]{2,}/gi," ");
	s = s.replace(/\n /,"\n");
	return s;
}

function initializeDatePicker(id){

	$j(id).datepicker({
			changeMonth: true,
			changeYear: true,
			dateFormat:'yy-mm-dd'
		});

}
function closeStaticPanel(){
	$j("#staticpaneldiv").dialog('destroy');
}
function getPageByPath(path){
 var txt = new Ajax.Request(path, {
					method: 'get',
					evalScripts: true,
				    asynchronous: false
			  });
	var page = txt.transport.responseText;
	return page;
}
function getPageByPathAndParamsByGet(path,params){
	if(params==null || params =="undefined" ){
		params="";
	}
 var txt = new Ajax.Request(path, {
					method: 'get',
					evalScripts: true,
					parameters:params,
				    asynchronous: false
			  });
	var page = txt.transport.responseText;
	return page;
}
function getPanel(header,pWidth){
	var containerDiv = generateDynamicDiv();
	var dialogOpts = {
        title: header,
        modal: true,
		width:pWidth,
        autoOpen: true,
		bgiframe: true,
		show:'fast',
		hide:'slow',		
		close: function(){
			document.getElementById(containerDiv).innerHTML="";
		}	
	};
	var dialog = $j("#"+containerDiv).dialog(dialogOpts);    //end dialog
	return  containerDiv;
}
var staticPanelObj;
function getPanelStatic(filename,header,pWidth,pageParentDiv,roundallcorner,text){
	var containerDiv = "staticpaneldiv";
	var dialogOpts="";
	dialogOpts = {
        title: header,
        modal: true,
		width:pWidth,
        autoOpen: false,
		bgiframe: false,	
		asynchronous: false,
		show:'fast',
		hide:'slow',
		position:[200,50], //['right','top'] 
        open: function() {
			$j('body').css('overflow-x','hidden');
			var page="";
			if(text==null || text=="undefined"){
				page = getPageByPath(filename);
			}else{
				page=filename;
			}			
			document.getElementById(containerDiv).innerHTML=page;
			if(roundallcorner)	{
				allCornerRound("div#"+pageParentDiv);
			}
		},
		close: function(){
			document.getElementById(containerDiv).innerHTML="";
			$j("#"+containerDiv).dialog('destroy');
		}
	};
	var dialog = $j("#"+containerDiv).dialog(dialogOpts);    //end dialog	
	//$j("#titlabarpanel").removeClass("ui-widget-header");
	//alert($j("#"+containerDiv).parent.removeClass("ui-widget-header"))
	$j("#"+containerDiv).dialog('open');
	
	staticPanelObj=$j("#"+containerDiv);
	return $j("#"+containerDiv);
	
}
function getWaitPanel(){
	var containerDiv = "watingpaneldiv";
	var dialogOpts="";
	dialogOpts = {        
        modal: true,
        autoOpen:false,
		bgiframe: true,	
		asynchronous: true,
		stack:true,
		draggable:false,	
		position:'center', //['right','top'] 
        open: function() {
			$j("#panelDivs").removeClass("ui-dialog ui-widget ui-widget-content ui-corner-all  ui-draggable");
			$j("#titlebar").removeClass("ui-dialog-titlebar ui-widget-header ui-dialog-titlebar-close");
			$j("#close").removeClass("ui-dialog-titlebar-close");
			$j("#close").html("");				
			$j("#"+containerDiv).removeClass("ui-dialog-content ui-widget-content");			
			var page= "<div style='border:solid 0px red'><img src='common/images/loading.gif' /></div>";
			document.getElementById(containerDiv).innerHTML=page;				
		},
		close: function(){
			document.getElementById(containerDiv).innerHTML="";
			$j("#"+containerDiv).dialog('destroy');
		}
	};	
	var dialog = $j("#"+containerDiv).dialog(dialogOpts);    //end dialog		
	return $j("#"+containerDiv)
}
function staticPanelClose(){
	staticPanelObj.dialog("close");
}
function getModelPanel(filename,header,pWidth){
	var containerDiv = generateDynamicDiv();
	var dialogOpts = {
        title: header,
        modal: true,
		width:pWidth,
        autoOpen: false,
		bgiframe: true,
		show:'fast',
		hide:'slow',
		position:[200,50],		
        open: function() {
			$j("#"+containerDiv).load(filename);			
		}		
	};
	var dialog = $j("#"+containerDiv).dialog(dialogOpts);    //end dialog
	return dialog; 
}
function removeElement(divId) {
  var d = document.getElementById('panelDiv');
  var olddiv = document.getElementById(divId);
  if(d!=null && olddiv!=null)
	d.removeChild(olddiv);
}
function generateDynamicDiv(){
	var d=new Date();
	var dv = document.createElement('div');
	var div_id="panelDiv-"+d.getTime();
		dv.setAttribute('id',div_id);
	
	if(document.getElementById(div_id)==null){
		document.getElementById("panelDiv").appendChild(dv);
	}
	return div_id;
}

function getAjaxData(url, id, queryStr, async){
		if(queryStr == null){
			queryStr = '';
		}
		var data="";	
		$j.ajax({
				url: url,
				cache: false,
				type: 'GET',
				dataType: 'text',
				async: async,
				data: queryStr,
				success: function(html){						
					data = html;
				},
				error: function(respObj){						
						$j("#"+id).html(respObj.responseText);
				},
				beforeSend: function(){},
				complete: function(respObj){}  
		});
		return data;
}
function changeBackgroundColor(id,backgroundcolor,textcolor){
	if(backgroundcolor==null || backgroundcolor=="undefined"){
		return;
	}
	if(id !=null && id!="undefined" && document.getElementById(id)!=null){
		document.getElementById(id).style.background=backgroundcolor;
	}
	if(id !=null && id!="undefined" && document.getElementById(id)!=null){
		document.getElementById(id).style.color=textcolor;
	}	
}
/* Functions and variable related to Making the Div Round Corners.
   This is using the File curveyCorners.js in Framework commonjavascript.
*/
var small_div_corner = 2;
var medium_div_corner = 7;
var large_div_corner = 10;

function makeTopCornerRound(divId,topLeft,topRight){
	if(topLeft==null){
		topLeft=10;
	}
	if(topRight==null){
		topRight=10;
	}
	curvyCorners(RoundTopDiv(topLeft,topRight),divId);
}
function makeBottomCornerRound(divId,bottomLeft,bottomRight){
	if(bottomLeft==null){
		bottomLeft=10;
	}
	if(bottomRight==null){
		bottomRight=10;
	}
	curvyCorners(RoundBottomDiv(bottomLeft,bottomRight),divId);
}
function allCornerRound(divId,topLeft,topRight,bottomLeft,bottomRight){
	if(bottomLeft==null){
		bottomLeft=10;
	}
	if(bottomRight==null){
		bottomRight=10;
	}
	if(topLeft==null){
		topLeft=10;
	}
	if(topRight==null){
		topRight=10;
	}
	
	curvyCorners(RoundDiv(topLeft,topRight,bottomLeft,bottomRight),divId);
}
function RoundTopDiv(tl_temp,tr_temp){
	var top = {
	   tl: { radius: tl_temp},
	   tr: { radius: tr_temp },
	   bl: { radius: 0 },
	   br: { radius: 0 },
	   antiAlias: true
	}
	return top;
}

function RoundBottomDiv(bl_temp,br_temp){
 var bottom = {
    tl: { radius: 0},
    tr: { radius: 0 },
    bl: { radius: bl_temp },
    br: { radius: br_temp },
    antiAlias: true
 }
 return bottom;
}
function RoundDiv(tl_temp,tr_temp,bl_temp,br_temp){
	var settings = {
		tl: { radius: tl_temp },
		tr: { radius: tr_temp },
		bl: { radius: bl_temp },
		br: { radius: br_temp },
		antiAlias: true
	}
	return settings;
}
function RoundDivDefault(){
	var settings = {
		tl: { radius: 10 },
		tr: { radius: 10 },
		bl: { radius: 10 },
		br: { radius: 10 },
		antiAlias: true
	}
	return settings;
}
function onFousIn(id){
	$j(id).addClass("focus");
}
function onFousOut(id){
	$j(id).removeClass("focus");
}
function showFloatingDiv(id){	
	$j('#'+id).show("slow");
}
function hideFloatingDiv(id){
	$j('#'+id).hide();
}
function backgroundColorChange(id,color){
	document.getElementById(id).style.background=color;
}
