﻿///<reference path="~/js/jquery-1.3.2.min-vsdoc.js"/>

/*
** Przełączanie widoku galerii
***********************************************************************************/
function FixGalleryWidth(element, className, scope) {
    if (typeof (element) != 'undefined' && typeof (className) != 'undefined' && typeof (scope) != 'undefined') {
        if ($("." + element, $("#" + scope)).hasClass(className)) {
            var scopeDiv = $get(scope.toString());
            if (scopeDiv != null) {
                var scopeBounds = Sys.UI.DomElement.getBounds(scopeDiv);

                var tableDivId = $($("#" + scope).children()[0]).attr("id");
                var tableDiv = $get(tableDivId.toString());

                if (tableDiv != null) {
                    var galleryImgsCount = $("." + element, $("#" + scope)).length;

                    if (galleryImgsCount * 160 + 5 > scopeBounds.width) {
                        var galleryImgsInRow = parseInt(scopeBounds.width / 160);
                        tableDiv.style.width = 160 * galleryImgsInRow + 5 + "px";
                    }
                }
            }
        } else {
            var tableDivId = $($("#" + scope).children()[0]).attr("id");
            var tableDiv = $get(tableDivId.toString());
            if (tableDiv != null) {
                tableDiv.style.width = "auto";
            }
        }
    }
}

function SwitchViewMode(element, className, scope, btnScope) {
    if (typeof (element) != 'undefined' && typeof (className) != 'undefined' && typeof (scope) != 'undefined') {
        $("." + element, $("#" + scope)).toggleClass(className)

        FixGalleryWidth(element, className, scope);

        var a = $(".GalleryListViewOn", $("#" + btnScope));
        var b = $(".GalleryListViewOff", $("#" + btnScope));
        var c = $(".GalleryGridViewOn", $("#" + btnScope));
        var d = $(".GalleryGridViewOff", $("#" + btnScope));
        a.removeClass("GalleryListViewOn").addClass("GalleryListViewOff");
        b.removeClass("GalleryListViewOff").addClass("GalleryListViewOn");
        c.removeClass("GalleryGridViewOn").addClass("GalleryGridViewOff");
        d.removeClass("GalleryGridViewOff").addClass("GalleryGridViewOn");
    }
}

/*
** ręczne wywoływanie przebudowania wyrażeń matematycznych typu x^2 w ładne obrazki
***********************************************************************************/
function AsciiMath_Translate() {
    if (typeof (AMtranslated) != 'undefined') {
        AMtranslated = false;
        translate("AM");
    }
}

/*
** Ustawianie focusa na wybranym textbox
***********************************************************************************/
function SetFocusOnTextBox(textBoxID) {
    if (typeof (textBoxID) == 'undefined' || textBoxID == "") {
        return;
    }
    var box = $("#" + textBoxID);
    box.focus();
    box.select();
}

/*
** Inicjalizacja zakładek
***********************************************************************************/
function Tab_Init(tabsId, hiddenClientId) {
    if (typeof (tabsId) == 'undefined' || tabsId == "" || typeof (hiddenClientId) == 'undefined' || hiddenClientId == "") {
        return;
    }
    $("#" + tabsId).tabs({
        show: function() {
            var sel = $("#" + tabsId).tabs("option", "selected");
            $("#" + hiddenClientId).attr("value", sel);
        },
        selected: $("#" + hiddenClientId).attr("value")
    });
}

/*
** Inicjalizacja galerii
***********************************************************************************/
function LightBoxGallery_Init(galleryId) {
    if (typeof (galleryId) == 'undefined' || galleryId == "") {
        return;
    }
    $("#" + galleryId + " a").lightBox();
}

/*
** Inicjalizacja TinyMCE
***********************************************************************************/
var AScgiloc = "http://www.imathas.com/imathas/filter/graph/svgimg.php";
var AMTcgiloc = "http://www.imathas.com/cgi-bin/mimetex.cgi";

