function Bookmark_Creation_Object(sThisObjectName, sAjaxSecurityCode, iUserID, iPositiveID)
{
	this.sThisObjectName = sThisObjectName;
	this.AjaxSecurityCode = sAjaxSecurityCode;   
    this.iRandom = Math.floor(Math.random()*11235813);
    this.iSelectedFlagTypeID = "";
    this.iUserID = iUserID;
    this.iPositiveID = iPositiveID;

	
    this.oBody = null;
    this.oBodyAjaxDataHolder = null;
    this.oBodyNotificationHolder = null;
    this.oAdd_Bookmark_Link = null;
    this.oAdd_Bookmark_Link_Disabled = null;
    this.oURL = null;
    this.oPopupManager = null;
    this.bHaveAlreadyLoaded = false;
    this.bBookmark_Already_Exists = false;
    this.sExisting_Bookmark_Profile = null;
    
    this.iURLID = null;
    
    this.bDoesBookmarkAlreadyExist = false;
    
    this.sPopupTitleLabel = "New Bookmark";
    this.sSaveLable = "Done";
    this.sSaveAndEditLable = "Save &amp; Edit";
    this.sCancelLable = "Cancel";
    this.sFooterDivider = "&bull;";
    
    this.sAddBookmarkLable = "Add Bookmark";
    
    this.sBody_Header = "";
    
    this.bAlreadyRenderedWithData = false;
    
    this.oBookMarkData = null;
    
    this.bHaveMetaData = false;
    this.bHaveWebThumbData = false;
    
    this.sMetaName = "";
    this.sMetaDescription = "";
    this.sWebThumb = "";
    
    
    this.iPullTimeout = 60000;
    this.oPullTimeouter = null;
    
    this.oPullTimer = null;
    
	this.sLoadingTxt = '<center><img src="/images/ajax-loader_wide.gif" border="0"><br> Loading</center>';
	this.sSeePreviewLable = '<span class="Site_Small">See preview below.  Is this what you wanted to bookmark?</span>';
    
	this.sCSS_CLASS_Input_TextArea = 'Flag_Popup_Text_Input_Box';
	this.CSS_CLASS_Body_Header = 'Flag_Popup_Body_Header';
	this.CSS_CLASS_Body_Header_Holder = 'Flag_Popup_Body_Header_Holder';
	
	this.sAjaxObjectName = "oAjaxBookMark";
	this.sAjax_File_Path = '/services/_Bookmark_Creation_Manager_Service.php';
    this.__Construct();
}	

Bookmark_Creation_Object.prototype.__Construct = function()
{
	this.oPopupManager = new Popup_Overlay_Manager(this.sThisObjectName + ".oPopupManager");
	this.oPopupManager.sPopup_Header_Lable = this.sPopupTitleLabel;
}





Bookmark_Creation_Object.prototype.Open = function()
{
	this.oPopupManager.Display_Popup();

	if (this.bHaveAlreadyLoaded == false)
		this.Build_Body();
	
	
	this.bHaveAlreadyLoaded = true;
}

Bookmark_Creation_Object.prototype.Close = function()
{
	this.Error("");
	this.oPopupManager.Close_Popup();
	//this.iSelectedFlagTypeID = '';
}



Bookmark_Creation_Object.prototype.Build_Body = function()
{
	this.oBody = document.createElement('div');
		//this.oBody.innerHTML = "Have data";
		this.Build_Body_Element(this.oBody);
		
	this.oPopupManager.Clear_Current_Popup_Body();
	this.oPopupManager.Clear_Current_Popup_Footer();
	this.oPopupManager.Add_Popup_Body(this.oBody);	
	this.Build_Save_Footer();
}




Bookmark_Creation_Object.prototype.Build_Save_Footer = function()
{
	var oFooterItems = document.createElement('div');
		var oItem1 = document.createElement('span');
			var oLink1 = document.createElement('a');
				oLink1.innerHTML = this.sCancelLable;
				oLink1.href="#";
				oLink1.onclick= new Function(this.sThisObjectName + ".Close(); return false;");
		oItem1.appendChild(oLink1);
	oFooterItems.appendChild(oItem1);
		
	this.oPopupManager.Add_Popup_Footer_Item(oFooterItems);
}


Bookmark_Creation_Object.prototype.Reset_Footer_After_URL_Change = function()
{
	this.bHaveMetaData = false;
	this.bHaveWebThumbData = false;
	this.bHaveAlreadyLoaded = false;
	this.bBookmark_Already_Exists = false;
	this.bDoesBookmarkAlreadyExist = false;
	this.oPopupManager.Clear_Current_Popup_Footer();
	this.Build_Save_Footer();	
}








