// Place your application-specific JavaScript functions and classes here
// This file is automatically included by javascript_include_tag :defaults

window.onload=function()
{
	if ($('user_login')) $('user_login').focus();
};

function killeditor(id){
    if (id == null) id = 'visual_editor';
    if($(id)){
        tinyMCE.triggerSave(true,true);
        tinyMCE.execCommand( 'mceRemoveControl', true, id);
    }
}

function reviveEditor(id){
    if (id == null) id = 'visual_editor';
    if($(id)){
        tinyMCE.execCommand( 'mceAddControl', true, id);
    }
}

function relation_size(side,width,heigth,aspect_ratio){
  if(side == "width"){
    if($(aspect_ratio).value == "4:3"){
      if($(width).value > 604){$(width).value = 604;} 
      $(heigth).value = (($(width).value*3)/4).toFixed(0);
    }
    else{
      if($(width).value > 604){$(width).value = 604;} 
      $(heigth).value = (($(width).value*9)/16).toFixed(0);    
    }
  }
  else{
    if($(aspect_ratio).value == "4:3"){
      if($(heigth).value > 453){$(heigth).value = 453;} 
      $(width).value = (($(heigth).value*4)/3).toFixed(0);
    }
    else{
      if($(heigth).value > 340){$(heigth).value = 340;} 
      $(width).value = (($(heigth).value*16)/9).toFixed(0);    
    }
  }
}

var Media = Class.create({
	initialize: function(){
		this.fields = [];
		this.counter = 0;

	},
  set_counter: function(counter){
    //this.counter = counter
  },
	set_name: function(name){
		this.name = name;
	},
	set_help_text: function(name){
		this.help_text = name;
	},
	set_list_caption_singular: function(name){
		this.list_caption_singular = name;
	},
	set_list_caption_plural: function(name){
		this.list_caption_plural = name;
	},
	// Limit = 0 -> no limit
	add_field: function(field, limit){
		this.fields[field] = {size: 0, max: limit};
	},
  hack_order_elements: function(sort_ul) {
    if(!$('sortHack')) new Insertion.Bottom('sort_ul.id', '<li id=sortHack" class="hide"></li>');
  },
  order_elements: function(sort_list) {
    if($('sortHack')) Element.remove('sortHack');
    $A($(sort_list).childNodes).each(function(li,index){
        li.childNodes[1].value = index;
    });
  },
	//Adds a new element to a media field
	add_element: function(field, id, content, name){
		uniq = this.name+"_"+field;
		uniq_id = this.name+"_"+field+"_"+id;
		$(field+"_relations_list").insert(""+
			"<li id='"+field+"_element_"+id+"' class='name_relations'>"+
				"<input type='hidden' name='"+this.name+"["+field+"_ids]["+this.counter+"][id]' value='"+id+"'/>"+
        "<input type='hidden' name='"+this.name+"["+field+"_ids]["+this.counter+"][order]' value='"+this.counter+"'/>"+
				content+""+
				"<div class='text_associat'>"+
					"<strong>Text associat: </strong>"+
					"<div style='display: inline;'>"+
						"<span id='"+uniq_id+"_name'>"+
							"<span>"+name+"</span>"+
							"<a class='seleccionar' style='position:relative' href='#' onclick=\"media_fields.change_name('"+uniq_id+"');return false;\">canviar text</a>"+
						"</span>"+
						"<span id='"+uniq_id+"_field' style='display:none;'>"+
							"<input type='text' class='short' onkeypress=\"if(event.keyCode==13){media_fields.change_name('"+uniq_id+"');return false;}\" name='"+this.name+"["+field+"_ids]["+this.counter+"][name]' value=\""+name.gsub('"', "&quot;")+"\" />"+
							"<a class='seleccionar' style='position:relative' href='#' onclick=\"media_fields.change_name('"+uniq_id+"');return false;\">guardar</a>"+
						"</span>"+
					"</div>"+
				"</div>"+
			      "</li>");
    this.counter++;
		this.fields[field]['size']++;
		this.reload(field);
	},

	change_name: function(uniq_id){
	  $(uniq_id+'_name').select('span').first().innerHTML = $(uniq_id+'_field').select('input').first().value;
	  $(uniq_id+'_name').toggle();
	  $(uniq_id+'_field').toggle();
	  $(uniq_id+'_field').select("input").first().focus();
	},

	//Deletes a selected element from a media field
	delete_element: function(field, id){
		$(field+"_element_"+id).remove();
		this.fields[field]['size']--;
		this.reload(field);
	},

	//Hides or show 'add' and 'search' links (and inner content)
	reload: function(field){
		var f = this.fields[field];
		var action = null;
		if(f['max'] == 0 || f['size'] < f['max']){
		  action = function(s){s.show();};
		}else{
		  action = function(s){s.hide();};
		}
		$$("#" + field + '_media_selector .sorting').each(function(e){
			if(f['size'] <= 1){
				e.hide();
			}else{
				e.show();
			}
		});
		var e = $$("#"+field+"_media_selector .list_caption").first();
		if(f['size'] == 0){
			e.innerHTML="<input type='hidden' name='"+this.name+"["+field+"_ids][]' />";
		}else if(f['size'] == 1){
			e.innerHTML="<b>"+this.list_caption_singular+"</b><br/>"+this.help_text+"<br/><br/>";
		}else{
			e.innerHTML="<b>"+this.list_caption_plural+"</b><br/>"+this.help_text+"<br/><br/>";
		}
		action($("actions_"+field));
	}
});
var media_fields = new Media();


