/**
 * 
 */


function getYoutubeVideoID(url) {
    // img for an video
    // http://img.youtube.com/vi/[idhere]/0.jpg
    var id = getParameterByName('v', url);
    return id;
}

function getParameterByName(name, url) {
  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regexS = "[\\?&]"+name+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var results = regex.exec(url || window.location.href);
  if( results == null )
    return "";
  else
    return decodeURIComponent(results[1].replace(/\+/g, " "));
}

function getCopyRight(id) {
	var d=new Date();
	$(id).html('&copy; ' +d.getFullYear()+' B.V. Algemeen Nederlands Persbureau ANP');
}

function getAndRenderTwitterFeed(userName, containerId, itemsToShow){
    jQuery(containerId).tweet({
        count: itemsToShow,
        username: userName,
        ago_prefix: '',
        ago_seconds: ' seconden geleden',
        ago_minutes: ' minuten geleden',
        ago_hours: ' uren geleden',
        ago_days: ' dagen geleden',
        ago_one_minute: '&eacute;&eacute;n minuut geleden',
        ago_one_hour: '&eacute;&eacute;n uur geleden',
        ago_one_day: '&eacute;&eacute;n dag geleden',
        loading_text: 'Tweets worden geladen',
        ago_render_links: false,
        show_via: true
    });
}

function addYoutubeMovie(movieUrl,containerId, ytPlayerId, w, h) {
    var videoID = getYoutubeVideoID(movieUrl);
    jQuery(containerId).tubeplayer({
        width: w || 281, // the width of the player
        height: h || 185, // the height of the player
        allowFullScreen: "true", // true by default, allow user to go full screen
        initialVideo: videoID, // the video that is loaded into the player
        playerID: ytPlayerId, // the ID of the embedded youtube player
        preferredQuality: "default", // preferred quality: default, small, medium, large, hd720
        onPlayerPlaying: function(){
            jQuery('.cover', $(containerId).parent()).hide();
        },
        onPlayerPaused: function(){
            jQuery('.cover', $(containerId).parent()).show();
        }
    });
}

var loading = {} ;
function getAndRenderRssFeed(feedUrl, containerId, itemsToShow){
	if ( loading[feedUrl])
		return  ;
	loading[feedUrl] = true ;
    jQuery.getFeed({
        url: feedUrl,
        success: function(feed){
            var root = jQuery(containerId);
            $(root).empty();
            var item;
            for (var i=0; i<itemsToShow; i++){
                item = feed.items[i];
                var feeditem =
                        $('<div class="feeditem"></div>')
                        	.append($('<div class="title"></div>')
                        				.append($('<span class="ellipsis_text"/>').html(item.title))
                                   )
                            .append($('<div class="desc">')
                            			.append($('<span class="ellipsis_text"/>').html(item.description))
                                   )
                            .append($('<a class="more" target="_blank"/>').attr({href: item.link}).text('lees meer'))
                            .append($('<span class="timestamp"/>').text(GetDutchDate(item.updated)))
                            .append($('<div class="clear"></div>'));

                //if (item.picture)
                //	$(feeditem).append($('<img>').attr({alt: item.title, src: item.picture}));

                $(root).append(feeditem);
                
            }
            $('.title', root).ThreeDots({max_rows:1, whole_word: false});
            $('.desc', root).ThreeDots({max_rows:2, whole_word: false});

        },
        error: function(){
                jQuery(containerId).text('Fout bij het laden van de rss feed.');
        }
    });
	
    function GetDutchDate(stamp){
        var s = new Date(stamp), n = new Date();
        var y=s.getFullYear(), m=s.getMonth(), d=s.getDate();
        var time = s.getHours() + ":" + s.getMinutes();
        if (n.getMonth() == m && n.getFullYear() == y ){
            if (n.getDate() == d)
                return "Vandaag, " + time;
            else if (n.getDate()-1 == s.getDate())
                return "Gisteren, " + time;
        }
        var days = ['Zondag', 'Maandag', 'Dinsdag', 'Woensdag', 'Donderdag', 'Vrijdag', 'Zaterdag'];
        var months = ['Jan', 'Feb', 'Mrt', 'Apr', 'Mei', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dec'];
        return days[s.getDay()] + " " + d + " " + months[m] + ", "+ time;
    }
}

function handleSearchBox(){
    $('#headersearchcontainer input').live( 'click',function() {
        if ( $(this).css('color') == 'rgb(211, 211, 211)' || $(this).css('color') == 'lightgrey' )
            $(this).css('color', 'black').val('') ;
    }) ;
    $('#headersearchcontainer input').blur( function() {
        if ( $(this).val() == '' )
            $(this).css('color', 'lightgrey').val('Zoekterm') ;
    }) ;
    $('#headersearchcontainer input').trigger('blur') ;
}

function handleTopMenu(){
    // suckerfish menu
    $('#nav > li').hover(function() { // handlerIn
        $(this).addClass('sfhover');
    }, function() { // handlerOut
        $(this).removeClass('sfhover');
    });
}

/**
 * Handle the tabs mouseover and out
 */
function handleTabs(){
    $('#tabbox .tableft a:last-child')
        .mouseover(function(){
            $(this).parent().removeClass('tableft').addClass('tabright');
        })
        .mouseout(function(){
            $(this).parent().removeClass('tabright').addClass('tableft');
        });
        
    $('#tabbox .tabright a:first-child')
        .mouseover(function(){
            $(this).parent().removeClass('tabright').addClass('tableft');
        })
        .mouseout(function(){
            $(this).parent().removeClass('tableft').addClass('tabright');
        });
}


/**
 * Document ready
 */
jQuery(document).ready(function() {
    // searchbox hint
    handleSearchBox();

    handleTopMenu();
}) ;

/*!
 * jQuery xmlDOM Plugin v1.0
 * http://outwestmedia.com/jquery-plugins/xmldom/
 *
 * Released: 2009-04-06
 * Version: 1.0
 *
 * Copyright (c) 2009 Jonathan Sharp, Out West Media LLC.
 * Dual licensed under the MIT and GPL licenses.
 * http://docs.jquery.com/License
 */
(function($) {
    // IE DOMParser wrapper
    if ( window['DOMParser'] == undefined && window.ActiveXObject ) {
            DOMParser = function() { };
            DOMParser.prototype.parseFromString = function( xmlString ) {
                    var doc = new ActiveXObject('Microsoft.XMLDOM');
            doc.async = 'false';
            doc.loadXML( xmlString );
                    return doc;
            };
    }

    $.xmlDOM = function(xml, onErrorFn) {
            try {
                    var xmlDoc      = ( new DOMParser() ).parseFromString( xml, 'text/xml' );
                    if ( $.isXMLDoc( xmlDoc ) ) {
                            var err = $('parsererror', xmlDoc);
                            if ( err.length == 1 ) {
                                    throw('Error: ' + $(xmlDoc).text() );
                            }
                    } else {
                            throw('Unable to parse XML');
                    }
            } catch( e ) {
                    var msg = ( e.name == undefined ? e : e.name + ': ' + e.message );
                    if ( $.isFunction( onErrorFn ) ) {
                            onErrorFn( msg );
                    } else {
                            $(document).trigger('xmlParseError', [ msg ]);
                    }
                    return $([]);
            }
            return $( xmlDoc );
    };
})(jQuery);