function TinyMCE_Init(language) {
    if (typeof (tinyMCE_GZ) != 'undefined') {
        tinyMCE_GZ.init({
            plugins: 'style,asciimath,asciisvg,layer,table,inlinepopups,save,advhr,advimage,advlink,emotions,iespell,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras',
            themes: 'advanced',
            languages: language,
            disk_cache: true,
            debug: false
        });
    }

    if (typeof (tinyMCE) != 'undefined') {
        tinyMCE.init({
            entity_encoding: "raw",
            language: language,
            mode: "specific_textareas",
            editor_selector: "mceEditor",
            theme: "advanced",
            theme_advanced_buttons1: "fontselect,fontsizeselect,formatselect,bold,italic,underline,strikethrough,separator,sub,sup,separator,cut,copy,paste,undo,redo",
            theme_advanced_buttons2: "justifyleft,justifycenter,justifyright,justifyfull,separator,numlist,bullist,outdent,indent,separator,forecolor,backcolor,separator,hr,link,unlink,image,table,code,separator,asciimath,asciimathcharmap,asciisvg",
            theme_advanced_buttons3_add: "pastetext,pasteword,selectall",
            paste_auto_cleanup_on_paste: true,
            theme_advanced_fonts: "Arial=arial,helvetica,sans-serif,Courier New=courier new,courier,monospace,Georgia=georgia,times new roman,times,serif,Tahoma=tahoma,arial,helvetica,sans-serif,Times=times new roman,times,serif,Verdana=verdana,arial,helvetica,sans-serif",
            theme_advanced_toolbar_location: "top",
            theme_advanced_toolbar_align: "left",
            theme_advanced_statusbar_location: "bottom",
            plugins: 'safari,asciimath,asciisvg,table,inlinepopups,layer,preview,advlink,advimage,paste',
            //AScgiloc: 'http://www.imathas.com/editordemo/php/svgimg.php',
            //ASdloc: 'http://www.imathas.com/editordemo/jscripts/tiny_mce/plugins/asciisvg/js/d.svg',
            forced_root_block: false,
            force_p_newlines: false,
            remove_linebreaks: false,
            remove_trailing_nbsp: false,
            verify_html: false
        });
    }
}

function TinyMCE_Chat_Init(language) {
    if (typeof (tinyMCE_GZ) != 'undefined') {
        tinyMCE_GZ.init({
            plugins: 'style,asciimath,asciisvg,layer,table,inlinepopups,save,advhr,advimage,advlink,emotions,iespell,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras',
            themes: 'advanced',
            languages: language,
            disk_cache: true,
            debug: false
        });
    }

    if (typeof (tinyMCE) != 'undefined') {
        tinyMCE.init({
            language: language,
            height: '40',
            mode: "textareas",
            theme: "advanced",
            cleanup_on_startup: true,
            forced_root_block: false,
            force_br_newlines: true,
            force_p_newlines: false,
            handle_event_callback: "onKey",
            plugins: "layer,emotions,preview",
            font_size_style_values: "xx-small",
            theme_advanced_buttons1: "bold,italic,underline,|,justifyleft,justifycenter,justifyright,justifyfull,|,fontselect,|,bullist,numlist,|,undo,redo,|,forecolor,backcolor,|,emotions",
            theme_advanced_buttons2: "",
            theme_advanced_buttons3: "",
            theme_advanced_toolbar_location: "top",
            theme_advanced_toolbar_align: "left"
        });
    }
}

/*
** Skrypty związane z FileUploadify
***********************************************************************************/
var _loadingDivId = "";
var _loadingTabId = "";
var _loadingImgId = "";

function FileUploadify_Init(fileExt, theme) {
    if (typeof (theme) == 'undefined') {
        var theme = "PlatformaOswiatowa";
    }

    if (typeof (fileExt) == 'undefined' || fileExt == "") {
        fileExt = "*.*";
    }

    $("#" + fuFileUploadifyId).uploadify({
        'uploader': '../js/uploadify.swf',
        'script': 'FileUploadifyHandler.ashx',
        'cancelImg': '../App_Themes/' + theme + '/Images/cancel.png',
        'multi': false,
        'auto': false,
        'height': 25,
        'width': 128,
        'scriptData': { 'FileId': fileID },
        'buttonImg': '../App_Themes/' + theme + '/Images/BtnUploadify_128x25_Wybierz.png',
        'wmode': 'transparent',
        'fileDesc': 'Pliki',
        'fileExt': fileExt,
        onComplete: FileUploadifyUploadComplete
    });
}

