Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Aug 3rd, 2012  |  syntax: None  |  size: 1.33 KB  |  hits: 10  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. var ParticipantFilter = new Class({
  2.  
  3.   initialize: function(filtersContainer, availableFilters) {
  4.     this.filtersContainer = filtersContainer;
  5.     this.availableFilters = availableFilters;
  6.     this.addButton = $('add_filter');
  7.  
  8.     this.attachEvents();
  9.   },
  10.  
  11.   attachEvents: function() {
  12.     this.addButton.addEvent('click', this.addFilterSelect.bind(this));
  13.   },
  14.  
  15.   addFilterSelect: function() {
  16.     var count = $$('.filter_wrapper').length;
  17.  
  18.     var filterWrapper = new Element('div', {
  19.       id: "filter_wrapper_" + count,
  20.       class: 'filter_wrapper',
  21.     });
  22.  
  23.     var filterSelect = new Element('select', {
  24.       id: "filter_select_" + count
  25.     });
  26.  
  27.     this.availableFilters.each(function(filter, key){
  28.       var filterOption = new Element('option', {
  29.         value: key,
  30.         text: filter.text
  31.       });
  32.       filterOption.inject(filterSelect);
  33.     });
  34.  
  35.     filterSelect.addEvent('change', function(){
  36.       addFilterInput(this);
  37. participant_filter.js:36Uncaught ReferenceError: addFilterInput is not defined
  38.     });
  39.  
  40.     filterSelect.inject(filterWrapper);
  41.     filterWrapper.inject(this.filtersContainer);
  42.   },
  43.  
  44.   addFilterInput: function(filterSelect) {
  45.     var selected = filterSelect.getSelected();
  46.     var filter = availableFilters.get(selected.get('value'));
  47.  
  48.     console.log(filter);
  49.   }
  50.  
  51. });