﻿function AddPushpin(position, name, id)
{
    var x = Math.round(Math.random()*10)*(-20);
    var shape = new VEShape(VEShapeType.Pushpin, position);
//    map.ClearInfoBoxStyles();
    shape.SetCustomIcon("<div class='pushpin' style='background-position:"+x+"px 0px'></div>"); 
    shape.SetTitle("<a href='/piazza/"+id+"/"+name+"'>"+name+"</a>");
    map.AddShape(shape);
}
function impostaZona(zone) {
    $("#zone").val(zone);
    $("#zona").text(zone);
}
function AddDemonstratorPushpin(position, nick, bg_x, bg_y, action, sex, pushpin,zone)
{
    var shape = new VEShape(VEShapeType.Pushpin, position);
    map.ClearInfoBoxStyles();
    shape.SetCustomIcon("<div class='pushpin' style='background-position:"+bg_x+"px "+bg_y+"px'></div>");             
    var box = $('#infobox-model').clone();
    $(box).find('div.pic img').attr('src', '/images/pic-'+sex+'.png');
    $(box).find('div.action').html($('#span-action-'+action).html());
    $(box).find('div.nick').html(nick);
    $(box).find('div.zone').html(zone);
    shape.SetDescription("<div class='infobox-demonstrator col"+pushpin+"'>"+$(box).html()+"</div>");
    map.AddShape(shape);
}
function AddCityPushpin(position, city)
{
    var pushpin = Math.round(Math.random()*10);
    var bg_x = pushpin * (-20);
    
    var shape = new VEShape(VEShapeType.Pushpin, position);
    map.ClearInfoBoxStyles();
    shape.SetCustomIcon("<div class='pushpin' style='background-position:"+bg_x+"px 0px'></div>");             
    var box = $('#infobox-city').clone();
    $(box).find('div.city').html(city);
    shape.SetDescription("<div class='infobox-demonstrator col"+pushpin+"'>"+$(box).html()+"</div>");
    map.AddShape(shape);
}
function checkStep() {
    switch(current_step)
    {
        case 1:
            $('p.nick.error').hide();
            $('p.email.error').hide();
            $('p.pushpin.error').hide();

            $('#nick').val($.trim($('#nick').val()));

            var sel_nick = $('#nick').val();

            if (startsWithDigit(sel_nick))
                sel_nick = "_" + sel_nick;

            if (!isAlphaNumeric(sel_nick)) {
                $('p.nick.error').slideDown();
                return;
            }

            if (sel_nick.length < 2) {
                $('p.nick.error').slideDown();
                return;
            }
            var email = $("#email").val();
            if (!/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email)) {
                $('p.email.error').slideDown();
                return;
            }
            if (sel_pushpin == -1) {
                $('p.pushpin.error').slideDown();
                return;
            }

            $('#selected-pushpin').val(sel_pushpin);
            $('#selected-nick').val(sel_nick);
            $.post('/step/1', { nick: sel_nick, pushpin: sel_pushpin, square: $('#squareId').val(), email: $('#email').val() }, function(data) {
                if (parseInt(data) > 0) {
                    $.post('/step/2', function(data) {
                        increaseStep();
                        $('#engageContent').html(data);
                    });
                }
                else {
                    alert("Il nick scelto è già in uso, scegline un altro");
                }
            });
            break;
        case 2:
            $('p.action.error').hide();
            var sel_action = $('#selected-action').val();
            if($('#selected-action').val() == "") {
                $('p.action.error').slideDown();
            }
            else {
                $.post('/step/3', {action: sel_action}, function(data) {
                   increaseStep();
                   $('#engageContent').html(data); 
                });
            }
            break;
        case 3:
            var zone = $("#zone").val();
            if (zone == "") {
                $('p.zone.error').slideDown();
                return;
            } else {
                $.post('/step/4', { "zone": zone }, function(data) {
                    increaseStep();
                    $('#engageContent').html(data);
                });
            }
            break;
        case 4:
            var message = $.trim($("#message").val());
            $.post('/step/5', { "message": message }, function(data) {
                increaseStep();
                $('#engageContent').html(data);
            });
            break;
        case 5:
            $.post('/step/6', function(data) {
                   increaseStep();
                   $('#engageContent').html(data); 
                });
            break;
        return false;
    }
}
function increaseStep() {
    $('#step').html(++current_step);
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function startsWithDigit(text) {
	var first = text.substring(0,1);
	var regex=/^[0-9]$/;
    return regex.test(first);
}
function isAlphaNumeric(text){
    var regex=/^[0-9A-Za-z_]+$/;
    return regex.test(text);
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

var vai = true;

//Detect FF1+
if(navigator.userAgent.indexOf("Firefox")!=-1)
{
    var versionindex=navigator.userAgent.indexOf("Firefox")+8
    
    if (parseInt(navigator.userAgent.charAt(versionindex))>=1)
        //alert("You are using Firefox 1.x or above")
        vai = false;
}

//Detect IE6+
version=0
if (navigator.appVersion.indexOf("MSIE")!=-1)
{
    temp=navigator.appVersion.split("MSIE")
    version=parseFloat(temp[1])
}

if (version>=6) //NON IE browser will return 0
    //alert("You're using IE6+")
    vai = false;

//if (vai)
//    setTimeout ('location.href="indexOff.asp"',0);


function showContacts() {
var x = 0;
expandContacts();

    function expandContacts() {
        if (x < 220) {
            x = Math.min(x + 50, 220);
            elContactsElement.style.width = x + "px";
            setTimeout(expandContacts,50);
        }
    }
}

function hideContacts() {
var x = 220;
shrinkContacts();

    function shrinkContacts() {
        if (x > 0) {
            x = Math.max(x - 50, 0);
            elContactsElement.style.width = x + "px";
            setTimeout(shrinkContacts,50);
        }
    }
}

function toggleContacts() {
var iX = elContactsElement.style.width.replace("px","");

    if (iX <= 0) {
        showContacts();
    } else {
    hideContacts();
    }
}
function BlogIt()
{
	if (navigator.userAgent.indexOf("MSIE")>0)
	{
		var sel=document.selection.createRange();
		sel.expand("word");
		window.location="http://spaces.live.com/BlogIt.aspx?Title=Discussione su STAND UP TAKE ACTION&SourceURL=" + escape(window.location.href) + "&description=<br>Fai Stand Up con me? Contro la povertà  e i cambiamenti climatici, uniamoci! Vieni anche tu sul sito <a href='http://standup.it.msn.com '>http://standup.it.msn.com</a> e facciamo un nodo insieme!";
	}	
}
function SendInvitations() {
    var sender = $.trim($("#sender").val());
    
    $('p.error').hide();

    if (!/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(sender)) {
        $('p.sender.error').slideDown();
        return;
    }
    var error = false;
    var c=0;
    var m = new Array('','','');
    for(i=1; i<=3; i++) {
        var email = $.trim($("#email"+i).val());
        if (email.length > 0 && !/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email)) {
            $('p.error.email'+i).slideDown();
            error = true;
            c++;
        }
        else if(email.length > 0){
            c++;
            m[(i-1)] = email;
        }
    }
    if (error) {
        return;
    }
    if(c == 0) {
        $('p.send.error').html("Inserisci almeno un indirizzo").slideDown();
        return;
    }
    $("input[type=text]").attr("disabled", "disabled");
    $.post("/svc/invitation.ashx", { "sender": sender, "m1": m[0], "m2": m[1], "m3": m[2] }, function(data) {
        if (data == ".") {
            $('p.send.error').html("Gli inviti sono stati spediti").slideDown();
            setTimeout(function() { location.href = "/"; }, 3000);
        }
    });
}