﻿var butRefreshCompare = null;
var disableGlobalValidation = false;

function popInfo(url)
{
    window.open(url, "infownd", "status=0,toolbar=0,menubar=0,width=400,height=400,scrollbars=1");
}

function popup(name, url, width, height) {
    window.open(url, name, "status=0,toolbar=0,menubar=0,width="+width+",height="+height+",scrollbars=1");
}

function debug(msg)
{
    var d = $get("dbg");
    d.innerHTML += msg + "<br>";
}

function ajaxOperationSuccess(json, show) {
    if (!json || !json.status) return false;
    switch (json.status) {
        case "success": return true;
        case "failed":
            if (show) alert("İşlem başarısız. Lütfen daha sonra yeniden deneyiniz.");
            return false;
        case "loginRequired":
            if (show) alert("Sisteme giriş yapmalısınız. Uzun süre işlem yapmadığınız için sistemden otomatik olarak çıkarılmış olabilirsiniz.");
            return false;
    }
    return false;
}

function ajaxFailure(transport, show) {
    if (show) {
        alert("Site ile bağlantı kurulamadı. Lütfen İnternet bağlantınızı kontrol edip yeniden deneyiniz.");
        alert(transport.responseText);
    }
}

function dGV() { disableGlobalValidation = true; }
function eGV() { disableGlobalValidation = true; }

function addDebug(str)
{
    var dbg = document.getElementById('debug');
    dbg.innerHTML += str + "<br>";
}

var cancelNextHideOrder = 0;

function showWhatIs(tag,wndId)
{
    var wnd = Sys.UI.DomElement.getElementById(wndId);
    var bounds = Sys.UI.DomElement.getBounds(tag);
    var x = bounds.x + bounds.width;
    var y = bounds.y;
    Sys.UI.DomElement.setLocation(wnd, x, y);
    wnd.style.display = 'block';
    wnd.style.visibility = 'visible';
    cancelNextHideOrder = 0;
}

function setCancelNextHideOrder()
{
    cancelNextHideOrder++;
}

function hideWhatIs(wndId)
{
    setTimeout('doHideWhatIs("'+wndId+'")', 300);
}

function doHideWhatIs(wndId)
{
    if( cancelNextHideOrder > 0 ) 
    {
        cancelNextHideOrder--;
        return;
    }
    var wnd = Sys.UI.DomElement.getElementById(wndId);
    wnd.style.display = 'none';
    wnd.style.visibility = 'hidden';
}

function toggleTreeNode(id) {
    var node = $('node_' + id);
    var children = $('child_' + id);
    var but = $('tnbut_' + id);
    children.setStyle({ height: '' });
    if (children.getStyle('display') == 'none') {
        new Effect.SlideDown(children, { duration: 0.3 });
        but.src = '/images/tr-minus.gif';
    } else {
        new Effect.SlideUp(children, { duration: 0.3 });
        but.src = '/images/tr-plus.gif';
    }
}

function doSearch(keyword)
{
    if(keyword == "") return;
    keyword = escape(keyword);
    while (keyword.indexOf("%20") >= 0) keyword = keyword.replace("%20", "+");
    keyword = sanitizeTR(keyword);
    var url = '/ara/' + keyword + '.aspx';
    window.location.href = url;
}

function validateTextLength(txt, counterId, min, max, limit)
{
    var counter = document.getElementById(counterId);
    var len = txt.value.length;
    if( limit && len > max )
    {
        txt.value = txt.value.substring(0, max);
        len = max;
    }
    
    counter.innerHTML = len.toString();

    if( len < min || len > max )
        counter.className = "textCounterInvalid";
    else
        counter.className = "textCounterValid";
}

function disableValidators()
{
    for(i=0;i< Page_Validators.length;i++)
    {
        ValidatorEnable(Page_Validators[i], false)
    }
}

function sanitizeTR(str) {
    var fs = "ĞÜŞİÖÇğüşıöç";
    var rs = "GUSIOCgusioc";
    var outstr = "";
    for (i = 0, len = str.length; i < len; i++) {
        var fsi = fs.indexOf(str.charAt(i));
        if (fsi >= 0) outstr += rs.charAt(fsi); else outstr += str.charAt(i);
    }
    var map = ["%u011E", "G",
               "%DC", "U",
               "%u015E", "S",
               "%u0130", "I",
               "%D6", "O",
               "%C7", "C",
               "%u011F", "g",
               "%FC", "u",
               "%u015F", "s",
               "%u0131", "i",
               "%F6", "o",
               "%E7", "c"];
    for (i = 0; i < map.length; i+=2) {
        while (outstr.indexOf(map[i]) >= 0)
            outstr = outstr.replace(map[i], map[i+1]);
    }
    return outstr;
}

