function stripAlphaChars(pstrSource) {
    var m_strOut = new String(pstrSource);
    m_strOut = m_strOut.replace(/[^0-9]/g, '');

    return m_strOut;
}

function up(str_EventObjectID) {
    var str_CurrItdIDID = $("#" + str_EventObjectID).attr('id');
    var li_PrevItdID = $("#" + str_CurrItdIDID).prev().attr('id');

    // swap
    $("#" + li_PrevItdID).insertAfter("#" + str_CurrItdIDID);
}

function down(str_EventObjectID) {
    var str_CurrItdIDID = $("#" + str_EventObjectID).attr('id');
    var li_NextItdID = $("#" + str_CurrItdIDID).next().attr('id');

    // Swap
    $("#" + li_NextItdID).insertBefore("#" + str_CurrItdIDID);
}

function confirmremove(str_EventObjectID) {
    var a_CurrSubID = $("#" + str_EventObjectID).attr('id');
    a_CurrSubID = stripAlphaChars(a_CurrSubID);
    var str_ProjectTitle = "image" + a_CurrSubID
    str_ProjectTitle = $("#" + str_ProjectTitle).attr('alt');
    $("#dia_RemItd").html("<p>" +
		                          "<span class=\"ui-icon ui-icon-info\"/>" +
		                          "<span>You are about to remove <b>" + str_ProjectTitle + "</b> from your itinerary.</span>" +
	                              "</p>");
    //$("#dia_RemItd").dialog('option', 'title', 'Are you sure?');
    $("#dia_RemItd").dialog('option', 'buttons', {
        "Confirm": function() {
            remove(str_EventObjectID);
            $(this).dialog("close");
        },
        "Cancel": function() {
            $(this).dialog("close");
        }
    });
    $("#dia_RemItd").dialog("open");
}


function remove(str_EventObjectID) {

    var str_CurrItdID = $("#" + str_EventObjectID).parent().parent().attr('id');
    var str_Zone = $("#" + str_CurrItdID).parent().attr('id');
    str_Zone = str_Zone.substring(str_Zone.length - 1);
    var a_CurrSubID = $("#" + str_EventObjectID).attr('id');
    a_CurrSubID = stripAlphaChars(a_CurrSubID);
    $.ajax({
        url: '/visitors/getItinerary.aspx?Remove from My Night=' + $(document).getUrlParam("id") + '&hid_Zone=' + str_Zone + '&hid_subID=' + a_CurrSubID,
        success: function() {
            // Delete from list
            $("#" + str_CurrItdID).remove();
        }
    });

}

function reorder(str_CurrItdID, str_CallBack) {

    var str_Zone = $("#" + str_CurrItdID).parent().attr('id');
    var ul_CurrTab = document.getElementById(str_Zone).getElementsByTagName("li");

    str_Zone = str_Zone.substring(str_Zone.length - 1);

    if (str_CallBack == 'up')
        up(str_CurrItdID);
    else if (str_CallBack == 'down')
        down(str_CurrItdID);

    var a_Itds = new Array(ul_CurrTab.length - 2);
    for (var i = 0; i < ul_CurrTab.length - 2; i++) {
        a_Itds[i] = $(ul_CurrTab[i + 2]).attr('id');
    }
    $.ajax({
        url: '/visitors/getItinerary.aspx?a_Itds=' + a_Itds.join(',') + '&zone=' + str_Zone + '&itnID=' + $(document).getUrlParam("id"),
        error: function() {
            if (str_CallBack == 'down')
                up(str_CurrItdID);
            else if (str_CallBack == 'up')
                down(str_CurrItdID);
        }
    });

    return false;
}

function MakeTabsSortable() {
    $("#ul_ZoneA").sortable({
        items: 'li:not(.ui-state-disabled)',
        update: function() {
            if (document.getElementById("ul_ZoneA").childNodes != null) {
                var str_FirstItnID = document.getElementById("ul_ZoneA").getElementsByTagName("li");
                reorder(str_FirstItnID[2].id, 'null')
            }
        }
    });
    $("#ul_ZoneA").disableSelection();

    $("#ul_ZoneB").sortable({
        items: 'li:not(.ui-state-disabled)',
        update: function() {
            if (document.getElementById("ul_ZoneB").childNodes != null) {
                var str_FirstItnID = document.getElementById("ul_ZoneB").getElementsByTagName("li");
                reorder(str_FirstItnID[2].id, 'null')
            }
        }
    });
    $("#ul_ZoneB").disableSelection();

    $("#ul_ZoneC").sortable({
        items: 'li:not(.ui-state-disabled)',
        update: function() {
            if (document.getElementById("ul_ZoneC").childNodes != null) {
                var str_FirstItnID = document.getElementById("ul_ZoneC").getElementsByTagName("li");
                reorder(str_FirstItnID[2].id, 'null')
            }
        }
    });
    $("#ul_ZoneC").disableSelection();
}
