

function addSubscriveListeners() {

    var event = YAHOO.util.Event;
    var dom   = YAHOO.util.Dom;
    
    var sub = dom.get('subscribe-link');
    var unsub = dom.get('unsubscribe-link');
    
    var stopSend = false;
    
    function subscribe() {
        
        if (stopSend) return;

        var url = this.name;
        var postdata = 'next=/&Subscribe=yes';
        
		var handleFailure = function(o) {
			alert('Network Failure: Please try later.');
		};

		var handleSuccess = function(o) {

            dom.setStyle(sub, 'display', 'none');
            dom.setStyle(unsub, 'display', 'inline');

			stopSend = false;
			
		}

		var callback = { success: handleSuccess, failure: handleFailure };

        stopSend = true;

		var request = YAHOO.util.Connect.asyncRequest('POST', url, callback, postdata);

    }

    function unsubscribe() {

        if (stopSend) return;
        
        var url = this.name;
        var postdata = 'next=/&Unsubscribe=yes';
        
		var handleFailure = function(o) {
			alert('Network Failure: Please try later.');
		};

		var handleSuccess = function(o) {

            dom.setStyle(unsub, 'display', 'none');
            dom.setStyle(sub,   'display', 'inline');

			stopSend = false;
			
		}

		var callback = { success: handleSuccess, failure: handleFailure };

        stopSend = true;

		var request = YAHOO.util.Connect.asyncRequest('POST', url, callback, postdata);

    }    

    event.addListener(sub  , 'click', subscribe);
    event.addListener(unsub, 'click', unsubscribe);
    
} 