var consumerSettingServiceURL = document.location.protocol + '//' + document.location.host + '/WebService/ConsumerSettings.asmx/';
var consumerSettingServiceCommunicationMethod = 'post';
var consumerSettingServiceContentType = 'application/x-www-form-urlencoded';

function GetSaveSettingRequest(url, requestArguments, settingID, value) {

    var request = 'url=' + url
                + '&requestArguments=' + encodeURIComponent(requestArguments)
                + '&settingID=' + settingID
                + '&value=' + encodeURIComponent(value);

    return request;
}

function SaveSetting(url, requestArguments, settingID, value, onSuccess, onFail) {

    var postBody = GetSaveSettingRequest(url, requestArguments, settingID, value);

    var request = new Ajax.Request(consumerSettingServiceURL + 'SaveSetting', {
        method: consumerSettingServiceCommunicationMethod,
        postBody: postBody,
        contentType: consumerSettingServiceContentType,
        onSuccess: onSuccess,
        onFailure: onFail
    });
}

function GetSaveSettingByNameRequest(url, requestArguments, name, value) {

    var request = 'url=' + url
                + '&requestArguments=' + encodeURIComponent(requestArguments)
                + '&name=' + encodeURIComponent(name)
                + '&value=' + encodeURIComponent(value);

    return request;
}

function SaveSettingByName(url, requestArguments, name, value, onSucess, onFail) {

    var postBody = GetSaveSettingByNameRequest(url, requestArguments, name, value);

    var request = new Ajax.Request(consumerSettingServiceURL + 'SaveSettingByName', {
        method: consumerSettingServiceCommunicationMethod,
        postBody: postBody,
        contentType: consumerSettingServiceContentType,
        onSuccess: onSuccess,
        onFailure: onFail
    });
}

function SetConsumerSetting(settingID, value) {

    var requestArgs = $('ctl00_hfRequestVars').value;
    var url = document.URL;

    if (typeof (refreshAdPods) == 'function') {
        SaveSetting(url, requestArgs, settingID, value, refreshAdPods, refreshAdPods);
    }
    else {
        SaveSetting(url, requestArgs, settingID, value, null, null);
    }
}

function SetConsumerSettingByName(name, value) {

    var requestArgs = $('ctl00_hfRequestVars').value;
    var url = document.URL;

    if (typeof (refreshAdPods) == 'function') {
        SaveSettingByName(url, requestArgs, name, value, refreshAdPods, refreshAdPods);
    }
    else {
        SaveSettingByName(url, requestArgs, name, value, null, null);
    }
}