

function getTart(ty){
    
    var url = BASEURL+"gettart.php?tid=" + ty +"&kellcim=0";
    xmlHttp=GetXmlHttpObject(stateChanged_tart);
    xmlHttp.open("GET", url , true);
    xmlHttp.send(null);

}

function stateChanged_tart() 
{ 
    if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
    {
        document.getElementById("szo").innerHTML = xmlHttp.responseText;
    } 
} 

function GetXmlHttpObject(handler)
{

    var objXmlHttp=null

    if (navigator.userAgent.indexOf("MSIE")>=0)
    { 
        var strName="Msxml2.XMLHTTP"
        if (navigator.appVersion.indexOf("MSIE 5.5")>=0)
        {
            strName="Microsoft.XMLHTTP"
        } 
        try
        { 
            objXmlHttp=new ActiveXObject(strName)
            objXmlHttp.onreadystatechange=handler
            return objXmlHttp
        } 
        catch(e)
            { 
                alert("Error. Scripting for ActiveX might be disabled") 
                return 
            } 
    } 
    if (navigator.userAgent.indexOf("Mozilla")>=0 || navigator.userAgent.indexOf("Opera")>=0 || navigator.userAgent.indexOf("Safari")>=0)
    {
        objXmlHttp=new XMLHttpRequest()
        objXmlHttp.onload=handler
        objXmlHttp.onerror=handler 
        return objXmlHttp
    }
}

function nextPic() {
     picindex++;
     if (picindex == cpic) picindex = 0;
     document.getElementById("galpic").src=picz[picindex];
     document.getElementById("pictitle").innerHTML=titz[picindex];
     document.getElementById("num").innerHTML=picindex+1;
}

function prevPic() {
     picindex--;
     if (picindex == -1) picindex += cpic;
     document.getElementById("galpic").src=picz[picindex];
     document.getElementById("pictitle").innerHTML=titz[picindex];
     document.getElementById("num").innerHTML=picindex+1;
}

function addRow(login) {
    countRows++;
    var options = "<option value=''>-</option><option value='e'>e</option><option value='a'>a</option><option value='j'>j</option> \
    <option value='i'>i</option><option value='V'>V</option><option value='f'>f</option><option value='b'>b</option>";
    if (login) spec = "<td><a href='#' onclick='showSpec("+countRows+")' id='a_"+countRows+"'>Vágás</a></td>";
        else spec = "";
    var table = "<table cellpadding='2' cellspacing='0' border='0' width='900'><tr><td class='medium' style='width:15px'>"+
    countRows+".</td><td><input type='text' style='width:100px' name='inMegn["+countRows+"]' id='inMegn-"+
    countRows+"'></td><td><input type='text' style='width:160px' name='inAnyag["+countRows+"]' id='inAnyag-"+
    countRows+"'></td><td><input type='text' style='width:82px' name='inAkod["+countRows+"]' id='inAkod-"+
    countRows+"'></td><td><input type='text' style='width:72px' name='inHossz["+countRows+"]' id='inHossz-"+
    countRows+"' onchange='csekk80H("+countRows+",this.value)'></td><td><input type='text' style='width:64px' name='inSzel["+countRows+"]' id='inSzel-"+
    countRows+"' onchange='csekk80S("+countRows+",this.value)'></td><td><input type='text' style='width:30px' name='inDb["+countRows+"]' id='inDb-"+
    countRows+"'></td><td><select name='seHe["+countRows+"]' id='seHe-"+countRows+"'>"+options+"</select></td><td><select name='seHh["+countRows+"]' id='seHh-"+
    countRows+"'>"+options+"</select></td><td><select name='seKb["+countRows+"]' id='seKb-"+countRows+"'>"+options+"</select></td><td><select name='seKj["+countRows+"]' id='seKj-"+
    countRows+"'>"+options+"</select></td><td><input type='text' style='width:90px' name='inMegj["+countRows+"]' id='inMegj-"+
    countRows+"'></td><td><input type='text' style='width:90px' name='inElszin["+countRows+"]' id='inElszin-"+
    countRows+"'></td>"+spec+"</tr></table><input type='hidden' name='spec_id["+countRows+"]' id='spec_id_"+
    countRows+"' value=''> <input type='hidden' name='spec["+countRows+"]' id='spec_"+
    countRows+"' value=''><input type='hidden' name='specse["+countRows+"]' id='specse_"+
    countRows+"' value=''><input type='hidden' name='egyedikep["+countRows+"]' id='egyedikep_"+
    countRows+"' value=''><input type='hidden' name='egyedimeretek["+countRows+"]' id='egyedimeretek_"+
    countRows+"' value=''><input type='hidden' name='csere["+countRows+"]' id='csere_"+
    countRows+"' value=''><div id='rows_"+countRows+"'></div>";
    
    document.getElementById("rows_"+(countRows-1)).innerHTML = document.getElementById("rows_"+(countRows-1)).innerHTML+table;
}

