/* zrodlo funkcji (l|r)trim - http://www.somacon.com/p355.php */

String.prototype.trim = function() {
	return this.replace(/^\s+|\s+$/g,"");
}
String.prototype.ltrim = function() {
	return this.replace(/^\s+/,"");
}
String.prototype.rtrim = function() {
	return this.replace(/\s+$/,"");
}


function changeHiddenNameAndValue(name, value)
{
    document.getElementById('theHidden').name=name;
     document.getElementById('theHidden').value=value;
     return true;

}

function checkTel(skad,dokad)
{

    if(telvalidator(skad.value)){
        if(document.getElementById(dokad)) document.getElementById(dokad).innerHTML='';
        skad.style.borderColor='#D9DADB';
        return true;
    } else {
        if(document.getElementById(dokad)) document.getElementById(dokad).innerHTML='<p style=\"color:red;\" class="dymek">Dopuszczalny format zapisu:                    <br />+48 56 648 85 39                    <br />+48 727 318 936';
        skad.style.borderColor='#FF0000';
        return false;
    }
}

function ponowniePolec(klinika)
{
    new Ajax.Updater('polecZnajomemuDiv', '/index.php/kliniki/polec/klinika/'+klinika, {asynchronous:true, evalScripts:true});
   // alert('siurdak!');
    return false;
}

function rozwinOferte(numer)
{
    for(i=1;i<=3;i++)
    {
        if(i==numer)
        {
            document.getElementById('rozw'+i).style.display='block';
            document.getElementById('haczyk'+i).src='/images/haczyk.png';
        }
        else
        {
            document.getElementById('rozw'+i).style.display='none';
            document.getElementById('haczyk'+i).src='/images/haczyk2.jpg';
        }
    }
}

function walidacjaKrok2(form)
{
    var firstalert=true;

    if(form.tytul.value.length==0)
    {
        if(firstalert) alert('Musisz podać tytuł ogłoszenia');
        firstalert=false;
        form.tytul.style.borderColor='#f00';
        
    }
    else form.tytul.style.borderColor='#D9DADB';

    if(form.skrocona.value.length==0)
    {
        if(firstalert) alert('Musisz podać skróconą nazwę ogłoszenia');
        firstalert=false;
        form.skrocona.style.borderColor='#f00';

    }
    else form.skrocona.style.borderColor='#D9DADB';

    if(form.miejscowosc.value.length==0)
    {
        if(firstalert) alert('Musisz podać miejscowość');
        firstalert=false;
        form.miejscowosc.style.borderColor='#f00';
    }
    else form.miejscowosc.style.borderColor='#D9DADB';

    if(form.opis.value.length==0)
    {
        if(firstalert) alert('Musisz podać opis ogłoszenia');
        firstalert=false;
        form.opis.style.borderColor='#f00';
    }
    else form.opis.style.borderColor='#D9DADB';

    if(form.telefon.value.length==0 && form.komorka.value.length==0 && form.email.value.length==0)
    {
        if(firstalert) alert("Wymagany jest jeden numer telefonu lub e-mail.");
        
        firstalert=false;

        /*if(!form.komorka.value.length>0) telvalidator(form.komorka.value);
        if(!form.telefon.value.length>0) telvalidator(form.telefon.value);*/
           

        form.telefon.style.borderColor='#f00';
        form.komorka.style.borderColor='#f00';
        form.email.style.borderColor='#f00';

        document.getElementById('telefonkomorkowy').innerHTML='';
        document.getElementById('telefonwalidator').innerHTML='';
    }
    else
    {
        if(form.telefon.value.length>0 && !telvalidator(form.telefon.value))
        {
            checkTel(form.telefon,'telefonwalidator');
            if(firstalert) alert("Pole \"Telefon\" nie jest poprawnie wypełnione. Dopuszczalne są następujące formaty: \"+48 56 648 85 39\" lub \"+48 727 318 936\". Zwróć uwagę na występowanie spacji oraz znaku + na początku.");
            firstalert=false;
            form.telefon.style.borderColor='#f00';
        }
        else
        {
            form.telefon.style.borderColor='#D9DADB';
            document.getElementById('telefonwalidator').innerHTML='';
        }

        if(form.komorka.value.length>0 && !telvalidator(form.komorka.value))
        {
            checkTel(form.komorka,'telefonkomorkowy');
            if(firstalert) alert("Pole \"Telefon komórkowy\" nie jest poprawnie wypełnione. Dopuszczalne są następujące formaty: \"+48 56 648 85 39\" lub \"+48 727 318 936\". Zwróć uwagę na występowanie spacji oraz znaku + na początku.");
            firstalert=false;
            form.komorka.style.borderColor='#f00';
        }
        else
        {
            form.komorka.style.borderColor='#D9DADB';
            document.getElementById('telefonkomorkowy').innerHTML='';
        }

        if(form.komorka.value.length==0 && form.telefon.value.length==0) form.email.style.borderColor='#D9DADB';

    }

    if(firstalert) return true;
    else return false;
}

