
// <SETTINGS>
var settings = new Array();
	settings["submitLogConfirm"] = "Weet je zeker dat alle gegevens kloppen?";
	settings["submitLogAlert"] = "Je hebt geen titel ingevuld, deze is verplicht!";
	settings["cancelLogConfirm"] = "Gegevens worden NIET opgeslagen! Weet je het zeker dat wil annuleren?";
	settings["deleteLogConfirm"] = "Weet je zeker dat je het log wil verwijderen?";
	settings["maxChars_counter"] = 720;
	settings["deleteReactionConfirm"] = "Weet je zeker dat je de reactie wil verwijderen?";
// </SETTINGS>

	
	

function generateTextFrom(org,target,maxchars){
	if( $(target).value.length>0) {
		if(confirm("Weet u het zeker? De huidge tekst zal vervangen worden?")){
			 $(target).value = $(org).innerText.substring(0,maxchars)
		}else{}
	}else{
			$(target).value = $(org).innerText.substring(0,maxchars)
	}
	
};

function dsw_vote(oid,type,wid){
	if(getCookie("voted_"+oid)!="true"){
		url="include/weblog_doVote.jsp?objectid="+oid+"&type="+type+"&parentweblogid="+wid
		new Ajax.Updater("vote_"+oid, url, {asynchronous:true, evalScripts:true, method:'post'} );
		setCookie("voted_"+oid,"true");
	}
	//delCookie ("voted_"+oid) 
};

function submitReaction(form,target){
	oid = form["objectid"].value;
	name = form["name"].value;
	reaction = form["reaction"].value;
	reaction = reaction.replace("\n","<br/>");
	
	title = form["title"].value;
	parentweblogid = form["parentweblogid"].value;
	url="include/weblog_doReact.jsp?objectid="+oid+"&title="+title+"&reaction="+reaction+"&name="+name+"&parentweblogid="+parentweblogid
	
	new Ajax.Updater(target, url, {asynchronous:false, evalScripts:true, method:'post'} );
};

function deleteReaction(target,rid,oid){
	if(confirm("Weet u zeker dat u deze reactie wil verwijderen?")){
		url="include/weblog_deleteReact.jsp?objectid="+oid+"&rid="+rid
		alert(url)
		new Ajax.Updater(target, url, {asynchronous:false, evalScripts:true, method:'post'} );
	}
};

////
function setCookie (name, value) {
		var expdate = new Date ();
        expdate.setTime (expdate.getTime() + (1000 * 60 * 60 * 24 * 31)); // 1 maand
		
      	document.cookie = name + "=" + escape (value) + 
   		"; expdate=" + expdate.toGMTString() +  "; path=/";
}                                                    

function getCookie (name) {
    var dcookie = document.cookie; 
    var cname = name + "=";
    var clen = dcookie.length;
    var cbegin = 0;
        while (cbegin < clen) {
        var vbegin = cbegin + cname.length;
            if (dcookie.substring(cbegin, vbegin) == cname) { 
            var vend = dcookie.indexOf (";", vbegin);
                if (vend == -1) vend = clen;
            return unescape(dcookie.substring(vbegin, vend));
            }
        cbegin = dcookie.indexOf(" ", cbegin) + 1;
            if (cbegin == 0) break;
        }
    return null;
    }

function delCookie (name) {
    var expireNow = new Date();
    document.cookie = name + "=" +
    "; expires=Thu, 01-Jan-70 00:00:01 GMT" +  "; path=/";
    }
	
function submitLog(form){
	if(!form.elements['objectname'].value == ""){
		if(confirm(settings["submitLogConfirm"])){
			form.submit();
		}
	}else{
		alert( settings["submitLogAlert"]);
	}
	return false;
}

function deleteLog(form,pid){
	if(!form.elements['objectname'].value == ""){
		if(confirm(settings["deleteLogConfirm"])){
			form.action.value = "delete";
			$(form).successpage.value = $(form).successpage.value.replace(/objectid=(.*)&/,'objectid='+pid+'&');
			//alert($(form).successpage.value)
			form.submit();
		}
	}
	return false;
}

