// we need to have a custom listing function for each section
function loadNews(section, itemPath, params, appUrl, letter, searchword) {
  $.ajax({
    url:  appUrl+"ajaxUtils/news/listArchivedNews.php",
    data: "section="+section+"&itemPath="+itemPath+"&"+params,
    dataType: "html",
    type: "post",
    success: function(result) {
      $("#newsDiv").html(result);
    }  
  });
}


function clearDefault(el) {
  if (el.defaultValue==el.value) el.value = ""
}


/*    application   */

/**
 * logs a user in
 */
function loginAjax(parameters,relpath,callerPage){
	if (parameters.username=="undefined" || parameters.password=="undefined" || parameters.username=='' || parameters.password==''){
		return false;
	}
	url=relpath+"ajaxUtils/login/";
	$.ajax({
	   url: url,
	   type: "post",
	   data: parameters,
	   dataType: "json",
	   success: function(transport) {
        try{
  				if(parameters.keepLoggedIn){
  					Set_Cookie('nick',parameters.login-nume,14, '/');
  					Set_Cookie('pass',parameters.login-parola,14, '/');
  				}
  			}catch(e){}
  			
  			if(transport.success == "false" && transport.message.length){
  				  if (callerPage=="popup"){
  					   $("#successSpan").innerHTML="<span style=\"color:red\">"+transport.message+"</span>"
  				  } else{
  			          alert(transport.message);		   
  				  }
  			}else{
  			  
  				  if (callerPage=="popup"){
  					   $("#loginControls").hide();
  					   window.opener.location.reload();
  					   $("#successSpan").innerHTML="<span style=\"color:lime\">"+transport.message+"</span>"
  					   setTimeout("window.close()",3000);
  				  } else{
  					   //window.location.reload(); // ie gags on this
  					   window.location.reload();
  				  }

             
  			}

  			  
     }
  });

}

function  loadMP3Player(appUrl,file,autostart,ext,width){
  if (!width) { width = 480; }
  //alert(width);
	var mp3Player = new SWFObject(appUrl+"_3parties/mediaplayer2/player.swf","mediaplayer",width,"32","8");
	mp3Player.addParam("allowfullscreen","true");
	mp3Player.addParam("wmode","transparent");
	mp3Player.addVariable("width",width);
	mp3Player.addVariable("height","32");
	mp3Player.addVariable("file",appUrl+file);
/*	mp3Player.addVariable("type",ext.toLowerCase());*/
	mp3Player.addVariable("autostart",autostart)
	mp3Player.addVariable('javascriptid','mp3Player');
	//mp3Player.addVariable('enablejs','true');
	//mp3Player.addVariable('skin',appUrl + '_3parties/mediaplayer2/r21/r21.xml');
	mp3Player.write("clipDiv");
}

function  loadMP3Player2(appUrl,file,autostart,ext,width){

  $.ajax({
      url: appUrl + 'ajaxUtils/muzica/player.php',
      data: 'file='+file+'&autostart='+autostart+'&ext='+ext+'&width'+width,
      dataType:"html",
      type: "post",
      success:function(result){
          $("#player_ajax").html(result);

      }
  });
  
  return false;
 
}

/**
 * sets a cookie using the given parameters
 */

function Set_Cookie( name, value, expires, path, domain, secure ){
  	// set time, it's in milliseconds
  	var today = new Date();
  	today.setTime( today.getTime() );
  
  	if ( expires ){
  		expires = expires * 1000 * 60 * 60 * 24;
  	}
  	var expires_date = new Date( today.getTime() + (expires) );
  
  	document.cookie = name + "=" +escape( value ) +
  	( ( expires ) ? ";expires=" + expires_date.toGMTString() : "" ) +
  	( ( path ) ? ";path=" + path : "" ) +
  	( ( domain ) ? ";domain=" + domain : "" ) +
  	( ( secure ) ? ";secure" : "" );
}


