/* Function Library is used to support the functions */
if (! Mons) 
{
	var Mons={};
}

if (! Mons.BASE_SERVER)
{
	Mons.BASE_SERVER='monsterindia.com';
}

var MJS = {};

// YahooAjaxSupport Function Start
MJS.AJAX = {};
	// Function used to create Post Data
	MJS.AJAX.createPostStr = function ( postData ) 
	{
	    var postDataArr = [];
	    for (var i in postData) 
		{
	        var str = i + '=' + encodeURIComponent(postData[i]);
	        postDataArr.push(str);
	    }
	    var postDataStr = postDataArr.join('&');
	
	    return postDataStr;
	}

	MJS.AJAX.createQueryForForm = function ( obj )
	{
		// Checking mandatory parameters
		if (! obj.FORM_OBJ) {return '';}

		var formObj = obj.FORM_OBJ;
		var extraParam = obj.EXTRA_PARAM;	// We want to send some other param also with the query str of req

	    var elements = formObj.elements;
	    var pairs = new Array();

		for ( var i in extraParam )
		{
			pairs.push(i + "=" + encodeURIComponent(extraParam[i]));
		}
	
	    for (var i = 0; i < elements.length; i++)
		{
			if ( elements[i].type == 'select-multiple' )		// In Multiple Selection there can be more than on value
			{
				for ( var cnt = 0; cnt < elements[i].options.length; cnt++ )
				{
					if (elements[i].options[cnt].selected)
					{
						if ( (name=elements[i].name) && (value=elements[i].options[cnt].value) )
						{
	            			pairs.push(name + "=" + encodeURIComponent(value));
						}
					}
				}
	
			}
	        else if ( (elements[i].type == 'checkbox') || (elements[i].type == 'radio') )
	        {
	            if ( elements[i].checked)		// If it is checked / selected only then it will be pushed
	            {
	                if ( (name=elements[i].name) && (value=elements[i].value) )
	                {
	                    pairs.push(name + "=" + encodeURIComponent(value));
	                }
	            }
	        }
			else if ((name = elements[i].name) && (value = elements[i].value))
			{
	            pairs.push(name + "=" + encodeURIComponent(value));
			}
	    }
	    return pairs.join("&");
	}
// YahooAjaxSupport Function End

