// JavaScript Document
function changePhotoDescription(fid) {
    var popisFotkySpan = document.getElementById("popisFotky");
    var popis = popisFotkySpan.innerHTML;
    var text = '<input type="text" name="popis" id="popis" class="statusIn" value="'+popis+'" />';
    text += '&nbsp;<input type="submit" class="saveStBtn" name="test" value="uložit" onclick="javascript: savePhotoDescription('+fid+'); return false;" />';
    popisFotkySpan.innerHTML = text;
    var changePhotoDescriptionLink = document.getElementById("changePhotoDescriptionLink");
    changePhotoDescriptionLink.style.display = 'none';
}

function savePhotoDescription(fid) {
    var action = 'updateDescription';
    var popis = document.getElementById("popis");
	sendSjax(savePhotoDescription_callback, 'POST', _SERVER_PATH+'inc/ajax/fotka.php',
      'action='+action+'&fid='+fid+'&popis='+popis.value);
}

function savePhotoDescription_callback() {
    var my_JSON_object = !(/[^,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]/.test(xmlHttp.responseText.replace(/"(\\.|[^"\\])*"/g, ''))) && eval('(' + xmlHttp.responseText+ ')');
    if(my_JSON_object.status != '---KO---') {
        var popisFotkySpan = document.getElementById("popisFotky");
        popisFotkySpan.innerHTML = my_JSON_object.popis;
        var changePhotoDescriptionLink = document.getElementById("changePhotoDescriptionLink");
        changePhotoDescriptionLink.style.display = 'inline';
    } else {

    }
    if($.growlUI){
        $.growlUI('Informace', (my_JSON_object.message).replace(/\n/gi,'<br />'));
    } else {
        alert(my_JSON_object.message);
    }
}

function addPhotoKomentarBig(fid) {
    var komentar = document.getElementById('newMessageTextarea');
    var text = nl2br(komentar.value, true);
    $.ajax({
       type: "POST",
       dataType: "json",
       url: _SERVER_PATH+'inc/ajax/fotka.php?action=addPhotoKomentar',
       data: 'fid='+fid+'&komentar='+text,
       success: function(my_JSON_object) {
            var link = document.getElementById('addBigKomentarLink');
            newImage = "url('images/podklad/add_icon.gif')";
            link.style.backgroundImage = newImage;
            link.innerHTML = 'Přidat komentář';
            link.title = 'Přidat komentář';
            var newMessageTextarea = document.getElementById('newMessageTextarea');
            newMessageTextarea.value = '';
            $("#newBigKomentarDiv").animate({
                opacity: 'hide', height: 'hide'
            }, 500, "swing", function(){showMessageDiv(my_JSON_object.message); getPhotoKomentarePage(1, my_JSON_object.fid);} );
       }
    });
    return false;
}

function getPhotoKomentarePage(strana, fid, pocet) {
    var action 			= 'getPhotoKomentare';
    $.ajax({
       type: "POST",
       dataType: "json",
       url: _SERVER_PATH+'inc/ajax/fotka.php?action=getPhotoKomentare',
       data: 'strana='+strana+'&fid='+fid+'&pocet='+pocet,
       success: function(my_JSON_object) {
            $("#photoKomentareList").attr('innerHTML', '');
            var results = my_JSON_object.komentare;
            var resultsCount = results.length;
            var text = '';
            for(var i = 0; i < resultsCount; i++) {
                    text += '<div class="item">';
                    text += '	<div class="foto"><img src="'+ results[i].photo_path +'" alt="'+ results[i].jmeno +' '+ results[i].prijmeni +'" /></div>';
                    text += '	<div class="info">';
                    text += '   	<p><a href="index.php?menu=lide&amp;uid='+ results[i].uid +'" class="who" title="Zobrazit profil '+ results[i].jmeno +' '+ results[i].prijmeni +'">'+ results[i].jmeno +' '+ results[i].prijmeni +'</a> '+ results[i].komentar +'</p>';
                    text += '		<div class="cp"><span class="date">'+ results[i].datum +'</span>';
                    text += '		</div>';
                    text += '	</div>';
                    text += '</div>';
            }
            $("#photoKomentareList").attr('innerHTML', text);
            $("#photoKomentareStrankovani").attr('innerHTML', my_JSON_object.strankovani);
       }
    });
}

function deletePhoto(fid) {
	var dialogDiv = document.createElement('div');
	var divID = Math.round(Math.random() * 1235);
	dialogDivID = 'dialog_'+divID;
	dialogDiv.id = dialogDivID;
	dialogDiv.innerHTML = '<p><span class="ui-icon ui-icon-alert" style="float:left; margin:0 7px 20px 0;"></span>Opravdu chceš tuto fotku smazat?</p>';
	document.body.appendChild(dialogDiv);
	$("#"+dialogDivID).dialog({
		bgiframe: false,
		resizable: false,
		height:140,
		width: 300,
		modal: false,
		draggable: false,
		title: 'Smazat fotku?',
		overlay: {
			backgroundColor: '#000',
			opacity: 0.5
		},
		buttons: {
			'Zrušit': function() {
				$(this).dialog('close');
				return false;
			},
			'Smazat': function() {
				$(this).dialog('close');
				window.location.href = 'deletePhoto.php?fid='+fid;
				return true;
			}
		}
	});
	return false;
}

function deleteCommentary(fid, id) {
	var dialogDiv = document.createElement('div');
	var divID = Math.round(Math.random() * 1235);
	dialogDivID = 'dialog_'+divID;
	dialogDiv.id = dialogDivID;
	dialogDiv.innerHTML = '<p><span class="ui-icon ui-icon-alert" style="float:left; margin:0 7px 20px 0;"></span>Opravdu chceš tento komentář smazat?</p>';
	document.body.appendChild(dialogDiv);
	$("#"+dialogDivID).dialog({
		bgiframe: false,
		resizable: false,
		height:140,
		width: 300,
		modal: false,
		draggable: false,
		title: 'Smazat komentář?',
		overlay: {
			backgroundColor: '#000',
			opacity: 0.5
		},
		buttons: {
			'Zrušit': function() {
				$(this).dialog('close');
			},
			'Smazat': function() {
				$(this).dialog('close');
				var action 			= 'deleteKomentar';
				sendSjax(deleteCommentary_callback, 'POST', _SERVER_PATH+'inc/ajax/fotka.php', 
			      'action='+action+'&fid='+fid+'&id='+id);
			}
		}
	});
}

function deleteCommentary_callback(xmlHttp) {
	var my_JSON_object = !(/[^,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]/.test(xmlHttp.responseText.replace(/"(\\.|[^"\\])*"/g, ''))) && eval('(' + xmlHttp.responseText+ ')');
	if(my_JSON_object.status != '---KO---') {
		getPhotoKomentarePage(1, my_JSON_object.fid);
	} else {
		alert(my_JSON_object.message);
	}
   return false;
}

function addUserOnPhoto(fid) {
    if(parseInt($('#uzivatelNaFotceId').val()) > 0) {
        $.ajax({
            type: "POST",
            dataType: "json",
            url: _SERVER_PATH+'inc/ajax/fotka.php?action=addUserOnPhoto',
            data: 'fid='+fid+'&uid='+$('#uzivatelNaFotceId').val(),
            success: function(my_JSON_object) {
                $('#uzivatelNaFotce').val('');
                $('#uzivatelNaFotceId').val(0);
                if(my_JSON_object.status != '---KO---') {
                    if($.growlUI){
                        $.growlUI('Informace', (my_JSON_object.message).replace(/\n/gi,'<br />'));
                    } else {
                        alert(my_JSON_object.message);
                    }
                    getUsersOnPhoto(my_JSON_object.fid);
                } else {
                    alert(my_JSON_object.message);
                }
            }
        });
    } else {
        alert('Zadejte jméno uživatele.');
    }
}

function getUsersOnPhoto(fid) {
    $.ajax({
        type: "POST",
        dataType: "json",
        url: _SERVER_PATH+'inc/ajax/fotka.php?action=getUsersOnPhoto',
        data: 'fid='+fid,
        success: function(my_JSON_object) {
            var listDiv = document.getElementById('usersOnPhotoList');
            var results = my_JSON_object.uzivatele;
            var resultsCount = results.length;
            listDiv.innerHTML = '';
            var text = '';
            for(var i = 0; i < resultsCount; i++) {
                text += '<li><a href="index.php?menu=lide&amp;uid='+ results[i].uid +'" title="Zobrazit profil '+ results[i].jmeno +' '+ results[i].prijmeni +'">'+ results[i].jmeno +' '+ results[i].prijmeni +'</a>';
                if(results[i].canDelete) {
                        text += ' (<a href="#" title="Smazat uživatele na fotce" onclick="javascript: removeUserOnPhoto('+ my_JSON_object.fid +', '+ results[i].uid +'); return false;">smazat</a>)';
                }
                text += '</li>';
            }
            listDiv.innerHTML = text;
        }
    });
}

function removeUserOnPhoto(fid, uid) {
    $.ajax({
        type: "POST",
        dataType: "json",
        url: _SERVER_PATH+'inc/ajax/fotka.php?action=removeUsersOnPhoto',
        data: 'fid='+fid+'&uid='+uid,
        success: function(my_JSON_object) {
            if(my_JSON_object.status != '---KO---') {
                if($.growlUI){
                    $.growlUI('Informace', (my_JSON_object.message).replace(/\n/gi,'<br />'));
                } else {
                    alert(my_JSON_object.message);
                }
                getUsersOnPhoto(my_JSON_object.fid);
            } else {
                alert(my_JSON_object.message);
            }
        }
    });
}

function setMainPhoto(fid) {
	var action 			= 'setMainPhoto';
	sendAjax(setMainPhoto_callback, 'POST', _SERVER_PATH+'inc/ajax/fotka.php', 
      'action='+action+'&fid='+fid);
}

function setMainPhoto_callback(xmlHttp) {
	var my_JSON_object = !(/[^,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]/.test(xmlHttp.responseText.replace(/"(\\.|[^"\\])*"/g, ''))) && eval('(' + xmlHttp.responseText+ ')');
	var title_text 		= document.getElementById('title_text');
	title_text.innerHTML = '<span class="gray">Toto je titulní fotka tohoto alba</span>';
	if($.growlUI){
		$.growlUI('Informace', (my_JSON_object.message).replace(/\n/gi,'<br />'));
   } else {
		alert(my_JSON_object.message);
   }
   return false;
}

function sendRating(value) {
	var action 			= 'sendRating';
	var fotka_id 		= document.getElementById('fotka_id');
	sendSjax(sendRating_callback, 'POST', _SERVER_PATH+'inc/ajax/fotka.php', 
      'action='+action+'&fid='+fotka_id.value+'&rating='+value);
}

function sendRating_callback(xmlHttp) {
	var my_JSON_object = !(/[^,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]/.test(xmlHttp.responseText.replace(/"(\\.|[^"\\])*"/g, ''))) && eval('(' + xmlHttp.responseText+ ')');
	if(my_JSON_object.status != '---KO---') {
		var appraised = document.getElementById('appraised');
		appraised.innerHTML = my_JSON_object.pocet + ' včetně tebe'; 
	}
	var ratingDiv = document.getElementById('ratingDiv');
	ratingDiv.innerHTML = '<img src="images/podklad/'+my_JSON_object.hodnoceni+'stars.gif" alt="Hodnotilo '+my_JSON_object.pocet + ' včetně tebe'+'" />';
	if($.growlUI){
		$.growlUI('Informace', (my_JSON_object.message).replace(/\n/gi,'<br />'));
   } else {
		alert(my_JSON_object.message);
   }
}

$(function() {
	$("#addBigKomentarLink").toggle(function(){
		$("#newBigKomentarDiv").animate({ height: 'show', opacity: 'show' }, 'slow');
		var link = document.getElementById('addBigKomentarLink');
		newImage = "url('images/podklad/hide_icon.gif')";
		link.style.backgroundImage = newImage;
		link.innerHTML = 'Schovat';
		link.title = 'Schovat';
	},function(){
		$("#newBigKomentarDiv").animate({ height: 'hide', opacity: 'hide' }, 'slow');
		var link = document.getElementById('addBigKomentarLink');
		newImage = "url('images/podklad/add_icon.gif')";
		link.style.backgroundImage = newImage;
		link.innerHTML = 'Přidat komentář';
		link.title = 'Přidat komentář';
	});
	$('.hover-star').rating({
	  	callback: function(value, link) {
	    	sendRating(value);
	  	},
	  	required: true,
		focus: function(value, link){
			// 'this' is the hidden form element holding the current value
			// 'value' is the value selected
			// 'element' points to the link element that received the click.
 			var tip = $('#hover-test');
 			tip[0].data = tip[0].data || tip.html();
 			tip.html(link.title || 'value: '+value);
	  	},
	  	blur: function(value, link){
	  		var hover_test = document.getElementById('hover-test');
	  		var tip = $('#hover-test');
			hover_test.innerHTML = '';
 	    	//$('#hover-test').html(tip[0].data || '');
	  	}
	});
	if(document.getElementById('fotka_id')) {
		var fotka_id	= document.getElementById('fotka_id');
		$("#uzivatelNaFotce").jSuggest({
			url: _SERVER_PATH+"inc/ajax/fotka.php?fid=" + parseInt(fotka_id.value) + "&action=getListOfUsersOnPhoto",
			type: "POST",
			data: "keyword",
			autoChange: false
		});
	}
});