Bookmark_Creation_Object.prototype.Build_Body_Element = function(oBody)
{

		
	var oHolderTable = document.createElement('table');
		oHolderTable.width = "100%";
	var oTableBody = document.createElement('tbody');
	
		var oRow = document.createElement('tr');
	
			var oCol_URL = document.createElement('td');
				oCol_URL.width = "80%";
				oCol_URL.vAlign = "middle";
				this.oURL = document.createElement('input');
					this.oURL.style.width = "470px";
					this.oURL.type = "text";
					this.oURL.id = "URL_" + this.iRandom;
					this.oURL.name = "URL_" + this.iRandom;
					this.oURL.value = "";
					this.oURL.onchange = new Function(this.sThisObjectName + ".Reset_Footer_After_URL_Change(); " + this.sThisObjectName + ".Test_URL();");
					this.oURL.onkeypress = new Function(this.sThisObjectName + ".Reset_Footer_After_URL_Change(); " + this.sThisObjectName + ".Test_URL();");
					this.oURL.onkeyup = new Function(this.sThisObjectName + ".Reset_Footer_After_URL_Change(); " + this.sThisObjectName + ".Test_URL();");					
				oCol_URL.appendChild(this.oURL);
			oRow.appendChild(oCol_URL);
			
			
			var oCol_Add_Bookmark = document.createElement('td');
				oCol_Add_Bookmark.width = "20%";
				oCol_Add_Bookmark.vAlign = "middle";
				oCol_Add_Bookmark.className = "lpadX";
				this.oAdd_Bookmark_Link = document.createElement('a');
					this.oAdd_Bookmark_Link.id = "add_bookmark_" + this.iRandom;
					this.oAdd_Bookmark_Link.name = "add_bookmark_" + this.iRandom;
					this.oAdd_Bookmark_Link.innerHTML = this.sAddBookmarkLable;
					this.oAdd_Bookmark_Link.href = "#";
					this.oAdd_Bookmark_Link.style.fontWeight = "bold";
					this.oAdd_Bookmark_Link.onclick = new Function(this.sThisObjectName + ".Fetch_URL(); return false;");
					this.oAdd_Bookmark_Link.style.display = "none";
				oCol_Add_Bookmark.appendChild(this.oAdd_Bookmark_Link);	
				this.oAdd_Bookmark_Link_Disabled = document.createElement('span');
					this.oAdd_Bookmark_Link_Disabled.innerHTML = this.sAddBookmarkLable;
					this.oAdd_Bookmark_Link_Disabled.style.display = "";
				oCol_Add_Bookmark.appendChild(this.oAdd_Bookmark_Link_Disabled);	
				
			oRow.appendChild(oCol_Add_Bookmark);
		
			oTableBody.appendChild(oRow);
			
			var oRow2 = document.createElement('tr');
			
				this.oBodyNotificationHolder = document.createElement('td');
					this.oBodyNotificationHolder.colspan="2";
					this.oBodyNotificationHolder.colSpan="2";
			
			
				oRow2.appendChild(this.oBodyNotificationHolder);
			oTableBody.appendChild(oRow2);
				
			
	oHolderTable.appendChild(oTableBody);
	oBody.appendChild(oHolderTable);
	
	this.Build_Body_AjaxDataHolder(oBody);
}


Bookmark_Creation_Object.prototype.Build_Body_AjaxDataHolder = function(oBody)
{
	this.oBodyAjaxDataHolder = document.createElement('div');
		this.oBodyAjaxDataHolder.id = "BodyAjaxDataHolder_" + this.iRandom;
		this.oBodyAjaxDataHolder.name = "BodyAjaxDataHolder_" + this.iRandom;
	oBody.appendChild(this.oBodyAjaxDataHolder);
}

Bookmark_Creation_Object.prototype.Test_URL = function()
{
	if (this.Validate_URL() == true)
	{
		this.oAdd_Bookmark_Link.style.display = "";
		this.oAdd_Bookmark_Link_Disabled.style.display = "none";
		this.oURL.className = "";
	}
	else
	{
		this.oAdd_Bookmark_Link.style.display = "none";
		this.oAdd_Bookmark_Link_Disabled.style.display = "";
		this.oURL.className = "Exclamation";
	}

	
}