function remRow() {
    if (countRows != 1) {
        countRows--;
        document.getElementById("rows_"+countRows).innerHTML = "";
    }  
}

//felcseréltem az S-t és a H-t

function csekk80S(idx,val) {
    if (parseInt(val)<80) {
         document.getElementById("seHe-"+idx).selectedIndex=0;
         document.getElementById("seHe-"+idx).disabled=true;
         document.getElementById("seHh-"+idx).selectedIndex=0;
         document.getElementById("seHh-"+idx).disabled=true;
         alert("80 mm alatt az élzárás nem lehetséges!");
    } else {
        document.getElementById("seHe-"+idx).disabled=false;
        document.getElementById("seHh-"+idx).disabled=false;
    }
}

function csekk80H(idx,val) {
    if (parseInt(val)<80) {
         document.getElementById("seKb-"+idx).selectedIndex=0;
         document.getElementById("seKb-"+idx).disabled=true;
         document.getElementById("seKj-"+idx).selectedIndex=0;
         document.getElementById("seKj-"+idx).disabled=true;
         alert("80 mm alatt az élzárás nem lehetséges!");
    } else {
        document.getElementById("seKb-"+idx).disabled=false;
        document.getElementById("seKj-"+idx).disabled=false;
    }
}

function checkForm() {
    var szamfilter = /^[0-9]+$/;
    var mailfilter = /^.+@.+\..{2,6}$/;
    var kell = new Array('inNev','inCim','inTel','inEmail');
    var csakszam = new Array();
    var hiba = false;
    var szamhiba = false;
    var mailhiba = false;
    var nyolcvan = false;

    for (d=1;d<=countRows;d++) {
        //kell.push('inAnyag-'+d);
        kell.push('inHossz-'+d);
        csakszam.push('inHossz-'+d);
        kell.push('inSzel-'+d);
        csakszam.push('inSzel-'+d);
        kell.push('inDb-'+d);
        csakszam.push('inDb-'+d);
    }
    
    for(i=0;i<kell.length;i++) {
       if (document.getElementById(kell[i]).value=="") {
           document.getElementById(kell[i]).style.border= "1px red solid";
           hiba = true;
       } else {
           document.getElementById(kell[i]).style.border= "1px black solid";
           if (kell[i] == "inEmail" && !mailfilter.test(document.getElementById(kell[i]).value)) {
                document.getElementById(kell[i]).style.border= "1px red solid";
                mailhiba = true;
           }
       }
    }
    
    for(i=0;i<csakszam.length;i++) {
       if (!szamfilter.test(document.getElementById(csakszam[i]).value)) {
           document.getElementById(csakszam[i]).style.border= "1px red solid";
           szamhiba = true;
       } else {
           document.getElementById(csakszam[i]).style.border= "1px black solid";
       }
    }
    
    if (!hiba) {
        if (!mailhiba) {
            if (!szamhiba) {
                 return true;
            } else {
                window.alert('A hosszúsági és szélességi mennyiségeket(mm) és a darabszámot számban kell megadni!');
                return false;
            }
        } else {
            window.alert('Az emailcím formátuma nem megfelelő!');
            return false;
        }
    } else {
        window.alert('A csillagozott mezők kitöltése kötelező!');
        return false;
    }
    
    return false;
}