function newPopup(popupHref, popupWidth, popupHeight, props) {

	///////////////////////////////////////////////////////////////////////////////////////////////////
	// SET DEFAULT POPUP PROPERTIES ///////////////////////////////////////////////////////////////////
	///////////////////////////////////////////////////////////////////////////////////////////////////

	if (!popupWidth)
		popupWidth=500;
	if (!popupHeight)
		popupHeight=300;

	popupStatus="no";
	popupResizable="no";
	popupScroll="no";
	popupLocation="no";
	popupMenubar="no";
	popupModal="no";

	if (props) {
		// popup status
		if (props.status) popupStatus='yes';
		// resizable window
		if (props.resizable) popupResizable='yes';
		// scrollbar
		if (props.scrollbars) popupScroll='yes';
		// location
		if (props.location) popupLocation='yes';
		// menubar
		if (props.menuBar) popupMenubar='yes';
		// modal window
		if (props.modal) popupModal='yes';
	}

	// position window
	popupLeft=Math.abs(screen.width-popupWidth)/2;
	popupTop=Math.abs(screen.height-popupHeight)/2;


	//////////////////////////////////////////////////////////////////////////////////////////////////////
	// SET REAL WINDOW PROPERTIES ////////////////////////////////////////////////////////////////////////
	//////////////////////////////////////////////////////////////////////////////////////////////////////

	// handle properties
	popupProps="width=" + popupWidth + ", height=" + popupHeight;
	popupProps+=", status="+popupStatus+", resizable="+popupResizable+", scrollbars="+popupScroll+", location="+popupLocation+", menubar="+popupMenubar;
	popupProps+=", top="+popupTop+", left="+popupLeft;
	popupProps+=", modal="+popupModal;

	// handle window name
	if (!props.name) {
		thisPopupUniqueId=Math.random().toString();
		thisPos=thisPopupUniqueId.indexOf(".");
		randomNumber=thisPopupUniqueId.substr(thisPos+1);

		windowName="newPopupWindow_"+randomNumber;
	}
	else
		windowName=props.name;

	//////////////////////////////////////////////////////////////////////////////////////////////////////
	// CREATE NEW WINDOW (MODAL - if the case) ///////////////////////////////////////////////////////////
	//////////////////////////////////////////////////////////////////////////////////////////////////////
	if (window.showModalDialog && popupModal=='yes') {
		thisPopup=window.showModalDialog(popupHref, windowName, "dialogWidth:"+popupWidth+"px; dialogHeight:"+popupHeight+"px");

		if (thisPopup==null || typeof(thisPopup)=="undefined") {
			alert(pupupBlockedMessage)
		}
	}
	else {
		thisPopup=window.open(popupHref, windowName, popupProps);
		if (thisPopup==null || typeof(thisPopup)=="undefined") {
			alert(pupupBlockedMessage)
		}else{
			thisPopup.focus();

			if (!thisPopup.opener)
			thisPopup.opener = self;
		}
	}

	return thisPopup;

}


///////   jQUERY      ///////////

$(document).ready(function(){
  
  $("a.lightbox").fancybox();
  
  var menuitemw = 0;
  $("ul.new-primary-menu > li").each(function(){
    menuitemw = $(this).width() + 41;
    $("ul", this).css({'width':menuitemw+'px'}); 
  });

  $("a#vizualizate").addClass("vizualizate-over");
  $("a#comentate").click (function(){
     $("#play").hide();
     $("#play2").fadeIn('fast');
     $(this).addClass("comentate-over");
     $("a#vizualizate").removeClass("vizualizate-over");
     return false;
  });
  $("a#vizualizate").click (function(){
     $("#play2").hide();
     $("#play").fadeIn('fast');
     $(this).addClass("vizualizate-over");
     $("a#comentate").removeClass("comentate-over");
     return false;
  });  
  var src="";
  var src2= "";
  $("#showLogin").toggle(function(){
    $("#login-container").fadeIn('fast');
    src = $("img", this).attr("src");
    src2 = src.replace("logina", "loginb");
    $("img", this).attr("src", src2);
    return false;
  },function(){
    $("#login-container").fadeOut('fast');
    $("img", this).attr("src", src);
    return false;
  });
  
});



