(function ($) {
    //	---------------------------------------------------------
    //	             [jQuery.ajaxDotNet, ver 3]
    //	Copyright (c) 2008 Richard Kimber, http://www.dogma.co.uk
    //	Licensed under the terms of the MIT Licence (LICENSE.txt)
    //	---------------------------------------------------------
    //	On a personal note, I would love to hear about any
    //	implementations of this plugin. richard [at] dogma.co.uk
    //	---------------------------------------------------------

    //	Defaults
    var _defaults = {
        verb: 'POST',
        data: new Object(),
        async: true,
        username: null,
        password: null,
        beforeSend: null,
        processData: null,
        success: null,
        error: null,
        complete: null,
        context: new Object()
    };

    //	Globals
    var _globals = {
        beforeSend: null,
        processData: null,
        success: null,
        error: null,
        complete: null
    };

    //	Return new XMLHttpRequest Object
    function getXhr() {
        if (typeof XMLHttpRequest != "undefined") {
            return new XMLHttpRequest();
        }
        else if (typeof ActiveXObject != "undefined") {
            try {
                return new ActiveXObject('Msxml2.XMLHTTP');
            }
            catch (err) {
                try { return new ActiveXObject('Microsoft.XMLHTTP'); } catch (e) { }
            }
        }
    };

    //	Test parameters of type String for dates and return either
    //	the orignal String or a newly created Date object.
    function cTD(v) {
        var rx = /\/Date\((-?[0-9]+)(\+[0-9]+)?\)\//g;
        if (rx.test(v)) {
            var milli = Number(v.replace(rx, '$1'));
            if (!isNaN(milli))
                v = new Date(Number(v.replace(rx, '$1')));
            else
                throw new Error("Date format not recognised.");
        }
        return v;
    };

    //	Recursively parse the JSON returned from the server.
    function tO(v) {
        if (v != null) {
            if (v.constructor == String) {
                v = cTD(v);
            }
            else if (v.constructor == Object || v.constructor == Array) {
                $.each(v, function (i, x) {
                    v[i] = i != "__type" ? tO(x) : x;
                });
            }
        }
        return v;
    };

    //	Main Function
    $.ajaxDotNet = function (url, options) {
        options = $.extend({}, _defaults, options);

        var xhr = getXhr();

        //	Convert data option into a format readable by the server.
        var data = '';
        if (options.verb == 'GET') {
            for (var i in options.data) {
                if (data != '') {
                    data += '&';
                }
                data += i + '=' + JSON.stringify(options.data[i]);
            }
            url += '?' + data;
            data = null;
        }
        else if (options.verb == 'POST') {
            data = JSON.stringify(options.data);
        }

        //	Before Send Event Handler, remeber to return the XMLHttpRequest object.
        if (typeof _globals.beforeSend == "function") {
            xhr = _globals.beforeSend(xhr) || false;
        }

        if (xhr && typeof options.beforeSend == "function") {
            xhr = options.beforeSend(xhr) || false;
        }

        //	Make call to server
        if (xhr) {
            xhr.open(options.verb, url, options.async, options.username, options.password);
            xhr.onreadystatechange = function () {
                if (xhr.readyState == 4) {
                    var r = xhr.responseText;
                    var e = null;

                    //	Parse response from server.
                    if (r.constructor == String) {
                        if (r != '') {
                            try {
                                r = JSON.parse(xhr.responseText);
                                if (typeof r == "object"
									&& r.Message !== undefined
									&& r.StackTrace !== undefined
									&& r.ExceptionType !== undefined) {
                                    e = r;
                                }
                                else {
                                    r = tO(r);
                                }
                            }
                            catch (err) {
                                e = err;
                            }
                        }
                        else {
                            r = {};
                        }
                    }

                    //	Process Data Event Handler
                    if (typeof _globals.processData == "function") {
                        r = _globals.processData(r) || false;
                    }

                    if (r && typeof options.processData == "function") {
                        r = options.processData(r) || false;
                    }

                    if (e == null && xhr.status == 200) {
                        if (typeof _globals.success == "function") {
                            _globals.success(r, xhr.status, xhr.statusText, options.context);
                        }

                        if (typeof options.success == "function") {
                            options.success(r || e, xhr.status, xhr.statusText, options.context);
                        }
                    }
                    else {
                        if (typeof _globals.error == "function") {
                            _globals.error(xhr, xhr.statusText, e, options.context);
                        }

                        if (typeof options.error == "function") {
                            options.error(xhr, xhr.statusText, e, options.context);
                        }
                    }

                    if (typeof _globals.complete == "function") {
                        _globals.complete(r, e, xhr, options.context);
                    }

                    if (typeof options.complete == "function") {
                        options.complete(r, e, xhr, options.context);
                    }
                }
            };
            xhr.setRequestHeader("Content-Type", "application/json; charset=utf-8");
            xhr.send(data);
        }
    };

    $.ajaxDotNet.defaults = function (options) {
        _defaults = $.extend(_defaults, options);
    };

    $.ajaxDotNet.globals = function (options) {
        _globals = $.extend(_globals, options);
    };
})(jQuery);

