﻿    (function ($) {
        if ($.validator) {
            $.validator.addMethod("xss-rule", function (value) {
                return !/[<>|&]/i.test(value);
            });
            $.validator.unobtrusive.adapters.addBool("xss", "xss-rule");
            $.validator.addMethod("date-range-rule", function (value, element, params) {
                if (!value) {
                    return true;
                }
                var startDate = Date.parse(params[0]),
                endDate = Date.parse(params[1]),
                enteredDate = new Date();
                enteredDate.setYear(value.split('/')[2]);
                enteredDate.setMonth(value.split('/')[1]);
                enteredDate = enteredDate.setDate(value.split('/')[0]);
                return enteredDate >= startDate && enteredDate <= endDate;
            });
            $.validator.unobtrusive.adapters.addMinMax("daterange", "date-range-rule", "date-range-rule", "date-range-rule");
        }


        $("document").ready(
        function () {
            if ($.loader != undefined) {
                $('form').submit(function () {
                    if ($(this).valid()) {
                        $.loader();
                    }
                });
                $("a[target!='_blank'][text!='Eliminar']").click(function () {
                    $.loader(); 
                    setTimeout(function () {
                        $.loader('close');
                    }, 9000);
                });

                $("a.exporttoword").click(function () {
                    $.loader();
                    setTimeout(function () {
                        $.loader('close');
                    }, 9000);
                });

                $("a[title!='noalert'][text*='Eliminar']").click(function () {
                    var answer = confirm("¿Esta seguro que desea continuar?");
                    if (answer) {
                        $.loader();
                        setTimeout(function () {
                            $.loader('close');
                        }, 9000);
                    } else {
                        return false;
                    }
                    return true;
                });

                $("a.rsslink").click(function () {
                    $.loader();
                    setTimeout(function () {
                        $.loader('close');
                    }, 40000);
                });

                $('.exportarword').click(function () {
                    setTimeout(function () {
                        $.loader('close');
                    }, 8000);

                });

                $('a[target!="_blank"] a[class!="dummylink"]').click(function () {
                $.loader();
                    setTimeout(function () {
                        $.loader('close');
                    }, 7000);
                });
            }
            $(".searchbox").click(function () {
                if ($(this).val() == "Introduzca palabras clave separadas por espacios")
                    $(this).val("");
            }).blur(function () {
                if ($(this).val() == "") {
                    $(this).val("Introduzca palabras clave separadas por espacios");
                }
            });


            $("a.seleccionar-todo").click(function () {
                $("input[type=checkbox]").attr("checked", "checked");
                return false;
            });
            $("a.deseleccionar-todo").click(function () {
                $("input[type=checkbox]").removeAttr("checked");
                return false;
            });
            if (jQuery().datepicker != undefined) {
                $(".date-picker").datepicker({ dateFormat: 'dd/mm/yy' });
            }
            if (jQuery().bt != undefined) {
                $('.tooltip').bt({
                    contentSelector: "$(this).attr('title')",
                    padding: 20,
                    //width: 300,
                    spikeLength: 20,
                    spikeGirth: 20,
                    cornerRadius: 10,
                    fill: 'rgba(0, 0, 0, .8)',
                    strokeWidth: 3,
                    strokeStyle: '#CC0',
                    cssStyles: { color: '#FFF' }
                });
            }

            if (jQuery().awShowcase != undefined) {
                $("#showcase").awShowcase(
                    {
                        content_width: 290,
                        content_height: 847,
                        fit_to_parent: false,
                        auto: true,
                        interval: 7000,
                        continuous: true,
                        loading: true,
                        tooltip_width: 200,
                        tooltip_icon_width: 32,
                        tooltip_icon_height: 32,
                        tooltip_offsetx: 18,
                        tooltip_offsety: 0,
                        arrows: false,
                        buttons: false,
                        btn_numbers: false,
                        keybord_keys: false,
                        mousetrace: false,
                        pauseonover: true,
                        stoponclick: false,
                        transition: 'hslide',
                        transition_delay: 0,
                        transition_speed: 500,
                        show_caption: 'onload',
                        thumbnails: false,
                        thumbnails_direction: 'vertical',
                        dynamic_height: false,
                        speed_change: true,
                        viewline: false,
                        custom_function: null
                    });
            }

            function split(val) {
                return val.split(/\s+/);
            }

            function extractLast(term) {
                return split(term).pop();
            }

            if ($(".searchbox").val() != null) {
                $(".searchbox").autocomplete({
                    source: function (request, response) {
                        $.ajax({
                            url: "/home/GetKeywordsOfertas",
                            type: 'POST',
                            dataType: "json",
                            data: { searchText: extractLast(request.term), maxResults: 10 },
                            beforeSend: function () {
                                $("#autocomplete-loader").show();
                            },
                            complete: function () {
                                $("#autocomplete-loader").hide();
                            },
                            success: function (data) {
                                response($.map(data, function (item) {
                                    return { label: item.keyword, value: item.keyword, id: item.keyword };
                                }));
                            }
                        });
                    },
                    search: function () {
                        var term = extractLast(this.value);
                        if (term.length < 2) {
                            return false;
                        }
                        return true;
                    },
                    select: function (event, ui) {
                        var terms = split(this.value);
                        terms.pop();
                        terms.push(ui.item.value);
                        terms.push("");
                        this.value = terms.join(" ");
                        return false;
                    }
                });
            }

        }
    );
    })(jQuery);