function send_as_form(div_id, url, method, iframe_id){
  if (iframe_id == null){
    iframe_id = 'upload_frame';
  }
	var fo=$(div_id);
  	var ie=(navigator.appVersion.indexOf("MSIE")!=-1);
	var f;
  	if(ie){
	  f = $(document.createElement('<form enctype="multipart/form-data">'));
	}
	else{
	  f = document.createElement('form');
    	  f.enctype= 'multipart/form-data';
  	}
  	f.action = url;
  	f.target = iframe_id;
  	f.method = method;
	f.setAttribute('style', 'display = "hidden"');

	document.getElementsByTagName('body')[0].appendChild(f);
	var e;
	var childs = fo.childElements();
	f.appendChild(fo);
	f.submit();
	f.remove();
}
function blind_toggle(desired_elem, brother){
	if($(desired_elem).visible()){
		new Effect.BlindUp($(desired_elem));
	}else{
		new Effect.BlindUp($(brother));
		new Effect.BlindDown($(desired_elem));
	}
}

function blind_video_search(elem){
  if($(elem).visible()){
    new Effect.BlindUp($(elem));
  }else{
    new Effect.BlindDown($(elem));
  }
}

var VideoSelector = Class.create({
  set_counter: function(counter){
    this.counter = counter
  },
  set_max_videos: function(max){
    this.max_videos = max
  },
  set_name: function(name){
    this.name = name
  },
  // Limit = 0 -> no limit
	add_field: function(field, limit){
		this.fields[field] = {size: 0, max: limit};
	},
  //Adds a new element to a media field
	add_element: function(id, title){
    field = "video"
		uniq = this.name;
		uniq_id = this.name+"_"+id;
		$("video_relations_list").insert(""+
			"<li id='video_element_"+id+"' class='name_relations'>"+
				"<input type='hidden' name='"+this.name+"[video_ids][]' value='"+id+"'/>"+
				title+""+
        "<a class='visualitzar' onclick='window.open(this.href,\"Video\",\"width=396,height=301\");return false;' href='/ubiquo/videos/"+id+"'> Visualitzar </a>"+
        "<a class='seleccionar' onclick=\"video_media.delete_video('video_element_"+id+"');return false;\">Eliminar</a>"+
		    "</li>");
    this.counter ++;
	},
  //Replace elements
	replace_element: function(id, title){
    field = "video"
		uniq = this.name;
		uniq_id = this.name+"_"+id;
		$("video_relations_list").replace("<ul id='video_relations_list'> "+
			"<li id='video_element_"+id+"' class='name_relations'>"+
				"<input type='hidden' name='"+this.name+"[video_ids][]' value='"+id+"'/>"+
				title+""+
        "<a class='visualitzar' onclick='window.open(this.href,\"Video\",\"width=396,height=301\");return false;' href='/ubiquo/videos/"+id+"'> Visualitzar </a>"+
        "<a class='seleccionar' onclick=\"video_media.delete_video('video_element_"+id+"');return false;\">Eliminar</a>"+
		    "</li>"+
        "</ul>");
	},
  delete_video: function(id) {
		$(id).remove();
   	return false;
	}  
})

var video_media = new VideoSelector();

