﻿/// <reference path="jquery.intellisense.js" />
/// <reference path="jquery.json.js" />
/// <reference path="jquery.pagemethods.js" />
/// <reference path="firebug/firebug.js" />
// MagiClick Javascript Framework v1
// Author: Omerz

var MinDate = Date.parse("01.01.0001 00:00:00");
var EnableClientDebugging = false;

if (!window.addEventListener) {
    window.addEventListener = function(type, listener, useCapture) {
        attachEvent('on' + type, function() { listener(event) });
    }
}

function IsValidUsername(value) {
    return /^([a-zA-Z0-9_\.@-]){4,50}$/.test(value);
}

        

Array.prototype.indexOf = Array.prototype.indexOf || function(_value) {
    var index = -1;
    for (var i = 0; i < this.length; i++)
        if (this[i] == _value) {
        index = i;
        break;
    }
    return index;
};

Array.prototype.remove = function(from, to) {
    this.splice(from, (to = [0, from || 1, ++to - from][arguments.length]) < 0 ? this.length + to : to);
    return this.length;
};


String.prototype.isHtml = function() {
    return /^[^<]*(<(.|\s)+>)[^>]*$/.test(this);
};

String.IsNullOrEmpty = function(value) {
    var isNullOrEmpty = true;
    if (value) {
        if ((typeof (value) == 'string') && (value.length > 0))
            isNullOrEmpty = false;
    }
    return isNullOrEmpty;
};

String.prototype.IsNullOrEmpty = function() {
    return String.IsNullOrEmpty(this.toString());
};

String.prototype.ToInternetFriendly = function() {
    return $.trim(this.toString()).replace(/ğ/ig, 'g').replace(/ü/ig, 'u').replace(/İ/g, 'i').replace(/ı/ig, 'i').replace(/ş/ig, 's').replace(/ç/ig, 'c').replace(/ö/ig, 'o').toLowerCase().replace(/\s+/g, '-').replace(/[^\w-]+/g, '');
};

jQuery.fn.extend({
    scrollTo: function(speed, easing) {
        return this.each(function() {
            var targetOffset = $(this).offset().top;
            $('html,body').animate({ scrollTop: targetOffset }, speed, easing);
        });
    }
});

$.preloadImage = function(imageSrc, callback) {
    var preImg = new Image();
    preImg.onload = function(evt) {
        callback(evt);
    };
    preImg.src = imageSrc;
};

$.preloadImages = function(args) {
    if ((typeof args) == "string")
        $.preloadImage(args);
    else if ((typeof args) == "object")
        for (var x = 0; x < args.length; x++)
        $.preloadImage(args[x]);
};


function lookupRecord(intRecID, dataSource, equals) {
    if (dataSource == null)
        return null;
    // lookup record in loaded records
    var x;
    for (var x = 0; x < dataSource.length; x++) {
        if (eval("dataSource[x]." + equals + "==intRecID")) {
            return { record: dataSource[x], index: x };
        }
    }
}

function lookupRecords(intRecID, dataSource, equals) {
    var resultset = new Array();
    if (dataSource == null)
        return null;
    // lookup record in loaded records
    var x;
    for (var x = 0; x < dataSource.length; x++) {
        if (eval("dataSource[x]." + equals + "==intRecID")) {
            resultset.push(dataSource[x]);
        }
    }
    return resultset;
}

/*function resizeContent() {
    $("#content .innercontent").eq(0).css("height", "auto");
    var bosluk = $("#narrow").outerHeight() - $("#wide").outerHeight(); 
    if ($("#content .innercontent").size() < 2 && bosluk > 0)
        $("#content .innercontent").eq(0).css("height", $("#content .innercontent").eq(0).outerHeight() + bosluk)
}*/

function onlyLetter(e) {
    var InvalidChars = "!#/*{[()]},;%^><\\?+:='`|é&æ~£$½¨ß";

    var keyCode = ($.browser.mozilla) ? e.which : event.keyCode;

    if (keyCode > 47 && keyCode < 58) {
        return false;
    }
    for (i = 0; i <= InvalidChars.length - 1; i++) {
        if (keyCode == InvalidChars.charCodeAt(i)) {
            return false;
        }
    }
}

