var semester = null;
var nextMovie = null;
var img=null;
var titleDiv=null;
var zeitDiv=null;
this.loaded=function(panel,config) {
    img = $(panel).find("#background");
    titleDiv=$(panel).find("#title span");
    zeitDiv=$(panel).find("#zeit span");
	var semesterString = "";
	if (Date.now() >= Date.UTC(new Date().getFullYear(),4,1) && Date.now() < Date.UTC(new Date().getFullYear(),10,1)) {
		semesterString = "sommer"+new Date().getFullYear();
	} else {
		semesterString = "winter"+new Date().getFullYear();
	}
    $.ajax("https://ufc.tu-dortmund.de/semesters/current.json",{
        async:false
    })
        .done(function(e) {
           semester=e;
        });
}

this.resize=function() {
    titleDiv.parent().textfill({
        maxFontPixels:-1
    });
    zeitDiv.parent().textfill({
        maxFontPixels:-1
    });
}

this.checkShowCondition=function() {
    if (!semester)
        return 0;
    return 5;
}

this.dow = function(d) {
    if (typeof(d)!='number' || d < 0 || d >= 7)
        return undefined;
    return ["So","Mo","Di","Mi","Do","Fr,","Sa"][d];
}
this.getLongMonth = function(month){
    if (typeof(month)!='number' || month < 0 || month >= 12)
        return undefined;
    return ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"][month];
}

this.show=function() {
    var now = new Date().getTime();
    if (!nextMovie || (now > new Date(nextMovie.date).getTime()))
    {
        for (var film in semester){
            film = semester[film];
            if (new Date(film.date).getTime() > now) {
                nextMovie = film;
                console.log("UFC: " + film);
                break;
            }
        }

        img.css("backgroundImage", "url(https://ufc.tu-dortmund.de" + nextMovie.movie.image_url_medium + ")");
        //img.attr("src","https://ufc.tu-dortmund.de" + nextMovie.movie.image_url_medium );
        titleDiv.text(nextMovie.title);
        var d = new Date(nextMovie.date);
        var tag = d.getDate();
        var h = d.getHours();
        var m = d.getMinutes();

        tag = tag < 10 ? "0" + tag : tag;
        h = h < 10 ? "0" + h : h;
        m = m < 10 ? "0" + m : m;
        
        zeitDiv.text(
            this.dow(d.getDay()) + ", " +
            tag + ". " +
            this.getLongMonth(d.getMonth()) + " " +
            d.getFullYear() + " " +
            h + ":" + m
            );
        this.resize();
    }
}