function FileUploadifyUploadComplete(event, queueID, fileObj, response, data) {
    setTimeout("UpdateStart(_loadingDivId, _loadingTabId, _loadingImgId);", 500);
    __doPostBack(btnTriggerId, '');
}

function FileUploadifyUpload(fuFileUploadifyID, onServerClick, loadingDivId, loadingTabId, loadingImgId) {
    btnTriggerId = onServerClick;

    $("#" + fuFileUploadifyID).uploadifySettings('scriptData',
      {
          'FileId': GetFileId()
      });

    $("#" + fuFileUploadifyID).uploadifyUpload();

    _loadingDivId = loadingDivId;
    _loadingImgId = loadingImgId;
    _loadingTabId = loadingTabId;
    UpdateStart(loadingDivId, loadingTabId, loadingImgId);
}

function GetFileId() {
    if (typeof (fileID) == 'undefined' || fileID == "") {
        return "";
    }
    return $("#" + fileID).attr("value");
}

function UpdateStart(loadingDivId, tabId, imgId) {

    if (typeof (loadingDivId) == 'undefined' ||
        typeof (tabId) == 'undefined' ||
        typeof (imgId) == 'undefined') {
        return;
    }

    var updateProgressDiv = $get(loadingDivId.toString());

    if (updateProgressDiv != null) {

        var tab = $get(tabId.toString());
        if (tab != null) {

            var loadingImg = $get(imgId.toString());
            if (loadingDivId != null) {
                // pobierz wymiary i położenie 
                // - zakładki, w której znajdują się elementy
                // - animowanego obrazka
                var tabBounds = Sys.UI.DomElement.getBounds(tab);
                var loadingImgBounds = Sys.UI.DomElement.getBounds(loadingImg);

                // ustaw rozmiar i pozycję tła animowanego obrazka, na zgodne z wymiarami zakładki
                //Sys.UI.DomElement.setLocation(updateProgressDiv, tabBounds.x, tabBounds.y);
                updateProgressDiv.style.width = tabBounds.width + 20 + "px";
                updateProgressDiv.style.height = tabBounds.height + 20 + "px";

                // wyśrodkuj położenie animowanego obrazka
                var x = Math.round((tabBounds.width + 20) / 2) - Math.round(loadingImgBounds.width / 2);
                var y = Math.round((tabBounds.height + 20) / 2) - Math.round(loadingImgBounds.height / 2);
                Sys.UI.DomElement.setLocation(loadingImg, x, y);
            }
            updateProgressDiv.style.display = '';
        }
    }
}

/*
** UzytkownikGrupyMain
***********************************************************************************/
var _mainDivGrupyId = "";
var _btnTriggerId = "";
var _hidGrupaId = "";
var _hfSelectedTextId = "";
var _btnMojeGrupyId = ""

function ReloadList() {
    var mainDiv = $("#" + _mainDivGrupyId);

    var btn = $("#" + _btnMojeGrupyId);

    var divTop = btn.position().top + btn.outerHeight(); ;
    var divLeft = btn.position().left;
    var divWidth = btn.width();

    mainDiv.css("top", divTop);
    mainDiv.css("left", divLeft - 20);
    mainDiv.css("width", divWidth + 250);

    var listElements = $(".listElementGrupa");
    var hideSuggestion = $(".hideSuggestion");

    listElements.click(function(a) {

        if (window.event) a = window.event;

        var srcEl = a.srcElement ? a.srcElement : a.target;

        $("#" + _hidGrupaId).val(srcEl.id);

        $("#" + _hfSelectedTextId).attr("value", srcEl.innerText);

        Hide();

        __doPostBack(_btnTriggerId, '');
    });

    hideSuggestion.click(function() {
        Hide();
    });

    listElements.hover(
		function(e) {
		    $(this).addClass('listElementGrupaHover')
		},
		function(e) {
		    $(this).removeClass('listElementGrupaHover')
		});

    hideSuggestion.hover(
		    function(e) {
		        $(this).addClass('hideSuggestionHover')
		    },
		    function(e) {
		        $(this).removeClass('hideSuggestionHover')
		    });

    $(document).click(function(a) {
        if (window.event) a = window.event;

        var srcEl = a.srcElement ? a.srcElement : a.target;

        if (srcEl.id != _btnMojeGrupyId) {
            Hide();
        }
    });

}