function onlyNumber(e) {
    var keyCode = ($.browser.mozilla) ? e.which : event.keyCode;
    if ((keyCode < 48 || keyCode > 57) && keyCode != 8 && keyCode != 0) {
        return false;
    }
}

function onlyTelNumber(sender) {

    if (sender.value != "" && !isTelNumberValid(sender.value)) {
        alert("Girdiğiniz Telefon Numarası hatalıdır. Lütfen kontrol ediniz");
        sender.value = "";
        return false;
    }
}

function isTelNumberValid(value) {
    var exp = new RegExp(/^([0-9]{3}\s{0,1}[0-9]{2}\s{0,1}[0-9]{2})$/);
    var match = exp.exec(value);
    return (match != null);
}

function onlyEmail(e) {
    var InvalidChars = " !#/*{[()]},;%^><\\?+:='`|şŞĞğÜüÇçİıÖö";

    kCode = InvalidChars.charAt(5);

    var keyCode = ($.browser.mozilla) ? e.which : event.keyCode;

    if (keyCode > 127) {
        return false;
    }
    for (i = 0; i <= InvalidChars.length - 1; i++) {
        if (keyCode == InvalidChars.charCodeAt(i)) {
            return false;
        }
    }
    return true;
}

function onlyInternetFriendlyText(e) {
    var controlChars = [8, 35, 36, 37, 38, 39, 40];
    var keyCode = ($.browser.mozilla) ? e.which : event.keyCode; 
    if (keyCode == 0)
        return true; 
        
    if (controlChars.indexOf(keyCode) > -1)
        return true;

    var extendedInvalidCars = 'şŞĞğÜüÇçİıÖö';

    for (i = 0; i <= extendedInvalidCars.length - 1; i++) {
        if (keyCode == extendedInvalidCars.charCodeAt(i)) { return false; } 
    }
    var pressedKey = String.fromCharCode(keyCode); 
    
    return /^([a-zA-Z0-9_\-\.]+)$/i.test(pressedKey);
}


