﻿function zakladkaPodswietlona(id) {
    var lewy = document.getElementById(id + '_lewa');
    lewy.className = 'zakladka_lewa_podswietlona';
    var srodek = document.getElementById(id + '_srodkowa');
    srodek.className = 'zakladka_srodkowa_podswietlona';
    var tekst = document.getElementById(id + '_tekst');
    tekst.className = 'zakladka zakladka_podswietlona';
    var prawy = document.getElementById(id + '_prawa');
    prawy.className = 'zakladka_prawa_podswietlona';
};

function zakladkaNormalna(id) {
    var lewy = document.getElementById(id + '_lewa');
    lewy.className = 'zakladka_lewa';
    var srodek = document.getElementById(id + '_srodkowa');
    srodek.className = 'zakladka_srodkowa';
    var tekst = document.getElementById(id + '_tekst');
    tekst.className = 'zakladka zakladka_normalna';
    var prawy = document.getElementById(id + '_prawa');
    prawy.className = 'zakladka_prawa';
};

function PokazUkryj(id) {
    if (document.getElementById(id).style.display == 'none') {
        document.getElementById(id).style.display = 'table';
        document.getElementById('pokaz_' + id).style.display = 'none';
        document.getElementById('ukryj_' + id).style.display = 'inline';
        // zapamiętujemy co zostało rozwinięte
        document.cookie = 'rozwiniety=' + id + ';';
    }
    else {
        document.getElementById(id).style.display = 'none';
        document.getElementById('pokaz_' + id).style.display = 'inline';
        document.getElementById('ukryj_' + id).style.display = 'none';
        // kasujemy co zostało rozwinięte
        document.cookie = 'rozwiniety=-1';
    }
}

function RozwinPoprzedni() {
    var id = PobierzWartoscCookie('rozwiniety')
    if (id != -1 && id != null)
        PokazUkryj(id);
}

