// Private initialisation variables
	var places_div_id   	= "place_map_inner";

// Load Options
	var loadPlacesFlag	= true;
	//var loadRefsFlag	= true;
	var loadStreetsFlag	= false;

// Ajax URLs
	var main_search_ajax_url = ROOT + "ajax/map.search.place.php";
	var places_ajax_url 	 = ROOT + "ajax/places.php";
	var streets_ajax_url	 = ROOT + "ajax/getStreets.php";

// Icons
	var message_icon   = "<img src='"+ROOT+"images/icons/comment.png' alt=' '/> ";
	var generic_icon   = "<img src='"+ROOT+"images/markers/mini/mini_green_Z.png' alt=' '/>";
	var street_icon    = "<img src='"+ROOT+"images/icons/map.png' alt=' '/>";
	var reference_icon = "<img src='"+ROOT+"images/reference_icon.png' alt=''/>";

/*
// Bits of text
	var text_loading 		= " Se incarca ...";
	var text_title_suffix	= " - Click pentru detalii";
	var text_loaded			= "Harta s-a incarcat.";
	var text_help1			= "Folositi scroll pentru zoom si drag pentru a o misca.";
*/
	var text_idle			= text_help1;
	var text_not_found		= "Nu am gasit niciun rezultat."

// Loaders
	var white_bg_loader = "<img src='"+ROOT+"images/ajax-loader_bg-FFF-fg-FF6600.gif' alt=' '/>";
	var _333_bg_loader  = "<img src='"+ROOT+"images/ajax-loader-bg_333-fg-FF6600.gif' alt=' '/>";

// Helper
	var jsv0		   = "javascript:void(0)";


$(function(){
	// Debugging
	if(typeof(loadFirebugConsole) != "undefined")
		window.loadFirebugConsole();
	
	// Initialisers
	updateStatus(text_loading);


	// Map Options
	var map_options = {
		continuousZoom  : false,
		scrollWheelZoom : true,
		startLat		: ((typeof(start_lat) == "undefined")?default_lat:start_lat),
		startLng		: ((typeof(start_lng) == "undefined")?default_lng:start_lng),
		startZoom		: ((typeof(start_zoom) == "undefined")?17:start_zoom),
		afterLoad 		: function(map){
							map.addPlaces(refLandmarks, places_options);
							
							map.addOverlay(createMainMarker(map));
							updateStatus(text_loaded);
							setTimeout(updateStatus, 3000, text_help1);
							},
		controls		: false
		};


	// Places Options
	var places_options = {
		getIcon 	: function(item, icon){
						var src	  = "ref_mini_marker.png";
						var image = icon.image =  ROOT + "images/markers/" + src;
						this.iconSize = new GSize(20, 13);
						
						item.icon_img = "<img src='"+image+"' alt=''/>";
						return icon;
						},
		getTitle	: function(item, title){
						return title;
						},
		
		// event handles
		mouseout	: function(){
						updateStatus(text_idle);
						},
		mouseover	: function() {
						updateStatus(this.item.name);
						},
		dblclick	: function(){
						document.location = this.item.url;
						}
		};
		
	
	// Map
	places_map = new Map(document.getElementById(places_div_id), map_options);
	});


function toggleOptions(){
	var t = $("#advanced_options");
	if(!t.is(":visible"))
		t.fadeIn("normal");
	else
		t.fadeOut("normal");
	}
$(function(){
	$("#btn_options_toggle").click(toggleOptions);
	
	});


function copy(inElement) {
  if (inElement.createTextRange) {
    var range = inElement.createTextRange();
    if (range && BodyLoaded==1)
      range.execCommand('Copy');
  } else {
    var flashcopier = 'flashcopier';
    if(!document.getElementById(flashcopier)) {
      var divholder = document.createElement('div');
      divholder.id = flashcopier;
      document.body.appendChild(divholder);
    }
    document.getElementById(flashcopier).innerHTML = '';
    var divinfo = '<embed src="'+WWW_ROOT+'images/_clipboard.swf" FlashVars="clipboard='+encodeURIComponent(inElement.value)+'" width="0" height="0" type="application/x-shockwave-flash"></embed>';
    document.getElementById(flashcopier).innerHTML = divinfo;
  }
  inElement.select();
}