function onlyURL(e) {
    var keyCode = e.charCode || e.keyCode;
    if (keyCode == 0 || keyCode == 8 || keyCode == 37 || keyCode == 39 || keyCode == 46)
        return true;

    // lookup for turkish chars
    var extendedInvalidCars = 'şŞĞğÜüÇçİıÖö';
    for (i = 0; i <= extendedInvalidCars.length - 1; i++) {
        if (keyCode == extendedInvalidCars.charCodeAt(i)) {
            return false;
        }
    }

    var pressedKey = String.fromCharCode(keyCode);
    return /^([a-zA-Z0-9_\-\/\:\(\)\'\,.]+)$/i.test(pressedKey);
}

function gotoUrl() { //based on mm_goToURL
    for (var i = 0; i < (gotoUrl.arguments.length - 1); i += 2)
    //with arg pairs
        eval(gotoUrl.arguments[i] + ".location='" + gotoUrl.arguments[i + 1] + "'");
}

var arrLastErrors = new Array();
/*
if ($.browser.msie) {
    window.addEventListener('error', windowError, false);
} else {
    window.onerror = windowError;
}
*/
function windowError() {
    var event = {};
    if ($.browser.mozilla) {
        event.errorMessage = arguments[0];
        event.errorUrl = arguments[1];
        event.errorLine = arguments[2];
        event.type = 'error';
    } else {
        event = arguments[0];
    }
    if (event.type == 'error') {
        arrLastErrors.push(event);
        var strErrors = '';
        $.each(arrLastErrors, function() { strErrors += '<li>' + this.errorMessage + '<br/>' + this.errorUrl + '<br/>Satır: ' + this.errorLine + '<br/><br/></li>'; });
        $.blockUI({ message: '<h2>JavaScript Hatası Oluştu</h2><ul>' + strErrors + '</ul><input type="button" value="Kapat" class="btn right" onclick="javascript:$.unblockUI();" />', overlayCSS: { backgroundColor: '#000', opacity: '0.4', cursor: 'default' }, css: { cursor: 'default', width: '500px', textAlign: 'left', paddingLeft: '5px'} });
    }
    return true;
}

function PopItUp(a, b, c, d) { if (d) { b = b + 17; } Popwin = window.open(a, "pop_up", "toolbar=0,width=" + b + ", height=" + c + ", location=0, directories=0, status=1, scrollbars=" + d + ", menubar=0, resizable=0, copyhistory=0"); Popwin.focus(); }

jQuery.fn.extend({
  scrollTo : function(speed, easing) {
    return this.each(function() {
      var targetOffset = $(this).offset().top;
      $('html,body').animate({scrollTop: targetOffset}, speed, easing);
    });
  }
});

function mailTo(m, e, t) {
	if (!e) {
		e = 'dominospizza.com.tr';
	}
	if (!t) {
		t = m + String.fromCharCode(64) + e;
	}

	document.write('<a href="mailto:' + m + String.fromCharCode(64) + e + '" class="contentlink">' + t + '</a>');
}

    function onlineContainerHeight(){
        
        $('.onlineContainer').eq(0).css('height','auto');
        
        var onlineContainer = $('.onlineContainer').eq(0).height();

        if (onlineContainer <= 600) {
            $('.onlineContainer').eq(0).css('height','600px');
        }
        
        else {
            $('.onlineContainer').eq(0).css('height','auto');
        }
        
    }
    
$(document).ready(function() {
      
      $("a.thickbox").colorbox({photo:true});
      $("a.thickbox-franchise").colorbox({width:720, height:500});
       
      $(".noteList").each(function(i){
        if(i%2 == 0){
            if($(this).find(".noteContent").height() > $(this).next().find(".noteContent").height()){
                $(this).next().find(".noteContent").css("height",$(this).find(".noteContent").height()+"px");
            }else {
                $(this).find(".noteContent").css("height",$(this).next().find(".noteContent").height())
            }
        }
      });
       
      if ($("#newFooter").length > 0) {

        if ($(window).height() > ($(".wrapper").outerHeight() + $("#newFooter").outerHeight()))
                $("#newFooter").css("margin-top", $(window).height() - $(".wrapper").outerHeight() - $("#newFooter").outerHeight() + "px").css('margin-bottom', '0px');
            else
                $("#newFooter").css("margin-top", "0px");
    	
	    function onResizeHandler() {
            if ($(window).height() > ($(".wrapper").outerHeight() + $("#newFooter").outerHeight()))
                $("#newFooter").css("margin-top", $(window).height() - $(".wrapper").outerHeight() - $("#newFooter").outerHeight() + "px").css('margin-bottom', '0px');
            else
                $("#newFooter").css("margin-top", "0px");
        }
        onResizeHandler();
        window.onresize = onResizeHandler;
        window.onload = onResizeHandler;
    }
  
    onlineContainerHeight();
    
   
    $(".siparisList tr,.grayBoxContent tr,.siparisOnayTable tr,.siparisOnayTable tr,.noteList table tr").each(function(){
        $(".siparisList tr:last-child, .grayBoxContent tr:last-child,.siparisOnayTable tr:last-child,.siparisOnayTable tr:last-child").addClass('nonBorder');
    });
    
    
    $('.noteList:even').css('margin-right','5px');
    
    
    
        var tabItems = $(":input.autoTab").keyup(function(e){
            switch (e.keyCode) {
                case 8:
                case 9:
                case 16:
                case 37:
                case 38:
                case 39:
                case 40:
                case 53:
                    return true;
                break;
            }

            var currentControl = tabItems.index(this);
            var nextItem = tabItems.get(currentControl + 1);

            if (this.value.length >= this.maxLength) {
                if (typeof nextItem != "undefined") {
                    nextItem.focus();
                }
            }
        }).change(function(){
            if (this.nodeName != "SELECT") {
                return;
            }
            var currentControl = tabItems.index(this);
            var nextItem = tabItems.get(currentControl + 1);
            if (typeof nextItem != "undefined") {
                nextItem.focus();
            }
        });
        
        /*
        var dahiliNo = $(".dahiliNo");
        var dahiliText = "Dahili";
        dahiliNo.attr("value", dahiliText).css('color','#999');

        dahiliNo.focus(function() {
            if (jQuery.trim($(this).attr("value")) == dahiliText) $(this).attr("value", "").css('color','#121212');
        });

        dahiliNo.blur(function() {
            if (jQuery.trim($(this).attr("value")) == "") $(this).attr("value", dahiliText).css('color','#999');
        });
        */

    // if firebug console is enabled?
    if (("console" in window) && EnableClientDebugging) {
        var link = $('<div class="right" style="width:30px;margin-top:-3px;cursor:pointer;" title="Open debugging console."><img width="20" height="20" src="' + webRoot + '/_i/spacer.gif" style="background-image:url(' + webRoot + '/_js/firebug/firebug.gif);" /></div>');
        link.click(function() {
            if ("open" in console)
                console.open();
        });
        $('#footer').append(link);

        // enable xhr tracking for non-mozilla browsers
        if ($.browser.msie && $.Page != null) {
            $.Page.Events.onBeforeCall = function(xhr, uri, requested, id) {
                console.group("POST > " + uri + "  @" + id);
                console.log(requested);
                console.groupEnd();
            };

            $.Page.Events.onFinally = function(xhr, uri, textstatus, id) {
                console.group("RESPONSE < " + uri + "  @" + id);
                console.log(xhr.responseText);
                console.groupEnd();
            };
        }
    }

    if ($.Page != null) {
        // global page method error handler
        $.Page.Events.onError = function(e) {
            switch (e.name) {
                case 'AccessDeniedException':
                    gotoUrl('document', webRoot + '/UygulamaYetkiHatasi.aspx');
                    return false;
            }
            return true;
        };
    }
});
/*
var blockFileUpload = {}, fileUploadBlocker;
function uploadBlockerShow(uploader) {
    $.blockUI(blockFileUpload);
    $('.progressbar', fileUploadBlocker).empty();
    $('.fileName', fileUploadBlocker).text('Dosya bekleniyor...');
    $('.progressTbl', fileUploadBlocker).show();
    $('h2', fileUploadBlocker).text('Lütfen bekleyiniz, dosyalar aktarılıyor...');
    $('.btnCancel', fileUploadBlocker).show().unbind('click').click(function() {
        if (confirm('Dosya transferi iptal edilecek, devam edilsin mi?')) {
            if (uploader != null)
                uploader.abort();
            else
                $.unblockUI();
        }
    });

}

function uploadBlockerValue(fileName, percent) {
    $('.fileName', fileUploadBlocker).text(fileName);
    $('.progressbar', fileUploadBlocker).progression({ Current: percent, AnimateTimeOut: 500 });
}

function uploadBlockerText(text) {
    //$('.progressTbl', fileUploadBlocker).hide();
    $('h2', fileUploadBlocker).text(text);
    $('.btnCancel', fileUploadBlocker).hide();
}

function uploadBlockerHide() {
    $.unblockUI();
}
$(document).ready(function() {
    $('body').append('<div id="blockFileUpload" class="hidden">' +
        '<div>' +
            '<h2>Lütfen bekleyiniz, dosyalar aktarılıyor...</h2>' +
            '<table class="progressTbl">' +
                '<tr class="fileDetails">' +
                    '<td style="color:#999">Aktarılan dosya</td>' +
                    '<td><div class="fileName">Dosya bekleniyor...</div></td>' +
                '</tr>' +
                '<tr>' +
                    '<td colspan="2" width="100%">' +
                        '<div class="progressbar">0%</div>' +
                    '</td>' +
                '</tr>' +
                '<tr>' +
                    '<td colspan="2" valign="bottom"><input type="button" value=" Aktarımı İptal Et " class="btnCancel btn right"/></td>' +
                '</tr>' +
            '</table>' +
        '</div>' +
    '</div>');
    fileUploadBlocker = $('#blockFileUpload');
    blockFileUpload = { css: { width: "400px", height: "140px" }, message: fileUploadBlocker };
});*/
var blockLoading = { message: '<img src="' + webRoot + '/_i/loader_progress.gif"/><br/>Sepete Ekleniyor...', overlayCSS: { backgroundColor: '#fff', opacity: '0.5', zIndex: 500 }, css: { border: '0px', backgroundColor: 'transparent', zIndex: 501} };
var blockLoadingPage = { message: '<h2><br/>Lütfen bekleyiniz...<br/>&nbsp;</h2>',
    overlayCSS: {
        backgroundColor: '#000',
        opacity: '0.4',
        zIndex: 1000
    },
    css: {
        zIndex: 1001
    }
};

function showPageLoader() { $.blockUI(blockLoadingPage); }
function hidePageLoader() { $.unblockUI(); }

function setLoading(target, message) {
    var targetObj = $(target);
    var opts;
    if (message != null) {
        opts = $.extend({}, blockLoading,{ message: message });
    } else {
        opts = $.extend({}, blockLoading);
    }
    target.block(opts);
}

function resetLoading(target) {
    var targetObj = $(target);
    target.unblock();
}
var datePickerOptions = { showOn: "both", buttonImage: webRoot + '/_i/datepicker/btn_calendar.gif', buttonImageOnly: true, showAnim: "slideDown" };

var dateTimePickerOptions = { dateFormat: "dd.mm.yy HH:II", showOn: "both", buttonImage: webRoot + '/_i/datepicker/btn_calendar.gif', buttonImageOnly: true, showAnim: "slideDown", showTime: true, timePos: "top" };

var validationOptions = {
    errorPlacement: function(error, element) {
        var elem = $(element);
        if ((elem.hasClass('hasDatepicker') && elem.next().hasClass('ui-datepicker-trigger')) ||
                             (elem.attr('rel') === 'richedit' && elem.next().hasClass('mceEditor'))) {
            elem.next().after(error);
        } else {
            elem.after(error);
        }
    }, highlight: function(element, errorClass) {
        var elem = $(element);
        if (elem.attr('rel') === 'richedit' && elem.next().hasClass('mceEditor')) {
            elem.next().addClass(errorClass);
        } else {
            elem.addClass(errorClass);
        }
    }, unhighlight: function(element, errorClass) {
        var elem = $(element);
        if (elem.attr('rel') === 'richedit' && elem.next().hasClass('mceEditor')) {
            elem.next().removeClass(errorClass);
        } else {
            elem.removeClass(errorClass);
        }
    }
};

/* Simple Enumerator JS Implementation */
var Enumerator = function(enums) {
    return $.extend({}, Enumerator.prototype, enums);
};
Enumerator.prototype.Cast = function(src) {
    var enums = this, result = null;
    $.each(enums, function(e) {
        if (typeof enums[e] !== 'function' && enums[e] === src) {
            result = e;
            return e;
        }
    });
    return result;
};


/* Drop Page Script */

function dropItem(n,s) {
var dropObj = document.getElementById('item_'+n);
var status = dropObj.className;
      
   for(var i=1;i<=s;i++) { 
   document.getElementById('item_'+i).className = "drop";
   } 
   
   if(status == "drop") {
   dropObj.className = "dropped";
   }   

//setFooter();   
}

/* Drop Page Script - X */

function dropItemx(n,s) {
var dropObj = document.getElementById('itemx_'+n);
var status = dropObj.className;
      
   for(var i=1;i<=s;i++) { 
   document.getElementById('itemx_'+i).className = "dropx";
   } 
   
   if(status == "dropx") {
   dropObj.className = "droppedx";
   }   

//setFooter();   
}    