function UzytkownikGrupyMain_Init(mainDivGrupyId, hidGrupaId, btnTriggerId, btnMojeGrupyId, hfSelectedTextId) {
    _mainDivGrupyId = mainDivGrupyId;
    _btnTriggerId = btnTriggerId;
    _hidGrupaId = hidGrupaId;
    _hfSelectedTextId = hfSelectedTextId;
    _btnMojeGrupyId = btnMojeGrupyId;

    ReloadList();
}

function Show() {
    $("#" + _mainDivGrupyId).slideDown();
}
function Hide() {
    $("#" + _mainDivGrupyId).slideUp();

    $("#" + _btnMojeGrupyId).attr("innerText", $("#" + _hfSelectedTextId).attr("value"));
}

/*
** PortalProjektu - Rejestracja pracownika
***********************************************************************************/

function TabObject(liTabId, selected, trigger, visible) {
    this.liTabId = liTabId;
    this.selected = selected;
    this.triggerId = trigger;
    this.visible = visible;

    if (new String(this.visible).toLowerCase() == 'false') {
        $("#" + this.liTabId).attr("style", "display:none;");
    }
}

var selectedTabIndex = 0;
var selectedTabName = "";
var selected = 0;
var updating = false;
var tabs;

function InitTabs(btn1, btn2) {
    tabs = new Array();
    tabs[0] = new TabObject('LiTabLogin', true, btn1, true);
    tabs[1] = new TabObject('LiTabRegister', false, btn2, true);
}

function InitTabsTrener(btn1, btn2) {
    tabs = new Array();
    tabs[0] = new TabObject('LiTabLogin', true, btn1, false);
    tabs[1] = new TabObject('LiTabRegister', false, btn2, true);
}

function PortalProjektu_DOMInit(btn1, btn2, rola) {
    if (rola == 'trener') {
        selectedTabIndex = 1;
    }
    $('#TabsRejestruj').tabs({
        selected: selectedTabIndex,
        select: function(event, ui) {
            return !updating;
        }
    });

    if (rola == 'trener') {
        InitTabsTrener(btn1, btn2);
    }
    else {
        InitTabs(btn1, btn2);
    }    
    

    $('#TabsRejestruj').bind('tabsshow', function(event, ui) {
        selectedTabIndex = ui.index;
    });

    $('#TabsRejestruj').bind('tabsselect', function(event, ui) {
        var value = tabs[ui.index].selected;
        tabs[selected].selected = false;

        if (value == false && updating == false) {
            tabs[ui.index].selected = true;
            selected = ui.index;
            selectedTabName = tabs[ui.index].tabId;
            // document.getElementById(tabs[ui.index].triggerId).click();
            __doPostBack(tabs[ui.index].triggerId, '');
        }
    });
}

//** DaneDodatkowe
function DaneDodatkowe(daneDodatkoweId, obiektId, daneDodatkoweNazwa,
                    daneDodatkoweWartosc, projektDaneDodatkoweKonfiguracjaId) {                    
    this.DaneDodatkoweId = daneDodatkoweId;
    this.ObiektId = obiektId;
    this.DaneDodatkoweNazwa = daneDodatkoweNazwa;
    this.DaneDodatkoweWartosc = daneDodatkoweWartosc;
    this.ProjektDaneDodatkoweKonfiguracjaId = projektDaneDodatkoweKonfiguracjaId;
}