var NewsSelector = Class.create({
  set_counter: function(counter){
    this.counter = counter
  },
  set_max_news: function(max){
    this.max_news = max
  },
  set_name: function(name){
    this.name = name
  },
  // Limit = 0 -> no limit
	add_field: function(field, limit){
		this.fields[field] = {size: 0, max: limit};
	},
  //Adds a new element to a media field
	add_element: function(id, title){
    field = "news"
		uniq = this.name;
		uniq_id = this.name+"_"+id;
		$("news_relations_list").insert(""+
			"<li id='news_element_"+id+"' class='name_relations'>"+
				"<input type='hidden' name='"+this.name+"[news_ids][]' value='"+id+"'/>"+
				title+""+
		"<a class='visualitzar' onclick='window.open(this.href,\"News\",\"width=396,height=301\");return false;' href='/ubiquo/news/"+id+"'> Visualitzar </a>"+
        "<a class='seleccionar' onclick=\"news_media.delete_news('news_element_"+id+"');return false;\">Eliminar</a>"+
		    "</li>");
    this.counter ++;
	},
  //Replace elements
	replace_element: function(id, title){
    field = "news"
		uniq = this.name;
		uniq_id = this.name+"_"+id;
		$("news_relations_list").replace("<ul id='news_relations_list'> "+
			"<li id='news_element_"+id+"' class='name_relations'>"+
				"<input type='hidden' name='"+this.name+"[news_ids][]' value='"+id+"'/>"+
				title+""+
        "<a class='visualitzar' onclick='window.open(this.href,\"News\",\"width=396,height=301\");return false;' href='/ubiquo/news/"+id+"'> Visualitzar </a>"+
        "<a class='seleccionar' onclick=\"news_media.delete_news('news_element_"+id+"');return false;\">Eliminar</a>"+
		    "</li>"+
        "</ul>");
	},
  delete_news: function(id) {
		$(id).remove();
   	return false;
	}  
})

var news_media = new NewsSelector();

var ProgramGroupSelector = Class.create({
  set_counter: function(counter){
    this.counter = counter
  },
  set_name: function(name){
    this.name = name
  },
  //Adds a new element to a media field
  add_element: function(id, title, transmitting, related_text){
  	field = "program_group_item"
	uniq = this.name;
	uniq_id = this.name+"_"+id;
	$("program_relations_list").insert(""+
     "<li id='program_element_"+id+"' class='name_relations'>"+
				"<input type='hidden' name='"+this.name+"[program_ids][][program_id]' value='"+id+"'/>"+
   			    title+
        	"<a class='seleccionar' onclick=\"program_group_media.delete_program_group_item('program_element_"+id+"');return false;\">Eliminar</a>"+
			"<br>"+
      "<label class='program_group_media' for='currently_transmitting_"+this.counter+"'>Actualment en emissió</label>"+
			"<input type='checkbox' id='currently_transmitting_"+this.counter+"' name='"+this.name+"[program_ids][][currently_transmitting]' class='check_emission'/>"+
      "<a style='top: 15px;' onclick=\"program_group_media.toggle_item('textarea_"+uniq_id+"');return false;\" >Mostrar/ocultar text relacionat</a>" +
      "<textarea name='"+this.name+"[program_ids][][related_text]' id='textarea_"+uniq_id+"' style='display:none;'>"+related_text+"</textarea>"+
    "</li>");
	if(transmitting=="true"){
		$("currently_transmitting_"+this.counter).checked = true;
	}	
    this.counter ++;
	},
  toggle_item: function(id){
    $(id).toggle();
  },
  delete_program_group_item: function(id) {
    $(id).remove();
    return false;
  }
})

var program_group_media = new ProgramGroupSelector();