// SKR ( seeker ) Function Start
MJS.SKR = {}; 
	MJS.SKR.oAlertOverLay = null,
	MJS.SKR.focusObjAfterAlert = null,
	// Function used to create Alert Boxes
    MJS.SKR.showAlertMsg = function ( obj )
    {
		// If only string is passed to function then we'll make the object
		if ( typeof(obj) != 'object' )
		{
			obj = { MSG: obj };
		}
		
        var MSG = ( obj.MSG ? obj.MSG : '' );
        var ID = ( obj.ID ? obj.ID : 'alertMsgID' );	// Error message div ID
		var focusObj = ( obj.FOCUS_OBJ ? obj.FOCUS_OBJ : 0 );

		if (! document.getElementById(ID))
		{
        	// Creating Elementing and appending to the body
        	var alertMsgDiv = document.createElement('div');
        	alertMsgDiv.setAttribute('id', ID);

        	document.body.appendChild(alertMsgDiv);
			document.getElementById(ID).style.position = 'absolute';
		}

		var objFocusScript = '';
		if ( focusObj )
		{
			MJS.SKR.focusObjAfterAlert = focusObj;
			objFocusScript = 'MJS.SKR.focusObjAfterAlert.focus();';
		}
		document.getElementById(ID).innerHTML = '<table width="518" cellspacing="0" cellpadding="0" border="0"> <tbody><tr> <td width="11" valign="bottom" style="background: transparent url(http://media.'+Mons.BASE_SERVER+'/v2/seeker/main_imgs.gif) no-repeat scroll -96px -93px; "><img width="11" height="25" src="http://media.'+Mons.BASE_SERVER+'/v2/seeker/trans.gif"/></td> <td width="100%" class="heading_1 bold" style="background: transparent url(http://media.'+Mons.BASE_SERVER+'/v2/seeker/all_bgs.gif) repeat-x scroll left -93px;  padding-left: 10px; padding-right: 10px;"><div style="float: right; padding-top: 4px;"><a onclick="MJS.HTML.fadeOrActiveBgPage({ACTION: \'active\'}); '+objFocusScript+'" href="javascript:void(0);"><img id="alertOkButton" width="10" height="10" border="0" src="http://media.'+Mons.BASE_SERVER+'/v2/seeker/icon_close.gif"/></a></div> Alert<img width="1" height="1" src="http://media.'+Mons.BASE_SERVER+'/v2/seeker/trans.gif"/></td> <td width="11" valign="bottom" style="background: transparent url(http://media.'+Mons.BASE_SERVER+'/v2/seeker/main_imgs.gif) no-repeat scroll -116px -93px; "><img width="11" height="25" src="http://media.'+Mons.BASE_SERVER+'/v2/seeker/trans.gif"/></td> </tr> <tr> <td valign="bottom" style="background: transparent url(http://media.'+Mons.BASE_SERVER+'/v2/seeker/all_bgs.gif) repeat-x scroll left -120px; " colspan="3"><img width="11" vspace="0" hspace="0" height="8" align="left" style="background: transparent url(http://media.'+Mons.BASE_SERVER+'/v2/seeker/main_imgs.gif) no-repeat scroll -180px 0px; " src="http://media.'+Mons.BASE_SERVER+'/v2/seeker/trans.gif"/><img width="11" vspace="0" hspace="0" height="8" align="right" style="background: transparent url(http://media.'+Mons.BASE_SERVER+'/v2/seeker/main_imgs.gif) no-repeat scroll -193px -27px; " src="http://media.'+Mons.BASE_SERVER+'/v2/seeker/trans.gif"/></td> </tr> <tr> <td valign="top" height="150" style="padding-bottom: 10px;" class="bg_white" colspan="3"><table width="100%" cellspacing="0" cellpadding="0" border="0"> <tbody><tr> <td style="background: transparent url(http://media.'+Mons.BASE_SERVER+'/v2/seeker/all_bgs.gif) repeat-x scroll left -196px; "> <img src="http://media.'+Mons.BASE_SERVER+'/v2/seeker/trans.gif" height="7"/> </td> </tr> </tbody></table> <br/> <br/> <br/> <table width="40%" cellspacing="0" cellpadding="0" border="0" align="center"> <tbody><tr><td align="center" valign="top"><img width="21" height="22" src="http://media.'+Mons.BASE_SERVER+'/v2/seeker/icon_error2_trans.gif"/></td><td style="padding-left: 15px;" class="txt_red" nowrap>'+MSG+'</td> </tr> </tbody></table>            </td> </tr> <tr> <td valign="bottom" style="background: transparent url(http://media.'+Mons.BASE_SERVER+'/v2/seeker/main_imgs.gif) no-repeat scroll -96px -124px; "><img width="11" height="6" src="http://media.'+Mons.BASE_SERVER+'/v2/seeker/trans.gif"/></td> <td valign="bottom" class="bg_white"><img width="1" height="1" src="http://media.'+Mons.BASE_SERVER+'/v2/seeker/trans.gif"/></td> <td valign="bottom" style="background: transparent url(http://media.'+Mons.BASE_SERVER+'/v2/seeker/main_imgs.gif) no-repeat scroll -116px -124px; "><img width="11" height="6" src="http://media.'+Mons.BASE_SERVER+'/v2/seeker/trans.gif"/></td> </tr> </tbody></table>';

		if ( MJS.SKR.oAlertOverLay == null )
		{
	        MJS.SKR.oAlertOverLay = new YAHOO.widget.Overlay(ID, { fixedcenter:true, visible:false, zIndex:1000 } );
		}

        MJS.SKR.oAlertOverLay.render();
    	YAHOO.util.Event.addListener("alertOkButton", "click", MJS.SKR.oAlertOverLay.hide, MJS.SKR.oAlertOverLay, true);
        MJS.SKR.oAlertOverLay.show();
		MJS.HTML.fadeOrActiveBgPage({ACTION: 'fade'});
		document.getElementById('alertOkButton').focus();
        //return false;
    }

	// Function : Used to create div based error message
	MJS.SKR.showAlertOnDHTML = function ( obj )
	{
        var MSG = ( obj.MSG ? obj.MSG : '' );
        var SUCCESS = ( obj.SUCCESS ? obj.SUCCESS : 0 );
        var ID = obj.ID; 
		
		// If Message area is not defined the return without showing message
		if (! document.getElementById(ID))
		{
			return false;
		}
		
		var promptMsgHtml = '';
		var msgClass = '';
		if ( SUCCESS )
		{
			msgClass = 'border_green txt_green bg_green';
			promptMsgHtml = '<div style="width: 30px; float: left;"><img align="left" style="padding-right: 10px; padding-bottom: 5px;" src="http://media.'+Mons.BASE_SERVER+'/v2/seeker/icon_tick_trans.gif"/></div><div style="text-align: left; float: left; padding-top: 3px; padding-bottom: 3px;">'+ MSG +'</div>';
		}
		else
		{
			msgClass = 'border_red bg_pink';
			// Display Error image
			promptMsgHtml = '<div style="width:30px; float:left;"><img src="http://media.'+Mons.BASE_SERVER+'/v2/seeker/icon_error2_trans.gif"  width="20" height="20" /></div><div style="text-align: left; float: left; padding-top: 3px; padding-bottom: 3px;">'+ MSG +'</div>';
		}
		var msgHTML = '<table border="0" align="center" cellpadding="2" cellspacing="0" width="90%"> <tr> <td height="30" class="'+msgClass+'" style="padding-left:5px;">'+promptMsgHtml+'</td> </tr> </table><br>';

		document.getElementById(ID).innerHTML = msgHTML;
        //return false;
	}

	MJS.SKR.OverlayDetail = {};	// will contain TagName and corresponding URL

	// This function set the HTML return by url ( after get or post ) in a DIV or any other TAG
	MJS.SKR.loadPageContentInTag = function ( obj )
	{
		var url 	 = obj.URL;	// URL to hit
		var tagID	 = obj.TAG_ID;	// After hitting place the content in the div
		var method	 = ( (obj.METHOD && obj.METHOD != 'POST') ? 'GET' : 'POST');	// Method to fetch Data ( GET or POST );
		var postData = ( obj.POST_DATA_OBJ ? obj.POST_DATA_OBJ : {} ); // Post data object if want to post the data
		//var Cache 	 = ( (obj.CACHE && obj.CACHE != null) ? obj.CACHE : 1 );	// For Static Pages
		var Cache 	 = ( (obj.CACHE != null) ? obj.CACHE : 1 );	// For Static Pages
		var isCloseButton 	 = ( (obj.IS_CLOSE_BUTTON != null) ? obj.IS_CLOSE_BUTTON : 1 );	

		var overLayOnload = ( (obj.OVERLAY_ONLOAD) ? obj.OVERLAY_ONLOAD : false );

		// popupTitle will be used if it will be shown in Overlay format
		var showInOverlayFmt = ( (obj.SHOW_IN_OLAY_FMT && obj.SHOW_IN_OLAY_FMT != null) ? obj.SHOW_IN_OLAY_FMT : 1 );
		var popupTitle	 = ( (obj.POPUP_TITLE) ? obj.POPUP_TITLE : 'MonsterIndia.com' );	// Title to be displayed on popup
		var onCloseActiveBg  = ( (obj.ON_CLOSE_POPUP_ACTIVE_BG) ? 1 : 0 );
		var vScrollOn = ((obj.IS_VSCROLL_ON) ? obj.IS_VSCROLL_ON : 0);
		var vScrollHt = ( (obj.VSCROLL_HEIGHT) ? obj.VSCROLL_HEIGHT : 0 );
		var alertMsgTagId = ( (obj.ALERT_MSG_TAG_ID) ? obj.ALERT_MSG_TAG_ID : false );

		// Verifying Data
		if (! url) { return; }
		if (! document.getElementById(tagID)) { return; }


		if ( onCloseActiveBg ) { MJS.HTML.fadeOrActiveBgPage({ACTION: 'fade'}); }

		var postDataStr;
		if ( method == 'POST' ) { postDataStr = MJS.AJAX.createPostStr(postData) };


		// If Cache flag is on the display the page already fetched
		var loadPageAgain = true;
		if ( Cache )
		{
			var tagInnerHTML = MJS.UTILS.trimLeadingTrailingSpaces(document.getElementById(tagID).innerHTML);
			if (tagInnerHTML != '')	// Check Wheater previous req content was from same url or not
			{
				if (! MJS.SKR.OverlayDetail[tagID+'']) { MJS.SKR.OverlayDetail[tagID+''] = {}; }
				if (MJS.SKR.OverlayDetail[tagID+''].URL == url)
				{
					loadPageAgain = false;
				}
			}
		}

		if (! loadPageAgain) { return; }	// If loadPageAgain is false then don't req again
		/////////////////////////////////////////////////////////////////////

		callback    =   {
    				    success: function(o)
    				    		 {
    				    		     if(o.responseText != undefined)
    				    		     {
									 	var popHTML = o.responseText;
										if ( showInOverlayFmt )
										{
											popHTML = MJS.SKR.getOverLayFormat( {TITLE: popupTitle, DESC: popHTML, TAG_ID: tagID, ON_CLOSE_POPUP_ACTIVE_BG: onCloseActiveBg, IS_VSCROLL_ON: vScrollOn, VSCROLL_HEIGHT: vScrollHt, ALERT_MSG_TAG_ID: alertMsgTagId, IS_CLOSE_BUTTON: isCloseButton} );
										}
										if ( document.getElementById(tagID) )
										{
											var ele = document.getElementById(tagID);
											ele.innerHTML = popHTML;

											// After rendering the HTML ( Call the function for Overlay Onload 
											if ( overLayOnload )
											{
												overLayOnload();
											}
											//

											// Setting Values for Caching
											if (! MJS.SKR.OverlayDetail[tagID+'']) { MJS.SKR.OverlayDetail[tagID+''] = {}; }
											MJS.SKR.OverlayDetail[tagID+''].URL = url;
											MJS.SKR.registerCloseOverLay({TAG_ID: tagID, ADD_EVENT_TO_ID: tagID+"_close_popup"});
											MJS.SKR.registerCloseOverLay({TAG_ID: tagID, ADD_EVENT_TO_ID: tagID+"_close_other"});
											//

											// Align Center overlay
											MJS.SKR.OverlayDetail[tagID+''].OBJ_OVERLAY.center();
											//
										}
    				    		     }
    				    		 },
    				    failure: function(o)
    				    		 {
    				    		     alert('Request Not Completed');
    				    		 },
    				    cache: false
    				};
		document.getElementById(tagID).innerHTML = MJS.SKR.getLoadingHTML({TITLE: ''});
		var request = YAHOO.util.Connect.asyncRequest('POST',url,callback,postDataStr);
	}

	MJS.SKR.getLoadingHTML = function ( obj )
	{
		var title = obj.TITLE;

		return MJS.SKR.getOverLayFormat({TITLE: title, DESC: '<table width="50%" border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td valign="top"><img src="http://media.'+Mons.BASE_SERVER+'/v2/seeker/icon_loading.gif"  width="32" height="32" /></td> <td style="padding-left:15px;"> <b>Loading...</b></td> </tr> </table>'});
	}


	MJS.SKR.getOverLayFormat = function ( obj )
	{
		var title = obj.TITLE;
		var desc  = obj.DESC;
		var tagID = obj.TAG_ID;	// tagID is used to make cross button
		var onCloseActiveBg  = ( (obj.ON_CLOSE_POPUP_ACTIVE_BG) ? 1 : 0 );
		var vScrollOn = ((obj.IS_VSCROLL_ON) ? obj.IS_VSCROLL_ON : 0);
		var vScrollHt = ( (obj.VSCROLL_HEIGHT) ? obj.VSCROLL_HEIGHT : 0 );
		var alertMsgTagId = ( (obj.ALERT_MSG_TAG_ID) ? obj.ALERT_MSG_TAG_ID : false );
		var isCloseButton 	 = ( (obj.IS_CLOSE_BUTTON != null) ? obj.IS_CLOSE_BUTTON : 1 );	

		if ( vScrollOn )
		{
			var vScrollHeightStyle = '';
			if ( vScrollHt )
			{
				vScrollHeightStyle = 'height: '+vScrollHt+';';
			}

			desc = '<div style="overflow: auto; overflow-x: hidden; margin-left: 10px; margin-right: 10px;'+vScrollHeightStyle+'"/>'+desc+'</div>';
		}

		var alertMsgTag = '';
		if ( alertMsgTagId )
		{
			alertMsgTag = '<div id="'+alertMsgTagId+'" style="width:100%;"></div>';
		}
		var crossButton = '';
		if ( isCloseButton )
		{
			if ( tagID )
			{
				var activeBGFunCall = ( (onCloseActiveBg) ? 'MJS.HTML.fadeOrActiveBgPage({ACTION: \'active\'});' : '' );
				crossButton = '<div style="float:right; padding-top:4px;"><a id="'+tagID+'_close_popup" onclick="'+activeBGFunCall+'" style="cursor:pointer"><img src="http://media.'+Mons.BASE_SERVER+'/v2/seeker/icon_close.gif" width="10" height="10" border="0"></a></div>';
			}
		}

		var retHTML = '<table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="11" valign="bottom" style="background:url(http://media.'+Mons.BASE_SERVER+'/v2/seeker/main_imgs.gif) -96px -93px no-repeat;"><img src="http://media.'+Mons.BASE_SERVER+'/v2/seeker/trans.gif" width="11" height="25" /></td> <td width="100%" style="background:url(http://media.'+Mons.BASE_SERVER+'/v2/seeker/all_bgs.gif) repeat-x left -93px; padding-left:10px; padding-right:10px;" class="heading_1 bold">'+crossButton+'<img src="http://media.'+Mons.BASE_SERVER+'/v2/seeker/trans.gif" width="1" height="1" />'+title+' </td> <td width="11"  valign="bottom" style="background:url(http://media.'+Mons.BASE_SERVER+'/v2/seeker/main_imgs.gif) -116px -93px no-repeat;"><img src="http://media.'+Mons.BASE_SERVER+'/v2/seeker/trans.gif" width="11" height="25" /></td> </tr> <tr> <td colspan="3" valign="bottom" style="background:url(http://media.'+Mons.BASE_SERVER+'/v2/seeker/all_bgs.gif) repeat-x left -120px;"><img src="http://media.'+Mons.BASE_SERVER+'/v2/seeker/trans.gif" width="11" height="8" hspace="0" vspace="0" align="left" style="background:url(http://media.'+Mons.BASE_SERVER+'/v2/seeker/main_imgs.gif) no-repeat -180px 0px;" /><img src="http://media.'+Mons.BASE_SERVER+'/v2/seeker/trans.gif" width="11" height="8" hspace="0" vspace="0" align="right" style="background:url(http://media.'+Mons.BASE_SERVER+'/v2/seeker/main_imgs.gif) no-repeat -193px -27px;" /></td> </tr> <tr> <td height="200" colspan="3" valign="top" class="bg_white" style="padding-bottom:10px;"><table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td style="background:url(http://media.'+Mons.BASE_SERVER+'/v2/seeker/all_bgs.gif) repeat-x left -196px;">&nbsp;</td> </tr> </table> '+ alertMsgTag + desc+'</td> </tr> <tr> <td valign="bottom" style="background:url(http://media.'+Mons.BASE_SERVER+'/v2/seeker/main_imgs.gif) -96px -124px no-repeat;"><img src="http://media.'+Mons.BASE_SERVER+'/v2/seeker/trans.gif" width="11" height="6" /></td> <td valign="bottom" class="bg_white"><img src="http://media.'+Mons.BASE_SERVER+'/v2/seeker/trans.gif" width="1" height="1"></td> <td valign="bottom" style="background:url(http://media.'+Mons.BASE_SERVER+'/v2/seeker/main_imgs.gif) -116px -124px no-repeat;"><img src="http://media.'+Mons.BASE_SERVER+'/v2/seeker/trans.gif" width="11" height="6" /></td> </tr> </table>'; 
		return retHTML;

	}

	MJS.SKR.createOverlay = function ( obj )
	{
		var tagID = obj.TAG_ID;
		var overLayOptions = obj.OVERLAY_OPTIONS; // Must be and HREF
		var openOnClick = MJS.UTILS.makeArrIfNotArr(obj.OPEN_ON_CLICK_IDS);	// ArrayRef
		var closeOnClick = MJS.UTILS.makeArrIfNotArr(obj.CLOSE_ON_CLICK_IDS);	// ArrayRef

		// Check for mandatory values
		if (! document.getElementById(tagID)) 
		{
        	var createdEle = document.createElement('div');
        	createdEle.setAttribute('id', tagID);
        	document.body.appendChild(createdEle);
			document.getElementById(tagID).style.position = 'absolute';
		}

		// Setting up default values
		if (! overLayOptions) { overLayOptions = { fixedcenter:true, visible:false }; }
		if (! openOnClick ) { openOnClick = []; }
		if (! closeOnClick) { closeOnClick = []; }

		// If Tag ID is not defined then initilize it
		if (! MJS.SKR.OverlayDetail[tagID+'']) { MJS.SKR.OverlayDetail[tagID+''] = {}; }

		MJS.SKR.OverlayDetail[tagID+''].OBJ_OVERLAY = new YAHOO.widget.Overlay(tagID, overLayOptions );
		MJS.SKR.OverlayDetail[tagID+''].OBJ_OVERLAY.cfg.setProperty("zIndex",'801');

		//MJS.SKR.OverlayDetail[tagID+''].OBJ_OVERLAY.showEvent.subscribe(function() { MJS.SKR.OverlayDetail[tagID+''].OBJ_OVERLAY.center(); });
		//MJS.SKR.OverlayDetail[tagID+''].OBJ_OVERLAY.cfg.setProperty("xy",[200,100]);

		MJS.SKR.OverlayDetail[tagID+''].OBJ_OVERLAY.render();

		for ( var i in openOnClick )
		{
			YAHOO.util.Event.addListener(openOnClick[i], "click", MJS.SKR.OverlayDetail[tagID+''].OBJ_OVERLAY.show, MJS.SKR.OverlayDetail[tagID+''].OBJ_OVERLAY, true);
		}

		for ( var i in closeOnClick )
		{
			YAHOO.util.Event.addListener(closeOnClick[i], "click", MJS.SKR.OverlayDetail[tagID+''].OBJ_OVERLAY.hide, MJS.SKR.OverlayDetail[tagID+''].OBJ_OVERLAY, true);
		}
	}

    MJS.SKR.registerCloseOverLay = function ( obj )
    {
        var tagID = obj.TAG_ID;
		var addEventToId = obj.ADD_EVENT_TO_ID;
		//MJS.UTILS.logData('Register for : ' + tagID);
		if (! tagID) { return; }
		if (! addEventToId ) { return; }

        YAHOO.util.Event.addListener(addEventToId, "click", MJS.SKR.OverlayDetail[tagID+''].OBJ_OVERLAY.hide, MJS.SKR.OverlayDetail[tagID+''].OBJ_OVERLAY, true);
        YAHOO.util.Event.addListener(addEventToId, "click", MJS.SKR.OverlayDetail[tagID+''].OBJ_OVERLAY.hide, MJS.SKR.OverlayDetail[tagID+''].OBJ_OVERLAY, true);
        //YAHOO.util.Event.on(tagID+"_close_popup", "click", MJS.SKR.OverlayDetail[tagID+''].OBJ_OVERLAY.hide, MJS.SKR.OverlayDetail[tagID+''].OBJ_OVERLAY, true);
    }

	MJS.SKR.actionOnOverLay = function( obj )
	{
		// Overlay should be already created
		var tagID = obj.TAG_ID;
		var action = ( obj.ACTION ? obj.ACTION : 'CLOSE' );	// CLOSE/OPEN. default is close

		if (! tagID) { return; }

		if ( (! MJS.SKR.OverlayDetail[tagID+''] ) || (! MJS.SKR.OverlayDetail[tagID+''].OBJ_OVERLAY) )
		{
			return;
		}

		if ( action == 'OPEN' )
		{
			MJS.SKR.OverlayDetail[tagID+''].OBJ_OVERLAY.show();
		}
		else if( action == 'CLOSE' )
		{
			MJS.SKR.OverlayDetail[tagID+''].OBJ_OVERLAY.hide();
		}
	}
	
	MJS.SKR.isPageLoaded = 1;
	MJS.SKR.onLoad = function( obj )
	{
		MJS.SKR.isPageLoaded = 0;
	}
