// nastaveni
var pdb_w = 500;
var pdb_h = 500;

// runtime promenne
var pdb_shown = false;
var pdb_init_w = 0;
var pdb_init_h = 0;
var show_loader = false;
var loader_left = null;
var loader_top = null;

function showUpDetail () {
    var pdb = $('pic_detail_box');

    //hiding all select boxes
    var selects = document.getElementsByTagName('select');
    var a_selects = $A(selects);
    a_selects.each(function (node) {
        node.style.visibility = 'hidden';
    });

    pdb.style.top = document.documentElement.scrollTop + 50 + 'px';
    pdb.style.left = '50px';

    Element.show(pdb);

    pdb.style['min-height'] = $('pic_detail_box_img').height + 190 + 'px';
    pdb.style['_height'] = $('pic_detail_box_img').height + 190 + 'px';
    pdb.style['width'] = $('pic_detail_box_img').width + 'px';
}

function hideDetail () {
    // show selects again
    //hiding all select boxes
    var selects = document.getElementsByTagName('select');
    var a_selects = $A(selects);
    a_selects.each(function (node) {
        node.style.visibility = 'visible';
    });

    Element.hide('pic_detail_box');
    pdb_shown = false;
}

function prepareLoaderPosition() {
    var x_top;
    var x_left;
    if (window.innerWidth)
    {
        x_left = window.innerWidth / 2;
        x_top = window.innerHeight / 2;
    }
    else if (document.body)
    {
        x_left = document.body.clientWidth / 2;
        x_top = document.body.clientHeight / 2;
    }
    loader_left = x_left - 60;
    loader_top = x_top + document.body.scrollTop - 100;
}

function showLoader() {
    // overim, zda je povoleno zobrazeni loaderu
    if (show_loader) {
        $('loader').style.top = loader_top + 'px';
        $('loader').style.left = loader_left + 'px';
        Element.show('loader');
    }
}

function hideLoader() {
    Element.hide('loader');
}

function getBaseVoteDialog(img_id) {
    try { var name = names[img_id] } catch (err) { var name = ''  };
    try { var descr = descrs[img_id] } catch (err) { var descr = ''  };
    try { var note = notes[img_id] } catch (err) { var note = ''  };
    $('hlasovani_box').innerHTML = "<strong>Name:</strong> " + name + "<br />";
    $('hlasovani_box').innerHTML += "<strong>Description:</strong> " + descr + "<br />";
    $('hlasovani_box').innerHTML += "<strong>Notes:</strong> " + note + "<br />";

}

function displayPicDetail (srcElement) {
    if (!pdb_shown) {
        prepareLoaderPosition();
        show_loader = true;

        var img_id = srcElement.id.substr(6);
        var detail_src = $('imgId_' + img_id).getAttribute('alt');

        pdb = $('pic_detail_box');

        $('pic_detail_box_img').onload = function (pdb) {
            showUpDetail(pdb);
            show_loader = false;
            hideLoader();
        };

        //zobrazim loader az po casove prodleve
        setTimeout('showLoader()',500);
        $('pic_detail_box_img').src = detail_src;
        getBaseVoteDialog(img_id);
    }
}

//vytvoreni okna pro zobrazeni detailu obrazku
function createPDB () {
    //    var i_iframe = document.createElement('iframe');
    var i_pdb = document.createElement('div');
    var i_hlasovani_box = document.createElement('div');
    var i_img = document.createElement('img');
    var i_note = document.createElement('span');
    i_note.innerHTML = "<span class='note'>Click on the image to close this window</span>";

    i_pdb.id = 'pic_detail_box';
    i_pdb.style.display = 'none';
    i_pdb.style.position = 'absolute';

    i_img.id = 'pic_detail_box_img';
    i_img.setAttribute('alt','Detail obrázku');

    i_hlasovani_box.id = 'hlasovani_box';

    i_pdb.appendChild(i_img);
    i_pdb.appendChild(i_note);
    i_pdb.appendChild(i_hlasovani_box);

    $('content').appendChild(i_pdb);

    return i_pdb;

}

function createLoader () {
    var loader = document.createElement('div');
    var i_img = document.createElement('img');
    i_img.src = '/images/loader.gif';
    loader.id = 'loader';
    loader.style.display = 'none';
    loader.innerHTML = '<div>Loading detail, <br />please wait...</div>';
    loader.appendChild(i_img);

    $('yogarob-com').appendChild(loader);

    return loader;

}


// ************* INICIALIZACE *********************


Event.observe (window, 'load', function () {

    // loader
    var pdb = createPDB();
    var loader = createLoader();
    
    var names = new Array();

	$$('.show_detail').each(function(el){
	    el.onclick = function () {
            displayPicDetail(this);
            return false;
        }
    });
	
	$$('.show_detail_href').each(function(el){
	    el.onclick = function () {
            displayPicDetail(this);
            return false;
        }
    });
	
	$$('#pic_detail_box_img').each(function(el){
	    el.onclick = function ( el ) {
            hideDetail(this);
            return false;
        }
    });
	
	$$('#pic_detail_box_img_close').each(function(el){
	    el.onclick = function ( el ) {
            hideDetail(this);
            return false;
        }
    });




});

