﻿jQuery.expr[':'].focus = function (elem) {
    return elem === document.activeElement && (elem.type || elem.href);
};
$(document).ready(function () {
    $.headerBar = function (txt1, txt2, href1, href2) {
        $.button(txt1, "#pos1", null, href1);
        $.button(txt2, "#pos2", null, href2);
    }

    $.validClass("valid");
    $.invalidClass("invalid");
    $.validationFormat("required", "Please complete the '{0}' field.");
    $.button = function (text, loc, ontap, generatedLink, targetForm) {
        var btn = $("#button-tmpl").tmpl({ Text: text, Link: generatedLink })
        if (targetForm == undefined) {
            $(btn).appendTo(loc);
        } else {
            $(btn).appendTo(targetForm);
        }
        $(btn).bind("tap", ontap);

    }
    $("meta[name=headerButtons]").each(function (i, v) {
        var val = $(this).attr("content");
        var btn1 = new String(val).split(',')[0];
        var btn2 = new String(val).split(',')[1];
        var btn1Text = btn1.split(':')[0];
        var btn1Url = btn1.split(':')[1];
        var btn2Text = btn2.split(':')[0];
        var btn2Url = btn.split(':')[1];
        $.headerBar(btn1Text, btn2Text, btn1Url, btn2Url);
    });
    $.barButton = function (text, href) {
        return $("#bar-button-tmpl").tmpl({ Text: text, Href: href })
    }
    $.actionButton = function (text) {
        return $("#action-tmpl").tmpl({ Text: text })
    }
    $.bar = function (button1, button2, b1click, b2click) {
        var bar = $("#toolbar-tmpl").tmpl({ txt1: button1, txt2: button2 })
        bar.appendTo("#footerBar");
        $(bar).find(".action-button:nth-child(1)").click(b1click);
        if (button2 != null) {
            $(bar).find(".action-button:nth-child(2)").click(b2click);
        } else {
            $(bar).find(".action-button:nth-child(2)").remove();
        }
        return bar;
    }


    function initializeButtons() {
        $(".xbar-button").each(function (i, v) {
            var txt = $(this).text();
            $(this).text("");
            var href = $(this).attr("data-href");
            $.barButton(txt, href).appendTo(this).click(function () {
                location.href = href;
            });

        });
        $(".action-button").each(function (i, v) {
            var txt = $(this).text();
            $(this).text("");
            $.actionButton(txt).appendTo(this);
        });
    }
    $.removeHeaderBar = function () {
        $(".menu-wrapper").remove();
    }
    initializeButtons();

    var window_width = $(document).width();

    $("meta[name=viewport]").attr("content", "width=" + window_width);
    var window_height = $(document).height();
    $(".button").live('tap', function (e) {
        $(this).css("background-image", "url(/Content/Images/ButtonHover.png)");
    });
    $.selectValue = function (selector, value) {
        $(selector).find("option").removeAttr("selected");
        $(selector).find("option[value=" + value + "]").attr("selected", "selected");
    }
    $(".are-sure").click(function (e) {
        var text = $(this).attr("data-confirmText");
        var canceled = confirm(text);
        if (!canceled) {
            e.preventDefault(); return false;
        }
        e.stopPropagation();
        return true;
    });
});
            
            