function OnDaneDodatkoweAddEditClick(LitDaneClientID, obiektId, projektId, path, nazwaTabeliDanychDodatkowych, url) {
    if (typeof (LitDaneClientID) == 'undefined' || LitDaneClientID == '') {
        return;
    }

    if ($('#aspnetForm').valid()) {
        $('.NazwaLabel').each(function(index, value) {
            var daneDodatkoweNazwa = jQuery(value).text();
            var daneDodatkoweId = jQuery(value).next().next().val();
            var projektDaneDodatkoweKonfiguracjaId = jQuery(value).next().val();
            var daneDodatkoweSymbol = jQuery(value).next().next().next().val();
            
            var wartoscObject = $('#' + LitDaneClientID + '_i' + projektDaneDodatkoweKonfiguracjaId);

            var daneDodatkoweWartosc;

            if (wartoscObject.is('select')) {
                daneDodatkoweWartosc = $('#' + LitDaneClientID + '_i' + projektDaneDodatkoweKonfiguracjaId + ' option:selected').text();
            }
            else {
                daneDodatkoweWartosc = wartoscObject.val();

            }
            
            // Jeśli jest typ Odpowiedź tak to przetrzymaj dane wartości w następujący sposób [Ture|False]:[Odpowiedź]
            if (daneDodatkoweSymbol == 'OdpowiedzTak')
            {
                var kontrolkaOdpowiedziNazwa = jQuery(value).next().next().next().next().val();
                var kontrolkaOdpowiedzi = document.getElementById(kontrolkaOdpowiedziNazwa);
                
                // Uzyskaj odpowiedź
                var odpowiedz = jQuery(kontrolkaOdpowiedzi).val();
            
                daneDodatkoweWartosc = daneDodatkoweWartosc + ':' + odpowiedz;
            }
            
            var daneDodatkowe = new DaneDodatkowe(0, obiektId, daneDodatkoweNazwa, daneDodatkoweWartosc, projektDaneDodatkoweKonfiguracjaId);

            if (path != null && path.length > 0) {
                //DaneDodatkoweWS._staticInstance._path = path;
                CDPMasterProxyService._staticInstance._path = path;
            }
            if (parseInt(daneDodatkoweId) < 1) {
                //DaneDodatkoweWS.DaneDodatkoweAdd(daneDodatkowe, nazwaTabeliDanychDodatkowych);
                CDPMasterProxyService.DaneDodatkoweAdd(daneDodatkowe, nazwaTabeliDanychDodatkowych);
            }
            else {
                //DaneDodatkoweWS.DaneDodatkoweUpdate(daneDodatkoweId, daneDodatkoweWartosc, nazwaTabeliDanychDodatkowych);
                CDPMasterProxyService.DaneDodatkoweUpdate(daneDodatkoweId, daneDodatkoweWartosc, nazwaTabeliDanychDodatkowych);
            }
            
            // Dodaj date rejestracji, jeśli nie została dodana
            CDPMasterProxyService.AddDataRejestracji(projektId, obiektId);
        });
        OnDaneDodatkoweAnulujClick(url);
    }
}

function OnDaneDodatkoweAnulujClick(url) {
    location.href = url;
}

//***********************************************************************************/

/*
** FirmaDaneDodatkoweEdit.ascx i PracownikDaneDodatkoweEdit.ascx - dodawanie / update danych dodatkowych firmy
***********************************************************************************/

//function FirmaDaneDodatkowe(firmaDaneDodatkoweId, firmaId, firmaDaneDodatkoweNazwa,
//                    firmaDaneDodatkoweWartosc, projektDaneDodatkoweKonfiguracjaId) {
//    this.FirmaDaneDodatkoweId = firmaDaneDodatkoweId;
//    this.FirmaId = firmaId;
//    this.FirmaDaneDodatkoweNazwa = firmaDaneDodatkoweNazwa;
//    this.FirmaDaneDodatkoweWartosc = firmaDaneDodatkoweWartosc;
//    this.ProjektDaneDodatkoweKonfiguracjaId = projektDaneDodatkoweKonfiguracjaId;
//}

//function PracownikDaneDodatkowe(pracownikDaneDodatkoweId, pracownikId, pracownikDaneDodatkoweNazwa,
//                    pracownikDaneDodatkoweWartosc, projektDaneDodatkoweKonfiguracjaId) {
//    this.PracownikDaneDodatkoweId = pracownikDaneDodatkoweId;
//    this.PracownikId = pracownikId;
//    this.PracownikDaneDodatkoweNazwa = pracownikDaneDodatkoweNazwa;
//    this.PracownikDaneDodatkoweWartosc = pracownikDaneDodatkoweWartosc;
//    this.ProjektDaneDodatkoweKonfiguracjaId = projektDaneDodatkoweKonfiguracjaId;
//}

