/*** * SelectMultiple */ var SELECT_MULTIPLE_ELM = []; function initSelectMultiple(s_m_container_id, default_value){ var s_m_container = $(s_m_container_id); if(!s_m_container.down('select')) return; SELECT_MULTIPLE_ELM.push(s_m_container); var select = s_m_container.down('select'); var title = s_m_container.readAttribute('alt'); var wid = s_m_container.readAttribute('width'); var add_html = ''; var link_id = s_m_container.identify() + '_link'; add_html += ''; var options_id = s_m_container.identify() + '_options'; var button_id = s_m_container.identify() + '_button'; var title_id = s_m_container.identify() + '_title'; add_html += ''; s_m_container.innerHTML += add_html; var params = $H({ s_m_container : s_m_container, default_value: default_value, select : select, link_id : link_id, options_id : options_id, button_id : button_id, title_id : title_id }); observeSelectMultiple(params); } function observeSelectMultiple(params){ var s_m_container = params.get('s_m_container'); var default_value = params.get('default_value'); var select = params.get('select'); var link_id = params.get('link_id'); var options_id = params.get('options_id'); var button_id = params.get('button_id'); var title_id = params.get('title_id'); //document.observe('dom:loaded',function(){ Event.observe(window, 'load', function(){ setTimeout(function(){ var multiple = new Control.SelectMultiple(select.identify(), options_id,{ checkboxSelector: 'input[type=checkbox].'+options_id, nameSelector: 'td.select_multiple_name.'+options_id, afterChange: function(){ if(multiple && multiple.setSelectedRows) multiple.setSelectedRows(); } }); if(default_value) multiple.setValue(default_value); //adds and removes highlighting from table rows multiple.setSelectedRows = function(){ this.checkboxes.each(function(checkbox){ var tr = $(checkbox.parentNode.parentNode); tr.removeClassName('selected'); if(checkbox.checked){ tr.addClassName('selected'); } }); }.bind(multiple); multiple.checkboxes.each(function(checkbox){ $(checkbox).observe('click',multiple.setSelectedRows); }); multiple.setSelectedRows(); //link open and closing $(link_id).observe('click',function(event){ $(this.select).style.visibility = 'hidden'; if(Prototype.Browser.IE){ var idx = 0 for(j=0;j