var abc = 'aábcdeéfghiíjklmnoóöőpqrstuúüűvwxyz' + 'AÁBCDEÉFGHIÍJKLMNOÓÖŐPQRSTUÚÜŰVWXYZ'; var szamok = '0123456789'; var cimPlus = ' -.,' + szamok; var nevPlus = ' .'; var tlpPlus = ' -'; var hszPlus = ' ./' + abc; var webPlus = abc + szamok + '~_?#&:/'; function strLTrim(str) { while(str.length && str.indexOf(' ') == 0){ if(str.length == 1) str = ''; else str = str.substring(1); } return str; } function strRTrim(str) { while(str.length && str.lastIndexOf(' ') == str.length - 1){ if(str.length == 1) str = ''; else str = str.substring(0, str.length - 1); } return str; } function strTrim(str) { return strLTrim(strRTrim(str)); } // str elé beteszi fillChar - t annyiszor, hogy str hossza wantedCharCount legyen. // használható pl. 1 karakteres szám két karakteressé alakítására: nullaEgy = fillXCharacter('1', 2, '0'); function fillXCharacter(str, wantedCharCount, fillChar) { while(str.length < wantedCharCount) str = fillChar + str; return str; } // Csak egész számot enged beütni az adott input mezőbe // Pl: function csakSzamInput(fld, evt){ var code = evt.keyCode; if (!evt) { //IE evt = window.event; } else if (!evt.keyCode) { //Netscape code = evt.which; } if(code == 8) return true; // BKPS -> OK if(code < 48 || code > 58) return false; // Ha nem szám -> NEM OK return true; } // Visszaadja, hogy a val érték egész szám-e function egeszSzam(val){ for(i = 0; i < val.length; i++){ var ch = val.charAt(i); if( ch < '0' || ch > '9' ) return false; } return true; } // A fentit meghívja és hibaüzenetet ír ki. Kényelmesebb. function egeszSzamAlert(val){ if(!egeszSzam(val)){ alert('A mezőbe csak számot írhat:' + val); return false; } return true; } // Fokuszálja a form első input elemét function azEnFocusom(w) { for (var f = 0; f < w.document.forms.length; f++) for (var i = 0; i < w.document.forms[f].length; i++) if ((w.document.forms[f].elements[i].type == "text") || (w.document.forms[f].elements[i].type == "password") || (w.document.forms[f].elements[i].type == "textarea") || (w.document.forms[f].elements[i].type == "file")) { w.document.forms[f].elements[i].focus(); return 1; } } // Minden szó első betűjét naggyá teszi, a többit meg kicsivé function nagyKezdoBetusito(obj) { var r = t = s = f = ""; var c = eval(obj); if (c.indexOf("-") > -1) { t = c.split("-"); s = "-"; } else { t = c.split(" "); s = " "; } for (var i = 0; i < t.length; i++) { c = t[i]; c = c.toLowerCase(); f = c.substring(0,1); c = f.toUpperCase() + c.substring(1, c.length); r = r + ((r) ? s : "") + c; } eval(obj + "=\'" + r + "\'"); } // Leellenőrzi a paraméterként kapott számot, hogy az e function szamEllenoriz(obj, plus) { var c = eval(obj); var ok = "0123456789"; var r = ""; for (var i = 0; i < c.length; i++) r += (ok.indexOf(c.substr(i,1)) == -1) ? "" : c.substr(i,1); if ((plus) && (r) && (r.substring(1, 1) != "+")) r = "+" + r; eval(obj + "=\'" + r + "\'"); } // Datum ellenorzes. A datumot YYYY-MM-DD formatumban kell megadni, a fv visszaadja a hibauzenetet // vagy 0-t. function datumEllenoriz(d) { var ret = "0"; if (d.length != 10) { ret = "A dátum hossza nem jó."; } else { var ev = d.substring(0,4); var ho = d.substring(5,7); var nap = d.substring(8,10); if ((d.substring(4,5) != '-') || (d.substring(7,8) != '-')) { ret = "A dátum elválasztó karaktere a kötőjel (-)."; } else { if ((isNaN(ev)) || (isNaN(ho)) || (isNaN(nap))) { ret = "A dátumban csak számok lehetnek."; } else { if (ev < 1970) { ret = "Hibás évszám."; } else { if ((ho <= 0) || (ho > 12)) { ret = "Hibás hónap."; } else { if ((ho == 1) || (ho == 3) || (ho == 5) || (ho == 7) || (ho == 8) || (ho == 10) || (ho == 12)) { if ((nap < 1) || (nap > 31)) { ret = "Hibás nap."; } } else { if ((ho == 4) || (ho == 6) || (ho == 9) || (ho == 11)) { if ((nap < 1) || (nap > 30)) { ret = "Hibás nap."; } } else { if ((((ev % 4) == 0) || ((ev % 100) == 0)) && ((ev % 1000) != 0)) { if ((nap < 1) || (nap > 29)) { ret = "Hibás nap."; } } else { if ((nap < 1) || (nap > 28)) { ret = "Hibás nap."; } } } } } } } } } if (ret != "0") { ret += " A helyes formátum: éééé-hh-nn (például 1993-11-07) !"; } return ret; } // Datum ellenorzes. A szerkesztomezot varja parameterkent, // es ha tudja, megvaltoztatja jo formatumuva (eeee-hh-nn) // Jó formátumok: 040512 04?05?12 20040512 2004?05?12 function datumEllenorizObject(dObject) { if(dObject.value.length == 6){ //040512 dObject.value = '20' + dObject.value.substr(0, 2) + '-' + dObject.value.substr(2, 2) + '-' + dObject.value.substr(4, 2); }else if(dObject.value.length == 8){ if(dObject.value.charAt(2) >= '0' && dObject.value.charAt(2) <= '9'){ // 20040512 dObject.value = dObject.value.substr(0, 4) + '-' + dObject.value.substr(4, 2) + '-' + dObject.value.substr(6, 2); }else{ // 04.05.12 dObject.value = '20' + dObject.value.substr(0, 2) + '-' + dObject.value.substr(3, 2) + '-' + dObject.value.substr(6, 2); } }else if(dObject.value.length == 10){ //2004?05?12 dObject.value = dObject.value.substr(0, 4) + '-' + dObject.value.substr(5, 2) + '-' + dObject.value.substr(8, 2); } return datumEllenoriz(dObject.value); } // Idopont ellenorzes. A datumot hh:mm formatumban kell megadni, a fv visszaadja a hibauzenetet // vagy 0-t. function idoEllenoriz(t) { var ret = "0"; if (t.length != 5) { ret = "Az időpont hossza nem jó."; } else { var ora = t.substring(0,2); var perc = t.substring(3,5); if (t.substring(2,3) != ':') { ret = "Az időpont elválasztó karaktere a kettőspont (:)."; } else { if ((isNaN(ora)) || (isNaN(perc))) { ret = "Az időpontban csak számok lehetnek."; } else { if ((ora < 0) || (ora > 23)) { ret = "Hibás óra."; } else { if ((perc < 0) || (perc > 59)) { ret = "Hibás perc."; } } } } } if (ret != "0") { ret += " A helyes formátum: óó:pp (például 17:58) !"; } return ret; } // Idopont ellenorzes. A szerkesztomezot varja parameterkent, // es ha tudja, megvaltoztatja jo formatumuva (oo:pp) // Jó formátumok: oopp; oo?pp function idoEllenorizObject(tObject) { if(tObject.value.length == 4){ tObject.value = tObject.value.substr(0, 2) + ':' + tObject.value.substr(2, 2); }else if(tObject.value.length == 5){ tObject.value = tObject.value.substr(0, 2) + ':' + tObject.value.substr(3, 2); } return idoEllenoriz(tObject.value); } // Nyit egy ablakot function ablak(w, h, php, par, t, s) { php += par + ((par=="") ? "?" :"&") + "next="; x = (screen.availWidth - w) / 2; y = (screen.availHeight - h) / 2; window.open(php, t, "width=" + w + ",height=" + h + ",status=1,left=" + x + ",top=" + y + ",resizable=1,scrollbars=" + s); } function min(a, b){ return (a < b)? a : b; } function max(a, b){ return (a > b)? a : b; } function ablakMax(w, h, php, par, maxWidth, maxHeight){ php += par + ((par=="") ? "?" :"&") + "next="; // Ha nem lóg ki a kép, akkor ne scroll-ozhasson var plusParams = ',resizable=1'; if(w < maxWidth && h < maxHeight) plusParams += ',scrollbars=0'; else plusParams += ",scrollbars=1,status=1"; if(maxWidth) w = min(maxWidth, max(100, w)); if(maxHeight) h = min(maxHeight, max(100, h)); x = (screen.availWidth - w) / 2; y = (screen.availHeight - h) / 2; var harmadik = "width=" + w + ",height=" + h + ",left=" + x + ",top=" + y + plusParams; //alert(harmadik); window.open(php, "nagyGaleriaKep", harmadik); } // Leellenorzi a parameterkent kapott emailt (uj) function emailEllenorizSimple(val){ var ok = "0123456789qwertzuiopasdfghjklyxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM@_-."; // 1. Ne legyen benne hibás karakter: for (var i = 0; i < val.length; i++) if ( ok.indexOf(val.substr(i,1)) == -1 ) return 0; // 2. Szétszedés user - re és domain - re az "első" kukac segítségével var kukacIndex = val.indexOf('@'); if(kukacIndex < 1) return 0; var user = val.substring(0, kukacIndex); var domain = val.substring(kukacIndex + 1); // 3. Karaktersorozatok ellenőrzése // Több kukac nem lehet benne: if(domain.indexOf('@') >= 0) return 0; // Legalább egy '.' karakter: if(domain.indexOf('.') < 0) return 0; // Első és utolsó karakter nem lehet pont: if(domain.charAt(0) == '.' || domain.charAt(domain.length - 1) == '.') return 0; // Szerintem a felh. név első karakter csak betű lehet: //var firstChar = user.charAt(0).toLowerCase(); //if(firstChar < 'a' || firstChar > 'z') return 0; return val; } // Leellenorzi a parameterkent kapott emailt, lehet benne több is, vesszővel elválasztva function emailEllenorizSpec(val, canMultiple) { var ret = ''; if(canMultiple){ var index = val.indexOf(','); var startIndex = 0; var actual = ''; while(index != -1){ actual = strTrim(val.substring(startIndex, index)); //alert('[' + actual + ']'); startIndex = index + 1; index = val.indexOf(',', startIndex); if( emailEllenorizSimple(actual) == 0 ) return 0; else ret += actual + ','; } actual = strTrim(val.substring(startIndex)); //alert('[' + actual + ']'); if( emailEllenorizSimple(actual) == 0 ) return 0; else ret += actual; }else{ ret = emailEllenorizSimple(val); } return ret; } // Leellenorzi a parameterkent kapott emailt (új) function emailEllenoriz(val) { return emailEllenorizSpec(val, false); } function elemEltavolito(array, index){ for(i=index; i 0 && !berakva ) { to.length++; for(k = to.length - 1; k > j; k--) { to.options[k].text = to.options[k - 1].text; to.options[k].value = to.options[k - 1].value; } ret = j; to.options[k] = what; berakva = true; j = to.length; } } if(!berakva) { to.options[j] = what; ret = j; } return ret; } function moveOption(from, to) { window.status = "Kis türelmét kérjük..."; var lastIndex = 0; for (i = 0; i < from.length; i++) { if (from.options[i].selected) { lastIndex = addOption(to, new Option(from.options[i].text, from.options[i].value), lastIndex); from.remove(i); i--; } } window.status = ""; } function moveAllOption(from, to) { window.status = "Kis türelmét kérjük..."; if(to.length == 0) { to.length = from.length; for (i = 0; i < from.length; i++) { to.options[i] = new Option(from.options[i].text, from.options[i].value); } } else { var lastIndex = 0; for (i = 0; i < from.length; i++) { lastIndex = addOption(to, new Option(from.options[i].text, from.options[i].value), lastIndex); } } from.length = 0; window.status = ""; }