//function OnFirmaDaneDodatkoweAddEditClick(LitDaneClientID, firmaId, path) {
//    if (typeof (LitDaneClientID) == 'undefined' || LitDaneClientID == '') {
//        return;
//    }

//    if ($('#aspnetForm').valid()) {
//        $('.NazwaLabel').each(function(index, value) {
//            var firmaDaneDodatkoweNazwa = jQuery(value).text();
//            var firmaDaneDodatkoweId = jQuery(value).next().next().val();
//            var projektDaneDodatkoweKonfiguracjaId = jQuery(value).next().val();

//            var wartoscObject = $('#' + LitDaneClientID + '_i' + projektDaneDodatkoweKonfiguracjaId);

//            var firmaDaneDodatkoweWartosc;

//            if (wartoscObject.is('select')) {
//                firmaDaneDodatkoweWartosc = $('#' + LitDaneClientID + '_i' + projektDaneDodatkoweKonfiguracjaId + ' option:selected').text();
//            }
//            else {
//                firmaDaneDodatkoweWartosc = wartoscObject.val();

//            }
//            var firma = new FirmaDaneDodatkowe(0, firmaId, firmaDaneDodatkoweNazwa, firmaDaneDodatkoweWartosc, projektDaneDodatkoweKonfiguracjaId);
//            DaneDodatkoweWS._staticInstance._path = path;
//            if (parseInt(firmaDaneDodatkoweId) < 1) {
//                DaneDodatkoweWS.FirmaDaneDodatkoweAdd(firma);
//            }
//            else {
//                DaneDodatkoweWS.FirmaDaneDodatkoweUpdate(firmaDaneDodatkoweId, firmaDaneDodatkoweWartosc);
//            }
//        });
//        OnAnulujClick(firmaId);
//    }
//}

//function OnPracownikDaneDodatkoweAddEditClick(LitDaneClientID, pracownikId, path) {
//    if (typeof (LitDaneClientID) == 'undefined' || LitDaneClientID == '') {
//        return;
//    }
//    
//    if ($('#aspnetForm').valid()) {
//        $('.NazwaLabel').each(function(index, value) {
//            var pracownikDaneDodatkoweNazwa = jQuery(value).text();
//            var pracownikDaneDodatkoweId = jQuery(value).next().next().val();
//            var projektDaneDodatkoweKonfiguracjaId = jQuery(value).next().val();

//            var wartoscObject = $('#' + LitDaneClientID + '_i' + projektDaneDodatkoweKonfiguracjaId);

//            var pracownikDaneDodatkoweWartosc;

//            if (wartoscObject.is('select')) {
//                pracownikDaneDodatkoweWartosc = $('#' + LitDaneClientID + '_i' + projektDaneDodatkoweKonfiguracjaId + ' option:selected').text();
//            }
//            else {
//                pracownikDaneDodatkoweWartosc = wartoscObject.val();

//            }
//            var pracownik = new PracownikDaneDodatkowe(0, pracownikId, pracownikDaneDodatkoweNazwa, pracownikDaneDodatkoweWartosc, projektDaneDodatkoweKonfiguracjaId);
//            DaneDodatkoweWS._staticInstance._path = path;
//            if (parseInt(pracownikDaneDodatkoweId) < 1) {
//                DaneDodatkoweWS.PracownikDaneDodatkoweAdd(pracownik);
//            }
//            else {
//                DaneDodatkoweWS.PracownikDaneDodatkoweUpdate(pracownikDaneDodatkoweId, pracownikDaneDodatkoweWartosc);
//            }           
//        });
//        OnAnulujPracownikClick(pracownikId);
//    }
//}

//function OnAnulujClick(firmaId) {
//    location.href = 'PortalProjektuWizard.aspx?Step=1';
//}

