﻿var CMD_SUB = 12;
var CMD_TITLE_BASKET = 104;
var CMD_VIEW_DETAIL = 105;
var CMD_GAP_SEARCH = 108;
var CMD_ADD_TB = 110;
var CMD_SAVE_PRIOR_SEARCH = 120;
var CMD_PRIOR_SEARCH_DETAIL = 121;
var gSessID;
gSessID = "";
var activeAjaxRequestType = '';
var fieldGroupSelectorArray;
var docDataSubmit = false;
var clearFormInputCalled = null;
function fnSubmitMainPage() {
    try {
        var fram2 = parent.frames(0);
        if (gSessID == "") {
            var fr2 = parent.frames(0).document.forms[0];
            gSessID = fr2.SessId.value;
        }
        fram2.onerror = DoNothing;
        fram2.location = "default.aspx?SessId=" + gSessID + "&RetAdrs=default.aspx&FR=1";
        //alert("default.aspx?SessId=" + gSessID);
    }
    catch (e) { }
}

function fnSubmitMessages() {
    var fram2 = parent.frames(2);
    if (gSessID == "") {

        var fr2 = parent.frames(2).document.forms[0];
        //alert("Frame 2 form name:" + fr2.name);
        gSessID = fr2.SessId.value;
        //alert("gSessID:" + gSessID);
    }
    fram2.onerror = DoNothing;
    //alert("messages.aspx?SessId=" + gSessID);
    fram2.location = "messages.aspx?SessId=" + gSessID + "&RetAdrs=default.aspx&FR=1";
}

function fnSubmitHelpPage() {
    var fram2 = parent.frames(0);
    if (fram2) {
        fram2.onerror = DoNothing;
        if (gSessID == "") {
            try {
                var fr2 = parent.frames(0).document.forms[0];
                gSessID = fr2.SessId.value;
            }
            catch (e) { }
        }
        //alert(gSessID);
        fram2.location = "help/index.html";
    }

}
function DoNothing(sMsg, sUrl, sLine) {
    return true;
}
clearFormResults = function() {
jQuery('.messagesID').remove();
}

clearFormInput = function(clearType) {
jQuery(':text:visible,.txtCondo,.txtCIC,.txtAuditor,.txtBook,.txtPage,.txtDocRoll,.txtDocFrame').not('.jCalendar').val('');
    clearFormResults();
    clearFormInputCalled = (clearType && clearType == 'Image') ? 'Image' : 'Search';
    if (clearFormInputCalled == 'Image')
        jQuery('.hdRefID').val('');
}

searchConditionRadioBlockClicked = function(elem) {
    var parentElement = jQuery(elem).parents('.seachConditionRadioBlock');
    parentElement.find(':radio').attr('checked', 'true');
    var otherElement = jQuery('.seachConditionRadioBlock');
    otherElement.find(':text:visible').not(parentElement.find(':text:visible')).val('');

    if (jQuery(':radio').get(0).checked == true)
        showActiveInputGroup(jQuery('.txtHouse'));
    else
        showActiveInputGroup(jQuery('.txtPID'));
}
searchResultChangeSelectionState = function(elem, state) {
    var parentElement = jQuery(elem).parents('.searchResult');
    parentElement.find(':checkbox').attr('checked', state);
}
goToSearchPage = function(elemId, maxPage, searchType, TypeAjax) {
    try {
        var pageNdx = parseInt(jQuery("#" + elemId).val(), 10);
        if (isNaN(pageNdx) || pageNdx > maxPage || pageNdx <= 0) {
            alert("Can't go to page" + jQuery("#" + elemId).val() + ". Maximum is " + maxPage);
            return;
        }
        switch (TypeAjax) {
            case 1:
                fnSubmitAgain(pageNdx, searchType); break;
            case 2: fnSubmitAgainMessages(pageNdx, searchType); break;
            default: fnSubmitAgainAjax(pageNdx, searchType); break;
        }
    }
    catch (e) {
    }
}
initCalendar = function() {
var calendarPlaceholder = jQuery('.jCalendar');
if (calendarPlaceholder.length > 0)
    calendarPlaceholder.datepicker({
        changeMonth: true,
        changeYear: true,
        showOn: 'button',
        buttonImage: '/Content/Images/calendar.png',
        buttonImageOnly: true
    });
}
nameSearchBlockClicked = function(elem) {
    var parentElement = jQuery(elem).parents('.nameSearchBlock');
    parentElement.find(':radio').attr('checked', 'true');
    var otherElement = jQuery('.nameSearchBlock');
    otherElement.find(':text:visible').not(parentElement.find(':text:visible')).val('');
    showActiveInputGroup(parentElement.find(':text:visible').get(0));


    if (jQuery(':radio').get(0).checked == true)
        showActiveInputGroup(jQuery('.txtFName'));
    else
        showActiveInputGroup(jQuery('.txtCName'));

}
closeDocWindow = function(elem) {
    jQuery(elem).parents('.docInfoWindow').hide();
}
closeSubdivisionWindow = function() {
    jQuery('.subdivisionInfoWindow').hide();
}
clearCallType = function() {
    jQuery('.txtCallType:hidden').val('');
}
showActiveInputGroup = function(elem) {
    if (fieldGroupSelectorArray == null)
        return;
    var calendars = jQuery('.jCalendar');
    if (calendars.length == 2 && (calendars.get(0) == elem || calendars.get(1) == elem))
        return;
    var ownElem = jQuery(elem);
    for (var i = 0; i < fieldGroupSelectorArray.length; i++) {
        var currentGroup = jQuery(fieldGroupSelectorArray[i]);
        if (ownElem.filter(fieldGroupSelectorArray[i]).length > 0)
            currentGroup.toggleClass('disabledInput', false);
        else
            currentGroup.toggleClass('disabledInput', true).val('');
    }
    
    //OFL 4/20/2010 MKS #11245 When tabbing to the company name field (if the Individuals radial button is selected) the button defaults to ‘Individuals’
     var parentElement = jQuery(elem).parents('.nameSearchBlock');
     parentElement.find(':radio').attr('checked', 'true');
    //get the one checked
    var searchConditionInputBlock = $('.searchConditionInputBlock').find('input:radio:checked').val();
    //alert(searchConditionInputBlock);
    //OFL end 4/20/2010 MKS #11245
    }