function walidajcaPolecZnajomemu(form)
{
    var firstalert=true;


    if(form.od.value.length==0)
    {
        if(firstalert) alert("Pole \"Twoje imię\" jest puste.");
        firstalert=false;
        form.od.style.borderColor='#f00';
    }
    else form.od.style.borderColor='#D9DADB';

    if(form.doo.value.length==0)
    {
        if(firstalert) alert("Pole \"adres e-mail znajomego\" jest puste.");
        firstalert=false;
        form.doo.style.borderColor='#f00';
    }
    else form.doo.style.borderColor='#D9DADB';

    if(form.tresc.value.length==0)
    {
        if(firstalert) alert("Pole \"treść\" jest puste.");
        firstalert=false;
        form.tresc.style.borderColor='#f00';
    }
    else form.tresc.style.borderColor='#D9DADB';

    if(firstalert) return true;
    else return false;
}

function pokazRejestracje()
{

    document.getElementById('regdiv').style.visibility="visible";
    document.getElementById('regdiv').style.display="block";
    document.getElementById('zalogujSie').style.display="none";
    document.getElementById('logowanieLink').innerHTML="Rejestracja";
}

function przypomnijHaslo()
{
    document.getElementById('hasdiv').style.visibility="visible";
    document.getElementById('hasdiv').style.display="block";
    document.getElementById('zalogujSie').style.display="none";
    document.getElementById('logowanieLink').innerHTML="Przypomnienie hasła";
}

function changeTab(numer, aktywny, nieaktywny,pakiet)
{
    if(pakiet>1) pakiet++;
    
    for(i=1;i<=pakiet;i++)
    {
        
        if(document.getElementById('guzik'+i))
        {
            if(numer==i)
            {
                document.getElementById('guzik'+i).className='przycisk aktywny';
                document.getElementById('obrazek'+i).src='/images/'+aktywny;
            }
            else
            {
                document.getElementById('guzik'+i).className='przycisk nieaktywny';
                document.getElementById('obrazek'+i).src='/images/'+nieaktywny;
            }

        }
    }

    if(pakiet>1) pakiet--;

    //tera sytuacja wyjątkowe ;-)

    if(pakiet==3)
    {
        if(numer==5) document.getElementById('guzik'+5).className='przycisk reklamaAktywna';
        else document.getElementById('guzik'+5).className='przycisk reklamaNieAktywna';

        /*if(numer==4)
        {
            document.getElementById('guzik'+4).className='przycisk aktywny';
            document.getElementById('obrazek'+4).src='/images/'+aktywny;
        }
        else
        {
            document.getElementById('guzik'+4).className='przycisk nieaktywny';
            document.getElementById('obrazek'+4).src='/images/'+nieaktywny;
        }*/
    }

    if(pakiet==2)
    {
        if(numer==5) document.getElementById('guzik'+5).className='przycisk reklamaAktywna';
        else document.getElementById('guzik'+5).className='przycisk reklamaNieAktywna';
    }

    if(pakiet==1)
    {
        if(numer==1) document.getElementById('obrazek1').src='/images/formularz_white.jpg';
        else document.getElementById('obrazek1').src='/images/formularz_pink.jpg';

        if(numer==3) document.getElementById('guzik'+3).className='przycisk zabiegiAktywna';
        else document.getElementById('guzik'+3).className='przycisk zabiegiNieAktywna';
    }


    document.getElementById('wnetrzeOpisu').innerHTML=document.getElementById('wnetrze'+numer).innerHTML;

    if(numer==2)
    {
        wystartujMape();
    }

    return false;
}

function pokazSzczegolyPakietu(liczba)
{
    for(i=1;i<=3;i++)
    {
        if(i==liczba) document.getElementById('opisPakietu'+i).style.display='block';
        else document.getElementById('opisPakietu'+i).style.display='none';
    }
}

function krok1(kategoria,typ)
{
    document.getElementById("kategoria").value=kategoria;
    document.getElementById("typ").value=typ;
    document.getElementById("dodajOferteForm").submit();
}

function podmien(id)
{
    if(document.getElementById(id).className=='cb')
    {
        document.getElementById(id).className='cbClick';
        document.getElementById(id+"hidden").value="1";
    }
    else
    {
        document.getElementById(id).className='cb'
        document.getElementById(id+"hidden").value="0";
    }

}

function daneDoKorespondencji(checkbox)
{
    var i;

    //alert('run nigga nigga');
    
    for (i=1; i <= 6; i++)
    {
        //alert(i+" "+document.getElementById('dane'+i));
        if(checkbox.checked==true)
        {
            document.getElementById('dane'+i).disabled = true;
            document.getElementById('dane'+i).style.backgroundColor = '#ddd';
            document.getElementById('dane'+i).style.borderColor = '#D9DADB';
        }
        else
        {
            document.getElementById('dane'+i).disabled = false;
            document.getElementById('dane'+i).style.backgroundColor = '#fff';

            

        }
    }
}