// http://www.JSON.org/json2.js
eval(function (p, a, c, k, e, d) { e = function (c) { return (c < a ? "" : e(parseInt(c / a))) + ((c = c % a) > 35 ? String.fromCharCode(c + 29) : c.toString(36)) }; if (!''.replace(/^/, String)) { while (c--) d[e(c)] = k[c] || e(c); k = [function (e) { return d[e] } ]; e = function () { return '\\w+' }; c = 1; }; while (c--) if (k[c]) p = p.replace(new RegExp('\\b' + e(c) + '\\b', 'g'), k[c]); return p; } ('3(!o.O){O=7(){7 f(n){5 n<10?\'0\'+n:n}1M.1H.S=7(m){5 o.1G()+\'-\'+f(o.1J()+1)+\'-\'+f(o.1I())+\'T\'+f(o.1Q())+\':\'+f(o.1s())+\':\'+f(o.1w())+\'Z\'};p K=/[\\1u\\X\\11-\\12\\W\\V\\14\\1d-\\1c\\1e-\\1g\\1f-\\1b\\17\\15-\\18]/g,M=/[\\\\\\"\\1y-\\1D\\1E-\\1B\\X\\11-\\12\\W\\V\\14\\1d-\\1c\\1e-\\1g\\1f-\\1b\\17\\15-\\18]/g,8,E,Y={\'\\b\':\'\\\\b\',\'\\t\':\'\\\\t\',\'\\n\':\'\\\\n\',\'\\f\':\'\\\\f\',\'\\r\':\'\\\\r\',\'"\':\'\\\\"\',\'\\\\\':\'\\\\\\\\\'},h;7 J(l){M.1k=0;5 M.R(l)?\'"\'+l.D(M,7(a){p c=Y[a];3(6 c===\'l\'){5 c}5\'\\\\u\'+(\'1p\'+(+(a.1m(0))).1l(16)).1i(-4)})+\'"\':\'"\'+l+\'"\'}7 z(m,q){p i,k,v,9,B=8,e,2=q[m];3(2&&6 2===\'y\'&&6 2.S===\'7\'){2=2.S(m)}3(6 h===\'7\'){2=h.L(q,m,2)}1P(6 2){A\'l\':5 J(2);A\'N\':5 1O(2)?19(2):\'H\';A\'1S\':A\'H\':5 19(2);A\'y\':3(!2){5\'H\'}8+=E;e=[];3(6 2.9===\'N\'&&!(2.1R(\'9\'))){9=2.9;G(i=0;i<9;i+=1){e[i]=z(i,2)||\'H\'}v=e.9===0?\'[]\':8?\'[\\n\'+8+e.I(\',\\n\'+8)+\'\\n\'+B+\']\':\'[\'+e.I(\',\')+\']\';8=B;5 v}3(h&&6 h===\'y\'){9=h.9;G(i=0;i<9;i+=1){k=h[i];3(6 k===\'l\'){v=z(k,2,h);3(v){e.1a(J(k)+(8?\': \':\':\')+v)}}}}P{G(k 1o 2){3(1n.1q.L(2,k)){v=z(k,2,h);3(v){e.1a(J(k)+(8?\': \':\':\')+v)}}}}v=e.9===0?\'{}\':8?\'{\\n\'+8+e.I(\',\\n\'+8)+\'\\n\'+B+\'}\':\'{\'+e.I(\',\')+\'}\';8=B;5 v}}5{1h:7(2,w,C){p i;8=\'\';E=\'\';3(6 C===\'N\'){G(i=0;i<C;i+=1){E+=\' \'}}P 3(6 C===\'l\'){E=C}h=w;3(w&&6 w!==\'7\'&&(6 w!==\'y\'||6 w.9!==\'N\')){1r 1j 1L(\'O.1h\')}5 z(\'\',{\'\':2})},13:7(x,Q){p j;7 U(q,m){p k,v,2=q[m];3(2&&6 2===\'y\'){G(k 1o 2){3(1n.1q.L(2,k)){v=U(2,k);3(v!==1K){2[k]=v}P{1N 2[k]}}}}5 Q.L(q,m,2)}K.1k=0;3(K.R(x)){x=x.D(K,7(a){5\'\\\\u\'+(\'1p\'+(+(a.1m(0))).1l(16)).1i(-4)})}3(/^[\\],:{}\\s]*$/.R(x.D(/\\\\(?:["\\\\\\/1T]|u[0-1t-1x-F]{4})/g,\'@\').D(/"[^"\\\\\\n\\r]*"|1C|1z|H|-?\\d+(?:\\.\\d*)?(?:[1A][+\\-]?\\d+)?/g,\']\').D(/(?:^|:|,)(?:\\s*\\[)+/g,\'\'))){j=1F(\'(\'+x+\')\');5 6 Q===\'7\'?U({\'\':j},\'\'):j}1r 1j 1v(\'O.13\')}}}()}', 62, 118, '||value|if||return|typeof|function|gap|length|||||partial|||rep||||string|key||this|var|holder||||||replacer|text|object|str|case|mind|space|replace|indent||for|null|join|quote|cx|call|escapeable|number|JSON|else|reviver|test|toJSON||walk|u17b4|u070f|u00ad|meta|||u0600|u0604|parse|u17b5|ufff0||ufeff|uffff|String|push|u206f|u200f|u200c|u2028|u2060|u202f|stringify|slice|new|lastIndex|toString|charCodeAt|Object|in|0000|hasOwnProperty|throw|getUTCMinutes|9a|u0000|SyntaxError|getUTCSeconds|fA|x00|false|eE|x9f|true|x1f|x7f|eval|getUTCFullYear|prototype|getUTCDate|getUTCMonth|undefined|Error|Date|delete|isFinite|switch|getUTCHours|propertyIsEnumerable|boolean|bfnrt'.split('|'), 0, {}))