function trimiteVersuri(path){

	props={
		resizable: 		true,
		scrollbars: 	true,
		name:	'versuri'
	}
		newPopup(path+'trimiteVersuri.php', 560, 480, props);

}


/*
 * opens a popup in which you can register a new account
 */
function register(path){

	props={
		resizable: 		true,
		scrollbars: 	true,
		name:	'register'
	}
		newPopup(path+'register/', 558, 785, props);

}

function openLoginPopup(path){

	props={
		resizable: 		true,
		scrollbars: 	true,
		name:	'login'
	}
		newPopup(path+'login/', 558, 274, props);

}

function recoverPass(path){
	var mail='';
	mail=prompt("Introduceti adresa de e-mail folosita la inregistrare",'');
	if(mail==undefined) return;
	$.ajax({
	   url: path+'ajaxUtils/recoverPass/recover.php?mail='+mail,
	   dataType: "json",
     success: function(transport) {
	       alert(transport.message);
     } 
      
  });

}


function send2Friend(path,newsTitle,newsLink){
	friendsMail=prompt("Introduceti adresa unui prieten",'');
	if(friendsMail==undefined) return;

  $.ajax({
      url:path+'ajaxUtils/send2friend/?friendsMail='+friendsMail+"&newsTitle="+newsTitle+"&newsLink="+newsLink,
      dataType:"json",
      success:function(transport){
        alert(transport.message);
      }     
  });
}

function printNews(path, idNews){
	props={
		resizable: 		true,
		scrollbars: 	true,
		name:	'register'
	}
	newPopup(path+'printNews/?idNews='+idNews, 820, 700, props);
}

function fbShare(url){
	props={
		resizable: 		false,
		scrollbars: 	true,
		name:	'Asculta Radio 21 - Simply Positive'
	}
	newPopup(url, 600, 400, props);
}


/**
 * 
 */

function isJSON() {
    var str = this;
    if (str.blank()) return false;
    str = this.replace(/\\./g, '@').replace(/"[^"\\\n\r]*"/g, '');
    return (/^[,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]*$/).test(str);
  }

function addComment(params, appUrl) {
  $("#ajax-loader3").show();
  $("#ajax-loader3").html('Se adauga comentariul...');
  var url = appUrl + "ajaxUtils/comments/addComment.php";
  $.ajax({
      url: url,
      type: "post",
      data: params,
      dataType:"json",
      success: function(json){
			  if (json.error) {
            alert(json.error);
        }  else {
				    loadComments($('#idNews').val(),'page=0&commentsPerPage='+$('#commentsPerPage').val(),appUrl)
				    $('#text').val('');
				    $('#commentCount').innerHTML=json.responseText;
			  }
			  $("#ajax-loader3").html('S-a adaugat!');
        $("#ajax-loader3").hide(); 
      }
  });
}

function deleteComment(id, uid, fbUser, appUrl, el) {
  $(el).html('asteapta, se sterge...');
  $(el).click(function(){
      return false;
  });

  var url = appUrl + "ajaxUtils/comments/deleteComment.php";
  $.ajax({
      url: url,
      type: "post",
      data: "id=" + id + "&fbUser=" + fbUser + "&uid=" + uid,
      dataType:"json",
      success: function (transport) {
          if (transport.error) {
            alert(transport.error);
          } else {
            loadComments($('#idNews').val(),'page=0&commentsPerPage='+$('#commentsPerPage').val(),appUrl)
          }
          return false;
      }
  });
}




function replyComment(commentId, nickname) {
  $("#idReplyFor").val(commentId);
  $("#replyFor").html("pentru " + nickname + " (<a href='' onclick='cancelReply();return false;'><small>anuleaza</small></a>)");
}

function cancelReply() {
  $("#idReplyFor").val(null);
  $("#replyFor").html('');
}


function loadComments(idNews, params, appUrl) {
    $("#ajax-loader2").show();
    $.ajax({
      url: appUrl+"ajaxUtils/comments/listComments.php",
      type: "POST",
      data: "currentNews="+idNews+"&"+params,
      dataType: "html",
      async:false,
      success: function(result){
         $("div#comments-list").html(result);
         $("#ajax-loader2").hide();
      }
   });
}