function zwinRozwinKomentarz(anchora,id)
{
    //alert()
    if(anchora.innerHTML=='(rozwiń treść)')
    {
        document.getElementById(id).style.display='block';
        anchora.innerHTML='(zwiń treść)';
    }
    else
    {
        document.getElementById(id).style.display='none';
        anchora.innerHTML='(rozwiń treść)';
    }
}

function checkthis(field,observer,limit)
{
    document.getElementById(observer).innerHTML="<span class=\"smaller\">Pozostało</span> <b>"+(limit-field.value.length)+"</b> <span class=\"smaller\">znaków</span>";
    if(field.value.length>limit)
    {
        alert("Przekroczono limit znaków!");
        field.value=field.value.substring(0,limit);
        document.getElementById(observer).innerHTML="<span class=\"smaller\">Pozostało</span> <b>0</b> <span class=\"smaller\">znaków</span>";
        return false;
    }
    return true;
}

var sliderPosition=0;

function singleSliderMove(direction,divId)
{
    document.getElementById(divId).style.left=(parseInt(document.getElementById(divId).style.left)+direction*3)+"px";
}

function transfer(direction,divId,count)
{
    count=count-1;
    sliderPosition-=direction;
    if(sliderPosition<=-1 && direction==1)
    {
        //przeskok na ostatnią ramkę, sliderPosition=
        //alert("t1 "+sliderPosition);
        sliderPosition=count-3;
        document.getElementById(divId).style.left=-(count-2)*165+'px';
    }
    else if(sliderPosition>=count-2 && direction==-1)
    {
        //alert("t2 "+sliderPosition+" | count="+count);
        document.getElementById(divId).style.left='-165px';
        sliderPosition=0;
    }
}

function moveSlider(direction,divId,count)
{
    for(i=0;i<55;i++) setTimeout('singleSliderMove('+direction+',\''+divId+'\')',10*i);
    setTimeout('transfer('+direction+',\''+divId+'\',\''+count+'\')',10*i);
  
}

function shrink2()
{
    document.getElementById('pokazWszystkieKomentarze').style.display='block';
    document.getElementById('pokazWszystkie').style.display='none';
    
}

function eraser(value,input)
{
    if(input.value==value) input.value='';
}

function telvalidator(src)
{
    
    var reg=/^[+]{1}[0-9]{2}[ ]{1}[0-9]{2}[ ]{1}[0-9]{3}[ ]{1}[0-9]{2}[ ]{1}[0-9]{2}$/;
    if(!reg.test(src))
    {
        reg=/^[+]{1}[0-9]{2}[ ]{1}[0-9]{3}[ ]{1}[0-9]{3}[ ]{1}[0-9]{3}$/;
        return reg.test(src);
    }
    else return true;

}

function nipvalidator(src)
{
    if(src.length==0) return false;
    
    var reg=/^[0-9]{3}[-]{1}[0-9]{3}[-]{1}[0-9]{2}[-]{1}[0-9]{2}$/;

    var reg2=/^[0-9]{3}[-]{1}[0-9]{2}[-]{1}[0-9]{2}[-]{1}[0-9]{3}$/;

    var reg3=/^[0-9]{10}$/;

    if(reg.test(src) || reg2.test(src) || reg3.test(src)) return true;
    else return false;
}

function kodvalidator(src)
{
    var reg=/^[0-9]{2}[-]{1}[0-9]{3}$/;
    return reg.test(src);
}

//alert(kodvalidator('87-100'));

function dlugosc(atrybut)
{
    if(atrybut.replace(/ /gi, "").length==0) return false;
    else return true;
}

function checkDate(skad, dokad)
{

    if(skad.value.length != 10) {
        skad.style.borderColor='#FF0000';
        if (document.getElementById(dokad) != null) {
            document.getElementById(dokad).innerHTML='<p style="color:red;" class="dymek">Format daty: RRRR-MM-DD <br />np: 1960-02-16</p>';
        }
        return 0;
    }
    var myDateStr2 = skad.value.split("-");
    //alert(myDateStr2[1]);
    var myDayStr = myDateStr2[2];
    var myMonthStr = myDateStr2[1]-1;
    var myYearStr = myDateStr2[0];
    var myMonth = new Array('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec');
    var myDateStr = myDayStr + ' ' + myMonth[myMonthStr] + ' ' + myYearStr;

    /* Using form values, create a new date object
using the setFullYear function */
    var myDate = new Date();
    myDate.setFullYear( myYearStr, myMonthStr, myDayStr );
    //alert(myMonthStr);

    

    if ( myDate.getMonth() != myMonthStr | myDayStr.length!=2 | myYearStr.length!=4 | myMonthStr.length>2 | myMonthStr.length==0)
    {
        if (document.getElementById(dokad) != null) {
            document.getElementById(dokad).innerHTML='<p style="color:red;" class="dymek">Format daty: RRRR-MM-DD <br />np: 1960-02-16</p>';
        }
        skad.style.borderColor='#FF0000';
        return 0;
    }
    else
    {
        skad.style.borderColor='#D9DADB';
        if (document.getElementById(dokad) != null) {
            document.getElementById(dokad).innerHTML="";
        }
        return 1;
    }
}