function printDiv (div) {
        var a = window.open('','','width=800,height=600');
        a.document.open("text/html");
        a.document.write('<html><head><link rel="stylesheet" href="/css/index.css"></link><link rel="stylesheet" href="/css/base.css"></link></head><body style="padding-left:20px;background-image:none;background-color:#FFFFFF;">');
        a.document.write(document.getElementById(div).innerHTML);
        a.document.close();
        a.print();
        a.close();
    }
    
document.onkeyup = KeyCheck;       
focused=0;

function KeyCheck(e) {
    var KeyID = (window.event) ? event.keyCode : e.keyCode;
    switch(KeyID) { 
      case 109:  // - 
        remRow();break; 
      case 107:  // +
        addRow(true);break;
   }
}

var saveId=0;
var savePic='';
function showSpec(id) {
    saveId = id;
    if($("#inSzel-"+id).val() == "" 
    || $("#inHossz-"+id).val() == ""
    || $("#inDb-"+id).val() == ""
    )
    {
        alert("Először töltse ki a hossz, szél, db mezőket!");
        return false;
    }
    
    if (confirm("Speciális vágás beállítása esetén az itt beállított élzárások törlődni fognak.\nHa élzárást szeretne akkor ezt a rajzon kell beállítani! Folytatja?")) {
        //document.getElementById("sorID").value=id;
        document.getElementById("popup").style.display='block';
        
        if (document.getElementById("spec_id_"+id).value != "") 
        {
            csv = document.getElementById("csere_"+id).value;
            if(csv == "true")
            {
            mag = document.getElementById("inSzel-"+id).value;
            szel = document.getElementById("inHossz-"+id).value;
            }
            else
            {
            szel = document.getElementById("inSzel-"+id).value;
            mag = document.getElementById("inHossz-"+id).value;
            }
            rid = document.getElementById("spec_id_"+id).value;
            params = "id="+rid+"&sid="+id+"&szel="+szel+
            "&mag="+mag+"&arr="+document.getElementById("spec_"+id).value+
            "&arrse="+document.getElementById("specse_"+id).value+
            "&csere="+document.getElementById("csere_"+id).value;
        } 
        else 
            params ="id=0&sid="+id;
                                 
        var url = BASEURL+"showspec.php?"+params;
        xmlHttp=GetXmlHttpObject(stateChanged_spec);
        xmlHttp.open("GET", url , true);
        xmlHttp.send(null);
    }
}

// megrendelohoz hozzaadas, meretezes
function showSpecAbl(csere) 
{
    if (csere == undefined) csere = false;
    var radioObj=document.melyikForma.vag_type;
    var radioLength = radioObj.length;
    
    // id == forma id
    if(radioLength == undefined)
        if(radioObj.checked) 
            id = radioObj.value;
        
    // id == forma id
    for(var i = 0; i < radioLength; i++) {
        if(radioObj[i].checked) 
            id = radioObj[i].value;
    }
    
    sid = document.getElementById("sorID").value;
    
    if (csere) 
    {
        mag  = $("#inSzel-" +sid).val();
        szel = $("#inHossz-"+sid).val();
    }
    else
    {
        szel = $("#inSzel-" +sid).val();
        mag  = $("#inHossz-"+sid).val();
    }
    $("#csere_"+sid).val(csere?"true":"false");
    
    var mitMivel = [];
    // forma id, szeles el id, magas el id
    mitMivel[1] = {sz_el: 5,  m_el: 4};
    mitMivel[2] = {sz_el: 8,  m_el: 8};
    mitMivel[3] = {sz_el: 35, m_el: 11};
    mitMivel[4] = {sz_el: 16, m_el: 15};
    mitMivel[5] = {sz_el: 19, m_el: 18};
    mitMivel[9] = {sz_el: 37, m_el: 36};
    mitMivel[8] = {sz_el: 33, m_el: 34};
    mitMivel[7] = {sz_el: 0,  m_el: 32};
    mitMivel[6] = {sz_el: 22, m_el: 25};
    
    
    var url = BASEURL+"showspec.php?id=" + id+"&szel="+szel+"&mag="+mag+
    "&sid="+sid+"&arr="+document.getElementById("spec_"+sid).value+
    "&arrse="+document.getElementById("specse_"+sid).value+"&csere="+csere;

    if(csere)
    {
        sz_el = $('select[name="elz['+mitMivel[id].m_el+']"]').val();
        m_el = $('select[name="elz['+mitMivel[id].sz_el+']"]').val();
        
        url += "&sz_el=" + sz_el + "&m_el=" + m_el + "&cs_f="+ mitMivel[id].m_el + "&cs_t="+ mitMivel[id].sz_el;
    }
//    else         url += "&sz_el=" + mitMivel[id].sz_el + "&m_el=" + mitMivel[id].m_el;

    
    xmlHttp=GetXmlHttpObject(stateChanged_spec);
    xmlHttp.open("GET", url , true);
    xmlHttp.send(null);
}