Bookmark_Creation_Object.prototype.Fetch_URL = function()
{
	// validate URL
	this.Set_Notificaion_To_Lable(this.sSeePreviewLable);
	this.Submit_URL_Request();
	
}


Bookmark_Creation_Object.prototype.Submit_URL_Request = function()
{
	var sURL_PostData = '';
	var sURL_PrependObjInfo =  "sCallback=" + this.sThisObjectName;	
	sURL_PrependObjInfo = sURL_PrependObjInfo + "&sAjaxObjectName=" + this.sAjaxObjectName ;
 	sURL_PrependObjInfo = sURL_PrependObjInfo + "&bLoadData=false" ;
 	sURL_PrependObjInfo = sURL_PrependObjInfo + "&bCreateBookmark=false" ;
 	sURL_PrependObjInfo = sURL_PrependObjInfo + "&iRandom=" + this.iRandom;
 	
 	
 	sURL_PrependObjInfo = sURL_PrependObjInfo + "&iUserID=" + this.iUserID;
 	sURL_PrependObjInfo = sURL_PrependObjInfo + "&iPositiveID=" + this.iPositiveID;


 	sURL_PostData = sURL_PostData + "&sURL=" + (escape(this.oURL.value));
 	
 	
 	sURL_PrependObjInfo = sURL_PrependObjInfo + "&sValidator=" + SHA1(((this.oURL.value))+""+(this.iUserID)+""+(this.iPositiveID)+""+(this.iRandom));
 	
	document.body.style.cursor='wait';

    RequestManager.send({
        priority : 5,
        type : "post",
        url : this.sAjax_File_Path + "?" + sURL_PrependObjInfo +  this.AjaxSecurityCode,
        onsuccess : this.Success_Submit_URL,
        onfailure : this.Failure_Submit_URL,
        onnotmodified : this.Success_Submit_URL,
        data: sURL_PostData
    });	
	
}


Bookmark_Creation_Object.prototype.Failure_Submit_URL = function(oResponse)  
{
    document.body.style.cursor='default';
}

Bookmark_Creation_Object.prototype.Success_Submit_URL = function(oResponse)  
{
    document.body.style.cursor='default';
    var oRequest = oResponse.request;
    eval(oRequest.transport.responseText);
    
    if (oAjaxBookMark.CallBack != null)
	{
    	eval ("var oThis = "+ oAjaxBookMark.CallBack);
    	if (oThis != null)
    		oThis.URL_Submitted_Data(oAjaxBookMark);
	}    
}


Bookmark_Creation_Object.prototype.URL_Submitted_Data = function(oJson_Data)  
{
    if (oJson_Data.error == true)
    {
    	sErrorText = oJson_Data.message;
    	alert(sErrorText);
    }
    else
    {
    	this.iURLID = oJson_Data.url_id;
    	this.bBookmark_Already_Exists = oJson_Data.bBookmark_Already_Exists;    	
    	this.sExisting_Bookmark_Profile = oJson_Data.redirect_url;
    	
    	if (this.bBookmark_Already_Exists == true)
    		this.Set_BookMark_Already_Exists();
    	
    	this.Set_BodyAjaxDataHolder_To_Lable(this.sLoadingTxt);
    	this.Begin_Pulling_For_Updates();
    }
    
}

Bookmark_Creation_Object.prototype.Set_BookMark_Already_Exists = function()  
{	
	this.Set_Notificaion_To_Lable("<span class='Exclamation_Txt'>This bookmark already exists.  <a href='"+ this.sExisting_Bookmark_Profile +"'>View Bookmark</a>.</span>");	
}


Bookmark_Creation_Object.prototype.Set_Notificaion_To_Lable = function(sLable)  
{
	if (this.oBodyNotificationHolder != null)
	{
		this.oBodyNotificationHolder.innerHTML  = 	sLable;
	}
}


Bookmark_Creation_Object.prototype.Set_BodyAjaxDataHolder_To_Lable = function(sLable)  
{
	if (this.oBodyAjaxDataHolder != null)
	{
		while (this.oBodyAjaxDataHolder.firstChild) { // nuke all items currently in select to rebuild clean
			this.oBodyAjaxDataHolder.removeChild(this.oBodyAjaxDataHolder.firstChild);
	     }
	
	
		this.Append_BodyAjaxDataHolder_To_Lable(sLable);		
	}
}


Bookmark_Creation_Object.prototype.Append_BodyAjaxDataHolder_To_Lable = function(sLable)  
{
	if (this.oBodyAjaxDataHolder != null)
	{
		var oPending = document.createElement('div');
			oPending.innerHTML = sLable;
		this.oBodyAjaxDataHolder.appendChild(oPending);		
	}
}



