﻿String.prototype.endsWith = function(str) {
    return (this.match(str + "$") == str)
};
String.prototype.startsWith = function(str) {
    return (this.match("^" + str) == str)
};
String.prototype.trim = function() {
    return
    (this.replace(/^[\s\xA0]+/, "").replace(/[\s\xA0]+$/, ""))
};
jQuery.ajaxSettings.traditional = true;
$.fn.isEmpty = function () {
    return $.trim(this.val()) == "";
};
var CombineArrayToString = function (arr, splitter) {
    splitter = ",";
    var ret = "";
    for (var i in arr) {
        ret += arr[i] + splitter;
    }
    return ret;
};
var SplitStringToArray = function (str, splitter) {
    splitter = ",";
    var ret = new Array();
    var arr = str.split(",");
    var j = 0;
    for (var i in arr) {
        if (arr[i] != "") {
            ret[j] = arr[i];
            j++;
        }
    }
    return ret;
};
$(document).ready(function () {
	// Init date format
	Date.firstDayOfWeek = 0;
	Date.format = "dd mmm, yyyy";
	$(".date_select").datePicker({ clickInput: true }).bind(
			"dateSelected", function (e, selectedDate, $td, state) {
			});
	$(".dp-choose-date").attr("title", "Datum wählen")
	// Main menu
	$(".main_menu dl").hover(function () {
		$("dd", this).show();
		$(".main_menu dl").not($(this)).find("a").addClass("unhover");
	}, function () {
		$("dd", this).hide();
		$(".main_menu dl a").removeClass("unhover");
	});
	// Fill checkout textbox automatic
	$("input.check_in").bind("dpClosed", function (e, selectedDates) {
		$(this).focus();
		var d = selectedDates[0];
		if (d) {
			d = new Date(d);
			$(this).parent().parent().find("input.check_out").dpSetStartDate(d.addDays(1).asString()).val(d.asString()).focus();
		}
	});
	// Mask textbox
	$.each($(".mask_textbox"), function (i, item) {
		var span = $("<span />");
		$(span)
        .addClass("mask_textbox_mask")
        .width($(item).outerWidth())
        .text($(item).attr("mask"))
        .css("line-height", $(item).outerHeight() + "px")
        .css("padding-left", $(item).css("padding-left"))
        .css("margin-left", $(item).css("margin-left"))
        .css("left", $(item).position().left)
        .css("font-size", $(item).css("font-size"))
        .mousedown(function () {
        	setTimeout(function () { $(span).next().focus() }, 100);
        })
        .insertBefore($(item));
		if ($.trim($(item).val()) != "") $(item).prev().hide();
	});
	$(".mask_textbox").focus(function () {
		$(".mask_textbox").not($(this)).blur();
		$(this).prev().hide();
	}).blur(function () {
		var maskText = $(this).attr("mask");
		if ($.trim($(this).val()) == "") $(this).prev().show();
	});
});
