/**
 * @description	bookmark link and social bookmarks
 * @author georgios
 * @version       0.1
 * @date          02/04/08
 */



var bookMark = {

	posid: '',
	
	init: function(){
	
		// HTML erzeugen
		var boma = Element.extend(document.createElement('div'));
		boma.id = 'hwBookMark';
		boma.addClassName('bookMark');
		boma.setStyle({
			display: 'none',
			position: 'absolute'
		});
		
		document.body.appendChild(boma);
		
		var bookMarkEntrys = "";
		var bookMarkURL = encodeURIComponent(location.href);
		var bookMarkTitle = encodeURIComponent(document.title);
		
		bookMarkEntrys = '<table style="height:100%;width:100%;">';
		
		var standardBookMark = '' +
		'<tr><td><a href="#" onclick="bookMark.hide();bookMark.favbookmark()">' +
		'<div style="background:url(' +
		rootPath +
		'/admin/snippet/bookmark/pics/favorites.gif) no-repeat ;padding-left:25px;"> Favorites</div></a></td></tr>' +
		'<tr><td style="text-align:right"><img src="' +
		rootPath +
		'/admin/snippet/bookmark/pics/close_btn_normal.png" alt="close" onclick="bookMark.hide();" /></td></tr>';
		
		if (typeof(customBookMark) == "undefined") 
			bookMarkEntrys += standardBookMark;
		else 
			bookMarkEntrys += customBookMark;
		
		bookMarkEntrys += '</table>';
		
		$('hwBookMark').innerHTML = bookMarkEntrys;
	},
	
	show: function(inputField, bmtop, bmleft){
	
		// wenn Objekt bereits sichtbar und an alter position dann wieder verstecken
		if ($('hwBookMark').visible() && this.posid == inputField) {
			this.hide();
			return;
		}
		this.posid = inputField;
		
		if (typeof(bmtop) == "undefined") 
			bmtop = 0;
		if (typeof(bmleft) == "undefined") 
			bmleft = 0;
		
		// am aufrufenden Element positionieren
		var pos = $(inputField).viewportOffset();
		$('hwBookMark').setStyle({
			top: (pos[1] + bmtop) + 'px',
			left: (pos[0] + bmleft) + 'px'
		});
		
		if (!$('hwBookMark').visible()) 
			$('hwBookMark').show();
	},
	
	hide: function(){
		$('hwBookMark').hide();
	},
	
	favbookmark: function(){
	
		url = window.location.href.split('?')[0];
		title = document.title;
		
		if (window.sidebar && window.sidebar.addPanel) // firefox
			window.sidebar.addPanel(title, url, "");
		else 
			if (window.opera && window.print) { // opera
				var elem = document.createElement('a');
				elem.setAttribute('href', url);
				elem.setAttribute('title', title);
				elem.setAttribute('rel', 'sidebar');
				elem.click();
			}
			else 
				if (document.all)// ie
					window.external.AddFavorite(url, title);
	}

}

document.observe('dom:loaded', function() {
	bookMark.init();	
});