Bookmark_Creation_Object.prototype.Begin_Pulling_For_Updates = function()  
{
	this.oPullTimer = setInterval(this.sThisObjectName + ".Fetch_URL_Data()",1500);
	
    this.oPullTimeouter = setTimeout(this.sThisObjectName + ".Fetch_URL_Timeout()",this.iPullTimeout);
}


Bookmark_Creation_Object.prototype.Fetch_URL_Timeout = function()
{
	clearInterval(this.oPullTimer);
	// inform user that we don't have data yet - but they can still continue if they want
	this.Append_BodyAjaxDataHolder_To_Lable("<span class='Exclamation_Txt'>Remote server is not responding, but you can still create bookmark</span>");
	this.Enable_Save_Buttons();
}


Bookmark_Creation_Object.prototype.Error = function(sMessage)
{
	clearInterval(this.oPullTimer);
	clearTimeout(this.oPullTimeouter);  
	// inform user that we don't have data yet - but they can still continue if they want
	this.Set_BodyAjaxDataHolder_To_Lable("<center class=' tpadXX bpadXX'><span class='Exclamation_Txt'>"+ sMessage +"</span></center>");
}



Bookmark_Creation_Object.prototype.Fetch_URL_Data = function()
{
	var sURL_PostData = '';
	var sURL_PrependObjInfo =  "sCallback=" + this.sThisObjectName;	
	sURL_PrependObjInfo = sURL_PrependObjInfo + "&sAjaxObjectName=" + this.sAjaxObjectName ;
 	sURL_PrependObjInfo = sURL_PrependObjInfo + "&bLoadData=true" ;
 	sURL_PrependObjInfo = sURL_PrependObjInfo + "&bCreateBookmark=false" ;
 	sURL_PrependObjInfo = sURL_PrependObjInfo + "&iRandom=" + this.iRandom;
 	
 	//sURL_PrependObjInfo = sURL_PrependObjInfo + "&sURL=" + this.oURL.value;
 	sURL_PrependObjInfo = sURL_PrependObjInfo + "&iURLID=" + this.iURLID;
 	sURL_PrependObjInfo = sURL_PrependObjInfo + "&iUserID=" + this.iUserID;
 	sURL_PrependObjInfo = sURL_PrependObjInfo + "&iPositiveID=" + this.iPositiveID;

 	sURL_PostData = sURL_PostData + "&sURL=" + (escape(this.oURL.value));

 	sURL_PrependObjInfo = sURL_PrependObjInfo + "&sValidator=" + SHA1((this.oURL.value)+""+(this.iUserID)+""+(this.iPositiveID)+""+(this.iRandom));
 	
	document.body.style.cursor='wait';

    RequestManager.send({
        priority : 8,
        type : "post",
        url : this.sAjax_File_Path + "?" + sURL_PrependObjInfo +  this.AjaxSecurityCode,
        onsuccess : this.Success_Pull_URL,
        onfailure : this.Failure_Submit_URL,
        onnotmodified : this.Success_Pull_URL,
        data: sURL_PostData
    });	
	
}



Bookmark_Creation_Object.prototype.Success_Pull_URL = function(oResponse)  
{
    document.body.style.cursor='default';
    var oRequest = oResponse.request;
    eval(oRequest.transport.responseText);
    
    if (oAjaxBookMark.CallBack != null)
	{
    	eval ("var oThis = "+ oAjaxBookMark.CallBack);
    	if (oThis != null)
    		oThis.URL_Pulled_Data(oAjaxBookMark);
	}    
}


Bookmark_Creation_Object.prototype.URL_Pulled_Data = function(oJson_Data)  
{
    if (oJson_Data.error == true)
    {
    	sErrorText = oJson_Data.message;
    	this.Error(sErrorText);
    }
    else
    {
    	if (this.bHaveMetaData == false)
		{
    		if (oJson_Data.meta_system_process_status_id == "2")
			{
    			this.sMetaName = oJson_Data.meta_name;
    		    this.sMetaDescription = oJson_Data.meta_description;
    		    this.bHaveMetaData = true;
			}
		}
    	
    	if (this.bHaveWebThumbData == false)
		{
    		if (oJson_Data.image_system_process_status_id == "2")
			{
    			this.sWebThumb = oJson_Data.image_url;
    		    this.bHaveWebThumbData = true;
			}
		}
    	
    	if (this.bHaveMetaData == true && this.bHaveWebThumbData == true)
		{
    		clearInterval(this.oPullTimer);
    		clearTimeout(this.oPullTimeouter);  
    		this.Enable_Save_Buttons();
		}
    	
    	if (this.bHaveMetaData == true || this.bHaveWebThumbData == true)
		{  
    		this.Enable_Save_Buttons();
		}
    
    	this.Render_Pulled_Data();
    	
    }
    
}


