    var _container = null;
	var _function = null;
	var _newsletter = null;
	var _status = null;
	
	function updateNewsletter(address, newsletter, container,status)
    {
		if(_container != null)
			return;
		_container = container;
		_function = status;
		_newsletter = newsletter;
		_status = status;
		if(UpdateStatusChange)
			UpdateStatusChange("start");
		//alert("Core.NewsletterSignup.js: updateNewsletter: status:\n\n" +  status)
		try
    	{
    	    var client = createXMLHttpRequest();
		    if(status)
			    code = "s";
		    else
			    code = "u"
    		
    	    var url = "/templates/Global.Utility.NewsletterUpdate.api?l=282036&" + code + "=" + newsletter + "&e=" + address
		    var now = new Date();
    	    url = url + "&t=" + now.getTime()
    	    //alert("Core.NewsletterSignup.js: updateNewsletter: url:\n\n" +  url);
            client.open("GET",url,true);
		    client.setRequestHeader("Content-Type", "application/x-javascript;");
    	    client.onreadystatechange = function(){
    	    if (client.readyState == 4) {
                        if (client.responseText) {
                            returnStatus(client);
                        }
                    }
    	    };
        	 
    	     client.send(null);
    	 }
    	 catch(err)
    	 {
	 	    //alert("Core.NewsletterSignup.js: updateNewsletter: ERROR:\n\n" + err.description);
	 	    if(UpdateStatusChange)
	 	    {
			    UpdateStatusChange("false");
		    }
		    _container = null;
		    _function = null;
		    _newsletter = null;
		    _status = null;
    	 }
    }
    
    function returnStatus(response)
    {
		var result = "false";
		try
    	{
    	    //alert("Core.NewsletterSignup.js: returnStatus: responseText:\n\n" + response.responseText);
    	    var xmlObject = response.responseXML;
    	    if(xmlObject != null)
    	    {
    		    var root = xmlObject.documentElement;
    		    if(root != null)
    		    {
    			    var resultNode = root.getElementsByTagName("success")
    			    if((resultNode != null)&&(resultNode.length > 0))
    			    {
					    result = resultNode[0].firstChild.nodeValue;	
    			    }
        			
    		    }
    	    }
    	}
    	catch(err)
    	{
			result = "false";
			//alert("Core.NewsletterSignup.js: returnStatus: ERROR:\n\n" + err.description);
    	}
		
		if(UpdateStatusChange)
			UpdateStatusChange(result);
			
		_container = null;
		_function = null;
		_newsletter = null;
		_status = null;
    }

