    var advert_ids = '';
    var ids = [];

    function validate_email( checkEmail )
    {
        if ( ( checkEmail.indexOf('@') < 0 ) || ( ( checkEmail.charAt( checkEmail.length-4 ) != '.' ) && ( checkEmail.charAt( checkEmail.length-3 ) != '.' ) ) )
        {
            return false;
        }
        return true;
    }

    function validate_form ()
    {
        var errors = '';
        var post = true;
        if ( $('input#naam').val() == '')
        {
            errors = "Naam\n"
            post = false;
        }

        if ( $('input#van').val() == '')
        {
            errors += "Van\n"
            post = false;
        }

        if ( $('input#epos').val() == '')
        {
            errors += "Epos adres\n"
            post = false;
        }

        if ( $("input#epos").val().length > 0 )
        {
            if ( validate_email( $("input#epos").val() ) == false )
            {
                errors += "Geldige epos adres\n";
                post = false;
            }
        }

        if ( post == false ) alert ( "Voltooi die volgende:\n" + errors );
        return post;
    }

    function load_adverts (data, textStatus, rand)
    {
        if (!rand) rand = false;
        advert_ids = '';
        advert_ids = $('#advert_ids').val();
        var advert_html = '<a class="AdvertLink" id="AdvertCount_##ID##" href="##URL##" target="##TARGET##"><img class="adverts_img" src="/cache/modules/main/models/advert/image/##ID##" alt="##NAME##"/></a>';
        if (textStatus == 'success')
        {
            $.each(data, function(i, item)
            {
                if (!rand) // not random
                {
                    ids.push(item['id']);
                    advert_ids = ids.join(',');
                    $.data( '#AdvertBlock_'+i, 'id', item['id']);
                    j=i;
                }
                else  //random
                {
                    ids = advert_ids.split(',');
                    j = Math.floor(Math.random()* 4 );
                    ids[j] = item['id'];
                    advert_ids = ids.join(',');
                }
                if (item['external'] == 'Y')
                {
                    target = '_blank';
                }
                else
                {
                    target = '_self';
                }
                $('#AdvertBlock_'+j).html( advert_html.replace('##URL##', item['url']).replace('##TARGET##', target).replace(/##ID##/g, item['id']).replace('##NAME##', item['name']) );
            }); j
            $('#advert_ids').val(advert_ids);
            set_interval_timer();
        }
    }

    function get_adverts ()
    {
        var url = '/main/get_adverts'
        $.getJSON (
            url,
            function (data, textStatus)
            {
                if (textStatus == 'success')
                {
                    load_adverts(data, textStatus);
                }
                else
                {
                    return false;
                }
            });
    }

    function set_interval_timer()
    {
        setTimeout ( 'load_new_ads()', 30000 );
    }

    function load_new_ads()
    {
        var advert_ids = $('#advert_ids').val();
        var url = '/main/get_new_advert/' + advert_ids;
        $.getJSON (
            url,
            function (data, textStatus)
            {
                if (textStatus == 'success')
                {
                    load_adverts(data, textStatus, true);
                }
                else
                {
                    return false;
                }
            });
    }

    function count_click(elem)
    {
        var id = elem.split('_');
        var url = '/main/count_click/' + id[1];
        $.get ( url );
    }

    function highlight_events(seldates)
    {
        $('#datepicker td span').each(function ()
        {
            for (date in seldates)
            {
                var elem = $(this);
                if ( elem.text() == seldates[date] )
                {
                    elem.addClass('ui-state-active');
                }
            }
        });
    }

    $(document).ready ( function ()
        {
            var seldates = [6,15];
            $( "#datepicker" ).datepicker({
                changeMonth: false,
                changeYear: false,
                minDate: new Date(),
                maxDate: new Date(),
                hideIfNoPrevNext: true,
                showButtonPanel: false,
                beforeShowDay: function(date)
                {
                    return false;
                }
            });
            highlight_events(seldates);

            $('form#frm_subscribe input#submit').click( function () {
                    if ( validate_form () == false )
                    {
                        return false;
                    }
                    else
                    {
                        $('form#frm_subscribe input#submit').submit();
                    }
                });

            $('div#ContentRight div#Search input#Site_Search').focus( function ()
                {
                    if ($('div#ContentRight div#Search input#Site_Search').val() == 'Sleutelwoorde »')
                    {
                        $('div#ContentRight div#Search input#Site_Search').val( '' );
                    }

                }).blur( function ()
                {
                    if ($('div#ContentRight div#Search input#Site_Search').val() == '')
                    {
                        $('div#ContentRight div#Search input#Site_Search').val( 'Sleutelwoorde »' );
                    }

                });

            $('div#ContentRight div#Search input#submit').click( function () {
                    if ( validate_search_form () == false )
                    {
                        return false;
                    }
                    else
                    {
                        $('div#ContentRight div#Search input#submit').submit();
                    }
                });

            get_adverts();
            $('.AdvertLink').live( 'click', function () {
                    count_click( this.id );
                    } );
        });

