function getParameterByName( name )
{
    name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
    var regexS = "[\\?&]"+name+"=([^&#]*)";
    var regex = new RegExp( regexS );
    var results = regex.exec( window.location.href );
    if( results == null )
        return "";
    else
        return decodeURIComponent(results[1].replace(/\+/g, " "));
}

function IfNull(ThisValue, IfNullValue) {
    if (typeof(ThisValue) == "undefined" || ThisValue == "" || ThisValue == null) {
        return IfNullValue;
    } else {
        return ThisValue;
    }
    
}


$(document).ready(function () {

    var qsService, qsNews
    var qsLastName, qsFirstName, qsIndustry, qsPractice

    var bOnAttorneySearch = ($("div.attorneySearch").length > 0) ? true : false;
    var bOnPublicationSearch = ($("div.publicationSearch").length > 0) ? true : false;
    var bOnNewsSearch = ($("div.newsSearch").length > 0) ? true : false;
    var bOnMediaGuideSearch = ($("div.mediaGuideSearch").length > 0) ? true : false;
    var bOnSiteSearch = ($("div.SearchDialog").length > 0) ? true : false;
    var bOnHomePage = ($("div.findProfessional").length > 0) ? true : false;



    // if has a queryString
    if (window.location.href.indexOf("?") > 0) {

        if (bOnSiteSearch) {

            $("div.searchedFor").html(
                "You searched for: "
                + "<strong>" + $("input[name$='$txtSearchFor']").val() + "</strong>"
                + " : " + $("select[name$='$ddSection'] option:selected:last").text()
            );
        } else {


            qsService = getParameterByName("Service");
            qsNews = getParameterByName("News");

            qsIndustry = getParameterByName("Industry");
            qsPractice = getParameterByName("Practice");

            // if we came from the search, set the qsService to either the Practice (specific) of the Industry (broad)
            if (qsService == "") {
                if (qsPractice != "")
                    qsService = qsPractice;
                else
                    qsService = qsIndustry;
            }


            if (bOnAttorneySearch) {
                //append/passthru the QueryString parameters of the current filter
                var sSearchResultsQS = "";
                if (qsService != "")
                    sSearchResultsQS += "Service=" + qsService + "&"
                //if (qsNews != "")
                //    sSearchResultsQS += "News="+ qsNews +"&"

                if (sSearchResultsQS != "") {
                    sSearchResultsQS = "?" + sSearchResultsQS;

                    //alert(sSearchResultsQS);

                    $("#content ul.attorneyList li.name a").each(function () {
                        $(this).attr("href", $(this).attr("href") + sSearchResultsQS);
                    });

                }

                //if we are on the search page
                //if ($("#SearchButton").length > 0) {
                //    //default the values from the qs
                //    $("select[name='Industry']").val(qsIndustry);
                //    $("select[name='Practice']").val(qsPractice);
                //}

            } else if (bOnPublicationSearch || bOnNewsSearch) {
                //default the values from the qs
                $("input[name='KeywordPhrase']").val(getParameterByName("KeywordPhrase"));
                $("input[name='StartDate']").val(getParameterByName("StartDate"));
                $("input[name='EndDate']").val(getParameterByName("EndDate"));
                $("select[name='Industry']").val(IfNull(qsIndustry, qsService)); // will get one or the other
                $("select[name='Practice']").val(IfNull(qsPractice, qsService)); // will get one or the other
                if (bOnPublicationSearch) {
                    $("select[name='Type']").val(getParameterByName("Type"));
                }

            } else if (bOnMediaGuideSearch) {
                $("input[name='Keyword']").val(getParameterByName("Keyword"));
            }
        }
    }


    if ($("#SearchButton").length > 0) {

        var runSearch = function () {
            if (bOnAttorneySearch || bOnHomePage) {
                var sPath = "";
                if (bOnHomePage) {
                    sPath = "/Professionals/Attorneys";

                    if ($("input[name='FirstName']").val() == "First Name") {
                        $("input[name='FirstName']").val("");
                    }

                    if ($("input[name='LastName']").val() == "Last Name") {
                        $("input[name='LastName']").val("");
                    }
                }
                else {
                    sPath = location.pathname;
                }

                location.href = sPath
                +"?LastName=" + $("input[name='LastName']").val()
                + "&FirstName=" + $("input[name='FirstName']").val()
                + "&Industry=" + $("select[name='Industry']").val()
                + "&Practice=" + $("select[name='Practice']").val()
                + "&Offices=" + $("select[name='Offices']").val()
                + "&Level=" + $("select[name='Level']").val()
                + "&Schools=" + $("select[name='Schools']").val()
                + "&LanguagesSpoken=" + $("select[name='LanguagesSpoken']").val()
                + "&Martin=" + $("input[name='Martin']:checked").length
                ;
            } else if (bOnPublicationSearch) {
                location.href = location.pathname
                    + "?KeywordPhrase=" + $("input[name='KeywordPhrase']").val()
                    + "&StartDate=" + $("input[name='StartDate']").val()
                    + "&EndDate=" + $("input[name='EndDate']").val()
                    + "&Industry=" + $("select[name='Industry']").val()
                    + "&Practice=" + $("select[name='Practice']").val()
                    + "&Type=" + $("select[name='Type']").val()
                    ;
            } else if (bOnNewsSearch) {
                location.href = location.pathname
                    + "?KeywordPhrase=" + $("input[name='KeywordPhrase']").val()
                    + "&StartDate=" + $("input[name='StartDate']").val()
                    + "&EndDate=" + $("input[name='EndDate']").val()
                    + "&Industry=" + $("select[name='Industry']").val()
                    + "&Practice=" + $("select[name='Practice']").val()
                    ;
            } else if (bOnMediaGuideSearch) {
                location.href = location.pathname
                    + "?Keyword=" + $("input[name='Keyword']").val()
                    ;
            }
        }

        // setup search button
        $("#SearchButton").click(function () {
            runSearch();
        });

        $("input[name='LastName'],input[name='FirstName'],input[name='KeywordPhrase'],input[name='StartDate'],input[name='EndDate']").keydown(function (e) {
            if ((e.keyCode && e.keyCode == 13) || (e.which && e.which == 13)) {
                e.preventDefault();
                runSearch();
            }
        });


        $("input[name='StartDate'],input[name='EndDate']").focus(function (e) {
            $(this).val("");
        });


    }


    // Remove default values in textbox
    if (bOnHomePage) {
        // Clear
        $("input[name='FirstName'],input[name='LastName']").focus(function (e) {
            $(this).val("");
        });


        // Restore
        $("input[name='FirstName']").focusout(function (e) {
            if ($(this).val() == "")
                $(this).val("First Name");
        });

        $("input[name='LastName']").focusout(function (e) {
            if ($(this).val() == "")
                $(this).val("Last Name");
        });
    }
    //--/ End Remove default values in textbox

});