//function OnAnulujPracownikClick(pracownikId) {
//    //window.location = '/Pracownik.aspx?pracownikId=' + pracownikId + '#TabDaneDodatkowe';
//    location.href = 'PortalProjektuWizard.aspx?Step=3';
//}

function OnCheckboxClick(elementId) {
    if (document.getElementById(elementId).checked == true)
    {
        document.getElementById(elementId).value = 'True';
    }
    else
    {
        document.getElementById(elementId).value = 'False';
    }
}

function OnYesNoCheckboxClick(elementId, textBoxId) {
    
    if (document.getElementById(elementId).checked == true)
    {
        document.getElementById(elementId).value = 'True';
        document.getElementById(textBoxId).style.display = 'block';
    }
    else
    {
        document.getElementById(elementId).value = 'False';
        document.getElementById(textBoxId).style.display = 'none';
    }
}

function OnWojewodztwoChanged(path) {
    $('.DaneDodatkowePowiat').html("<option value='0'></option>");
    $('.DaneDodatkoweGminaTyp').html("<option value='0'></option>");
    $('.DaneDodatkoweJednostka').html("<option value='0'></option>");

    SlwonikiWS._staticInstance._path = path;

    var wojewodztwoId = $('.DaneDodatkoweWojewodztwo option:selected').val();
    if (parseInt(wojewodztwoId) > 0) {
        SlownikiWS.PowiatGetByWojewodztwoId(wojewodztwoId, WyswietlPowiaty);
    }
}

function WyswietlPowiaty(result) {
    var DdlPowiat = $('.DaneDodatkowePowiat');
    for (i in result) {
        $("<option value='" + result[i].PowiatId + "'>" + result[i].PowiatNazwa + "</option>").appendTo(DdlPowiat);
    }
}


function OnPowiatChanged(path) {
    $('.DaneDodatkoweGminaTyp').html("<option value='0'></option>");
    $('.DaneDodatkoweJednostka').html("<option value='0'></option>");

    SlwonikiWS._staticInstance._path = path;

    var powiatId = $('.DaneDodatkowePowiat option:selected').val();
    if (parseInt(powiatId) > 0) {
        SlownikiWS.GminaTypGetByPowiatId(powiatId, WyswietlGminy);
    }
}

function WyswietlGminy(result) {
    var DdlGmina = $('.DaneDodatkoweGminaTyp');
    for (i in result) {
        $("<option value='" + result[i].GminaTypId + "'>" + result[i].GminaTypNazwa + "</option>").appendTo(DdlGmina);
    }
}


function OnGminaTypChanged(path ) {
    $('.DaneDodatkoweJednostka').html("<option value='0'></option>");

    SlwonikiWS._staticInstance._path = path;

    var powiatId = $('.DaneDodatkowePowiat option:selected').val();
    var gminaTypId = $('.DaneDodatkoweGminaTyp option:selected').val();
    if (parseInt(powiatId) > 0 && parseInt(gminaTypId) > 0) {
        SlownikiWS.JednostkaGetByGminaTypPowiatId(gminaTypId, powiatId, WyswietlJednostki);
    }
}

function WyswietlJednostki(result) {
    var DdlJednostka = $('.DaneDodatkoweJednostka');
    for (i in result) {
        $("<option value='" + result[i].JednostkaId + "'>" + result[i].JednostkaNazwa + "</option>").appendTo(DdlJednostka);
    }
}


/* Dodatkowe funkcje walidujące dla jQuery validatora
*****************************************************************/
function ValidateDDL(value, element) 
{
    if (value == "0")
        return false;
        
return true;
}

function ValidateAnswerYes(value, element) 
{
    var textboxAnswer = jQuery(element).next().next();
    
    // Weryfikuj czy prawidłowy obiekt input (jeśli jest komunikat walidacji kolejność się przesuwa o 1)
    if (textboxAnswer[0] == null)
    {
        textboxAnswer = jQuery(element).next();
    }
    
    var answer = jQuery(textboxAnswer).val();
    if (element.checked == true && (answer == null || answer == ''))
        return false;
        
return true;
}

