var RMO = {};
RMO.FullScreenCanvas = function(spec) {
    var that = {};
    $.extend(that, spec);

    that.$el = $("<canvas>")
	.attr({width: $(window).width(),
	       height:$(window).height()});

    that.ctx = that.$el[0].getContext('2d');

    return that;
};

RMO.drawPortrait = function(path) {
    var ow = $("#contact").width();
    var oh = $("#contact").height();
    var cw = $(window).width();
    var ch = $(window).height();
    if(cw > ow && ch > oh) {
	var $img = $("<img>", {
	    src: path,
	    width: Math.min(cw-ow,ch-oh),
	    height:Math.min(cw-ow,ch-oh)
	})
	    .hide()
	    .css({
		position: "absolute",
		left: ow,
		top: oh
	    })
	    .appendTo("body")
	    .load(function(ev) {
		$(this).fadeIn(2000);
	    });
    }
};

RMO.GalleryLink2d = function(spec) {
    var that = {
	thumb: '',
	rows: 0,
	cols: 0,
	url: "",
    };
    $.extend(that, spec);

    that.$el = $("<img>", {
	src: that.thumb
    })
	.click(function(ev) {
	    window.location = that.url + "#" + Math.floor(ev.layerY/that.item_h) + "," + Math.floor(ev.layerX/that.item_w);
	})

    return that;
}

RMO.FooMarx = function() {
    var that = {};

    that.$el = $('<div>', {id: "foodiv"})
	.css({width: 200,
	      height: 200,
	      position: "absolute",
	      textAlign: "right",
	      right: 0})	      
	.append($('<a>', {href: "http://foomarx.kom.uni.st/"})
		.append($("<foomarx>", {id: "foomarx"})));
    
    that.refresh = function() {
	$('<script>', {src: "http://foomarx.kom.uni.st/api?format=embedjs&id=foomarx&rand="+Math.random()})
	    .appendTo(that.$el); 
    };

    that.start = function() {
	window.setInterval(that.refresh, 750);
    };

    return that;
}

var cvs;
var $img;
$(document).ready(function() {
    RMO.drawPortrait('jpg/a.jpg');

    RMO.GalleryLink2d({
	thumb: 'jpg/trains.jpg',
	rows:5,
	cols:23,
	item_w:200/23,
	item_h:200/5,
	url: 'http://web.rmozone.com/snapshots/2011/09/multistop/fiveup.html'
    }).$el
	.css({
	    position: "absolute",
	    zIndex: 2,
	    bottom:0})
	.appendTo($('body'));

    var fm = RMO.FooMarx();
    fm.$el.appendTo($(document.body));
    fm.start();
});