function validateEmail(field){
    reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
    //reg = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/

    if (!reg.test(field.value)) {
        field.style.borderColor='#FF0000';
        return false;
    } else {
        field.style.borderColor='#D9DADB';
        return true;
    }
}

function validateWoj(field){
    if (field.value == 0){
        field.style.borderColor='#FF0000';
        return false;
    } else {
        field.style.borderColor='#D9DADB';
        return true;
    }
}

function validatePlec(field){
    if (field.value == 0){
        field.style.borderColor='#FF0000';
        return false;
    } else {
        field.style.borderColor='#D9DADB';
        return true;
    }
}

function validateImie(field){
    if (!dlugosc(field.value)) {
        field.style.borderColor='#FF0000';
        return false;
    } else {
        field.style.borderColor='#D9DADB';
        return true;
    }
}

function validateKod(field){
    if (!kodvalidator(field.value)) {
        field.style.borderColor='#FF0000';
        return false;
    } else {
        field.style.borderColor='#D9DADB';
        return true;
    }
}

function validatePoczta(field){
    if (!dlugosc(field.value)) {
        field.style.borderColor='#FF0000';
        return false;
    } else {
        field.style.borderColor='#D9DADB';
        return true;
    }
}

function validateUlica(field){
    if (!dlugosc(field.value)) {
        field.style.borderColor='#FF0000';
        return false;
    } else {
        field.style.borderColor='#D9DADB';
        return true;
    }
}

function validateNrDomu(field){
    if (!dlugosc(field.value)) {
        field.style.borderColor='#FF0000';
        return false;
    } else {
        field.style.borderColor='#D9DADB';
        return true;
    }
}

function validateKraj(field){
    if (!dlugosc(field.value)) {
        field.style.borderColor='#FF0000';
        return false;
    } else {
        field.style.borderColor='#D9DADB';
        return true;
    }
}

function validatePassword(field, feedback){
    wantedLength = 8;
    if (field.value.trim().length < wantedLength) {
        field.style.borderColor='#FF0000';
        feedback.innerHTML = 'Hasło musi mieć minimum ' + wantedLength + ' znaków długości (bez początkowych i końcowych spacji)';
        return false;
    } else {
        field.style.borderColor='#D9DADB';
        feedback.innerHTML = '';
        return true;
    }
}

function validatePasswordConfirm(fieldPass, fieldConfirm, feedback){
    if (validatePassword(fieldPass, feedback)) {
        if (fieldConfirm.value != fieldPass.value) {
            fieldConfirm.style.borderColor='#FF0000';
            fieldPass.style.borderColor='#FF0000';
            feedback.innerHTML = 'Hasło i potwierdzenie muszą się pokrywać';
            return false;
        } else {
            fieldConfirm.style.borderColor='#D9DADB';
            fieldPass.style.borderColor='#D9DADB';
            feedback.innerHTML = '';
            return true;
        }
    }
    return true;
}

function validateLogin(field, feedback){
    wantedLength = 4;
    if (field.value.trim().length < wantedLength) {
        field.style.borderColor='#FF0000';
        feedback.innerHTML = 'Nazwa użytkownika musi mieć minimum ' + wantedLength + ' znaki długości';
        return false;
    }else {
        field.style.borderColor='#D9DADB';
        feedback.innerHTML = '';
        return true;
    }
}

function validateSelection(field){
    if (field.selectedIndex == -1) {
        field.style.borderColor='#FF0000';
        return false;
    } else {
        field.style.borderColor='#D9DADB';
        return true;
    }
}

function validateInteger(field){

    var reg=/^[-]?[0-9]+$/;

    if (reg.test(field.value) == false) {
        field.style.borderColor='#FF0000';
        return false;
    } else {
        field.style.borderColor='#D9DADB';
        return true;
    }
}

function validateNip(field){
    if ( document.getElementById('nipwalidacja') == null || document.getElementById('nipwalidacja').value == 'false' ) {
        field.style.borderColor='#FF0000';
        return false;
    } else {
        field.style.borderColor='#D9DADB';
        return true;
    }
}

/**
 * Ktos madry moglby te funkcje rozbic na kilka innych, bo tego czytac sie
 * nie da... Ktos madry zaraz to zrobi :P
 * Ktos madry to zrobil!
 *
 */
