(function($){
  
  $('#videolist').each(function(){
      var box = $(this).find('> .content'),
          objectTempl = '<span id="video" class="videocontainer">' +
                        '  <object width="640" height="376">' +
                        '    <param name="movie" value="%{vidurl}"></param><param name="wmode" value="transparent"><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param>' +
                        '    <embed src="%{vidurl}" type="application/x-shockwave-flash" wmode="transparent" allowscriptaccess="always" allowfullscreen="true" width="640" height="376"></embed>' +
                        '  </object">' +
                        '</span>',
          videoUrl,
          videoTitle,
          videoTitle,
          elm;

    
      box.find('a')
            .bind('click', function (e) {
                  $('#video').remove();
                  
                  elm = $(this),
                  videoUrl = '/media/videos/mediaplayer.swf?file=' + elm.attr('href') + '&autostart=true&bufferlength=3',
                  videoTitle = elm.text(),
                  videoText = elm.closest('.item').find('.summary').text();
                      
                  box.prepend(
                        $.inject(objectTempl, {
                              vidurl : videoUrl,
                              vidTitle  : videoTitle,
                              vidText : videoText
                            })
                        )

                  return false;
                })
            .filter(':first').trigger('click');
    });

  $('#noContentFlashHack').remove();
  $('.pagestyle').fontsizer();
  $('form').autoValidate();

})(jQuery);


if(window.tabSwitcher) {
  tabSwitcher.init();
}



Object.merge(window.DOM, {

  parent : function ( n, tn ) 
  {
    tn = (!tn || '*' === tn) ? '' : tn.uc();
    var n = n.parentNode;
    while (n) {
      if (!tn || n.nodeName === tn) { return n; }
      n = n.parentNode;
    }
  },
  elmAfter : function (n, tn, M)
  {
    var m = (M || 'next') + 'Sibling';
    tn = (!tn || '*' === tn) ? '' : tn.uc();
    while (n = n[m]) {
      if (n.nodeType == 1 /*Element*/ && (!tn || tn == n.nodeName)) {
        return n;
      }
    }
  },
  elmBefore : function (n, tn) { return DOM.elmAfter(n, tn, 'previous'); }

});


(function(){

  var foldernav = DOM.get('div.foldernav')[0];
  var hideClass = 'hidden';
  var openClass = 'open';

  if(foldernav)
  {
    // init
    DOM.addClass(foldernav, 'foldernav-active');

    // transform spans to links where subnav exists
    var spans = Array.from(DOM.get('span', foldernav));
    for (var i=0, l=spans.length; i<l; i++) {
      
      // 
      var s = spans[i];
      var ul = DOM.elmAfter(s, 'ul');

      if (ul && s.nodeName != 'A') {
        // hide sublevels
        DOM.addClass(ul, hideClass);  
        
        var a = DOM.node('<a href="#">'+ s.innerHTML +'</a>');
        DOM.replaceNode( a, s );
        
        // 
        Event.add(a, 'click', function(e) {
          
          var target = e.currentTarget;
          var context = DOM.parent(target, 'ul');
          
          // remove any open subnavs
          var opensubs = DOM.get('ul', context);
          for (var i=0, l=opensubs.length; i<l; i++) {
            DOM.addClass(opensubs[i], hideClass);
          }
          var opensubs = DOM.get('li.'+openClass, context);
          for (var i=0, l=opensubs.length; i<l; i++) {
            DOM.removeClass(opensubs[i], openClass);
          }
          
          // open subnav in this context
          var ul = DOM.elmAfter(target, 'ul');
          DOM.removeClass(ul, hideClass);

          var li = DOM.parent(target, 'li');
          if (li) {
            DOM.addClass(li, openClass);
          }
          
          document.body.className += " WEC";

          return false;
        
        });
        
      }
      
    }
  }
  
})();


(function(){

  // Filelist items date fix

  var fileItms = DOM.get('div.filelist div.thumb a');
  
  for(var i = 0; i < fileItms.length; i++)
  {
    var regex = /(\d|\d\d)(.|\/)(\d|\d\d)(.|\/)(\d{4}|\d\d)/;
    var date = fileItms[i].innerHTML.match(regex, '')[0];
    var newTxt = fileItms[i].innerHTML.replace(regex, '');
    
    fileItms[i].innerHTML = '<span class="meta">' + date + '</span>' + newTxt;
  }

})();