// SKR ( seeker ) Function End


// HTML ( For HTML operations ) Function Start
MJS.HTML = {};
	// Function is used to face or Active the screen
	MJS.SKR.FADE_OLAY = {};
	MJS.SKR.FADE_OLAY.OBJ_OVERLAY = null;
	MJS.HTML.fadeOrActiveBgPage = function ( obj )
	{
		// If document is not loaded properly then we won't fade/active.
		if (! MJS.SKR.isPageLoaded) { alert('document not loaded properly'); return; }

		if ( typeof(obj) != 'object' ) { obj = {}; }
		
		var ID 		= ( obj.ID ? obj.ID : 'blackOverlayToFade' );
		var ACTION 	= ( obj.ACTION ? obj.ACTION : 'fade' );

		if (! document.getElementById(ID))
		{
        	// Creating Elementing and appending to the body
        	var alertMsgDiv = document.createElement('div');
        	alertMsgDiv.setAttribute('id', ID);
        	document.body.appendChild(alertMsgDiv);
        	document.getElementById(ID).className = 'blackOverlay';
        	document.getElementById(ID).style.display = 'block';
		}

		if ( ACTION == 'fade' )
		{

			// function used to set height of screen
			function setHeightWidthOfFaded()
			{
				//if ( navigator.appName == 'Microsoft Internet Explorer' ) { return; };	// Will not work for IE

				// TO CHECK
				var paneSize = MJS.UTILS.getPageSize();	// Not giving proper height in case of IE6
				//
				document.getElementById(ID).style.height = ((paneSize.WIN_WIDTH > paneSize.PAGE_HEIGHT) ? paneSize.WIN_WIDTH+'px' : paneSize.PAGE_HEIGHT+'px');
				document.getElementById(ID).style.width = (paneSize.PAGE_WIDTH + 'px');
			}
			//

			setHeightWidthOfFaded();
			if ( document.getElementById(ID) )
			{

				if ( MJS.SKR.FADE_OLAY.OBJ_OVERLAY == null )
				{
	    		    MJS.SKR.FADE_OLAY.OBJ_OVERLAY = new YAHOO.widget.Overlay(ID, { visible:false, zIndex: 800 } );
					MJS.SKR.FADE_OLAY.OBJ_OVERLAY.cfg.setProperty("xy",[0,0]);
        			MJS.SKR.FADE_OLAY.OBJ_OVERLAY.render();
					//MJS.SKR.FADE_OLAY.OBJ_OVERLAY.onDomResize.subscribe(function() {alert('resize');});

					// On Window resize this event will be fired  ( To set height of faded overlay )
					YAHOO.util.Event.addListener(window,"resize",setHeightWidthOfFaded);
					//
				}
				//document.getElementById(ID).style.display='block';
        		MJS.SKR.FADE_OLAY.OBJ_OVERLAY.show();
				//MJS.HTML.scrollOff();
			}
		}
		else if( ACTION == 'active' )
		{
			if ( document.getElementById(ID) )
			{
        		MJS.SKR.FADE_OLAY.OBJ_OVERLAY.hide();
				//document.getElementById(ID).style.display='none';
				// Reset height of Div for Botton space remval 
				document.getElementById(ID).style.height='1px';
				document.getElementById(ID).style.width='1px';
				//
				//MJS.HTML.scrollOn();
			}
		}
	}

	// ID can be single ID or ID(s) array
	MJS.HTML.hideTag = function ( ID )
	{
		var ID = MJS.UTILS.makeArrIfNotArr( ID );
		for ( var i in ID )
		{
			if ( document.getElementById(ID[i]) )
			{
				document.getElementById(ID[i]).style.display = 'none';
			}
		}
	}

	// ID can be single ID or ID(s) array
	MJS.HTML.showTag = function ( ID )
	{
		var ID = MJS.UTILS.makeArrIfNotArr( ID );
		for ( var i in ID )
		{
			if ( document.getElementById(ID[i]) )
			{
				document.getElementById(ID[i]).style.display = '';
			}
		}
	}

	// ID can be single ID or ID(s) array
	MJS.HTML.removeInnerHTML = function ( ID )
	{
		var ID = MJS.UTILS.makeArrIfNotArr( ID );
		for ( var i in ID )
		{
			if ( document.getElementById(ID[i]) )
			{
				document.getElementById(ID[i]).innerHTML = '';
			}
		}
	}

	// Pass ID / IDs Array to perform operation on Tag
	MJS.HTML.opsOnTags = function ( obj )
	{
        if ( typeof(obj) != 'object' ) { return; }

		var hideIDs			= MJS.UTILS.makeArrIfNotArr(obj.HIDE_IDS);
		var showIDs			= MJS.UTILS.makeArrIfNotArr(obj.SHOW_IDS);
		var removeHtmlIDs 	= MJS.UTILS.makeArrIfNotArr(obj.REMOVE_HTML_IDS);

		for ( var i in hideIDs ) { MJS.HTML.hideTag(hideIDs[i]); }
		for ( var i in showIDs ) { MJS.HTML.showTag(showIDs[i]); }
		for ( var i in removeHtmlIDs ) { MJS.HTML.removeInnerHTML(removeHtmlIDs[i]); }
	}

	MJS.HTML.scrollOff = function()
	{ 
		if (document.all)
		{               
			document.body.scroll = "no";
		}
		else
		{
			var oTop = document.body.scrollTop;
			document.body.style.overflow = "hidden";
			document.body.scrollTop = oTop;
		}
		window.onscroll = MJS.HTML.doNotScroll;
	}

	MJS.HTML.scrollOn = function()
	{
		document.body.scroll = "";
		document.body.style.overflow = "";
		window.onscroll = "";
	}
	
	MJS.HTML.doNotScroll = function()
	{
		window.scrollTo(0,0);
	}