// sendIssue

function sendIssue(){
	var issue = $("#issue").val();
	$("#issue").attr("disabled","disabled");
	$.get("ajax/sendIssue.php",{issue:issue},function(html){
		$("#issue_text").html(html);		
		$("#issueForm").hide();
		})
	$("#issue_text").html("Se trimite &hellip;");
	return false;
	}
	
/* Map Portlet action */
$(document).ready(function() {
	$("#map").addClass("ui-widget ui-widget-content ui-helper-clearfix ui-corner-all")
			.find(".portlet-header")
				.addClass("ui-widget-header ui-corner-all")
				.prepend('<span class="ui-icon ui-icon-minusthick"></span>')
				.prepend('<span class="ui-icon ui-icon-newwin"></span>')
				.prepend('<span class="ui-icon ui-icon-arrow-4-diag"></span>')
				.end()
			.find(".portlet-content");

		$(".portlet-header .ui-icon-minusthick").click(function() {
			$(this).toggleClass("ui-icon-minusthick").toggleClass("ui-icon-plusthick");
			$(this).parents(".portlet-map:first").find(".portlet-content").toggle();
		});
		
		$(".portlet-header .ui-icon-newwin").click(function() {
			$(this).toggleClass("ui-icon-newwin").toggleClass("ui-icon-extlink");
			//$(this).parents(".portlet-map:first").find(".portlet-content").toggle();
			
			if($("#map").hasClass('grid_12'))
					$("#map").removeClass('grid_12').addClass('grid_7');
				else	
					$("#map").removeClass('grid_7').addClass('grid_12');
				
				
				//$("#map").toggleClass("grid_12","grid_7");
				$("#place_map").toggleClass("wide");
				$("#place_map_inner").toggleClass("wide");
				//$("#map").toggleClass("wide");
                $(this).toggleClass("wide");
			
		});
})
/* END Map Portlet action */


/* Place rating*/

        $('.rate_widget').each(function(i) {
            var widget = this;
            var out_data = {
                widget_id : $(widget).attr('id'),
                fetch: 1,
            };
		

            $.post(                'ratings.php',
                out_data,
                function(INFO) {
                    $(widget).data( 'fsr', INFO );
                    set_votes(widget);
                },
                'json'
            );
        });
    

        $('.ratings_stars').hover(
            // Handles the mouseover
            function() {
                $(this).prevAll().andSelf().addClass('ratings_over');
                $(this).nextAll().removeClass('ratings_vote'); 
            },
            // Handles the mouseout
            function() {
                $(this).prevAll().andSelf().removeClass('ratings_over');
                // can't use 'this' because it wont contain the updated data
                set_votes($(this).parent());
            }
        );
        
  
        // This actually records the vote
        $('.ratings_stars').bind('click', function() {
            var star = this;
            var widget = $(this).parent();
           // var ip = $("#uip").contents().text();
			 var ip = document.getElementById('uip').innerHTML;
            var clicked_data = {
                clicked_on : $(star).attr('class'),
                widget_id : $(star).parent().attr('id'),
				uip: ip 
            };
            $.post(
                'ratings.php',
                clicked_data,
                function(INFO) {
                    widget.data( 'fsr', INFO );
                    set_votes(widget);
                },
                'json'
            ); 
        });
        
	
function set_votes(widget) {

        var avg = $(widget).data('fsr').whole_avg;
        var votes = $(widget).data('fsr').number_votes;
        var exact = $(widget).data('fsr').dec_avg;
    
       // window.console && console.log('and now in set_votes, it thinks the fsr is ' + $(widget).data('fsr').number_votes);
        
        $(widget).find('.star_' + avg).prevAll().andSelf().addClass('ratings_vote');
        $(widget).find('.star_' + avg).nextAll().removeClass('ratings_vote'); 
        $(widget).find('.total_votes').text( votes + ' votes recorded (' + exact + ' rating)' );
    }
    // END FIRST THING
	

	$(".place-stars").each(function(){
		var value = Math.ceil(Number($(this).text())*17);
		$(this).wrap("<div class='place-stars-wrap'></div>");
		$(this).css("width",value);
		});
	
/* END place rating*/