function edycjaDanychWalidator(form, first)
{

    var validationSuccess = true;

    if ( ! checkDate(form.data, 'walidacjaDaty')  ) validationSuccess = false;
    if ( ! checkTel(form.telefon, 'walidacjaTel') ) validationSuccess = false;
    if ( ! validateEmail(form.email)              ) validationSuccess = false;
    if ( ! validateWoj(form.woj)                  ) validationSuccess = false;
    if ( ! validatePlec(form.plec)                ) validationSuccess = false;
    if ( ! validateImie(form.imie)                ) validationSuccess = false;
    if ( ! validateKod(form.kod)                  ) validationSuccess = false;
    if ( ! validatePoczta(form.poczta)            ) validationSuccess = false;
    if ( ! validateUlica(form.ulica)              ) validationSuccess = false;
    if ( ! validateNrDomu(form.nrdomu)            ) validationSuccess = false;
    if ( ! validateKraj(form.kraj)                ) validationSuccess = false;

    if (!document.getElementById('korespo') || form.korespo.checked == false) {
        if ( ! validateKod(form.kodkontakt)          ) validationSuccess = false;
        if ( ! validateImie(form.imiekontakt)        ) validationSuccess = false;
        if ( ! validatePoczta(form.pocztakontakt)    ) validationSuccess = false;
        if ( ! validateUlica(form.ulicakontakt)      ) validationSuccess = false;
        if ( ! validateNrDomu(form.nrdomukontakt)    ) validationSuccess = false;
        if ( ! validateKraj(form.krajkontakt)        ) validationSuccess = false;
    } else {
        form.krajkontakt.style.borderColor='#D9DADB';
        form.nrdomukontakt.style.borderColor='#D9DADB';
        form.ulicakontakt.style.borderColor='#D9DADB';
        form.pocztakontakt.style.borderColor='#D9DADB';
        form.imiekontakt.style.borderColor='#D9DADB';
        form.kodkontakt.style.borderColor='#D9DADB';
    }

    if (!validationSuccess) {
        document.getElementById('feedback').innerHTML = 'Uzupełnij brakujące dane';
    } else {
        document.getElementById('feedback').innerHTML = '';
    }

    return validationSuccess;
}

function notEmptyValidate(field){
    if (!dlugosc(field.value)){
        field.style.borderColor='#FF0000';
        return false;
    } else {
        field.style.borderColor='#D9DADB';
        return true;
    }
}

function validateEquality(field1, field2) {
    if (field1.value != field2.value) {
        field1.style.borderColor='#FF0000';
        field2.style.borderColor='#FF0000';
        return false
    } else {
        return true;
    }
}

function validacjaForma(form,reg) {
    validationSuccess = true;
    //jest tylko jedno wywolanie tej funkcji i zawsze reg==1, wiec
    // nie wiem po co to jest
    // feedback1 jest dla danych uzytkownika, feedback2 dla danych logowania
    feedback1 = document.getElementById('feedback');
    feedback1.innerHTML = '';
    feedback2 = document.getElementById('feedback2');
    feedback2.innerHTML = '';
    if ( ! edycjaDanychWalidator(form, 1)               ) validationSuccess = false;

    if (reg == 1) {
        
        if ( ! notEmptyValidate(form.login)             ) validationSuccess = false;
        //if ( ! notEmptyValidate(form.password)          ) validationSuccess = false;
        if ( ! validatePassword(form.password, feedback2) ) validationSuccess = false;
        if ( ! validatePasswordConfirm(form.password, form.password2, feedback2)) validationSuccess = false;
        //if ( ! validateEquality(form.password, form.password2)) {
        //    document.getElementById('feedback2').innerHTML = 'Has\u0142a muszą być identyczne <br />';
        //    validationSuccess = false;
        //} else {
        //    document.getElementById('feedback2').innerHTML = '';
        //}
    } else {
        if ( ! notEmptyValidate(form.haslo)          ) validationSuccess = false;
        if ( ! notEmptyValidate(form.hasloack)         ) validationSuccess = false;
        if (validateEquality(form.haslo, form.hasloack)) {
            document.getElementById('feedback2').innerHTML = 'Has\u0142a muszą być identyczne <br />';
            validationSuccess = false;
        }else {
            document.getElementById('feedback2').innerHTML = '';
        }
    }
    return validationSuccess;
    
}

function switchList(){
    var div1 = document.getElementById('selectList')
    if (div1.style.display == 'none') {
        div1.style.display = 'block';
        document.getElementById('defBg').style.backgroundImage="url(/images/select2.gif)";
    } else {
        div1.style.display = 'none';
        document.getElementById('defBg').style.backgroundImage="url(/images/select.gif)";
    }
}

function focusThis(ten,tekst)
{
    if(ten.value==tekst) ten.value='';
}

function blurThis(ten,tekst)
{
    if(ten.value=='') ten.value=tekst;
}
        
function createAjaxObject()
{
    var ajaxRequest;
    try
    {
        ajaxRequest = new XMLHttpRequest();
    }
    catch (e)
    {
        try
        {
            ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
        }
        catch (e)
        {
            try
            {
                ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
            }
            catch (e)
            {
                alert("Your browser broke!");
                return false;
            }
        }
    }
    return ajaxRequest;
}

function zliczanie(id)
{
    if(rand(10)==5)
    {
        //alert('test');
        var ajax=createAjaxObject();
        if(ajax.readyState == 4)
        {
        //document.getElementById('ajaxloader').style.display='none';
        //document.getElementById('art').innerHTML = ajax.responseText;
        }
        ajax.open("GET", '/index.php/zliczanie/index/id/'+id, true);
        ajax.send(null);
    }
//
}