function cancelLog(url,target){
	if(confirm(settings["cancelLogConfirm"])){
		window.open(url,target);
	}
	return false;
}
	
	
function toTimestamp(from,to,stamp){
	from = $(from);
	to = $(to);
	d = $(from).value.split("-");
	
	nd = new Date();
	nd.setDate(d[0])
	nd.setMonth(d[1])
	nd.setFullYear(d[2])
	nd.setHours(0)
	nd.setMinutes(0)
	nd.setSeconds(1)
	
	if(stamp=="yyyyMMdd"){
		dd = ( (d[0])>9 ) ? nd.getDate() : "0"+nd.getDate() ;
		mm = ( (d[1]-1)>9 ) ? nd.getMonth() : "0"+nd.getMonth() ;
		to.value = nd.getYear()+""+mm+""+dd
	}else{
		//to.value = Math.round((nd.getTime()/1000),0)
		to.value = Math.round((nd.getTime()),0)
	}
}

function period(from,to){
	from = $(from);
	to = $(to);
	
};
	
var charcounter= Class.create();

charcounter.prototype = {
	initialize : function(element) {
		this.elements = document.getElementsByClassName(element);
		var options = Object.extend({}, arguments[1] || {});
		this.options = options;
		for(i=0;i<this.elements.length;i++){
			this.element = this.elements[i]
			this.proces();
		}
	},
	
	proces: function(){
		if(this.element.value.length<this.options.maxlength){
			this.element.style.color ='red';
		}
	}
	
}

function textCounter(field, countfield, maxlimit) {
	field = $(field);
	if($(field)){
	id = 'charcount_'+field.name
	if (field.value.length > maxlimit) {
		field.value = field.value.substring(0, maxlimit);
		if($(id)){$(id).innerHTML = maxlimit - field.value.length;}
	}else{
		if($(id)){ $(id).innerHTML = maxlimit - field.value.length;}
		else{
			//new Insertion.Before(field,"<div class='textarea_ counter' id='"+id+"'>init...</div>");
			//$(id).innerHTML = maxlimit - field.value.length;
		}
	}
	}
}

/*
	Does datepicker initialize
*/		
function setCurrent(ev,id){
		el_dd = "date-cd-dd"
		el_mm = "date-cd-mm"
		el_yy = "date-cd"
		
		// trick to activate sync(); focus seems to redirect to first element (day) (unconfirmed)
		Event.observe($(el_dd),'focus',dateSync.bindAsEventListener(this,id),false)
		Event.observe($(el_dd),'change',dateSync.bindAsEventListener(this,id),false)
		Event.observe($(el_mm),'change',dateSync.bindAsEventListener(this,id),false)
		Event.observe($(el_yy),'change',dateSync.bindAsEventListener(this,id),false)
		
		//load
		if(document.getElementById(id)){
			// check if there is a date else set and get current
			now = new Date();
			yyyy = now.getUTCFullYear();
			mm = (now.getMonth()<10) ? 0+""+(now.getMonth()+1) : (now.getMonth()+1);
			dd = (now.getDate()<10) ? 0+""+now.getDate() : now.getDate();
			nowstr = yyyy+""+mm+""+dd
			
			cd = (document.getElementById(id).value!="" ) ? document.getElementById(id).value : nowstr ;
			document.getElementById(id).value = cd
			document.getElementById(el_dd).value = document.getElementById(id).value.substring(6,8)
			
			document.getElementById(el_mm).value = document.getElementById(id).value.substring(4,6)
			document.getElementById(el_yy).value = document.getElementById(id).value.substring(0,4)
			
		}
		return false;
}
/*
		does datepicer sync on change
*/
function dateSync(ev,id){
		el_dd = "date-cd-dd"
		el_mm = "date-cd-mm"
		el_yy = "date-cd"
		
		// make sure double figures
		$(el_dd).value = ($(el_dd).value.length==1) ? "0" +$(el_dd).value : $(el_dd).value ;
		$(el_mm).value = ($(el_mm).value.length==1) ? "0" +$(el_mm).value : $(el_mm).value ;
		
		//
		new_dsmpublishdate_str = $(el_yy).value+""+$(el_mm).value+""+$(el_dd).value
		$(id).value = new_dsmpublishdate_str;
}			

/*
	MANAGER MENU
*/

sfHover = function(ev,el) {
	//alert(0);
	if($(el)){
		var sfEls = document.getElementById(el).getElementsByTagName("LI");
		for (var i=0; i<sfEls.length; i++) {
			sfEls[i].onmouseover=function() {
				$(this).addClassName("sfhover");
			}
			sfEls[i].onmouseout=function() {
				$(this).removeClassName("sfhover");
			}
		}
	}
}
Event.observe(window,'load',sfHover.bindAsEventListener(this,'weblog-menu'),false);


