
/*0.min.js*/
var usernameCheckerTimer;
$(document).ready(function () {
    $('.addnew').click(function () {
        var table = $(this).closest('table');
        DuplicateRow(table, true);
        return false;
    });
    $("a.removerow").live("click", function () {
        var table = $(this).closest('table');
        $(this).closest("tr").remove();
        FixRowNames(table);
        return false;
    });
    $('.username').keyup(function () {
        clearTimeout(usernameCheckerTimer);
        if ($('.username').val().length == 0) {
            $('#userstatus').fadeIn().html('');
            $('.go').show();
        } else {
            $('#userstatus').fadeIn().html("<span style='color: #999999;'>Checking user name...</span>");
            $('.go').hide();
            usernameCheckerTimer = setTimeout("checkUsernameUsage();", 750);
        }
    });
    if (jQuery.url.attr("query")) {
        var o = new Object();
        //o.query = jQuery.url.param("q");
        var DTO = { 'Data': o };
        $.ajax({
            type: "POST",
            url: 'data.aspx?' + jQuery.url.attr("query"),
            data: JSON.stringify(DTO),
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function (data) {
                DisplayRegistration(data);
            }
        });
    } else {
        $("#cancel").hide();
    }
    $('.usertype input').click(function () {
        $("input[rel='IsBroker']").val($(this).val());
    });
});
function DuplicateRow(table, focus) {
    var firstRow = $(table).children('tbody').children('tr:first');
    var lastRow = $(table).children('tbody').children('tr:last');
    var newRow = firstRow.clone();
    $('td:last-child', newRow).html("<a href='#' class='removerow'>Remove<\/a>");
    $('input', newRow).not("[rel='Company Name']").val("");
    $('select', newRow).val('Select...');
    lastRow.after(newRow);
    if (focus) {
        $("input", newRow).get(0).focus();
    }
    FixRowNames(table);
}
function FixRowNames(table) {
    $('td', table).each(function (i) {
        var RowIndex = $(this).parent().parent().children().index($(this).parent());
        if (RowIndex != 0) {
            var inp$ = $(this).find("input,select");
            var title = inp$.attr("rel");
            if (title) {
                title = title.replace(/[0-9]/g, '');
                title = jQuery.trim(title);
                title = title + " " + RowIndex;
                inp$.attr("rel", title);
            }
        }
    });
}
function DisplayRegistration(data) {
    if (data.ID > 0) {
        $("#searchtable").replaceWith('');
        $("#RegistrationID").val(data.ID);
        $.each(data.Groups, function (i, group) {
            var table = $("table[meta='" + group.t + "']");
            for (var i = 0; i < group.v; i++) {
                DuplicateRow(table, false);
            }
        });
        $.each(data.Rows, function (i, row) {
            //s += row.g + ":" + row.t + ":" + row.v + "\n";
            if (row.v == "X") {
                var cb$ = $("label:contains('" + row.t + "')");
                $(cb$.siblings("input:checkbox")).attr("checked", true);
            } else {
                $("input[meta='" + row.g + "'][rel='" + row.t + "']").val(row.v);
            }
        });
        $(".companyname").attr("disabled", "disabled");
        $(".username").attr("disabled", "disabled");
        $(".password").attr("disabled", "disabled");
        $(".go span").text("Update Registration");
        $("#cancel").show();
    }
}

function checkUsernameUsage() {
    var o = new Object();
    o.username = $('.username').val();
    var DTO = { 'Data': o };
    $.ajax({
        type: "POST",
        url: 'data.aspx/IsUserAvailable',
        data: JSON.stringify(DTO),
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function (msg) {
            if (msg.d) {
                $('#userstatus').html("<span style='color: #327419;'>User name is available...</span>").fadeOut(3000);
                $('.go').show();
            } else {
                $('.go').hide();
                $('#userstatus').fadeIn().html("<span style='color: Red;'>User name is not available. Please select a different user name.</span>");
            }
        }
    });
}
function SubmitRegistaration() {
    $("#summary").html("* Denotes required fields.");
    if ($("#aspnetForm").validate().form()) {
        SubmitRegistarationData();
    } else {
        $('html, body').animate({
            scrollTop: $("#summary").offset().top
        }, 1000);
        $("#summary").html("Please fill all the required fields.");
    }
}
function SubmitRegistarationData() {
    var o = {};
    o.Show = $("input[rel='ShowID']").val();
    if ($("#RegistrationID").val() > 0) {
        o.RegistrationID = $("#RegistrationID").val();
    }
    o.IsBroker = $("input[rel='IsBroker']").val();
    o.Total = $("div.grandtotal").html();
    var i = 0;
    var items = [];
    $("input[type='text'],input[type='checkbox'],input[type='radio'],textarea,select", $('.register')).each(
        		function () {
        		    var x = new Object();
        		    items[i] = x;
        		    if ($(this).hasClass("accountid")) {
        		        x.CustomTitle = "accountid";
        		    }
        		    if ($(this).attr("type") == "checkbox") {
        		        x.Title = $(this).next("label").text();
        		        x.Group = $(this).parent().attr("meta");
        		        if (this.checked) {
        		            x.Value = "X";
        		            $(this).replaceWith("<img src='http://www.tradeshoweasy.com/images/accept.gif'/>");
        		        } else {
        		            x.Value = "";
        		            $(this).next("label").replaceWith('');
        		            $(this).replaceWith('');
        		        }
        		    } else if ($(this).attr("type") == "radio") {
        		        if (this.checked == true) {
        		            x.Title = $(this).parent().attr("rel");
        		            x.Group = $(this).parent().attr("meta");
        		            x.Value = $(this).val();
        		            $(this).parent().replaceWith($(this).val());
        		        }
        		    } else {
        		        x.Title = $(this).attr("rel");
        		        x.Value = $(this).val();
        		        x.Group = $(this).attr("meta");
        		        $(this).replaceWith($(this).val());
        		    }
        		    i++;
        		}
    	    );
    o.rows = items;
    $(".addnew, input[type='hidden'], label.error, .hideonsubmit , .removerow").replaceWith('');
    $("td").removeClass("r");

    o.Html = $('.register').html();
    o.Link = jQuery.url.attr("source");
    var DTO = { 'Data': o };

    $('.register').html("Submitting...Please wait.");
//    alert(JSON.stringify(DTO));
    $.ajax({
        type: "POST",
        url: 'data.aspx/s',
        data: JSON.stringify(DTO),
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function (msg) {
            try {
                SubmitCompleted();
            } catch (e) {

            }
            $('.register').html(msg.d);
        }
    });
}
function setup() {
    if ($(".found").text() == "1") {
        $("span", $('#resulttable')).each(function () {
            $("." + $(this).attr("class")).val($(this).text());
        });
        $(".companyname").attr("readonly", "readonly");
        var html = "<table class='hideonsubmit'><tr><td style='line-height:30px;font-weight:bold; font-size:14px;'><a href='" + jQuery.url.attr("source") + "'>Not your Company? Click here to start over.</a></td></tr></table>";
        $("#searchtable").replaceWith(html);
        checkUsernameUsage();
    }
}
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(setup);