function ValidatePESEL(value, element) {
    if (value.length != 11) {
        return false;
    }

    var waga = new Array(1, 3, 7, 9, 1, 3, 7, 9, 1, 3, 7);
    var suma = 0;
    for (i = 0; i < 10; i++) {
        if (isNaN(parseInt(value[i]))) {
            return false;
        }
        suma += parseInt(value[i]) * waga[i];
    }
    if (isNaN(parseInt(value[10]))) {
        return false;
    }
    return parseInt(value[10]) == (10 - (suma % 10)) % 10;
}

function ValidateNRB(value, element) {
    if (value.length != 26) {
        return false;
    }

    var waga = new Array(1, 10, 3, 30, 9, 90, 27, 76, 81, 34, 49, 5, 50, 15, 53, 45, 62, 38, 89, 17,
                   73, 51, 25, 56, 75, 71, 31, 19, 93, 57);

    var suma = 0;
    value = value.substring(2) + "2521" + value.substring(0, 2);

    for (i = 0; i < 30; i++) {
        if (isNaN(parseInt(value[i]))) {
            return false;
        }
        suma += parseInt(value[i]) * waga[29 - i];
    }

    return suma % 97 == 1;
}

/*
** TrenerKursDv.ascx
***********************************************************************************/
function DodajKalendarz(controlId) {
    $("#" + controlId).datepicker({ onSelect: function() { } });
}

function ValidateDateFormat(sender, args) {
    var parts = args.Value.split('-');
    if (parts.length != 3) {
        args.IsValid = false;
        return;
    }
    var sYear = parts[0];
    var sMonth = parts[1];
    var sDay = parts[2];

    var year = sYear * 1;
    var month = sMonth * 1;
    var day = sDay * 1;

    if ((sYear.length != 4) || isNaN(year) || (year == 0)) {
        args.IsValid = false;
        return;
    }
    if ((sMonth.length != 2) || isNaN(month) || (month < 1) || (month > 12)) {
        args.IsValid = false;
        return;
    }

    if ((sDay.length != 2) || isNaN(day) || (day < 1) || (day > 31)) {
        args.IsValid = false;
        return;
    }

    if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12) {
        if (day > 31) {
            args.IsValid = false;
        }
    }
    else if (month == 2) {
        if (((year % 4 == 0) && (day > 29)) || ((year % 4 != 0) && (day > 28))) {
            args.IsValid = false;
        }
    }
    else if (day > 30) {
        args.IsValid = false;
    }
    else {
        args.IsValid = true;
    }
}

function ValidateSzkolenie(sender, args) {
    args.IsValid = args.Value > 0;
}

/*
** datepicker
***********************************************************************************/
function Validate_Init(btnSubmit) {
    $('input[data]').datepicker({ changeMonth: true,
        changeYear: true
    });

    // pierwsza wersja:
    //        $("#" + btnSubmit).click(function(evt) {
    //            // dokonaj walidacji formy i pobierz rezultat
    //            var isValid = $("#aspnetForm").valid();

    //            // jeśli walidacja nie powiodła się - zatrzymaja dalsze przetwarzanie
    //            if (!isValid)
    //                evt.preventDefault();
    //        });

    // druga wersja - ValidationGroup:
    $('.validationGroup .causesValidation').click(ValidateAndSubmit);

    $('.causesValidationWizard').click(ValidateAndSubmit);

    // Obsługa klawisza Enter
    $('.validationGroup :text').keydown(function(evt) {
        if (evt.keyCode == 13) {
            ValidateAndSubmit(evt);
        }
    });
}

function ValidateAndSubmit(evt) {
    // Idąc w górę odnajdź konterner o klasie .validationGroup z wnętrza którego wywołano zdarzenie click 
    var $group = $(this).parents('.validationGroup');

    if ($group.length == 0 && $(evt.currentTarget).attr("className") == 'causesValidationWizard') {
        $group = $('.validationGroup');
    }

    var isValid = true;

    // Przeiteruj elementu typu input lerzące wewnątrz .validationGroup i dokonaj walidacji
    $group.find(':input').each(function(i, item) {
        if (!$(item).valid())
            isValid = false;
    });

    if (!isValid)
        evt.preventDefault();
}