function loadPodcast(idNews, params, appUrl) {
    $.ajax({
      url: appUrl+"ajaxUtils/podcast/listPodcastFiles.php",
      type: "POST",
      data: "id="+idNews+"&"+params,
      dataType: "html",
      async:false,
      success: function(result){
         $("div#podcast-listing").html(result);
      }
   });
   return false;
}



/**
 *
 */
function contestResponseAddComment(params,appUrl){
  //alert(params);
	url="../../ajaxUtils/contestResponseComments/addComment.php";
	
	$.ajax({
	   url: url,
	   data: params,
	   type: "post",
	   dataType:"json",
	   
	   success: function (transport) {
       contestResponseLoadComments($('#currentResponse').val(), 'page=0&commentsPerPage='+$('#commentsPerPage').val(),appUrl)
  		 $('text').val('');
  		 $('#commentCount').html(transport.responseText);	   
     }
	   
  });

}
function contestResponseLoadComments(idResponse, params,appUrl){
  $.ajax({
      url: appUrl+"ajaxUtils/contestResponseComments/listComments.php",
      data: "idResponse="+idResponse+"&"+params,
      dataType: "html",
      type: "POST",
      success: function (result) {
        $("#commentsDiv").html(result);
      }
  });

}

function vote(params,appUrl){
	url=appUrl+"/ajaxUtils/poll/poll.php";
	$.ajax({
      url: url,
      data: params,
      dataType: "html",
      type: "POST",
      success: function (result) {
        $("#pollDiv").html(result);
      }
  });
}


function newvote(rate, params, appUrl) {
  url = appUrl + "/ajaxUtils/newvote/newvote.php";
  $.ajax({
    url: url,
    data: "rate=" + rate + "&" + params,
    dataType: "json",
    type: "post",
    success: function (transport) {
          //var divId = "#" + transport.div;
          //alert(transport.divId);
          if (transport.error) {
            alert(transport.error);
            return false;
          }
          $("#" + transport.divId).html(transport.result);
    }  
  });
}


$(document).ready(function(){
  var parent = null;
  $(".home-box-info a").click(function(){
    return false;
  });
  
  $(".home-box-info a").hover(function(){
        parent = $(this).parent().parent();
        //alert(parent.attr("class")); 
        $(".home-box-description", parent).stop(true, true).fadeIn("fast");
    },
    function(){
      $(".home-box-description", parent).hide();
  });
});



function timedRefresh(timeoutPeriod) {
	setTimeout("location.reload(true);",timeoutPeriod);
}


/**
 * Concatenates the values of a variable into an easily readable string
 * by Matt Hackett [scriptnode.com]
 * @param {Object} x The variable to debug
 * @param {Number} max The maximum number of recursions allowed (keep low, around 5 for HTML elements to prevent errors) [default: 10]
 * @param {String} sep The separator to use between [default: a single space ' ']
 * @param {Number} l The current level deep (amount of recursion). Do not use this parameter: it's for the function's own use
 */
function print_r(x, max, sep, l) {

	l = l || 0;
	max = max || 10;
	sep = sep || ' ';

	if (l > max) {
		return "[WARNING: Too much recursion]\n";
	}

	var
		i,
		r = '',
		t = typeof x,
		tab = '';

	if (x === null) {
		r += "(null)\n";
	} else if (t == 'object') {

		l++;

		for (i = 0; i < l; i++) {
			tab += sep;
		}

		if (x && x.length) {
			t = 'array';
		}

		r += '(' + t + ") :\n";

		for (i in x) {
			try {
				r += tab + '[' + i + '] : ' + print_r(x[i], max, sep, (l + 1));
			} catch(e) {
				return "[ERROR: " + e + "]\n";
			}
		}

	} else {

		if (t == 'string') {
			if (x == '') {
				x = '(empty)';
			}
		}

		r += '(' + t + ') ' + x + "\n";

	}

	return r;

};
var_dump = print_r;



