$(function(){
      $('span.groep').click(function(){
        $('ul.vraag').slideUp();
        $('li.omschrijving').slideUp();
        $('ul.vraag', $(this).parent()).slideDown();
      });

      $('span.vraag').click(function(){
        $('ul.omschrijving').slideUp();
        $('ul.omschrijving', $(this).parent()).slideDown();
      });
});

$(function(){
  var firstDiff = $('.firstdiff');
  if(firstDiff.length > 0){
      $('.paginator a').each(function(){
        var aantal = $(this).attr('href');
        aantal = parseInt(String(aantal).replace('?offset=', ''));
        if(aantal > 0){
          aantal = aantal - 1;
          $(this).attr('href', '?offset='+String(aantal));
        }
      });
  }
});
    
$(function() {
  $('a.tooltip').tooltip({
    //track: true,
    showURL: false,
    delay: 0
  });
});

function inpFocus(obj, stdText) {
  if (obj.value == stdText) {
    obj.value = '';
  }
}

function inpBlur(obj, stdText) {
  if (obj.value == '') {
    obj.value = stdText;
  }
} 

// date changer
function changeData(jElement, days){
  var re = /(\d{4})-(\d{2})-(\d{2})/;
  var c = jElement.val().match(re);
  if(c.length == 4){
    var d=new Date(c[1],c[2],parseInt(c[3])+days);      
    var dag = d.getDate() + "";
    var maand = d.getMonth() + "";    
    jElement.val($.sprintf("%s-%s-%s", 
                           d.getFullYear(), 
                           (maand.length == 2 ? maand : "0"+maand),
                           (dag.length == 2 ? dag : "0"+dag)
                          ));
  }  
}

$(function() {
  // date velden die in een span.einddatum staan zetten op 2040-01-01  
  var re = /editID/i;
  if(!re.test(document.location.href)){
    $('.einddatum .inputCalendar .inputDate').each(function(){
      $(this).val("2030-01-01");    
      eval('h_'+ $(this).attr('id') + '_Object'+ '.setPicked(2030, 0, 1 );');
    });
  }
  
  $('.inputCalendar input.inputDate').change(function(){
    var valdate = /^[0-9]{4}-[0-9]{2}-[0-9]{2}$/;
    if(!valdate.test($(this).val())){
      alert("De ingevoerde datum is niet correct, probeert u het nogmaals via huidig ingevuld formaat");
      
      $(this).val("2011-01-01");    
      eval('h_'+ $(this).attr('id') + '_Object'+ '.setPicked(2011, 0, 1 );'); 
    }
  });  
  
  // paginatoren kopieren zodat we niet 2 keer moeten queryen
  $(".paginator1").html($(".paginator0").html());
  $(".paginator2").html($(".paginator0").html());   
  
  //datepickers aan zetten
  $.datepicker.regional['nl'] = {
    closeText: 'Sluiten',
    prevText: '<-',
    nextText: '->',
    currentText: 'Vandaag',
    monthNames: ['januari', 'februari', 'maart', 'april', 'mei', 'juni',
                 'juli', 'augustus', 'september', 'oktober', 'november', 'december'],
    monthNamesShort: ['jan', 'feb', 'maa', 'apr', 'mei', 'jun',
                      'jul', 'aug', 'sep', 'okt', 'nov', 'dec'],
    dayNames: ['zondag', 'maandag', 'dinsdag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag'],
    dayNamesShort: ['zon', 'maa', 'din', 'woe', 'don', 'vri', 'zat'],
    dayNamesMin: ['zo', 'ma', 'di', 'wo', 'do', 'vr', 'za'],
    weekHeader: 'Wk',
    dateFormat: 'yy-mm-dd',
    firstDay: 1,
    isRTL: false,
    showMonthAfterYear: false,
    yearSuffix: ''};
  $.datepicker.setDefaults($.datepicker.regional['nl']);
  $(".datepicker").datepicker();
  
  // init fancybox for iframe
  $(".fancyIframe").fancybox({
    'transitionIn'    : 'elastic',
    'transitionOut'    : 'elastic',
    'type'        : 'iframe',
    'titleShow'      : false,
    'opacity'      : true,
    'padding'      : 0,
    'width'      : 700,
    'height'      : 700
  });
  $(".fancyIframePreview").fancybox({
    'transitionIn'    : 'elastic',
    'transitionOut'    : 'elastic',
    'type'        : 'iframe',
    'titleShow'      : false,
    'opacity'      : true,
    'padding'      : 10,
    'width'      : 450,
    'height'      : 370,
    'autoScale'  : false,
    'scrolling' : 'no'
  });
    $(".fancyZonnebril").fancybox({
    'transitionIn'    : 'elastic',
    'transitionOut'    : 'elastic',
    'type'        : 'iframe',
    'titleShow'      : false,
    'opacity'      : true,
    'padding'      : 10,
    'width'      : 530,
    'height'      : 380,
    'autoScale'  : false,
    'scrolling' : 'no'
  });
    
  $(".fancyIframeRoute").fancybox({
    'transitionIn'    : 'elastic',
    'transitionOut'    : 'elastic',
    'type'        : 'iframe',
    'titleShow'      : false,
    'opacity'      : true,
    'padding'      : 0,
    'width'      : 990,
    'height'      : 660
  });
  
  
  $(".fancyIframeWide").fancybox({
    'transitionIn'    : 'elastic',
    'transitionOut'    : 'elastic',
    'type'        : 'iframe',
    'titleShow'      : false,
    'opacity'      : true,
    'padding'      : 0,
    'width'      : 1024,
    'height'      : 700
  });
  $(".fancyIframeRefresh").fancybox({
    'transitionIn'    : 'elastic',
    'transitionOut'    : 'elastic',
    'type'        : 'iframe',
    'titleShow'      : false,
    'opacity'      : true,
    'padding'      : 0,
    'width'      : 700,
    'height'      : 700,
    'onClosed'      : function(){location.reload(true);}
  });
  $(".fancyImage").fancybox({
    'transitionIn'    : 'elastic',
    'transitionOut'    : 'elastic',
    'titleShow'      : false,
    'opacity'      : true,
    'padding'      : 0
  });
  $(".fancyImageBig").fancybox({
    'transitionIn'    : 'elastic',
    'transitionOut'    : 'elastic',
    'height': '90%',
    'width': '90%',
    'titleShow'      : false,
    'opacity'      : true,
    'padding'      : 0
  });
  
  
});