function rand(n)
{
    return ( Math.floor ( Math.random ( ) * n + 1 ) );
}

function przekierowanie(link,id)
{
    if(rand(10)==5)
    {
        //alert('przekierowanie!');
        /*var ajax=createAjaxObject();
        ajax.onreadystatechange = function()
        {
            if(ajax.readyState == 4)
            {
        //document.getElementById('ajaxloader').style.display='none';
        //document.getElementById('arts').innerHTML=ajax.responseText;
        }
        }
        ajax.open("GET", '/index.php/przekierowanie/index/link/'+link+'/id/'+id+'/', true);
        ajax.send(null);*/
        /*
         * <iframe width="300" height="200" src="plik.html">
Tu napis lub odwołanie w przypadku gdy przeglądarka nie
obsługuje pływających ramek</iframe>
         */
        window.status='CzasNaZmiane.pl';
        var frame = document.createElement('iframe');
        frame.src = 'http://'+link;
        frame.id = 'rameczka'+id;
        frame.className = 'rejestracjaDiv';
        var div=document.getElementById('wskazania');
        //hidea('rameczka');
        div.parentNode.insertBefore(frame, div);
        //hidea('rameczka');
        window.status='CzasNaZmiane.pl';
    }
    
}

function tz(divek)
{
    if(document.getElementById(divek).style.display=="block")
        document.getElementById(divek).style.display="none";
    else document.getElementById(divek).style.display="block";
}

function validateComment(form)
{
    if(form.nick.value=='Twój login')
    {
        alert('Pole nick musi być uzupełnione!');
        return false;
    }
    else if(form.tresc.value=='Twój komentarz')
    {
        alert('Treść komentarza musi być uzupełniona!');
        return false;
    }

    return true;
}

function przywroc(div)
{
    document.getElementById(div).innerHTML=document.getElementById('example').innerHTML;

}

function walidatorFormularzaKontaktowego(form)
{

    

    if(form.imie.value.length==0)
    {
        alert("Pole \"imię i nazwisko\" jest puste.");
        return false;
    }
    if(form.email.value.length==0)
    {
        alert("Pole \"e-mail\" jest puste.");
        return false;
    }
    if(form.telefon.value.length==0)
    {
        alert("Pole \"telefon\" jest puste.");
        return false;
    }
    if(form.pytanie.value.length==0)
    {
        alert("Pole \"pytanie\" jest puste.");
        return false;
    }

    return true;
}

function walidatorDodawaniaFirmy(form) {

    var validationSuccess = true;
    
    if ( ! notEmptyValidate(form.nazwa)           ) validationSuccess = false;
    //if (!validationSuccess) alert('q1');

    if ( ! notEmptyValidate(form.ulica)           ) validationSuccess = false;
    //if (!validationSuccess) alert('q2');

    if ( ! checkTel(form.telefon, 'telefonwalidator') ) validationSuccess = false;
    //if (!validationSuccess) alert('q3');

    if ( ! checkTel(form.fax, 'faxwalidator')     ) validationSuccess = false;
    //if (!validationSuccess) alert('q4');

    if ( ! validateEmail(form.email)              ) validationSuccess = false;
    //if (!validationSuccess) alert('q5');

    if ( ! validateWoj(form.woj)                  ) validationSuccess = false;
    //if (!validationSuccess) alert('q6');

    if ( ! validateKod(form.kod)                  ) validationSuccess = false;
    //if (!validationSuccess) alert('q7');

    if ( ! validatePoczta(form.poczta)            ) validationSuccess = false;
    //if (!validationSuccess) alert('q8');

    if ( ! validateUlica(form.ulica)              ) validationSuccess = false;
    //if (!validationSuccess) alert('q9');

    if ( ! validateNrDomu(form.nrdomu)            ) validationSuccess = false;
    //if (!validationSuccess) alert('q10');

    if ( ! validateKraj(form.kraj)                ) validationSuccess = false;
    //if (!validationSuccess) alert('q11');

    //if ( ! dlugosc(form.nip)                      ) validationSuccess = false;

    if ( ! notEmptyValidate(form.reprezentantimie) ) validationSuccess = false;
    //if (!validationSuccess) alert('q12');

    if ( ! notEmptyValidate(form.stanowisko)      ) validationSuccess = false;
    //if (!validationSuccess) alert('q13');

    if ( ! checkTel(form.telefonkontaktowy, 'telefonkontaktowywalidator') ) validationSuccess = false;
    //if (!validationSuccess) alert('q14');

    if ( ! validateEmail(form.emailkontaktowy)    ) validationSuccess = false;
    //if (!validationSuccess) alert('q15');

    if ( ! validateSelection(document.getElementById('kategoria[]'))    ) validationSuccess = false;

    if ( ! validateNip(form.nip) ) validationSuccess = false;
    //if (!validationSuccess) alert('q16');

    if (!document.getElementById('korespo') || form.korespo.checked == false) {
        if ( ! notEmptyValidate(form.dane1)       ) validationSuccess = false;
        //if (!validationSuccess) alert('q17');

        if ( ! validateUlica(form.dane2)          ) validationSuccess = false;
        //if (!validationSuccess) alert('q18');

        if ( ! validateUlica(form.dane3)          ) validationSuccess = false;
        //if (!validationSuccess) alert('q19');

        if ( ! validateKod(form.dane4)            ) validationSuccess = false;
        //if (!validationSuccess) alert('q20');

        if ( ! validatePoczta(form.dane5)         ) validationSuccess = false;
        //if (!validationSuccess) alert('q21');

        if ( ! validateKraj(form.dane6)   ) validationSuccess = false;
        //if (!validationSuccess) alert('q22');

    } else {
        form.dane1.style.borderColor='#D9DADB';
        form.dane2.style.borderColor='#D9DADB';
        form.dane3.style.borderColor='#D9DADB';
        form.dane4.style.borderColor='#D9DADB';
        form.dane5.style.borderColor='#D9DADB';
        form.dane6.style.borderColor='#D9DADB';
    }

    if (!validationSuccess) {
        document.getElementById('feedback').innerHTML = 'Uzupełnij brakujące dane';
        return false;
    } else {
        document.getElementById('feedback').innerHTML = '';
        return true;
    }

    //return false;
    
}