Bookmark_Creation_Object.prototype.Render_Pulled_Data = function()  
{
	if (this.bHaveMetaData == true || this.bHaveWebThumbData == true)
	{
		if (this.oBodyAjaxDataHolder != null)
		{
			while (this.oBodyAjaxDataHolder.firstChild) { // nuke all items currently in select to rebuild clean
				this.oBodyAjaxDataHolder.removeChild(this.oBodyAjaxDataHolder.firstChild);
		     }
		
		
			var oPending = document.createElement('div');
				
			
			var oHolderTable = document.createElement('table');
			oHolderTable.width = "100%";
			oHolderTable.border = "0";
			oHolderTable.cellPadding = "0";
			oHolderTable.cellSpacing = "0";
			var oTableBody = document.createElement('tbody');
			
				var oRow = document.createElement('tr');
			
					var oCol_Thumb = document.createElement('td');
						oCol_Thumb.width = "125";
						oCol_Thumb.vAlign = "middle";
						oCol_Thumb.rowSpan = "2";
						oCol_Thumb.className = "tpadx";
						
						

						
							if (this.bHaveWebThumbData == true)
							{
								var oImageFrame = new Image_Frame_Object(this.sWebThumb)
								oCol_Thumb.appendChild(oImageFrame.Get_Frame_Object());
							}
							else
							{
								var oImageFrame = new Image_Frame_Object("/images/ajax-loader.gif")
								oImageFrame.iHeight="100";
								oImageFrame.iWidth="100";
								oCol_Thumb.appendChild(oImageFrame.Get_Frame_Object());
							}
							
						
					oRow.appendChild(oCol_Thumb);
					
					
					var oCol_MetaName = document.createElement('td');
						
						oCol_MetaName.vAlign="top";
						oCol_MetaName.className = "tpadx";
						
						var oCol_MetaName_Lable = document.createElement('div');
						oCol_MetaName_Lable.className = "bold";
							if (this.bHaveMetaData == true)
							{
								oCol_MetaName_Lable.innerHTML = this.sMetaName;
							}
							else
							{
								oCol_MetaName_Lable.innerHTML = "";
							}
							
						oCol_MetaName.appendChild(oCol_MetaName_Lable);	
						
						var oCol_MetaDesc_Lable = document.createElement('div');
							if (this.bHaveMetaData == true)
							{
								oCol_MetaDesc_Lable.innerHTML = this.sMetaDescription;
							}
							else
							{
								oCol_MetaDesc_Lable.innerHTML = "";
							}
						
						oCol_MetaName.appendChild(oCol_MetaDesc_Lable);	
						
						
					oRow.appendChild(oCol_MetaName);
				
					oTableBody.appendChild(oRow);
					
					
				
					
					
			oHolderTable.appendChild(oTableBody);
			oPending.appendChild(oHolderTable);
			this.oBodyAjaxDataHolder.appendChild(oPending);		
		}
	}	
	
}



Bookmark_Creation_Object.prototype.Enable_Save_Buttons = function()  
{
	if (!this.bBookmark_Already_Exists == true)
	{
		this.oPopupManager.Clear_Current_Popup_Footer();
	
		var oFooterItems = document.createElement('div');
				var oItem1 = document.createElement('span');
					var oLink1 = document.createElement('a');
						oLink1.innerHTML = this.sCancelLable;
						oLink1.href="#";
						oLink1.onclick= new Function(this.sThisObjectName + ".Close(); return false;");
				oItem1.appendChild(oLink1);
			oFooterItems.appendChild(oItem1);
			
			var oDivider = document.createElement('span');
				oDivider.innerHTML = this.sFooterDivider;
				oDivider.style.paddingLeft = "5px";
				oDivider.style.paddingRight = "5px";
			oFooterItems.appendChild(oDivider);
			
		
				var oItem3 = document.createElement('span');
					var oLink3 = document.createElement('a');
					oLink3.innerHTML =  this.sSaveAndEditLable;
					oLink3.href="#";
					oLink3.onclick= new Function(this.sThisObjectName + ".Save(true); return false;");
				oItem3.appendChild(oLink3);
			oFooterItems.appendChild(oItem3);
			
			var oDivider = document.createElement('span');
				oDivider.innerHTML = this.sFooterDivider;
				oDivider.style.paddingLeft = "5px";
				oDivider.style.paddingRight = "5px";
			oFooterItems.appendChild(oDivider);
			
	
				var oItem2 = document.createElement('span');
					var oLink2 = document.createElement('a');
					oLink2.innerHTML =  this.sSaveLable;
					oLink2.style.fontWeight = "bold";
					oLink2.href="#";
					oLink2.onclick= new Function(this.sThisObjectName + ".Save(); return false;");
				oItem2.appendChild(oLink2);
			oFooterItems.appendChild(oItem2);
				
			this.oPopupManager.Add_Popup_Footer_Item(oFooterItems);
	}
}