function debug(html){
  if(!$('#debugdiv')){
    $(body).append($('<div id="debugdiv"></div>'));  
  }
  $('#debugdiv').append(html+'<br/>');
}

function stripHTML(html) {
  return html.replace(/<\/?[^>]+>/gi, '');  
}

function jAlert(map){
  if($('#message_box').length==0){
    $('body').append($('<div id="message_box" title="" class="hide"></div>'));
  }
  $('#message_box').attr('title', map['title']);
  $('#message_box').html(map['content']);
  var options = {  modal:true,
                   buttons: {
                     'Ok': function() {
                       $(this).dialog('close');
                     }
                   }};
  if(map['href']){
    options['buttons'] = {'Ja': function() {
      $(this).dialog('close');
      $(location).attr('href',map['href']);
    },'Nee': function() {
      $(this).dialog('close');
    }};
  }
  $('#message_box').dialog(options);
  if(map['returnfalse']){
    return false;
  }  
  
  
  
  
}

/************************************************************************/
/*************************** Hulp functies**********************************/
/************************************************************************/
/* getElement
Description:  Function returns the object if exists else alerts an error message
Date:    2009-09-17
Call:       getElement("id of an element");
*/
function getElement(id) {
  if (document.getElementById(id)) {
    return document.getElementById(id);
  } else {
    return false;
  }
}
/* initImp
Description:  Functions inits imp focus and imp text
Date:    2009-09-17
Call:       initImp=inpFocus("id of an element", standaard text);
*/
function initImp(obj,stdText){
  obj.onfocus = function(){inpFocus(obj,stdText)};
  obj.onblur = function(){inpBlur(obj,stdText)};
}

/* inpFocus
Description:  Functions removes default text in an textbox on focus
Date:    2009-09-17
Call:       onfocus=inpFocus("id of an element");
*/
function inpFocus(obj, stdText) {
  if (obj.value == stdText) {
    obj.value = '';
  }
}

/* inpBlur
Description:  Adds default tekst if box is empty
Date:    2009-09-17
Call:       onblur=inpBlur("id of an element");
*/
function inpBlur(obj, stdText) {
  if (obj.value == '') {
    obj.value = stdText;
  }
} 
