﻿$(document).ready(function () {
    CheckSearchBoxValue();
    $(".inputsearch").bind("click", function (e) {
        e.preventDefault();
        // $("#searchbox ").css("height", "60");
        if ($(".inputsearch").val() == $(".inputsearch").attr("title")) {
            $(".inputsearch").val('');
        }
    }).bind("blur", function (e) {
        e.preventDefault();
        CheckSearchBoxValue();
    });
    $(".inputdefault").inputDefault({ defaultAttr: "title" });

    $(".QRequired").each
        (function () { $(this).prepend('<span class="ObjetRequired">* </span>') });

    CategoryAutocomplete(".tbxsearch", false);
    Handlers()

});

function Handlers() {
    $(".tbxsearch").bind("keypress", function (e) {
        if (e.which == 13) {
            if ($(this).val() == '') { return false; }
            else {
                $('#[id*=btnSearch]').click();
                return false;
            }
        }
    });

    $("#[id*=UserName], #[id*=Password]").bind("keypress", function (e) {
        if (e.which == 13) {
            if ($(this).val() == '') { return false; }
            else {
                $('#[id*=LoginButton]').click();
                return false;
            }
        }
    });   
}

function CheckSearchBoxValue() {
    if ($(".inputsearch").val() == '') {
        $(".inputsearch").val($(".inputsearch").attr("title"))
    };
}


function CategoryAutocomplete(input, TakeId) {
    $(input).focus(function () {
        $(this).select();
    });

    $(input).autocomplete({
        source: function (request, response) {
            var AC_Obj = {
                "maxRows": 10,
                "name_startsWith": request.term,
                "LanguageId": $("[id*='hdnLanguageId']").val()
            }
            $.ajax({
                type: "POST",
                url: "/modules/category/webservice/CategoryService.asmx/AutoCompleteClient",
                data: JSON.stringify(AC_Obj),
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: function (data) {
                    response($.map(JSON.parse(data.d), function (item) {
                        if (TakeId) {
                            return {
                                id: item.id,
                                label: item.label,
                                value: item.label
                            }
                        }
                        else {
                            return {
                                id: item.id,
                                label: item.label,
                                value: item.value
                            }
                        }
                    }))
                }
            })
        },

        minLength: 2,
        select: function (event, ui) {
            var result = ui.item.label.replace(/<\/?strong>/gi, "");

            //            while (result.indexOf("<strong>") >= 0) {
            //                result = result.replace("<strong>", "");
            //                result = result.replace("</strong>", "");
            //            }
            //            result = result.replace("</strong>", "");

            $(input).val($.trim(result));
            $(input + "-result").val($.trim(ui.item.value));
            $("[id*='hdnSearch']").val($.trim(ui.item.value));
            if (TakeId) { $(input + "-result").val(ui.item.id); }
            return false;
        }
    }).data("autocomplete")._renderItem = function (ul, item) {
        return $("<li></li>")
				.data("item.autocomplete", item)
				.append("<a>" + item.label + "</a>")
				.appendTo(ul);
    };

}