function validateFormCompanies(form,select)
{

    var firstalert=true;


    if(form.nazwa.value.length==0)
    {
        if(firstalert) alert("Pole \"nazwa firmy\" jest puste.");
        firstalert=false;
        form.nazwa.style.borderColor='#f00';
    }
    else form.nazwa.style.borderColor='#D9DADB';

    if(select.selectedIndex==-1)
    {
        if(firstalert) alert("Nie wybrałeś żadnej kategorii.");
        firstalert=false;
        select.style.borderColor='#f00';
    }
    else select.style.borderColor='#D9DADB';
    /*else if(form.kod.value.length==0)
    {
        alert("Pole \"kod pocztowy\" jest puste.");
        return false;
    }*/

    if(!kodvalidator(form.kod.value))
    {
        if(firstalert) alert("Pole \"kod pocztowy\" nie jest poprawnie wypełnione. Poprawny format to xx-xxx np: 87-100.");
        firstalert=false;
        form.kod.style.borderColor='#f00';
    }
    else form.kod.style.borderColor='#D9DADB';

    if(form.poczta.value.length==0)
    {
        if(firstalert) alert("Pole \"poczta\" jest puste.");
        firstalert=false;
        form.poczta.style.borderColor='#f00';
    }
    else form.poczta.style.borderColor='#D9DADB';

    if(form.nrdomu.value.length==0)
    {
        if(firstalert) alert("Pole \"nr domu\" jest puste.");
        firstalert=false;
        form.nrdomu.style.borderColor='#f00';
    }
    else form.nrdomu.style.borderColor='#D9DADB';

    if(form.ulica.value.length==0)
    {
        if(firstalert) alert("Pole \"ulica / miejscowość\" jest puste.");
        firstalert=false;
        form.ulica.style.borderColor='#f00';
    }
    else form.ulica.style.borderColor='#D9DADB';

    if(!nipvalidator(form.regon.value))
    {
        if(firstalert) alert("Pole \"NIP\" nie jest poprawnie uzupełnione. Dopuszczalne formaty: XXX-XXX-XX-XX, XXX-XX-XX-XXX lub XXXXXXXXXX.");
        firstalert=false;
        form.regon.style.borderColor='#f00';
    }
    else form.regon.style.borderColor='#D9DADB';

    if(form.nipwalidacja==undefined || form.nipwalidacja.value=='false')
    {
        if(firstalert) alert("Podany przez Ciebie NIP jest już zajęty.");
        firstalert=false;
        form.regon.style.borderColor='#f00';
    }
    else form.regon.style.borderColor='#D9DADB';

    if(!checkTel(form.telefon,'telefonwalidator'))
    {
        //tel walidatora
        if(firstalert) alert("Pole \"telefon\" nie jest poprawnie wypełnione.");
        firstalert=false;
        form.telefon.style.borderColor='#f00';
    }
    else form.telefon.style.borderColor='#D9DADB';

    if(!checkTel(form.telefonkontaktowy,'telefonkontaktowywalidator'))
    {
        //tel walidatora
        if(firstalert) alert("Pole \"telefon\" w danych do kontaktu nie jest poprawnie wypełnione.");
        firstalert=false;
        form.telefonkontaktowy.style.borderColor='#f00';
    }
    else form.telefonkontaktowy.style.borderColor='#D9DADB';

    if(form.fax.value.length>0 && !checkTel(form.fax,'faxwalidator'))
    {
        //tel walidatora
        if(firstalert) alert("Pole \"fax\" w danych do kontaktu nie jest poprawnie wypełnione.");
        firstalert=false;
        form.fax.style.borderColor='#f00';
    }
    else form.fax.style.borderColor='#D9DADB';

    if(form.email.value.length==0)
    {
        if(firstalert) alert("Pole \"e-mail\" jest puste.");
        firstalert=false;
        form.email.style.borderColor='#f00';
    }
    else form.email.style.borderColor='#D9DADB';

    if(form.kraj.value.length==0)
    {
        if(firstalert) alert("Pole \"kraj\" jest puste.");
        firstalert=false;
        form.kraj.style.borderColor='#f00';
    }
    else form.kraj.style.borderColor='#D9DADB';

    if(form.reprezentantimie.value.length==0)
    {
        if(firstalert) alert("Pole \"imię i nazwisko\" w danych do kontaktu jest puste.");
        firstalert=false;
        form.reprezentantimie.style.borderColor='#f00';
    }
    else form.reprezentantimie.style.borderColor='#D9DADB';

    if(form.stanowisko.value.length==0)
    {
        if(firstalert) alert("Pole \"stanowisko\" jest puste.");
        firstalert=false;
        form.stanowisko.style.borderColor='#f00';
    }
    else form.stanowisko.style.borderColor='#D9DADB';

    if(form.emailkontaktowy.value.length==0)
    {
        if(firstalert) alert("Pole \"e-mail\" w danych do kontaktu jest puste.");
        firstalert=false;
        form.emailkontaktowy.style.borderColor='#f00';
    }
    else form.emailkontaktowy.style.borderColor='#D9DADB';

    if(!(document.getElementById('korespo')) || form.korespo.checked==false)
    {

        if(!dlugosc(form.korespoimie.value))
        {
            if(firstalert) alert("Pole \"imię i nazwisko\" w danych do korespondencji nie może być puste.");
            firstalert=false;
            form.korespoimie.style.borderColor='#f00';
        }
        else form.korespoimie.style.borderColor='#D9DADB';

        if(!kodvalidator(form.korespokod.value))
        {
            if(firstalert) alert("Pole \"kod pocztowy\" w danych do korespondencji nie jest poprawnie wypełnione. Prawidłowy format to xx-xxx np: 87-100..");
            firstalert=false;
            form.korespokod.style.borderColor='#f00';
        }
        else form.korespokod.style.borderColor='#D9DADB';

        if(!dlugosc(form.korespopoczta.value))
        {
            if(firstalert) alert("Pole \"poczta\" w danych do korespondencji nie może być puste.");
            firstalert=false;
            form.korespopoczta.style.borderColor='#f00';
        }
        else form.korespopoczta.style.borderColor='#D9DADB';

        if(!dlugosc(form.korespoulica.value))
        {
            if(firstalert) alert("Pole \"ulica/miejscowość\" w danych do korespondencji nie może być puste.");
            firstalert=false;
            form.korespoulica.style.borderColor='#f00';
        }
        else form.korespoulica.style.borderColor='#D9DADB';

        if(!dlugosc(form.koresponrdomu.value))
        {
            if(firstalert) alert("Pole \"nr domu\" w danych do korespondencji nie może być puste.");
            firstalert=false;
            form.koresponrdomu.style.borderColor='#f00';
        }
        else form.koresponrdomu.style.borderColor='#D9DADB';

        if(!dlugosc(form.korespokraj.value))
        {
            if(firstalert) alert("Pole \"kraj\" w danych do korespondencji nie może być puste.");
            firstalert=false;
            form.korespokraj.style.borderColor='#f00';
        }
        else form.korespokraj.style.borderColor='#D9DADB';
    }

    if(form.kto==undefined)
    {

        if(firstalert) return true;
        else return false;
    }
    else
    {
        if(firstalert) return true;
        else return confirm('Czy mimo tego, że formularz nie jest w pełni uzupełniony, chcesz kontynuować zapis?');
    }

}

function zwin(id)
{
    if(document.getElementById('zabiegiDiv'+id))
    {
        if(document.getElementById('zabiegiDiv'+id).style.display=="none")
        {
            document.getElementById('zabiegiDiv'+id).style.display="block";
            document.getElementById('zwin'+id).innerHTML="zwiń";
        }
        else
        {
            document.getElementById('zabiegiDiv'+id).style.display="none";
            document.getElementById('zwin'+id).innerHTML="rozwiń";
        }
    }
}

function blockingcheckthis(field,observer,limit)
{
    if(field.value.length<=limit) document.getElementById(observer).innerHTML=limit-field.value.length;
    else
    {
        //document.getElementById(observer).innerHTML='<font color="red">'+field.value.length+'</font>';
        alert('limit znaków został przekroczony!');
        field.value=field.value.substring(0,limit);
        document.getElementById(observer).innerHTML=limit-field.value.length;
    }
}

function pokazUkryj(element) {
    if (element.style.display == "block") {
        element.style.display = "none";
    } else {
        element.style.display = "block";
    }
}