function stateChanged_spec() 
{ 
    if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
    {
        savePic=document.getElementById("egyedikep_"+saveId).value;
        /*document.getElementById("meg_butt").value = "Változtat / Frissít";
        document.getElementById("meg_sem").style.display = "none"; */
        document.getElementById("popup").innerHTML = xmlHttp.responseText;
    } 
}

function getElementsByClass( searchClass, domNode, tagName) {
    if (domNode == null) domNode = document;
    if (tagName == null) tagName = '*';
    var el = new Array();
    var tags = domNode.getElementsByTagName(tagName);
    var tcl = " "+searchClass+" ";
    for(i=0,j=0; i<tags.length; i++) {
        var test = " " + tags[i].className + " ";
        if (test.indexOf(tcl) != -1)
            el[j++] = tags[i];
    }
    return el;
}

function serializeRajz(gid,rid) {
    //alert(gid);
    //document.getElementById('megj_rendeles').value = document.getElementById('megj_rendeles').value + " + rajz";
    inMegjElotte = "" + $("#inMegj-"+gid).val();
    if(inMegjElotte.search(" rajz") == -1)
        $("#inMegj-"+gid).val($("#inMegj-"+gid).val() + "+ rajz");
    var inputs = getElementsByClass("rajz_in");
    var selects = getElementsByClass("rajz_se");
    var jsa = new Array();
    //alert(inputs.length);
    for(i=0;i<inputs.length;i++) {
        jsa[inputs[i].id] = inputs[i].value;
    }
    document.getElementById("spec_"+gid).value= serialize(jsa);
    
    var jsa = new Array();
    //alert(inputs.length);
    for(i=0;i<selects.length;i++) {
        jsa[selects[i].id] = selects[i].value;
    }
    document.getElementById("specse_"+gid).value= serialize(jsa);
    document.getElementById("spec_id_"+gid).value= rid;
    switch (rid) {
        case 1: backurl= "icon_sarok_cut_resize.jpg";break;
        case 2: backurl= "icon_kor_radius_resize.jpg";break;
        case 3: backurl= "icon_sarok_radius_resize.jpg";break;
        case 4: backurl= "icon_sarok_srehen_resize.jpg";break;
        case 5: backurl= "icon_triangle_resize.jpg";break;
        case 6: backurl= "icon_sarok_2_srehen_resize.jpg";break;
        case 7: backurl= "icon_sarok_2_radius_resize.jpg";break;
        case 8: backurl= "icon_felkor_radius_resize.jpg";break;
        case 9: backurl= "icon_trapez_resize.jpg";break; 
        case 10: backurl= "icon_fokvagas.jpg";break; 
    }
    document.getElementById("a_"+gid).innerHTML= "<img src='"+BASEURL+"images/"+backurl+"' class='noborder'>";
    
    document.getElementById("seHe-"+gid).selectedIndex=0;
    document.getElementById("seHe-"+gid).disabled=true;
    document.getElementById("seHh-"+gid).selectedIndex=0;
    document.getElementById("seHh-"+gid).disabled=true;
    document.getElementById("seKb-"+gid).selectedIndex=0;
    document.getElementById("seKb-"+gid).disabled=true;
    document.getElementById("seKj-"+gid).selectedIndex=0;
    document.getElementById("seKj-"+gid).disabled=true;

    document.getElementById('popup').style.display='none';
} 