var AssociationSelector = Class.create({

	initialize: function(object_name, field, selector, selector_id, target_div){
		this.object_name = object_name;
		this.field = field;
		this.selector = selector;
		this.selector_id = selector_id;
		this.target_div = target_div;
		this.check_selected_values();
	},

	add_element: function(id){
		if(this.selector.select("[value='"+id+"']") == ""){
		   return false;
		}	
		if($$("[name='"+this.object_name+"["+this.field+"][]'][value='"+id+"']").first()){
		    return false;
		}
		var element_container = document.createElement('p');
		this.target_div.insert ({bottom: element_container});
		$(element_container).writeAttribute('class', 'name_relations');
		$(element_container).insert(this.selector.select("[value='"+id+"']").first().collectTextNodes() +
			"<input type='hidden' id='"+this.object_name+"_"+this.selector_id+"["+ this.field +"][]' name='"+ this.object_name +"["+ this.field +"][]' value='" + id + "'/>" +
			"<span><a onclick=\""+this.object_name+"_"+this.selector_id+"_"+this.field+"_selector.delete_element('"+id+"'); return false;\" href='#'>Treure</a></span>");
		this.check_selected_values();
		return false;
	},
	delete_element: function(id) {
		this.target_div.select(".name_relations input[id='"+ this.object_name + "_"+this.selector_id+"["+ this.field +"][]'][value='" + id + "']").first().up(".name_relations").remove();
		this.check_selected_values();
    	return false;
	},

	check_selected_values: function(){
		if ($$("[id='"+this.object_name+ "_"+this.selector_id+"["+this.field+"][]'][value='']").first()) {
	      $$("[id='"+this.object_name+ "_"+this.selector_id+"["+this.field+"][]'][value!='']").each(
            function(element){
              if (element.value!="-1"){
                element.up("p").remove();
              }
            }
          );
	      this.selector.disable();
	      this.selector.up("p").down(".add").hide();
	  	}
		if (this.target_div.select('p').size() == 0) {
	      this.selector.enable();
	      this.selector.up("p").down(".add").show();
		  var no_elements_message = document.createElement('p');
		  this.target_div.insert({bottom: no_elements_message});
		  $(no_elements_message).writeAttribute('class', 'empty');
		  $(no_elements_message).insert('No hi ha res sel·leccionat.');
		  
		}
		else {
	      this.target_div.select(".empty").each(
            function(empty_text){
		      empty_text.remove();
		    }
          );
		}
		return false;
	}
});

var PeriodicitySelector = Class.create({
    initialize: function(counter){
      this.days = ["dll","dm","dx","dj","dv","ds","du"];
      this.counter = counter;
    },
    
    add_element: function(field){
      var selected_options = "";
      var hour_start       = "";
      var minute_start     = "";
      var hour_end         = "";
      var minute_end       = "";
      var type             = "";

      if ($("mode_periodicity").checked){
        type = "periodicity";
        selected_options = this.check_selected_days();
      }
      if ($("mode_special").checked){
        type = "special";
        selected_options = $("periodicity_special_date").value;
      }
      hour_start       = this.two_digits($(type+"_start_hours").value);
      minute_start     = this.two_digits($(type+"_start_minutes").value);
      hour_end         = this.two_digits($(type+"_end_hours").value);
      minute_end       = this.two_digits($(type+"_end_minutes").value);
      
      if( selected_options != "" ){
        var uniq_element = "element_"+type+"_"+this.counter;
        if ($(uniq_element)){
          $(uniq_element).remove();
        }
        $(field+"_relations_list").insert(""+
        "<li id='"+uniq_element+"' class='name_relations'>"+
          "<div style='display:none'>"+
            "<input type='hidden' name='streaming_info["+field+"_ids][][selected_options]' value='"+selected_options+"'/>"+
            "<input type='hidden' name='streaming_info["+field+"_ids][][hour_start]' value='"+hour_start+"'/>"+
            "<input type='hidden' name='streaming_info["+field+"_ids][][minute_start]' value='"+minute_start+"'/>"+
            "<input type='hidden' name='streaming_info["+field+"_ids][][hour_end]' value='"+hour_end+"'/>"+
            "<input type='hidden' name='streaming_info["+field+"_ids][][minute_end]' value='"+minute_end+"'/>"+
            "<input type='hidden' name='streaming_info["+field+"_ids][][type]' value='"+type+"'/>"+
          "</div>"+
          selected_options +" "+hour_start+":"+minute_start+" / "+hour_end+":"+minute_end+
          "<a class='visualitzar' onclick=\"periodicity_selector.edit_periodicity('"+type+"','"+selected_options+"',"+hour_start+",'"+minute_start+"',"+hour_end+",'"+minute_end+"','"+field+"','"+this.counter+"');return false;\">Editar</a>"+
          "<a class='seleccionar' onclick=\"periodicity_selector.delete_periodicity('element_"+type+"_"+this.counter+"');return false;\">Eliminar</a>"+
        "</li>");
        this.counter++;
        this.toggle_form(field);
        this.clean_form();
      } 
    },
    
    delete_periodicity: function(field_id){
      $(field_id).remove();
    },
   
    edit_periodicity: function(type,selected_options,
                               hour_start,minute_start,
                               hour_end, minute_end, field, counter){
    if ($('element_'+type+"_"+counter)){
      $('element_'+type+"_"+counter).remove();
    }
    if (type == "periodicity"){
      selected_options.split("_").each(function(day){
          $(day).checked = true;
      });
      $(type).show();
      $("special").hide();
    }
    else{
      $("periodicity_special_date").value = selected_options;
      $(type).show();
      $("periodicity").hide();
    }
    $("mode_"+type).checked = true;
    $(type+"_start_hours").value = hour_start;
    $(type+"_start_minutes").value = minute_start;
    $(type+"_end_hours").value = hour_end;
    $(type+"_end_minutes").value = minute_end;
    this.toggle_form(field);
    },
    
    two_digits: function(number){
      return (number < 10) ? '0' + number : number;
    },
    
    clean_form: function()
    {
      $("periodicity_special_date").value = ""; 
      ["periodicity","special"].each(function(type){
        $(type+"_start_hours").value = 5;
        $(type+"_start_minutes").value = 0;
        $(type+"_end_hours").value = 5;
        $(type+"_end_minutes").value = 0;  
      });
      this.days.each(function(day){
         $(day).checked = false;
      });
    },
    
    check_selected_days: function(dll,dm,dx,dj,dv,ds,du){
       var days_selected=[];
        this.days.each(function(day){
            if($(day).checked){
              days_selected.push(day);
            }
        });
      return days_selected.join("_");
    },
    
    toggle_form: function(field){
      $("form_"+field).toggle();
    }
    
});