function PobierzWartoscCookie(nazwa) {
    var dc = document.cookie;
    var prefix = escape(nazwa) + "=";
    // znalezienie początku wartości ciasteczka
    var begin = dc.indexOf("; " + prefix);

    // jeśli dokument nie zawiera nazwy ciastka...
    if (begin == -1) {
        begin = dc.indexOf(prefix);
        if (begin != 0)
            return null;
        // ...jeśli zawiera, to do indeksu dodajemy 2 (średnik i jedna spacja dają dwa znaki)
    }
    else {
        begin += 2;
    }

    // teraz funkcja szuka indeksu wystąpienia następnego średnika po miejscu, 
    // w którym znaleziono nazwę ciastka
    var end = document.cookie.indexOf(";", begin);
    // jeśli nie ma więcej ciastek, to indeks końcowy równy jest długości pliku
    if (end == -1)
        end = dc.length;
    // zwracamy fragment łańcucha, zawierający wartość ciastka
    return unescape(dc.substring(begin + prefix.length, end));
}
function RadioButtonZmiana(radioBt) {               //funkcja wywoływana w przypadku zmiany radiobuttona
    var d = radioBt.value.split('\\');               //jej celem jest ustawienie daty w dwóch kontrolkach
    //var d1 = d[0].split(' ')[0].split('-');         //devexpressowych zależnie od zanzaczonego radiobuttona
    //var d2 = d[1].split(' ')[0].split('-');
    var year = d[0].split(',')[0];
    var month = d[0].split(',')[1];
    var day = d[0].split(',')[2];
    var d1 = new Date(year, month, day);
    year = d[1].split(',')[0];
    month = d[1].split(',')[1];
    day = d[1].split(',')[2];
    var d2 = new Date(year, month, day);
//    var dataOd = new Date(d1[0], d1[1], d1[2]);
//    var dataDo = new Date(d2[0], d2[1], d2[2]);
//    dataOd.setMonth(dataOd.getMonth() - 1);
//    dataDo.setMonth(dataDo.getMonth() - 1);
//    ASPxDateEditDataOd.SetDate(d1);
//    ASPxDateEditDataDo.SetDate(d2);
    MVCxDataOd.SetDate(d1);
    MVCxDataDo.SetDate(d2);
}
function ZmianaDaty(s, e) {     //funkcja wywoływana po zmianie daty w kontrolkach devexpressowych
    var radioBt;                //zadaniem jej jest wyczyszczenie zaznaczonego radioButtona (niestandardowa data)
    for (var i = 0; i < 4; i++) {
        radioBt = document.getElementById('RadioList_Termin' + i);
        if (radioBt != null && radioBt.checked != null) radioBt.checked = false;
    }
}
function SprawdzDate() {        //funkcja sprawdzająca ustawionąprzez użytkownika datę
    var radioBt = document.getElementById('RadioList_Termin3');//w przypadku przekroczenia terminu
    var d = radioBt.value.split('\\');//ustawiana jest data minimalna i maxymalna
    var year = d[0].split(',')[0];
    var month = d[0].split(',')[1];
    var day = d[0].split(',')[2];
    var dataOdMin = new Date(year, month, day);
    year = d[1].split(',')[0];
    month = d[1].split(',')[1];
    day = d[1].split(',')[2];
    var dataDoMax = new Date(year, month, day);
    var dataOdAkt = new Date(ASPxDateEditDataOd.GetDate());
    var dataDoAkt = new Date(ASPxDateEditDataDo.GetDate());
    if (dataOdAkt < dataOdMin)
        MVCxDataOd.SetDate(dataOdMin);
    if (dataOdAkt > dataDoMax)
        MVCxDataOd.SetDate(dataDoMax);
    if (dataDoAkt > dataDoMax)
        MVCxDataDo.SetDate(dataDoMax);
    if (dataDoAkt < dataOdMin)
        MVCxDataDo.SetDate(dataOdMin);
    
}
function FiltrujDane(grid) {                            //funkcja wywoływana w celu filtrowania danych w sposób asynchroniczny
    //SprawdzDate();
    var dataOd = new Date(MVCxDataOd.GetDate());
    var dataDo = new Date(MVCxDataDo.GetDate());
    var zazButton = 5;
    for (var i = 0; i < 4; i++) {
        radioBt = document.getElementById('RadioList_Termin' + i);
        if (radioBt != null && radioBt.checked != null)
            if (radioBt.checked) zazButton = i;
    }
    var parametr = dataOd.getFullYear() + "-" + (dataOd.getMonth() + 1) + "-" + dataOd.getDate() +
                       ";" + dataDo.getFullYear() + "-" + (dataDo.getMonth() + 1) + "-" + dataDo.getDate() +
                       ";" + zazButton;
    grid.PerformCallback(parametr);
}
function WyslijFormularz(id) { //funkcja stosowana w planach zajec, pozwala wybrać zasob (grupe, prowadzącego, przedmiot...) i wysłać
    var form = document.getElementById('aspnetForm'); // w tym samym czasie ustawioną datę
    //SprawdzDate();
    form.action += id;
    window.closing = false;
    form.submit();
}
function GgrProwZmienWidok(value) { //funkcja wykorzystywana w ograniczeniach prowadzącego
    switch (value) {                //zadaniem jej jest zależnie od przekazanej wartości wyłączenie bądź włączenie odpowiednich inputow
        case "0": // dzien
            document.getElementById('dzienTygodnia').disabled = false;
            document.getElementById('dzienMiesiaca').disabled = true;
            break;
        case "6": // miesiac
            document.getElementById('dzienTygodnia').disabled = true;
            document.getElementById('dzienMiesiaca').disabled = false;
            break;
        default:
            document.getElementById('dzienTygodnia').disabled = 'disabled';
            document.getElementById('dzienMiesiaca').disabled = 'disabled';
            break;
    }
}

function Blokuj() {
    if (document.isLoading == true) {
        return false;
    }
    else {
        document.isLoading = true;
        return true;
    }
    
}