function isInteger(sInteger) {

    var isInt = true;
    inputStr = sInteger.toString(); // in case not a string already
    for (var i = 0; i < inputStr.length; i++) {
        var oneChar = inputStr.charAt(i);
        if (oneChar < "0" || oneChar > "9") {
            isInt = false;
            i = inputStr.length; // break out of loop when bad char found
        }
    } return isInt;
}
function getValidValue(className, visibleElement) {
    var destValue = jQuery('.' + className + ((visibleElement) ? ':visible' : '')).val();
    return (typeof (destValue) == "undefined" || destValue == null) ? '' : destValue;
}
function fnSubmitAgain(intPage, searchType) {
    fnSubmit(searchType);
    var frm = document.forms[0];
    frm.hdPage.value = intPage;
    frm.submit();
}

function fnSubmitAgainMessages(intPage) {
   // var frm = document.forms[0];

    jQuery('.txtAjaxPager:hidden').val(intPage);
       var frm = document.forms[0];
    frm.submit();
}

function RunGapSearch() {
    document.forms[0].hdCmd.value = CMD_GAP_SEARCH;
    docDataSubmit = true;
    docDetailUpdate();
    //UniversalSubmit();
}

function AddIntoTB() {
    var frm = document.forms[0];
        getCheckSelectedGap();
        document.forms[0].hdCmd.value = CMD_ADD_TB;
        UniversalSubmit();
}
function addBorderModificator(printAddon, class1, class2) {
    printAddon.find('.' + class1 + ',.' + class1 + '1').each(function() {
        if (jQuery(this).next().hasClass(class2))
            jQuery(this).after('<tr><td colSpan=6><hr class="printModificatorBorder"></hr></td></tr>');
    });
}
function PrintCurrentDoc() {
    jQuery('.noprint,.mainContentArea').hide();
    var printAddon = jQuery('.printArea:first').clone();
    printAddon.find('td,th,tr,thead,tbody,table').css({
        'border': 'none'
    });
    printAddon.find('table').css({
        'width': '100%'
    });
    printAddon.find('table').wrap('<div style="border:solid 1px black;margin-bottom:10px;width:99%"></div>');

    printAddon.find('.searchResultOddRow,.searchResultEvenRow,.searchResultOddRow1,.searchResultEvenRow1').addClass('printModificator');
    addBorderModificator(printAddon, 'searchResultOddRow', 'searchResultEvenRow');
    addBorderModificator(printAddon, 'searchResultEvenRow', 'searchResultOddRow');
    jQuery('.printWindow').append(printAddon).show();
    window.print();
    jQuery('.printWindow').empty().hide();
    jQuery('.noprint,.mainContentArea').show();
}
function switchClass(parentElem, oldClass, newClass) {
    parentElem.filter('.' + oldClass).removeClass(oldClass).addClass(newClass);
}
function tabItemSelect(elem) {
    var selfElem = jQuery(elem);
    if (selfElem.hasClass('viewImageTabItemS'))
        return;
    AnotherSearch();
    var tabHeaders = selfElem.parent().children();
    var selectionNdx = tabHeaders.index(selfElem);
    setActiveTabPage(selectionNdx);
    var frm = document.forms[0];
    frm._activeTabPage.value = selectionNdx;
}
function setActiveTabPage(pageNdx) {
    if (pageNdx < 1)
        pageNdx = 1;
    var tabHeaders = jQuery('.viewImageTabHeader').children();
    switchClass(tabHeaders, 'viewImageTabLeftS', 'viewImageTabLeftU');
    switchClass(tabHeaders, 'viewImageTabItemS', 'viewImageTabItemU');
    switchClass(tabHeaders, 'viewImageTabIntervalSU', 'viewImageTabIntervalUU');
    switchClass(tabHeaders, 'viewImageTabIntervalUS', 'viewImageTabIntervalUU');
    switchClass(tabHeaders, 'viewImageTabRightS', 'viewImageTabRightU');
    if (pageNdx <= 1)
        switchClass(tabHeaders, 'viewImageTabLeftU', 'viewImageTabLeftS');
    else
        switchClass(tabHeaders.eq(pageNdx - 1), 'viewImageTabIntervalUU', 'viewImageTabIntervalUS');
    switchClass(tabHeaders.eq(pageNdx), 'viewImageTabItemU', 'viewImageTabItemS');
    if (pageNdx >= tabHeaders.length - 2)
        switchClass(tabHeaders, 'viewImageTabRightU', 'viewImageTabRightS');
    else
        switchClass(tabHeaders.eq(pageNdx + 1), 'viewImageTabIntervalUU', 'viewImageTabIntervalSU');
    var tabItemList = jQuery('.viewImageTab').find('.viewImageTabItem');
    tabItemList.hide().eq(pageNdx / 2).show();
    tabItemList.find(':text:hidden').val('');
    if (pageNdx <= 1)
        jQuery('.txtInst1Number').select().focus();
    if (adjustAreaList)
        adjustAreaList(pageNdx);
}
function fnSubmitSubdivisionAsync(pageNdx) {
    var strSubdivision = getValidValue('txtSubdivision', true);
    if (strSubdivision == '') {
        alert("Please enter some text in Subdivision");
        return false;
    }
    clearCallType();
    jQuery('.txtAjaxPage').val(pageNdx);
    var frm = document.forms[0];
    frm.hdRegion.value = getRegion();
    frm.hdCmd.value = CMD_SUB;
    if (frm.hdRegion.value == "") return false;
    fnSubmit("LB");
    frm.submit();
//    docDataSubmit = true;
//    subdivisionUpdate();
}
function fnSubmitAgainAjax(intPage, searchType) {
    var frm = document.forms[0];
    frm.hdCountySavePrvScreen.value = frm.ddlCounty.value;
    fnSubmitSubdivisionAsync(intPage);
}
function setTractBookRadioFocus(elem) {
    var parentElem = jQuery(elem).closest('.viewImageTabItem');
    var firstBlock = (parentElem.find(".tractBooksBlockText:eq(0)").get(0) == elem);
    parentElem.find(".searchConditionInputBlock").eq((firstBlock) ? 0 : 1).find(':input:visible:eq(0)').focus();
}
function setBookPageData(elem, book, page, subdivision, strRefID) {
    processFunctionUrl(elem);
    var frm = document.forms[0];
    var strtemp;
    jQuery('.txtCondo,.txtCIC,.txtAuditor,.txtBook,.txtPage').val('');
    book = book.toUpperCase();
    if (book == 'CONDO')
        jQuery('.txtCondo').val(page);
    else if (book == 'CIC')
        jQuery('.txtCIC').val(page);
//    else if (book == 'AS')
//        jQuery('.txtAuditor').val(page);
    else {
        jQuery('.txtBook').val(book);
        jQuery('.txtPage').val(page);
//        frm.hdRefRID.value = strRefID;
    }
    frm.hdCmd.value = "";
    strtemp = unescape(subdivision);
    jQuery('.txtSubdivision').val(strtemp.replace(/[+]/g, " "));
    //save this county to display back in the search form\r\n");
    frm.hdCountySavePrvScreen.value = frm.ddlCounty.value;
    closeSubdivisionWindow();
    var hiddenImageInfo = jQuery('tr.hiddenImageInfo');
    if (hiddenImageInfo.length > 0) {
        jQuery('.messagesID').find('th').not('.hiddenImageInfo').remove();
        jQuery('.messagesID').find('th.hiddenImageInfo').removeClass('hiddenImageInfo');
        jQuery('.messagesID').find('tr').not('.hiddenImageInfo').remove();
        var imageRows = jQuery('.messagesID').find('tr.hiddenImageInfo').removeClass('hiddenImageInfo');
        jQuery('.totalResult').text('Total Matches: ' + imageRows.length.toString());
    }
    else {
        jQuery('.messagesID').remove();
    }
   
}
PinInitialPosition = function() {
    controlBlockPinned = true;
    controlBlock.toggleClass('viewImageControlBlockTransparent', false).toggleClass('viewImageControlBlockVisible', true);
    controlBlock.animate({
        top: controlBlockInitialPosition.top + "px",
        left: controlBlockInitialPosition.left + "px"
    }, 300);
}
setControlBlockPosition = function() {
if (!controlBlockPinned && controlBlockPosition)
        controlBlock.animate({
            top: jQuery(window).scrollTop() + controlBlockPosition.top + "px",
            left: jQuery(window).scrollLeft() + controlBlockPosition.left + "px"
        }, 300);
}
loadDocImage = function() {
    try {
        var elem = jQuery('.documentImage').get(0);
        if (elem.complete) {
            jQuery('.loadingNotification').hide();
            setControlBlockPosition();
        }
        else {
            window.setTimeout(function() {
                loadDocImage(elem);
            }, 500);
            return;
        }
    }
    catch (e) {
    }
}
ZoomOut = function(elem) {
    ZoomPicture(0.8);
}
ZoomIn = function(elem) {
    ZoomPicture(1.25);
}
function ZoomPicture(zoomCoeff) {
    var elem = jQuery('.documentImage').get(0);
    jQuery(elem).height(jQuery(elem).height() * zoomCoeff);
    jQuery(elem).width(jQuery(elem).width() * zoomCoeff);
    var maxImageWidth = parseInt(jQuery('#maxImageWidthInput').val());
    if ((_requestedImageWidth < jQuery(elem).width() && _requestedImageWidth < 0.999 * maxImageWidth) ||
        (jQuery(elem).width() > 100 && _requestedImageWidth > jQuery(elem).width() * 2)) {
        var desiredWidth = jQuery(elem).width();
        if (desiredWidth > maxImageWidth)
            desiredWidth = maxImageWidth;
        if (_requestedImageWidth != desiredWidth) {
            jQuery('.loadingNotification').show();           
            elem.src = elem.src.substring(0, elem.src.indexOf("DesiredWidth")) + "DesiredWidth=" + jQuery(elem).width();
            _requestedImageWidth = Math.floor(desiredWidth * 3 / 2);
        }
    }
}
function PseudoSubmit(elem) {
    jQuery(elem).find(":hidden").val("Y");
    document.forms[0].submit();
}
function UpdateTitleBasket(gRecordID) {
    if (jQuery(':checked').length > 0) {
        grabStoredResults(false);
    }
    else {
        alert('No documents selected.');
    }
}

