/***
 * jTruncate - Text Truncation for jQuery
 * http://blog.jeremymartin.name/2008/02/jtruncate-text-truncation-for-jquery.html
 */
(function($){$.fn.jTruncate=function(h){var i={length:300,minTrail:20,moreText:"more",lessText:"less",ellipsisText:"...",moreAni:"",lessAni:""};var h=$.extend(i,h);return this.each(function(){obj=$(this);var a=obj.html();if(a.length>h.length+h.minTrail){var b=a.indexOf(' ',h.length);if(b!=-1){var b=a.indexOf(' ',h.length);var c=a.substring(0,b);var d=a.substring(b,a.length-1);obj.html(c+'<span class="truncate_ellipsis">'+h.ellipsisText+'</span>'+'<span class="truncate_more">'+d+'</span>');obj.find('.truncate_more').css("display","none");obj.append('<div class="clearboth">'+'<a href="#" class="truncate_more_link">'+h.moreText+'</a>'+'</div>');var e=$('.truncate_more_link',obj);var f=$('.truncate_more',obj);var g=$('.truncate_ellipsis',obj);e.click(function(){if(e.text()==h.moreText){f.show(h.moreAni);e.text(h.lessText);g.css("display","none")}else{f.hide(h.lessAni);e.text(h.moreText);g.css("display","inline")}return false})}}})}})(jQuery);

/***
 * Three little icons in header
 */
var images = [];
images[0] = '/static/project/ploegsma/img/star.png';
//images[1] = '/static/project/ploegsma/img/loupe.png';
//images[2] = '/static/project/ploegsma/img/enveloppe.png';

var url = [];
url[0] = 'ploegsma.nl';

var Ploegsma = {
	init: function() { 
		var bannerDiv = document.getElementsByClassName('banner')[0];
		
		// retreive additional search link
		var hrefDiv = bannerDiv.getElementsByTagName('a');
		for (var i = 0; i < hrefDiv.length; i++) {
			if(hrefDiv[i].title.toLowerCase()=='zoeken') var y = i;
		}
		// get HREF from additional search link
		//url[1] = hrefDiv[y].href;
		
		// hide additional search link
		//hrefDiv[y].style.display='none'
		
		// add 3 additional images to the header
		var additionalDiv = Library.createNewHTML('div', 'additional', '', '', bannerDiv)
		for (var i = 0; i < images.length; i++) {
			var linkDiv = Library.createNewHTML('a', '','', '#', additionalDiv)
			Library.createNewHTML('img', '','', images[i], linkDiv)
			// add bookmark
			if (i==0) linkDiv.onclick = function(){ 

				if (document.all){
					window.external.AddFavorite(self.location,document.title);
				}
				else if (window.sidebar){
					window.sidebar.addPanel(document.title,self.location,'');
				}

			}
			// add search link
			// if (i==1) linkDiv.onclick = function(){ window.location = url[1]; } //removed search
			// open form div
			// if (i==2) linkDiv.onclick = function(){ Library.removeClass(document.getElementsByClassName('form popup hide')[0],'hide') } //functionality is parked
		}
	
		// close button form div
		//document.getElementById('form-close-button').onclick = function(){ Library.addClass(document.getElementsByClassName('form popup')[0],'hide') }

	}
}

// library functions
var Library = {
	createNewHTML: function(tag, className, id, innerHTML, parent){
		var createDiv = document.createElement(tag);
		if(className) createDiv.className = className;
		if(innerHTML){  
			if (tag=="img"){
				createDiv.src = innerHTML;
			}else if (tag=="input"){
				createDiv.type = innerHTML;
			}else if (tag=="a"){
				createDiv.href = innerHTML;
			}else{
				createDiv.innerHTML = innerHTML
			}
		}
		if(id) createDiv.id = id;
		parent.appendChild(createDiv);	
		return createDiv;
	},
	addClass: function(o, c) {
		this.removeClass(o, c);
		return o && (o.className += (o.className.length > 0 ? ' ' : '') + c);
	},
	removeClass: function(o, c) {
		return o && (o.className = o.className.replace(new RegExp('^' + c + '\\b\\s*|\\s*\\b' + c + '\\b', 'g'), ''));
	}
}
document.getElementsByClassName = function (needle){
    var s = document.getElementsByTagName('*'), i = s.length, r = [], e, c;
    needle = ' ' + needle + ' ';
    while (i--){
        e = s.item(i);
        if (e.className){
            c = ' ' + e.className + ' ';
            if (c.indexOf(needle) != -1) r.push(e);
        }
    }
    return r;
}

$(document).ready(function() {
	 Ploegsma.init();
	 $("body.website .books-overview.category p.teaser").jTruncate({  
		length: 75,  
		minTrail: 10,  
		moreText: "",  
		lessText: "",  
		ellipsisText: "..."
	});
});