var osdEffect = null;

function goOSDBasket(msg) { goOSD(msg, "basket"); }
function goOSDStop(msg) { goOSD(msg, "stop"); }
function goOSDCompare(msg) { goOSD(msg, "compare"); }

function goOSD(msg, style)
{
    var cont = $("osdContainer");
    if(typeof(cont) == "undefined") return;
    if(osdEffect != null) osdEffect.cancel();
    if(typeof style == "undefined") style = "none";
    var osdClassName = "osdBlack";
    if(style == "stop") osdClassName = "osdRed";
    cont.update('<div id="osd" class="'+osdClassName+'"><div id="osdIcon" class="osd-icon-'+style+'"><div id="osdText">'+msg+'</div></div></div>');
    var osd = $("osd");
    cont.style.display="block";
    var ob = Sys.UI.DomElement.getBounds(osd);
    var cb = Sys.UI.DomElement.getBounds(cont);
    var bb = Sys.UI.DomElement.getBounds(document.body);
    cont.style.width=(bb.width)+"px";
    Sys.UI.DomElement.setLocation(cont,0,0);
    Sys.UI.DomElement.setLocation(osd, bb.width, 0);
    osd.style.display="block";
    var dx = -(Math.round(bb.width/2)+70);
    osdEffect = new Effect.Move("osd", 
                    { x:dx, 
                      y:0, 
                      mode:'relative', 
                      duration:1, 
                      transition: Effect.Transitions.spring, 
                      afterFinishInternal: function(effect) {
                         osdEffect = new Effect.Move("osd", { x:-60, y:0, mode:'relative', duration:1, trasition: Effect.Transitions.sinoidal,
                            afterFinishInternal: function(effect) {
                                 osdEffect = new Effect.Move("osd", { x:-300, y:0, mode:'absolute', duration:0.5, transition: Effect.Transitions.sinoidal,
                                      afterFinishInternal: function(effect) {
                                        $('osd').style.display='none'; 
                                        $('osdContainer').style.display='none'; 
                                        osdEffect = null; }}) }}) }});
}

function goTip(elm, msg)
{
    var tw = $("tipWnd");
    if(tw == null) return;
    var b = Sys.UI.DomElement.getBounds(elm);
    _goTip(Math.round(b.x + b.width / 2), b.y + b.height, "top", msg);
}

function _goTip(x, y, arrow, msg)
{
    var tw = $("tipWnd");
    if(tw == null) return;
    Sys.UI.DomElement.setLocation(tw, x, y);
    $("twContent").update(msg);
    var abta = "spacer.gif", abba = "spacer.gif", abla = "spacer.gif", abra = "spacer.gif";
    switch(arrow)
    {
        case "top": abta = "abta.png"; break;
        case "bottom": abba = "abba.png"; break;
        case "right": abra = "abra.png"; break;
        case "left": abla = "abla.png"; break;
    }
    $("twTA").src = "/images/"+abta;
    $("twBA").src = "/images/"+abba;
    $("twRA").src = "/images/"+abra;
    $("twLA").src = "/images/"+abla;
    tw.show();
}

function hideTip()
{
    var tw = $("tipWnd");
    if(tw == null) return;
    tw.hide();
}

function cacheImages()
{
    var imglist = [ "ajax-loader.gif", "basket-on-bl.png", "basket-on-br.png", "basket-on-but.png", "basket-on-butr.png", 
                    "basket-on-lf.png", "basket-on-rf.png", "basket-on-tf.png", "basket-on-tl.png", "basket-off-but.png", "iconinfo.png", 
                    "iconreq.gif", "iconhelp.gif", "osd-bg-red.png", "osd-bg-black.png", "osd-compare.png", "osd-stop.png", "osd-basket.png", 
                    "star1.0.gif", "star1.5.gif", "star2.0.gif", "star2.5.gif", "star3.0.gif", "star3.5.gif", "star4.0.gif", "star4.5.gif", "star5.0.gif", 
                    "x-black.png", "buttinyyes.gif", "buttinyno.gif", "buts.png", "cobar-bg.png", "cobar-clear.png", "cobar-compare.png", "cobar-l.png", 
                    "cobar-r.png" ];
    var cacheImage = new Array();
    for(var i = 0, len = imglist.length; i < len; i++)
    {
        cacheImage[i] = new Image();
        cacheImage[i].src = "/images/" + imglist[i];
    }
    setTimeout("cacheImage = null;", 15000);
}
