$(document).ready(function()
{
        $('#myTable').tablesorter();
        
        var tableid = 1;
        
        $('#myTable').each(function()
        {
                var rowsPerPage = 25;
                $(this).addClass('navtable'+tableid);
                var $table = $(this);
                var rows = $(this).find('tbody tr').length;
                
                if( rows > rowsPerPage )
                {
                        var pages = Math.ceil( rows / rowsPerPage );
                     
                        $nav = $( '<span class=\'nav\'></span>' );
                        $nav.attr('id','table'+tableid);
                        
                        for( var i=1; i <= pages; i++ )
                        {
                                var $page = $('<a href=\'javascript:void(0);\'>['+i+']</a>' );
                                
                                $page.click(function()
                                {
                                        $(this).parent('span').find('a.active').removeClass('active');
                                        $(this).addClass('active')
                                        var from = parseInt( $(this).text().substr( 1, $(this).text().length-1 ) ) * rowsPerPage - rowsPerPage + 1;
                                        var to = from + rowsPerPage;
                                        var lp = 0;
                                        var $table = $('.nav'+$(this).parent().attr('id'));
                                        $table.find('tbody tr').hide();
                                        
                                        $table.find('tbody tr').each(function()
                                        {
                                                lp++;
                                                if( lp >= from && lp < to )  $(this).show();
                                                if( lp > to )  return;
                                        });
                                        
                                        var lp = 0;
                                        
                                        $table.find('tr:visible').each(function()
                                        {
                                                $(this).find('td:eq(0)').text(lp);
                                                lp++;
                                        });
                                        
                                        return false;
                                });
                                
                                $nav.append( $page );
                        }
                        
                        $nav.find('a:first').trigger('click');
                        
                        $('#nav').append( $nav );
                }
                
                tableid++;
        });
        
        $('#c_Att').click(function()
        {
                $('#att').toggle('slow');
        });
        
        $('#c_cores').click(function()
        {
                if ( $('#c_cores').attr('checked') == true )
                {
                        $('#cores').slideDown();
                }
                else
                {
                        $('#cores').slideUp();
                        $(document).find('input[name="c_Biling_Name2"]').val('');
                        $(document).find('input[name="c_Biling_Street2"]').val('');
                        $(document).find('input[name="c_Biling_Code2"]').val('');
                        $(document).find('input[name="c_Biling_City2"]').val('');
                }
        });
        
        $('#c_company').click(function()
        {
                $(document).find('input[name="c_Biling_Nip"]').attr('disabled', '');
                $(document).find('input[name="c_Biling_Nip"]').removeClass('inputError');
        });
        
        $('#c_private').click(function()
        {
                $(document).find('input[name="c_Biling_Nip"]').attr('disabled', 'disabled');
                $(document).find('input[name="c_Biling_Nip"]').removeClass('inputError');
                $(document).find('input[name="c_Biling_Nip"]').val('');
        });
        
        $('#form_client_login').submit(function()
        {
                var error = '';
                
                $(document).find('input[name="c_Login"]').removeClass('inputError');
                $(document).find('input[name="c_Pass"]').removeClass('inputError');
                
                $(this).find('.error, .box3').remove();
                
                if ( $(this).find('input[name="c_Login"]').attr('value') == '' )
                {
                        error += '<li>Nie podano loginu klienta!</li>';
                        $(document).find('input[name="c_Login"]').addClass('inputError');
                }
                if ( $(this).find('input[name="c_Pass"]').attr('value') == '' )
                {
                        error += '<li>Nie podano hasła klienta!</li>';
                        $(document).find('input[name="c_Pass"]').addClass('inputError');
                }
                
                if ( error != '' )
                {
                        $(document).find('div[id="msg"]').before( $('<div class="error"><h1></h1><ul>'+error+'</ul><h2></h2></div>') );
                }
                else
                {
                        $('#form_client_login').find('.error').remove();
                        $('#form_client_login').find('div[id="msg"]').before( $(' <div class="loader"><h1></h1><ul><img src="img/ajax-loader.gif" border="0" /> Trwa sprawdzanie danych, proszę czekać...</ul><h2></h2></div>') );
                        setTimeout("document.form_name_client_login.submit();", 700);
                }
                
                return false;
        });
        
        $('#form_client_add').submit(function()
        {
                var error = '';
                var emailRegex = /^[a-zA-Z0-9._-]+@([a-zA-Z0-9.-]+\.)+[a-zA-Z0-9.-]{2,4}$/;
                var peselRegex = /^[0-9]{11}$/;
                var nipRegex = /^[0-9]{10}$/;
                var codeRegex = /^[0-9]{2}-[0-9]{3}$/;
                
                $(document).find('input[name="c_Login"]').removeClass('inputError');
                $(document).find('input[name="c_Pass_1"]').removeClass('inputError');
                $(document).find('input[name="c_Pass_2"]').removeClass('inputError');
                $(document).find('input[name="c_Name"]').removeClass('inputError');
                $(document).find('input[name="c_Email"]').removeClass('inputError');
                $(document).find('input[name="c_Tel"]').removeClass('inputError');
                $(document).find('input[name="c_Pesel"]').removeClass('inputError');
                $(document).find('input[name="c_Biling_Name"]').removeClass('inputError');
                $(document).find('input[name="c_Biling_Nip"]').removeClass('inputError');
                $(document).find('input[name="c_Biling_Street"]').removeClass('inputError');
                $(document).find('input[name="c_Biling_Code"]').removeClass('inputError');
                $(document).find('input[name="c_Biling_City"]').removeClass('inputError');
                $(document).find('input[name="c_Biling_Name2"]').removeClass('inputError');
                $(document).find('input[name="c_Biling_Street2"]').removeClass('inputError');
                $(document).find('input[name="c_Biling_Code2"]').removeClass('inputError');
                $(document).find('input[name="c_Biling_City2"]').removeClass('inputError');
                $(document).find('input[name="c_Token"]').removeClass('inputError');
                
                $(this).find('.error, .box3').remove();
                
                if ( $(this).find('input[name="c_Login"]').attr('value') == '' )
                {
                        error += '<li>Nie podano loginu klienta!</li>';
                        $(document).find('input[name="c_Login"]').addClass('inputError');
                }
                if ( $(this).find('input[name="c_Login"]').attr('value') != '' && $(this).find('input[name="c_Login"]').attr('value').length < 6 )
                {
                        error += '<li>Login klienta jest zbyt krótki! Minimum 6 znaków!</li>';
                        $(document).find('input[name="c_Login"]').addClass('inputError');
                }
                if ( $(this).find('input[name="c_Login"]').attr('value') != '' && $(this).find('input[name="c_Login"]').attr('value').length >= 6  && !nickValid( $(this).find('input[name="c_Login"]').attr('value') ) )
                {
                        error += '<li>Login klienta zawiera niedozwolone znaki! Dozwolone znaki to: "a-zA-z0-9_-"!</li>';
                        $(document).find('input[name="c_Login"]').addClass('inputError');
                }
                if ( $(this).find('input[name="c_Pass_1"]').attr('value') == '' )
                {
                        error += '<li>Nie podano hasła klienta!</li>';
                        $(document).find('input[name="c_Pass_1"]').addClass('inputError');
                }
                if ( $(this).find('input[name="c_Pass_1"]').attr('value') != '' && $(this).find('input[name="c_Pass_1"]').attr('value').length < 8 )
                {
                        error += '<li>Podane hasło jest zbyt krótkie! Minimum 8 znaków!</li>';
                        $(document).find('input[name="c_Pass_1"]').addClass('inputError');
                }
                if ( $(this).find('input[name="c_Pass_2"]').attr('value') == '' )
                {
                        error += '<li>Nie podano ponownie hasła klienta!</li>';
                        $(document).find('input[name="c_Pass_2"]').addClass('inputError');
                }
                if ( $(this).find('input[name="c_Pass_1"]').attr('value') != '' && $(this).find('input[name="c_Pass_2"]').attr('value') != '' && $(this).find('input[name="c_Pass_1"]').attr('value') != $(this).find('input[name="c_Pass_2"]').attr('value') )
                {
                        error += '<li>Podane hasła nie są identyczne!</li>';
                        $(document).find('input[name="c_Pass_1"]').addClass('inputError');
                        $(document).find('input[name="c_Pass_2"]').addClass('inputError');
                }
                if ( $(this).find('input[name="c_Name"]').attr('value') == '' )
                {
                        error += '<li>Nie podano imienia i nazwiska osoby kontaktowej!</li>';
                        $(document).find('input[name="c_Name"]').addClass('inputError');
                }
                if ( $(this).find('input[name="c_Email"]').attr('value') == '' )
                {
                        error += '<li>Nie podano adresu email osoby kontaktowej!</li>';
                        $(document).find('input[name="c_Email"]').addClass('inputError');
                }
                if ( $(this).find('input[name="c_Email"]').attr('value') != '' && !emailRegex.test( $(this).find('input[name="c_Email"]').attr('value') ) )
                {
                        error += '<li>Podano niepoprawny format adresu email!</li>';
                        $(document).find('input[name="c_Email"]').addClass('inputError');
                }
                if ( $(this).find('input[name="c_Tel"]').attr('value') == '' )
                {
                        error += '<li>Nie podano numeru telefonu osoby kontaktowej!</li>';
                        $(document).find('input[name="c_Tel"]').addClass('inputError');
                }
                if ( $(this).find('input[name="c_Pesel"]').attr('value') != '' && !peselRegex.test( $(this).find('input[name="c_Pesel"]').attr('value') ) )
                {
                        error += '<li>Podany numer PESEL jest niepoprawny!</li>';
                        $(document).find('input[name="c_Pesel"]').addClass('inputError');
                }
                if ( $(this).find('input[name="c_Biling_Name"]').attr('value') == '' )
                {
                        error += '<li>Nie podano danych osobowych / nazwy firmy!</li>';
                        $(document).find('input[name="c_Biling_Name"]').addClass('inputError');
                }
                
                $('#form_client_add').find('input[name="c_Option"]').each(function()
                {
                        if( $(this).attr('checked') == true )
                        {
                                c_radio = $(this).attr('value');
                        }
                });
                
                if ( c_radio == 'firma' && $(this).find('input[name="c_Biling_Nip"]').attr('value') == '' )
                {
                        error += '<li>Nie podano NIP-u!</li>';
                        $(document).find('input[name="c_Biling_Nip"]').addClass('inputError');
                }
                if ( c_radio == 'firma' && $(this).find('input[name="c_Biling_Nip"]').attr('value') != '' )
                {
                        nip2 = $(this).find('input[name="c_Biling_Nip"]').attr('value');
                        
                        for ( i = 0; i <= 10; i++ )
                        {
                                nip2 = nip2.replace('-', '');
                        }
                        
                        $(this).find('input[name="c_Biling_Nip"]').val(nip2);

                        if ( !nipRegex.test( $(this).find('input[name="c_Biling_Nip"]').attr('value') ) )
                        {
                                error += '<li>Podany NIP jest niepoprawny!</li>';
                                $(document).find('input[name="c_Biling_Nip"]').addClass('inputError');
                        }
                }
                if ( $(this).find('input[name="c_Biling_Street"]').attr('value') == '' )
                {
                        error += '<li>Nie podano ulicy i numeru domu!</li>';
                        $(document).find('input[name="c_Biling_Street"]').addClass('inputError');
                }
                if ( $(this).find('input[name="c_Biling_Code"]').attr('value') == '' )
                {
                        error += '<li>Nie podano kodu pocztowego!</li>';
                        $(document).find('input[name="c_Biling_Code"]').addClass('inputError');
                }
                if ( $(this).find('input[name="c_Biling_Code"]').attr('value') != '' && !codeRegex.test( $(this).find('input[name="c_Biling_Code"]').attr('value') ) )
                {
                        error += '<li>Podany kod pocztowy jest niepoprawny!</li>';
                        $(document).find('input[name="c_Biling_Code"]').addClass('inputError');
                }
                if ( $(this).find('input[name="c_Biling_City"]').attr('value') == '' )
                {
                        error += '<li>Nie podano miasta!</li>';
                        $(document).find('input[name="c_Biling_City"]').addClass('inputError');
                }
                if ( $('#c_cores').attr('checked') == true )
                {
                        if ( $(this).find('input[name="c_Biling_Name2"]').attr('value') == '' )
                        {
                                error += '<li>Nie podano danych osobowych / nazwy firmy do korespondencji!</li>';
                                $(document).find('input[name="c_Biling_Name2"]').addClass('inputError');
                        }
                        if ( $(this).find('input[name="c_Biling_Street2"]').attr('value') == '' )
                        {
                                error += '<li>Nie podano ulicy i numeru domu do korespondencji!</li>';
                                $(document).find('input[name="c_Biling_Street2"]').addClass('inputError');
                        }
                        if ( $(this).find('input[name="c_Biling_Code2"]').attr('value') == '' )
                        {
                                error += '<li>Nie podano kodu pocztowego do korespondencji!</li>';
                                $(document).find('input[name="c_Biling_Code2"]').addClass('inputError');
                        }
                        if ( $(this).find('input[name="c_Biling_Code2"]').attr('value') != '' && !codeRegex.test( $(this).find('input[name="c_Biling_Code2"]').attr('value') ) )
                        {
                                error += '<li>Podany kod pocztowy do korespondencji jest niepoprawny!</li>';
                                $(document).find('input[name="c_Biling_Code2"]').addClass('inputError');
                        }
                        if ( $(this).find('input[name="c_Biling_City2"]').attr('value') == '' )
                        {
                                error += '<li>Nie podano miasta do korespondencji!</li>';
                                $(document).find('input[name="c_Biling_City2"]').addClass('inputError');
                        }
                }
                if ( $(this).find('input[name="c_Token"]').attr('value') == '' )
                {
                        error += '<li>Nie przepisano kodu weryfikacyjnego!</li>';
                        $(document).find('input[name="c_Token"]').addClass('inputError');
                }
                if ( $('#c_Reg').attr('checked') == false )
                {
                        error += '<li>Nie zatwierdzono regulaminu!</li>';
                }
                
                if ( error != '' )
                {
                        $(document).find('div[id="msg"]').before( $('<div class="error"><h1></h1><ul>'+error+'</ul><h2></h2></div>') );
                }
                else
                {
                        $('#form_client_add').find('.error').remove();
                        $('#form_client_add').find('div[id="msg"]').before( $(' <div class="loader"><h1></h1><ul><img src="img/ajax-loader.gif" border="0" /> Trwa sprawdzanie danych, proszę czekać...</ul><h2></h2></div>') );

                        var error2 = '';
                        
                        $.ajax (
                        {
                                type: 'POST',
                                url: 'ajax.php?a=getCheckClient',
                                data: (
                                {
                                        openFile: '1',
                                        _function: c_radio,
                                        _login: $(this).find('input[name="c_Login"]').attr('value'),
                                        _email: $(this).find('input[name="c_Email"]').attr('value'),
                                        _pesel: $(this).find('input[name="c_Pesel"]').attr('value'),
                                        _nip: $(this).find('input[name="c_Biling_Nip"]').attr('value'),
                                        _token: $(this).find('input[name="c_Token"]').attr('value')
                                }),
                                success: function( out )
                                {
                                        $(document).find('.loader').remove();
                                        
                                        var tokens = out.split('#');
                                        
                                        if ( tokens[0] == 'invalid_login' )
                                        {
                                                error2 += '<li>Podany login klienta istnieje już w naszej bazie!</li>';
                                                $(document).find('input[name="c_Login"]').addClass('inputError');
                                        }
                                        if ( tokens[1] == 'invalid_email' )
                                        {
                                                error2 += '<li>Podany adres email osoby kontaktowej istnieje już w naszej bazie!</li>';
                                                $(document).find('input[name="c_Email"]').addClass('inputError');
                                        }
                                        if ( c_radio == 'firma' )
                                        {
                                        
                                                if ( tokens[2] == 'invalid_nip' )
                                                {
                                                        error2 += '<li>Podany NIP istnieje już w naszej bazie!</li>';
                                                        $(document).find('input[name="c_Biling_Nip"]').addClass('inputError');
                                                }
                                        }
                                        else
                                        {
                                                if ( tokens[2] == 'invalid_pesel' )
                                                {
                                                        error2 += '<li>Podany PESEL istnieje już w naszej bazie!</li>';
                                                        $(document).find('input[name="c_Pesel"]').addClass('inputError');
                                                }
                                        }
                                        
                                        if ( tokens[3] == 'invalid_token' )
                                        {
                                                error2 += '<li>Przepisany kod weryfikacyjny jest niepoprawny!</li>';
                                                $(document).find('input[name="c_Token"]').addClass('inputError');
                                        }
                                        
                                        if (  error2 != '' )
                                        {
                                                $(document).find('div[id="msg"]').before( $('<div class="error"><h1></h1><ul>'+error2+'</ul><h2></h2></div>') );
                                        }
                                        else
                                        {
                                                $('#form_client_add').find('div[id="msg"]').before( $(' <div class="loader"><h1></h1><ul><img src="img/ajax-loader.gif" border="0" /> Trwa zapisywanie danych, proszę czekać...</ul><h2></h2></div>') );
                                                setTimeout("document.form_name_client_add.submit();", 700);
                                        }
                                }
                        });
                }
                
                return false;
        });
        
        $('#form_email_send').submit(function()
        {
                var error = '';
                var emailRegex = /^[a-zA-Z0-9._-]+@([a-zA-Z0-9.-]+\.)+[a-zA-Z0-9.-]{2,4}$/;
                
                $(this).find('.error, .success, .loader').remove();
                
                $(document).find('input[name="c_Name"]').removeClass('inputError');
                $(document).find('input[name="c_Email"]').removeClass('inputError');
                $(document).find('textarea[name="c_Text"]').removeClass('inputError');
                
                if ( $(this).find('input[name="c_Name"]').attr('value') == 0 )
                {
                        error += '<li>Nie podano imienia i nazwiska / nazwy firmy!</li>';
                        $(document).find('input[name="c_Name"]').addClass('inputError');
                }
                if ( $(this).find('input[name="c_Email"]').attr('value') == '' )
                {
                        error += '<li>Nie podano adresu email!</li>';
                        $(document).find('input[name="c_Email"]').addClass('inputError');
                }
                if ( $(this).find('input[name="c_Email"]').attr('value') != '' && !emailRegex.test( $(this).find('input[name="c_Email"]').attr('value') ) )
                {
                        error += '<li>Podano niepoprawny format adresu email!</li>';
                        $(document).find('input[name="c_Email"]').addClass('inputError');
                }
                if ( $(this).find('textarea[name="c_Text"]').attr('value') == '' )
                {
                        error += '<li>Nie podano treści wiadomości!</li>';
                        $(document).find('textarea[name="c_Text"]').addClass('inputError');
                }
                
                if ( error != '' )
                {
                        $(document).find('div[id="msg"]').before( $('<div class="error"><h1></h1><ul>'+error+'</ul><h2></h2></div>') );
                }
                else
                {
                        $('#form_email_send').find('.error').remove();
                        $('#form_email_send').find('div[id="msg"]').before( $(' <div class="loader"><h1></h1><ul><img src="img/ajax-loader.gif" border="0" /> Trwa wysyłanie danych, proszę czekać...</ul><h2></h2></div>') );
                        setTimeout("document.form_name_email_send.submit();", 700);
                }
                
                return false;
        });
        
        $('#form_client_frog_pass').submit(function()
        {
                var error = '';
                var emailRegex = /^[a-zA-Z0-9._-]+@([a-zA-Z0-9.-]+\.)+[a-zA-Z0-9.-]{2,4}$/;
                
                $(this).find('.error, .success, .loader').remove();
                
                $(document).find('input[name="c_Email"]').removeClass('inputError');
                
                if ( $(this).find('input[name="c_Email"]').attr('value') == '' )
                {
                        error += '<li>Nie podano adresu email!</li>';
                        $(document).find('input[name="c_Email"]').addClass('inputError');
                }
                if ( $(this).find('input[name="c_Email"]').attr('value') != '' && !emailRegex.test( $(this).find('input[name="c_Email"]').attr('value') ) )
                {
                        error += '<li>Podano niepoprawny format adresu email!</li>';
                        $(document).find('input[name="c_Email"]').addClass('inputError');
                }
                
                if ( error != '' )
                {
                        $(document).find('div[id="msg"]').before( $('<div class="error"><h1></h1><ul>'+error+'</ul><h2></h2></div>') );
                }
                else
                {
                        $('#form_client_frog_pass').find('.error').remove();
                        $('#form_client_frog_pass').find('div[id="msg"]').before( $(' <div class="loader"><h1></h1><ul><img src="img/ajax-loader.gif" border="0" /> Trwa sprawdzanie danych, proszę czekać...</ul><h2></h2></div>') );
                        setTimeout("document.form_name_client_frog_pass.submit();", 700);
                }
                
                return false;
        });
        
        $('#form_client_new_pass').submit(function()
        {
                var error = '';
                
                $(document).find('input[name="c_Pass_1"]').removeClass('inputError');
                $(document).find('input[name="c_Pass_2"]').removeClass('inputError');
                
                $(this).find('.error, .success, .loader').remove();
                
                if ( $(this).find('input[name="c_Pass_1"]').attr('value') == '' )
                {
                        error += '<li>Nie podano nowego hasła klienta!</li>';
                        $(document).find('input[name="c_Pass_1"]').addClass('inputError');
                }
                if ( $(this).find('input[name="c_Pass_2"]').attr('value') == '' )
                {
                        error += '<li>Nie podano ponownie nowego hasła klienta!</li>';
                        $(document).find('input[name="c_Pass_2"]').addClass('inputError');
                }
                if ( $(this).find('input[name="c_Pass_1"]').attr('value') != '' && $(this).find('input[name="c_Pass_1"]').attr('value').length < 8 )
                {
                        error += '<li>Podane nowe hasło jest zbyt krótkie! Minimum 8 znaków!</li>';
                        $(document).find('input[name="c_Pass_1"]').addClass('inputError');
                }
                if ( $(this).find('input[name="c_Pass_1"]').attr('value') != '' && $(this).find('input[name="c_Pass_2"]').attr('value') != '' && $(this).find('input[name="c_Pass_1"]').attr('value') != $(this).find('input[name="c_Pass_2"]').attr('value') )
                {
                        error += '<li>Podane nowe hasła nie są identyczne!</li>';
                        $(document).find('input[name="c_Pass_1"]').addClass('inputError');
                        $(document).find('input[name="c_Pass_2"]').addClass('inputError');
                }
                
                if ( error != '' )
                {
                        $(document).find('div[id="msg"]').before( $('<div class="error"><h1></h1><ul>'+error+'</ul><h2></h2></div>') );
                }
                else
                {
                        $('#form_client_new_pass').find('.error').remove();
                        $('#form_client_new_pass').find('div[id="msg"]').before( $(' <div class="loader"><h1></h1><ul><img src="img/ajax-loader.gif" border="0" /> Trwa zapisywanie danych, proszę czekać...</ul><h2></h2></div>') );
                        setTimeout("document.form_name_client_new_pass.submit();", 700);
                }
                
                return false;
        });
});

function nickValid ( login )
{
        var warunki = /^[a-zA-Z0-9._\-]+$/;
        return warunki.test( login );
}

function loginValid ( login )
{
        var warunki = /^[a-zA-Z0-9]+$/;
        return warunki.test( login );
}

function showNews ( newsId )
{
        $('#news_'+newsId).slideUp();
        $.ajax (
        {
                type: 'POST',
                url: 'ajax.php?a=getShowNews',
                data: (
                {
                        openFile: '1',
                        _id: newsId,
                }),
                success: function( out )
                {
                        $('#news_'+newsId).html(out);
                        $('#news_'+newsId).slideDown('slow');
                }
        });
}

function submenu ( id )
{
        for ( i = 0; i <= 5; i++ )
        {
                $('#m'+i).removeClass('active');
        }
        
        $('#m'+id).addClass('active');
        
        for ( i = 0; i <= 5; i++ )
        {
                $('#b'+i).css('display', 'none');
        }
        
        $('#b'+id).css('display', '');
}