function egyediSubmit(src) {
    //alert("most a jó");
    gid = document.egyediForm.sor.value;
    
    document.getElementById("egyedikep_"+gid).value = src;
    
    mm = getMeretek(meretek);
    document.getElementById("egyedimeretek_"+gid).value = mm;
    savePic=src;
    //alert(document.getElementById("egyedikep_"+gid).value); 
    document.getElementById("spec_"+gid).value = "eygedi";
    document.getElementById("spec_id_"+gid).value= 11;
    document.getElementById("a_"+gid).innerHTML= "<img src='"+BASEURL+"images/icon_egyedi.jpg' class='noborder'>";
    inMegjElotte = "" + $("#inMegj-"+gid).val();
    if(inMegjElotte.search(" rajz") == -1)
        $("#inMegj-"+gid).val($("#inMegj-"+gid).val() + "+ rajz");
    document.getElementById('popup').style.display='none'; 
}

function egyediSubmit_noclose(src) {
    //alert("most a jó");
    gid = document.egyediForm.sor.value;
    
    document.getElementById("egyedikep_"+gid).value = src;
    mm = getMeretek(meretek);
    document.getElementById("egyedimeretek_"+gid).value = mm;
    savePic=src;
    //alert(document.getElementById("egyedikep_"+gid).value); 
    document.getElementById("spec_"+gid).value = "eygedishowSpec";
    document.getElementById("spec_id_"+gid).value= 11;
    document.getElementById("a_"+gid).innerHTML= "<img src='"+BASEURL+"images/icon_egyedi.jpg' class='noborder'>";
    inMegjElotte = "" + $("#inMegj-"+gid).val();
    if(inMegjElotte.search(" rajz") == -1)
        $("#inMegj-"+gid).val($("#inMegj-"+gid).val() + "+ rajz");
    //document.getElementById('popup').style.display='none'; 
}

