function clear(){
    //clear contenuti
    $j("#tag_empty").css("display","none");
    $j("#tag_double").css("display","none");
    $j("#tag_double_ul").html("");
    $j("#tag_stopwords").css("display","none");
    $j("#tag_stopwords_ul").html("");
    $j("#tag_noemail").css("display","none");
    $j("#tag_nourl").css("display","none");
    $j("#tag_maxnum").css("display","none");
    $j("#tag_maxlength").css("display","none");

}

function check_tags(){
    clear();

    var tag_str = "";
    jQuery.each($j("input[name=myTags[]]"), function(){
        tag_str += jQuery.trim($j(this).attr("value"))+',';
    });
    $j.ajax({
        type: "post",
        url: "/ajax/forms/check_tags.php",
        data: {
            tag: jQuery.trim($j("#tag_input").attr("value")),
            myTags: tag_str
        },
        success: function(response){
            var resplitted = response.split(",");
            if (resplitted[0]=="_empty"){
                $j("#tag_empty").css("display","");
            }
            else{
                if (resplitted[1]!=""){
                    $j("#tag_stopwords").css("display","");
                    $j("#tag_stopwords_ul").html(resplitted[1]);
                }
                if (resplitted[2]!=""){
                    $j("#tag_double").css("display","");
                    $j("#tag_double_ul").html(resplitted[2]);
                }
                if (resplitted[3]!=""){
                     for (i in resplitted){
                         if (i>2 && jQuery.trim(resplitted[i])!=""){
                             if ($j("input[name='myTags[]']").length<60){
                                 if (resplitted[i].length <=60){
                                    var str = resplitted[i];
                                    var filter_email = /[a-z0-9_\-]+(\.[_a-z0-9\-]+)*@([_a-z0-9\-]+\.)+([a-z]{2}|aero|arpa|biz|com|coop|edu|gov|info|int|jobs|mil|museum|name|nato|net|org|pro|travel)/gi;
                                    if (str.match(filter_email)){
                                        $j("#tag_noemail").css("display","");
                                    }
                                    else {
                                        var filter_url = /((https?|ftp|news):\/\/)?([a-z]([a-z0-9\-]*\.)+([a-z]{2}|aero|arpa|biz|com|coop|edu|gov|info|int|jobs|mil|museum|name|nato|net|org|pro|travel)|(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))(\/[a-z0-9_\-\.~]+)*(\/([a-z0-9_\-\.]*)(\?[a-z0-9+_\-\.%=&amp;]*)?)?(#[a-z][a-z0-9_]*)?/gi;
                                        if (str.match(filter_url) && !str.match(filter_email)){
                                            $j("#tag_nourl").css("display","");
                                        }
                                        else{

                                            var link = $j("<a></a>")
                                                        .css("cursor","pointer")
                                                        .css("color","black")
                                                        .css("text-decoration","none")
                                                        .append("<img src='/images/ico_x.jpg'/>")
                                                        .append(resplitted[i])
                                                        .append('<input type="hidden" name="myTags[]" value="'+resplitted[i]+'"/>');

                                            var li = $j("<li></li>")
                                                       .addClass("tag_del")
                                                       .append(link)
                                                       .click (elimina_tag);

                                            $j("#ul_tag_del").append(li);

                                         }
                                    }
                                 }
                                 else {
                                     $j("#tag_maxlength").css("display","");
                                     $j("#tag_maxlength_ul").append("<li> &raquo; "+resplitted[i]+"</li>");
                                 }
                             }
                             else {
                                 $j("#tag_maxnum").css("display","");
                             }
                         }
                     }
                }
                $j("#tag_input").attr("value","");
            }
        }
    });
}


$j(document).ready(function(){

    $j(".tag_del").click(elimina_tag);
    $j(".tag_add").click(aggiungi_tag);

    $j("#tag_input_button").click(aggiungi_tag_input);
    $j("#tag_input_button").keypress(aggiungi_tag_input_on_keypress);
    
});


var elimina_tag = function(){
    clear();

   var link = $j("<a></a>")
                .css("cursor","pointer")
                .css("color","black")
                .css("text-decoration","none")
                .append("<img src='/images/ico_+.jpg'/>")
                .append($j(this).text())

   var li = $j("<li></li>")
           .addClass("tag_add")
           .append(link)
           .click (aggiungi_tag);


   $j("#ul_tag_add").append(li);

   $j(this).remove(0);
};

var aggiungi_tag = function(){
    clear();
    
    var tag_array = $j(this).text().split(',');
    for (i in tag_array){
        if ($j("input[name='myTags[]'][value='"+jQuery.trim(tag_array[i])+"']").length==0){
               var link = $j("<a></a>")
                            .css("cursor","pointer")
                            .css("color","black")
                            .css("text-decoration","none")
                            .append("<img src='/images/ico_x.jpg'/>")
                            .append(tag_array[i])
                            .append('<input type="hidden" name="myTags[]" value="'+tag_array[i]+'"/>');

               var li = $j("<li></li>")
                       .addClass("tag_del")
                       .append(link)
                       .click (elimina_tag);

               $j("#ul_tag_del").append(li);
           }
           else {
               $j("#tag_double").css("display","");
               $j("#tag_double_ul").append("<li> &raquo; "+tag_array[i]+"</li>");
           }
    }
    $j(this).remove(0);

};

var aggiungi_tag_input = function(){
    check_tags();
};

var aggiungi_tag_input_on_keypress = function(e){
    if (e.which == 13) {
        check_tags();
    }
};