//<![CDATA[
var bSortAsc = true;
var bFirstTime = true;

function sortDaFokkaVer2(strParentId,iNumOfItems) {
	//Get list of courses
	
	var objCourses = document.getElementById(strParentId).getElementsByTagName("div");
	var iNumOfCourses = objCourses.length;
	var arrCourses = new Array(iNumOfCourses);
	var arrCourseDates = new Array(iNumOfCourses);
	var arrSortedCourseDates = new Array(iNumOfCourses);
	var arrSortedHTML = new Array(iNumOfCourses);

	// Fill arrays with date (for sorting) and HTML 
	for (i=0; i < iNumOfCourses; i++) {
		arrCourseDates[i] = transformDate(objCourses[i].id);
		arrSortedCourseDates[i] = transformDate(objCourses[i].id);		
		arrCourses[i] = '<div id="'+ objCourses[i].id +' '+ parseInt(arrSortedCourseDates[i],10) +'">'+ objCourses[i].innerHTML +'<\/div>';
	}
	
	// Sort dates
    if (bFirstTime) {
		arrSortedCourseDates.sort(compare);
		bFirstTime = false;
	} else {
	    if (bSortAsc) {
		    arrSortedCourseDates.sort(comparerev);
		    bSortAsc = false;	
	    } else {
		    arrSortedCourseDates.sort(compare);
		    bSortAsc = true;
	    }
	}
	
	// Sort the HTML
	for (x=0; x < arrSortedCourseDates.length; x++) {
		for (y=0; y < arrCourseDates.length; y++) {
			if (arrSortedCourseDates[x] == arrCourseDates[y]) {
				arrSortedHTML[x] = arrCourses[y];
				break;
			}
		}
	
	}
	
	// Replace old html. Use JQuery library
	$("#"+strParentId).empty();           

    //Only list a given number of items
    var iNumberOfItems;
    if (parseInt(iNumOfItems,10) > 0) {
        iNumberOfItems = iNumOfItems
    } else {
        iNumberOfItems = arrSortedHTML.length;
    }
    
    for (a=0; a < iNumberOfItems; a++)
    {
    	$("#"+strParentId).append(arrSortedHTML[a]);
    	//Add a row divider
    	if ((parseInt(iNumOfItems,10) > 0) && (a != 0 && (a-1 % 2) == 0)) {
        	$("#"+strParentId).append('<span class="newRow">&nbsp;</span>');
    	} 
    }
	
}

//{}
//[]

function transformDate(strDate) {
	var regExPattern = /^(\d\d?)[\/\.-](\w{3}?)[\/\.-]((\d\d)?\d\d)[\/\.-](\d+)$/;
	var match = strDate.match(regExPattern);
    var d = match[1]; var m = match[2]; var y = match[3];  var c = match[5];
    switch (m.toLowerCase())
    {
    case 'jan':
    	m = '01';
    	break;
    case 'feb':
    	m = '02';
    	break;
    case 'mar':
    	m = '03';
    	break;
case 'mär':
    	m = '03';
    	break;
    case 'apr':
    	m = '04';
    	break;
    case 'may':
    	m = '05';
    	break;
    case 'mai':
    	m = '05';
    	break;
    case 'jun':
    	m = '06';
    	break;
    case 'jul':
    	m = '07';
    	break;
    case 'aug':
    	m = '08';
    	break;
    case 'sep':
    	m = '09';
    	break;
    case 'oct':
    	m = '10';
    	break;
    case 'okt':
    	m = '10';
    	break;
    case 'nov':
    	m = '11';
    	break;
    case 'dec':
    	m = '12';
    	break;
    case 'des':
    	m = '12';
    	break;
case 'dez':
    	m = '12';
    	break;
    default:
    	m = '99';
    }
    if (d.length == 1) d = '0'+d;
    if (y.length == 2) y = '20'+y;
    if (c.length == 1) c = '0'+c;
    
    return y+m+d+c;
}

// Used to help array sort numbers correctly
function compare(a,b){
    return a-b;
}
function comparerev(a,b){
    return b-a;
}

// Sort on onload
function addLoadEvent(func) { 
	var oldonload = window.onload; 
	if (typeof window.onload != 'function') { 
	    window.onload = func; 
	} else { 
	  	window.onload = function() { 
	  		if (oldonload) { 
	        	oldonload(); 
	      	} 
	      	func(); 
	    } 
	} 
} 
//]]>