function TrimiteReq629(appurl) {
  
  $("#overlay629").fadeIn("fast");
                    
/*
  $("#overlay629").click(function(){
                      $(this).fadeOut("fast");
                    });
*/                    
  $("#closepop").click(function(){
                      $("#overlay629").fadeOut("fast");
                    });                    
  
  $("#form629 form").submit(function(){
    var nume629 = $("#nume629").val();
    var email629 = $("#email629").val();
    var localitate629 = $("#localitate629").val();
    var club629 = $("#club629").val();
    var mix629 = $("#mix629").val();
    var tracklist629 = $("#tracklist629").val();
    var err = 0;
    if (!nume629.length) {
       $("#nume629").css({"border-color":"red"});
       err += 1;
    }
    if (!email629.length || !evalidate(email629)) {
       $("#email629").css({"border-color":"red"});
       err += 1;
    }
    if (!localitate629.length) {
       $("#localitate629").css({"border-color":"red"});
       err += 1;
    }
    if (!club629.length) {
       $("#club629").css({"border-color":"red"});
       err += 1;
    }
    if (!tracklist629.length) {
       $("#tracklist629").css({"border-color":"red"});
       err += 1;
    }
    if (!mix629.length) {
       $("#mix629").css({"border-color":"red"});
       err += 1;
    }
    
    $("#nume629, #email629, #localitate629, #mix629, #tracklist629, #club629").focus(function(){
       $(this).css({"border-color":"#ccc"});
       err += 1;
    });
    
    if (err == 0) {
      $("#form629").append("<div id='ajax-loader'></div>");
    
    
        ajaxFileUpload(appurl, 'mix629', nume629, email629, club629, localitate629, tracklist629);
        
    
    }
    
  
    return false;
  });                    

}   



function ajaxFileUpload(appurl, fileelementid, nume629, email629, club629, localitate629, tracklist629) {
		$("#loading").ajaxStart(function(){
		    $(this).show();
		}).ajaxComplete(function(){
			  $(this).hide();
		});

		$.ajaxFileUpload({
				url: appurl + "ajaxUtils/r629/doajaxfileupload.php",
				secureuri: false,
				fileElementId: fileelementid,
				dataType: 'json',
				data: {
            name:'logan', 
            id:'id'
        },
				success: function (data, status) {
					if(typeof(data.error) != 'undefined') {
						if(data.error != '') {
							  alert(data.error);
							  $("#ajax-loader").remove();
							  return false;
							  
						}else {
//							  if (data.msg == "success") {
							     //alert();
							     store629(appurl, nume629, email629, club629, localitate629, tracklist629, data.filename, data.size);
//                }
						}
					}
				}, error: function (data, status, e) {
					 alert(e);
				}
		});
		
		return false;

	}
	
  
  
  function store629(appurl, nume629, email629, club629, localitate629, tracklist629, mix629,size) {
              $.ajax({
              url: appurl + "ajaxUtils/r629/submitMix.php",
              data: "nume629="+nume629+"&email629="+email629+"&localitate629="+localitate629+"&tracklist629="+tracklist629+"&mix629="+mix629+"&size="+size+"&club629=" + club629,
              dataType:"json",
              type: "post",
              success:function(result){
                  if (result.ok) {
                      $("#form629 form").animate({"height":0}, function(){
                        $(this).fadeOut('fast');
                      });
                  
                      $("#email629").val("");
                      $("#nume629").val("");
                      $("#club629").val("");
                      $("#localitate629").val("");
                      $("#tracklist629").val("");
                      $("#ajax-loader").remove();
                      $("#result629").fadeIn("fast");
                      $("#result629").html("Mixul tau a fost trimis cu succes!");
                      $("#result629").addClass("success");
                      
                  } else {
                      $("#ajax-loader").remove();
                      $("#result629").fadeIn("fast");
                      $("#result629").html("Mixul nu a fost trimis cu succes! Te rugam sa incerci mai tarziu!");
                      $("#result629").addClass("error");
                  }
                return false;
              }
            });

  }
  
  
function evalidate(address) {
 
   var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
   if(reg.test(address) == false) {
      return false;
   }else {
    return true;
   }
}