function serialize( mixed_value ) {
    var _getType = function( inp ) {
        var type = typeof inp, match;
        var key;
        if (type == 'object' && !inp) {
            return 'null';
        }
        if (type == "object") {
            if (!inp.constructor) {
                return 'object';
            }
            var cons = inp.constructor.toString();
            if (match = cons.match(/(\w+)\(/)) {
                cons = match[1].toLowerCase();
            }
            var types = ["boolean", "number", "string", "array"];
            for (key in types) {
                if (cons == types[key]) {
                    type = types[key];
                    break;
                }
            }
        }
        return type;
    };
    var type = _getType(mixed_value);
    var val, ktype = '';
    
    switch (type) {
        case "function": 
            val = ""; 
            break;
        case "undefined":
            val = "N";
            break;
        case "boolean":
            val = "b:" + (mixed_value ? "1" : "0");
            break;
        case "number":
            val = (Math.round(mixed_value) == mixed_value ? "i" : "d") + ":" + mixed_value;
            break;
        case "string":
            val = "s:" + mixed_value.length + ":\"" + mixed_value + "\"";
            break;
        case "array":
        case "object":
            val = "a";
            /*
            if (type == "object") {
                var objname = mixed_value.constructor.toString().match(/(\w+)\(\)/);
                if (objname == undefined) {
                    return;
                }
                objname[1] = serialize(objname[1]);
                val = "O" + objname[1].substring(1, objname[1].length - 1);
            }
            */
            var count = 0;
            var vals = "";
            var okey;
            var key;
            for (key in mixed_value) {
                ktype = _getType(mixed_value[key]);
                if (ktype == "function") { 
                    continue; 
                }
                
                okey = (key.match(/^[0-9]+$/) ? parseInt(key) : key);
                vals += serialize(okey) +
                        serialize(mixed_value[key]);
                count++;
            }
            val += ":" + count + ":{" + vals + "}";
            break;
    }
    if (type != "object" && type != "array") val += ";";
    return val;
}

function dump(arr,level) {
    var dumped_text = "";
    if(!level) level = 0;
    
    //The padding given at the beginning of the line.
    var level_padding = "";
    for(var j=0;j<level+1;j++) level_padding += "    ";
    
    if(typeof(arr) == 'object') { //Array/Hashes/Objects 
        for(var item in arr) {
            var value = arr[item];
            
            if(typeof(value) == 'object') { //If it is an array,
                dumped_text += level_padding + "'" + item + "' ...\n";
                dumped_text += dump(value,level+1);
            } else {
                dumped_text += level_padding + "'" + item + "' => \"" + value + "\"\n";
            }
        }
    } else { //Stings/Chars/Numbers etc.
        dumped_text = "===>"+arr+"<===("+typeof(arr)+")";
    }
    return dumped_text;
}

function delandclose(sid) {
    document.getElementById("spec_"+sid).value= "";
    document.getElementById("specse_"+sid).value= "";
    document.getElementById("spec_id_"+sid).value= "";
    document.getElementById('popup').style.display='none';
    document.getElementById("a_"+sid).innerHTML='vágás';
    
    document.getElementById("seHe-"+sid).disabled=false;
    document.getElementById("seHh-"+sid).disabled=false;
    document.getElementById("seKb-"+sid).disabled=false;
    document.getElementById("seKj-"+sid).disabled=false;
}


clickx=0;
clicky=0;
function clickFul(fulid) {
    if (fulid==1) {
        document.getElementById("ful_1").className="egyedibarbutt_hl";
        document.getElementById("ful_2").className="egyedibarbutt";
        document.getElementById("frame").style.display="block";
        document.getElementById("meretelo").style.display="none";
    } else {
        if (confirm("A méretezésre váltás mentéssel jár együtt!\nMenti a képet és vált?")) {
            document.getElementById("canvasFrame").contentWindow.savveJust();
            document.getElementById("ful_1").className="egyedibarbutt";
            document.getElementById("ful_2").className="egyedibarbutt_hl";
            document.getElementById("frame").style.display="none";
            document.getElementById("meretelo").style.display="block";
            document.getElementById("mereteloframe").src=savePic;
            document.getElementById("clicker").onmousedown=getPosition;  

        }
    }
}

function getPosition(e) {
    e = e || window.event;
    var cursor = {x:0, y:0};
    if (e.pageX || e.pageY) {
        cursor.x = e.pageX;
        cursor.y = e.pageY;
    } 
    else {
        var de = document.documentElement;
        var b = document.body;
        cursor.x = e.clientX + 
            (de.scrollLeft || b.scrollLeft) - (de.clientLeft || 0);
        cursor.y = e.clientY + 
            (de.scrollTop || b.scrollTop) - (de.clientTop || 0);
    }
    clickx=cursor.x;
    clicky=cursor.y;
    getCorner(document.getElementById("clicker"));
    placeMeret(clickx,clicky);
    //alert(clickx+" "+clicky);
}

function getCorner(obj) {
    valueT = 0;
    valueL = 0;
    element = obj;
    do {
      valueT += element.offsetTop  || 0;
      valueL += element.offsetLeft || 0;
      element = element.offsetParent;
    } while (element);
    clickx-=valueL;
    clicky-=valueT;
    
}
var meretid=0;
var meretek = new Array();
function placeMeret(ex,ey) {
    var meretdiv = document.createElement("div");
    document.getElementById("clicker").appendChild(meretdiv);
    meretdiv.id="meret_"+meretid;
    meretdiv.style.position="absolute";
    meretdiv.style.marginLeft =ex+"px";  
    meretdiv.style.marginTop =(ey-10)+"px";
    meretdiv.style.border ="1px gray solid";
    meretdiv.style.background ="white";
    meretdiv.innerHTML="<input type='text' size='3' value='"+meretid+"' id='mm_"+meretid+"'/> mm <a href='javascript:delMeret("+meretid+")'>[töröl]</a>";
    meretdiv.onmousedown=function(event){
            event.stopPropagation();
        };
    meretek[meretid] = new Array();
    meretek[meretid]["x"] = ex;
    meretek[meretid]["y"] = (ey-10);
    meretid++;
  
}

function delMeret(mid) {
    delete meretek[mid];
    document.getElementById("meret_"+mid).style.display='none';
}

function saveMeretek() {
    gid = document.egyediForm.sor.value;

    mm = getMeretek(meretek);
    document.getElementById("egyedimeretek_"+gid).value = mm;
    
    document.getElementById('popup').style.display='none';
}

function getMeretek(mert) {
    for (i in mert) {
        mert[i]['val'] = document.getElementById("mm_"+i).value;  
    }
    return serialize(mert);
}
