IE bugfixes, js simplification
[old-projects.git] / philter / philter / philter.js
index 806062d..f8fda11 100644 (file)
@@ -29,10 +29,10 @@ function getElement(obj) {
     return false;
 }
 
-function del_onclick(button) {
-    if(window.confirm("Voulez vous rĂ©ellement supprimer cette adresse mail ?")) {
-        getElement('emailsDel').value = button.name.slice(1);
-        button.form.submit();
+function del_onclick(val) {
+    if(window.confirm("Do you really want to delete this email address ?")) {
+        getElement('emailsDel').value = val;
+        document.forms['emails'].submit();
     }
 }
 
@@ -104,12 +104,14 @@ var matches_i = 0;
 
 /********** RULE.ACTION FORM FUNCTIONS **********/
 
-function createActionSelect(data,base) {
+function createActionSelect(div,data) {
     var i,j;
     var select = document.createElement("select");
     var sel = 0;
-    select.name = base+'[0]';
+    select.name = div.name+'[0]';
 
+    // OG: must insert select node before creating options because of IE5 bug
+    div.appendChild(select);
     for(i=0, j=0; i<actions_list.length; i++) {
         if(data==i) sel = j;
         if(actions_list[i]) select.options[j++] = new Option(actions_list[i],i,false,(data==i));
@@ -135,8 +137,7 @@ function createActionRow(Node,data) {
 
     div.appendChild(document.createTextNode(" "));
 
-    var select = createActionSelect(data[0],div.name);
-    div.appendChild(select);
+    var select = createActionSelect(div,data[0]);
 
     actions_func[select.options[select.selectedIndex].value](div,data);
 }
@@ -147,12 +148,14 @@ function newAction() {
 
 /********** RULE.MATCH FORM FUNCTIONS **********/
 
-function createMatchSelect(data,base) {
+function createMatchSelect(div,data) {
     var i,j;
     var select = document.createElement("select");
     var sel = 0;
-    select.name = base+'[0]';
+    select.name = div.name+'[0]';
 
+    // OG: must insert select node before creating options because of IE5 bug
+    div.appendChild(select);
     for(i=0, j=0; i<matches_list.length; i++) {
         if(data==i) sel = j;
         if(matches_list[i]) select.options[j++] = new Option(matches_list[i],i,false,(data==i));
@@ -178,8 +181,7 @@ function createMatchRow(Node,data) {
 
     div.appendChild(document.createTextNode(" "));
 
-    var select = createMatchSelect(data[0],div.name);
-    div.appendChild(select);
+    var select = createMatchSelect(div,data[0]);
 
     matches_func[select.options[select.selectedIndex].value](div,data);
 }