function UpdateAllTitleBasket() {
    grabStoredResults(true);
}
function grabStoredResults(takeAll) {
    var strDocRIDs = '';
    var strDocLegalRIDs = '';
    if (!takeAll) {
        var checkList = jQuery('.searchTableBody').find((takeAll) ? ':checkbox' : ':checked');
        if (checkList.length == 0) {
            alert('No documents selected.');
            return;
        }
        var hdInfoMask = new RegExp("^hdDocLegalRID");
        checkList.each(function(i) {
            if (strDocRIDs.length == 0)
                strDocRIDs = this.value;
            else
                strDocRIDs += ',' + this.value;
            var hdDocLegalRID = jQuery(this).parent().find(":hidden").each(function(j) {
                if (hdInfoMask.test(this.name)) {
                    if (strDocLegalRIDs.length == 0)
                        strDocLegalRIDs = this.value;
                    else
                        strDocLegalRIDs += ',' + this.value;
                }
            });
        });
    }
//    if (frmThisPage.hdRefRID && frmThisPage.hdRefRID.value.length && (frmThisPage.hdRefRID.value.length > 0))
//        hdRefRID = frmThisPage.hdRefRID.value;
//    else
//        frmThisPage.hdTBCmd.value = "Print";
    document.forms[0].hdDocRIDs.value = (takeAll) ? "TakeThemAll" : strDocRIDs;
    document.forms[0].hdDocLegalRIDs.value = strDocLegalRIDs;
    document.forms[0].hdCmd.value = CMD_TITLE_BASKET;
    docDataSubmit = true;
    titleBasketUpdate();
    //    if ((strDocRIDs.length > 0 && (frmOpener.name == 'frmGIName' || frmOpener.name == 'frmGINameDetail' || frmOpener.name == 'frmCert' || frmOpener.name == 'frmCertDetail')) || (strDocRIDs.length > 0 && strDocLegalRIDs.length > 0 && fnNumCommas(strDocRIDs) == fnNumCommas(strDocLegalRIDs))) {
//        frm.submit();
//    }
//    else {
//        if (strDocRIDs.length == 0)
//            alert('No documents selected.');
//        else
//            alert('Unknown error.  Contact web administrator.');
//        window.close();
//    }
}
function UpdateSingleTitleBasket() {
    var frm = document.forms[0];
    if (frm.txtDocRID && frm.txtDocRID.value != '')
        frm.hdDocRIDs.value = frm.txtDocRID.value;

    if (frm.hdDocRID && frm.hdDocRID.value != '')
        frm.hdDocRIDs.value = frm.hdDocRID.value;

    if (frm.hdtxtPID && frm.hdtxtPID.value != '')
        frm.hdDocLegalRIDs.value = frm.hdtxtPID.value;

    if (frm.txtDocLegalRID && frm.txtDocLegalRID.value != '')
        frm.hdDocLegalRIDs.value = frm.txtDocLegalRID.value;

    document.forms[0].hdCmd.value = CMD_TITLE_BASKET;
    docDataSubmit = true;
    titleBasketUpdate();
}
function logout() {
    var frm = document.forms[0];
    if (frm.SessId)
        frm.SessId.value = '';
}
function UniversalSubmit() {
    jQuery(':hidden[name="Submit"]').val('Search');
    document.forms[0].submit();
}
function SetSubmitDates() {
    jQuery('.realDateFrom').val(jQuery('.txtFromDate').val());
    jQuery('.realDateTo').val(jQuery('.txtToDate').val());
}
function AdjustFrames() {
    if (top.frames.length != 0 && parent && parent.parent != parent) {
        if (window.location.href.replace)
            top.location.replace(self.parent.location.href);
        else
            top.location.href = self.parent.document.href;
    }
}
function fnEndSubmit(endType) {
    if (endType)
        jQuery('.loadingProgress').show();
    docDataSubmit = false;
}
function fnCleanSubmit() {
    jQuery('.loadingProgress').hide();
    var frm = document.forms[0];
    if (frm.hdCmd && frm.hdCmd.value)
        frm.hdCmd.value = '';
}
function modifyReference(elem) {
    if (clearFormInputCalled) {
        elem.href = elem.href + '&clearFormInputCalled=' + clearFormInputCalled;
    }
}
function clickGoToButton() {
    var gotoValue = jQuery('.pagingLinkBlock').find(':text').val();
    if (typeof(gotoValue) == 'undefined' || gotoValue == '')
        return false;
    jQuery('.pagingLinkGoto').click();
    return true;
}
function SaveIntoPriorSearch() {
    document.forms[0].hdCmd.value = CMD_SAVE_PRIOR_SEARCH;
    docDataSubmit = true;
    savePriorSearchUpdate();
}
function PriorSearch() {
    document.forms[0].hdCmd.value = CMD_PRIOR_SEARCH_DETAIL;
    docDataSubmit = true;
    docDetailUpdate();
}
function isGlobalAjaxFunction() {
    var hdCmd = document.forms[0].hdCmd;
    return ((hdCmd.value == CMD_TITLE_BASKET && activeAjaxRequestType == 'TitleBasket') ||
        (hdCmd.value == CMD_SAVE_PRIOR_SEARCH && activeAjaxRequestType == 'PriorSearch') ||
        (hdCmd.value == CMD_PRIOR_SEARCH_DETAIL && activeAjaxRequestType == 'DocDetail'));
}
function processFunctionUrl(elem) {
    var jsFunction = jQuery(elem).filter('div').addClass('visitedLink').attr('onclick');
    if (typeof (jsFunction) != 'undefined' && jsFunction != null) {
        jQuery('[name="__functionUrl"]').val(jsFunction.toString());
    }
}

function ShowHelp() {
    //MKS 15257 add a new help page to show on Master site
    /// <reference path="../../SiteHelp.aspx" />

    open("../../SiteHelp.aspx", "Help",
        "toolbar=no,directories=no,location=no,menubar=no,dependent=no,resizable=yes,scrollbars=no,status=no,titlebar=no,width=150,height=100,top=120");
}