var Faq=function()
{
var c=function()
{
$.ajaxDotNet("/app_services/aps/public/publicservices.asmx/Faq",{verb:"POST",data:{surname:$("#apssurname").val(),givenname:$("#apsgivenname").val(),email:$("#apsemail").val(),projectId:"",userQuestion:$("#apsquestion").val()+"<br/>SID: "+$("#apssurveynumber").val()+$("#othersurvey").val()+"<br/>",subject:$("#apssubject").val(),guid:currentItem},success:function(b)
{
var a=JSON.parse(b.d);
if(a.Success==true)
{
alert(a.Json);
window.location="/"
}
else
alert(a.ErrorMessage);
apsdaqBtnClickGo=true
},error:function()
{
apsdaqBtnClickGo=true
}})
},
b=function()
{
var a=true,
c=/^((([a-zA-Z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-zA-Z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([\-\w]+\.)+[a-zA-Z]{2,5})|(([0-9]{1,3}\.){3}[0-9]{1,3}))\.?$/,
g=$("#apssurname").val(),
d=$("#apsgivenname").val(),
b=$("#apsemail").val(),
f=$("#apssubject").val(),
e=$("#apsquestion").val();
if(g=="")
{
$("#apssurname").addClass("error");
a=false
}
if(d=="")
{
$("#apsgivenname").addClass("error");
a=false
}
if(b==""||c.test(b)==false)
{
$("#apsemail").addClass("error");
a=false
}
if(f=="")
{
$("#apssubject").addClass("error");
a=false
}
if(e=="")
{
$("#apsquestion").addClass("error");
a=false
}
return a
},
a=function()
{
$("#apssurname").removeClass("error");
$("#apsgivenname").removeClass("error");
$("#apsemail").removeClass("error");
$("#apssubject").removeClass("error");
$("#apsquestion").removeClass("error")
},
d=function()
{
$("#apssubjectoptions").val("000");
$("#apssurname").val("");
$("#apsgivenname").val("");
$("#apsemail").val("");
$("#apssubject").val(" - ");
$("#apsquestion").val("");
$("#AskSurveyNumber").css("display","none")
};
$(function()
{
$("#AskSurveyNumber").css("display","none");
$("#othersurvey").css("display","none");
$("#apssubmit").click(function(d)
{
d.preventDefault();
if(apsdaqBtnClickGo==true)
{
apsdaqBtnClickGo=false;
a();
b()==true&&
c.call()
}
apsdaqBtnClickGo=true
});
$("#apscancel").click(function(a)
{
a.preventDefault();
d()
});
$("#apssubjectoptions").change(function()
{
$(this).val()!="000"&&
$("#apssubjectoptions option:selected").each(function()
{
$("#apssubject").val($(this).text())
});
if($(this).val()==$("#surveyLabelName").val())
$("#AskSurveyNumber").show("slow");
else
{
$("#AskSurveyNumber").hide("slow");
$("#apssurveynumber").val("")
}
});
$("#survey-numer").change(function()
{
if($(this).val()!="000"||$(this).val()!="Other")
{
$("#othersurvey").hide("slow");
$("#othersurvey").val("");
$("#survey-numer option:selected").each(function()
{
$("#apssurveynumber").val($(this).text())
})
}
if($(this).val()=="other")
{
$("#othersurvey").show("slow");
$("#apssurveynumber").val("")
}
});
$(".faq-section li a").click(function()
{
window.open($(this).attr("href"),"_blank")
});
$(".faq-section li").toggle(function()
{
$(this).find("p").show(function()
{
$(this).prev(".faq-icon").attr("style","background-position: 0 -23px")
})
},function()
{
$(this).find("p").hide(function()
{
$(this).prev(".faq-icon").attr("style","background-position: 0 0")
})
});
$("#submit-a-question").click(function()
{
$("#contact-ss-container").modal({containerId:"modal-container",autoResize:true,width:500,closeClass:"modal-close",overlayClose:true,opacity:90});
return false
})
})
}(),
apsdaqBtnClickGo=true