var SynopsiSelector = Class.create({
    initialize: function(){
    
    },
    
    add_element: function(field){
      date = $("synopsy_date").value;
      synopsy = $("synopsy_synopsy").value;
      uniq = field+"_"+date;
      uniq_element = field+"_element_"+date
      if(date != "")
      {
        if ($(uniq_element)){
          $(uniq_element).remove();
        }
        $(field+"_relations_list").insert(""+
          "<li id='"+uniq_element+"' class='name_relations'>"+
            "<div style='display:none'>"+
              "<input type='hidden' name='streaming_info["+field+"_ids][][date]' value='"+date+"'/>"+
              "<textarea name='streaming_info["+field+"_ids][][synopsy]' style='visibility:hidden'>"+synopsy+"</textarea>"+
             "</div>"+
            date+""+
            "<a class='visualitzar' onclick=\"synopsy_selector.edit_synopsy('"+date+"','"+synopsy+"','"+field+"');return false;\">Editar</a>"+
            "<a class='seleccionar' onclick=\"synopsy_selector.delete_synopsy('"+field+"_element_"+date+"');return false;\">Eliminar</a>"+
          "</li>"+
        "");
        $("form_"+field).toggle(); 
        this.clean_form();
      }
    },
    
    clean_form: function(){
      $("synopsy_date").value    = "";
      $("synopsy_synopsy").value = "";
    },
    
    edit_synopsy: function(date,synopsy,field){
      //$(field+"_element_"+date).remove();
      $("synopsy_date").value = date;
      $("synopsy_synopsy").value = synopsy;
      this.toggle_form(field);
    },
    
    delete_synopsy: function(field_id){
      $(field_id).remove();
    },
    
    toggle_form: function(field){
      $("form_"+field).toggle();
    }
    
    
});