// HTML ( For HTML operations ) Function End


// UTILS: ( For some js operations ) Function Start
MJS.UTILS = {};
	MJS.UTILS.isArray = function ( obj )
	{ //returns true if obj is an array
		if ( typeof(obj) != 'object' )
		{
			return false;
		}
		else if(obj.constructor == Array)
		{
			return true;
		}
		else if(typeof(obj[0]) == 'undefined')
		{
			return false;
		}
		else
		{
			return true;
		}
	}
	
	MJS.UTILS.trimLeadingSpaces = function ( str )
	{
		return str.replace(/^\s+/,"");
	}

	MJS.UTILS.trimTrailingSpaces = function ( str )
	{
		return str.replace(/\s+$/,"");
	}

	MJS.UTILS.trimLeadingTrailingSpaces = function ( str )
	{
		return MJS.UTILS.trimTrailingSpaces(MJS.UTILS.trimLeadingSpaces(str));
	}

	MJS.UTILS.makeArrIfNotArr = function ( arg )
	{
		// If array is not defined then return blank array
		return ( arg ? ((MJS.UTILS.isArray(arg) ?  arg : [ arg ] )) : [] );
	}

	MJS.UTILS.logData = function ( str )
	{
		//alert(str);
		//console.log(str);
	}

	MJS.UTILS.addslashes = function (str) 
	{
		str=str.replace(/\'/g,'\\\'');
		str=str.replace(/\"/g,'\\"');
		str=str.replace(/\\/g,'\\\\');
		str=str.replace(/\0/g,'\\0');
		return str;
	}

	MJS.UTILS.stripslashes = function (str) 
	{
		str=str.replace(/\\'/g,'\'');
		str=str.replace(/\\"/g,'"');
		str=str.replace(/\\\\/g,'\\');
		str=str.replace(/\\0/g,'\0');
		return str;
	}

	MJS.UTILS.getPageSize = function ()
	{
		var xScroll, yScroll;
		
		if (window.innerHeight && window.scrollMaxY) {	
			xScroll = document.body.scrollWidth;
			yScroll = window.innerHeight + window.scrollMaxY;
		} else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
			xScroll = document.body.scrollWidth;
			yScroll = document.body.scrollHeight;
		} else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
			xScroll = document.body.offsetWidth;
			yScroll = document.body.offsetHeight;
		}
		
		var windowWidth, windowHeight;
		if (self.innerHeight) {	// all except Explorer
			windowWidth = self.innerWidth;
			windowHeight = self.innerHeight;
		} else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
			windowWidth = document.documentElement.clientWidth;
			windowHeight = document.documentElement.clientHeight;
		} else if (document.body) { // other Explorers
			windowWidth = document.body.clientWidth;
			windowHeight = document.body.clientHeight;
		}	
		
		// for small pages with total height less then height of the viewport
		if(yScroll < windowHeight){
			pageHeight = windowHeight;
		} else { 
			pageHeight = yScroll;
		}
	
		// for small pages with total width less then width of the viewport
		if(xScroll < windowWidth){	
			pageWidth = windowWidth;
		} else {
			pageWidth = xScroll;
		}
	
	
		//arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight) 
		return {PAGE_WIDTH: pageWidth, PAGE_HEIGHT: pageHeight, WIN_WIDTH: windowWidth, WIN_HEIGHT: windowHeight};
	}
// UTILS: ( For some js operations ) Function End


// Global function used to set values on Page Load
//YAHOO.util.Event.addListener( window, "load", MJS.SKR.onLoad );