Bookmark_Creation_Object.prototype.Save = function(bEditAfterSave)
{	
	var sURL_PostData = '';
	var sURL_PrependObjInfo =  "sCallback=" + this.sThisObjectName;	
	sURL_PrependObjInfo = sURL_PrependObjInfo + "&sAjaxObjectName=" + this.sAjaxObjectName ;
 	sURL_PrependObjInfo = sURL_PrependObjInfo + "&bLoadData=false" ;
 	sURL_PrependObjInfo = sURL_PrependObjInfo + "&bCreateBookmark=true" ;
 	sURL_PrependObjInfo = sURL_PrependObjInfo + "&iRandom=" + this.iRandom;
 	
 	//sURL_PrependObjInfo = sURL_PrependObjInfo + "&sURL=" + this.oURL.value;
 	sURL_PrependObjInfo = sURL_PrependObjInfo + "&iUserID=" + this.iUserID;
 	sURL_PrependObjInfo = sURL_PrependObjInfo + "&iPositiveID=" + this.iPositiveID;

 	if (bEditAfterSave == true)
 		sURL_PrependObjInfo = sURL_PrependObjInfo + "&bRedirectToEditorAfterSave=true" ;
 	
 	sURL_PostData = sURL_PostData + "&sURL=" + (escape(this.oURL.value));
 	
 	sURL_PrependObjInfo = sURL_PrependObjInfo + "&sValidator=" + SHA1((this.oURL.value)+""+(this.iUserID)+""+(this.iPositiveID)+""+(this.iRandom));
 	
	document.body.style.cursor='wait';

    RequestManager.send({
        priority : 1,
        type : "post",
        url : this.sAjax_File_Path + "?" + sURL_PrependObjInfo +  this.AjaxSecurityCode,
        onsuccess : this.Success_CreateBookMark,
        onfailure : this.Failure_CreateBookMark,
        onnotmodified : this.Success_CreateBookMark,
        data: sURL_PostData
    });	
}




Bookmark_Creation_Object.prototype.Failure_CreateBookMark = function(oResponse)  
{
    document.body.style.cursor='default';
}

Bookmark_Creation_Object.prototype.Success_CreateBookMark = function(oResponse)  
{
    document.body.style.cursor='default';
    var oRequest = oResponse.request;
    eval(oRequest.transport.responseText);
    
    if (oAjaxBookMark.CallBack != null)
	{
    	eval ("var oThis = "+ oAjaxBookMark.CallBack);
    	if (oThis != null)
    		oThis.BookMark_Created_Data(oAjaxBookMark);
	}    
}


Bookmark_Creation_Object.prototype.BookMark_Created_Data = function(oJson_Data)  
{
    if (oJson_Data.error == true)
    {
    	sErrorText = oJson_Data.message;
    	alert(sErrorText);
    }
    else
    {
    	document.location = oJson_Data.redirect_url + "";    	
    }
    
}


Bookmark_Creation_Object.prototype.Validate_URL = function()
{
    var sURL = this.oURL.value;   
    var RegExp = /^(([\w]+:)?\/\/)?(([\d\w]|%[a-fA-f\d]{2,2})+(:([\d\w]|%[a-fA-f\d]{2,2})+)?@)?([\d\w][-\d\w]{0,253}[\d\w]\.)+[\w]{2,4}(:[\d]+)?(\/([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)*(\?(&?([-+_~.\d\w]|%[a-fA-f\d]{2,2})=?)*)?(#([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)?/;
    if (sURL != "")
        {
            if(!RegExp.test(sURL))
            {
                return false;
            }else{
	            return true;
            }
        }
        else
            return false;
}