var TimeTableSelector = Class.create({
  initialize: function(object_name, field, key, selector_id, target_div, remove_extra_function) {
    this.object_name = object_name;
    this.field = field;
    this.key = key;
    this.selector_id = selector_id;
    this.target_div = target_div;
    this.remove_extra_function = (remove_extra_function) ? remove_extra_function : "";
    this.check_selected_values();
  },

  add_element: function(selector_container, element_value) {
   if (!Object.isUndefined(element_value)) {
      var element_container = document.createElement('p');
	  this.target_div.insert ({bottom: element_container});
      $(element_container).writeAttribute('class', 'name_relations');
      $(element_container).insert("<span class='time_table'>" + element_value + "</span>");
      $(element_container).insert("<span><a onclick=\""+this.object_name+"_"+this.selector_id+"_"+this.key+"_selector.delete_element(this.up('p')); return false;\" href='#'>Treure</a></span>");
      this.check_selected_values();
    }
    else {
      var days_inputs = new Array();
      selector_container.select('input').each(function(e){
        if (e.type == 'checkbox') {
          days_inputs.push(e);
        }
        });
      days_inputs_values = new Array();
      days_inputs.each(function(d) {
        days_inputs_values.push(d.checked);
        return false;
      });
      days_selected = days_inputs.reject(function(d) { return !d.checked; });
      if (!days_selected.any()) { return false; }
      days = new Array();
      days_selected.each(function(d) {
        days.push(d.name);
      });
      time_inputs_start = selector_container.select('select.time_start');
      time_start = new Array();
      time_inputs_start.each(function(t) {
        var time_value = (t.value < 10) ? "0" + t.value : t.value;
        time_start.push(time_value);
      });
      time_inputs_end = selector_container.select('select.time_end');
      time_end = new Array();
      time_inputs_end.each(function(t) {
        var time_value = (t.value < 10) ? "0" + t.value : t.value;
        time_end.push(time_value);
      });
      var element_container = document.createElement('p');
	  $(element_container).addClassName('name_relations');	
	  this.target_div.insert({bottom: element_container});
      var days_container = document.createElement('span');
      $(days_container).writeAttribute('class', 'time_table');
      var days_container_values = "#{days} - #{time_start}".interpolate(
        {
          days: days.join(', '),
          time_start: time_start.join(':')
        });
      days_container_values += (time_end.any()) ? " / #{time_end}".interpolate(
        { time_end: time_end.join(':') }) : "";
      $(element_container).insert(days_container);
      $(days_container).insert(days_container_values);
      var time_tables_values = days_inputs_values;
      time_tables_values.push(time_start.join(':'));
      if (time_end.any()) {
        time_tables_values.push(time_end.join(':'));
      }
	  $(element_container).insert("<input type='hidden' name='#{name}' value='#{value}'/>".interpolate(
        {
          name: this.object_name + "[" + this.field + "][][" + this.key + "]",
          value: time_tables_values
        }
      ));
      $(element_container).insert("<a onclick=\"#{remove_extra_function};#{class_name}_selector.delete_element($(this).up('p'));return false;\" href='#'>Treure</a>".interpolate(
      {
       class_name: this.object_name + "_" + this.selector_id + "_" + this.key,
       remove_extra_function : this.remove_extra_function
      }
      ));
	
      this.check_selected_values();
    }
    return false;
  },

  all_day_emission: function(){
	var days = ["dl","dm","dx","dj","dv","ds","du"];
	var days_inputs_values = [true,true,true,true,true,true,true];
    var time_start = ["00","00"];
    var time_end   = ["23","55"];

    var element_container = document.createElement('p');
	$(element_container).addClassName('name_relations');	
	this.target_div.insert({bottom: element_container});
    var days_container = document.createElement('span');
    $(days_container).writeAttribute('class', 'time_table');
    var days_container_values = "Qualsevol dia a qualsevol hora"
    $(element_container).insert(days_container);
    $(days_container).insert(days_container_values);
    var time_tables_values = days_inputs_values;
    time_tables_values.push(time_start.join(':'));
    if (time_end.any()) {
      time_tables_values.push(time_end.join(':'));
    }
    $(element_container).insert("<input type='hidden' name='#{name}' value='#{value}'/>".interpolate(
      {
        name: this.object_name + "[" + this.field + "][][" + this.key + "]",
        value: time_tables_values
      }
    ));
    $(element_container).insert("<a onclick=\"#{class_name}_selector.delete_element($(this).up('p'));return false;\" href='#'>Treure</a>".interpolate(
      {
	   class_name: this.object_name + "_" + this.selector_id + "_" + this.key,
  	   remove_extra_function : this.remove_extra_function
	  }
    ));

    return false;	
  },

  delete_element: function(item_container) {    
    $(item_container).remove();
    this.check_selected_values();
    return false;
  },

  check_selected_values: function() {
    if (this.target_div.select('p').size() == 0) {
      var no_elements_message = document.createElement('p');
      this.target_div.insert({bottom: no_elements_message});
      $(no_elements_message).writeAttribute('class', 'empty');
      $(no_elements_message).insert('No hi ha res sel·leccionat.');
      
    }
    else {
      this.target_div.select(".empty").each(function(empty_text){
        empty_text.remove();
      });
    }
    return false;
  }
  

});

