1 10 package org.mmbase.util; 11 12 import java.util.*; 13 import org.mmbase.util.logging.*; 14 15 41 42 public class HTMLElementSelect extends HTMLElement { 43 44 private static Logger log = Logging.getLoggerInstance(HTMLElementSelect.class.getName()); 46 47 50 public HTMLElementSelect() { 51 } 52 53 56 protected String generate() { 57 if (selected != null && selected.equals("null")) { 59 sel = false; 60 } 61 if (exclude != null && exclude.equals("null")) { 62 ex = false; 63 } 64 String html = ""; 65 if (moreValues) { 66 html += "<select name=\"" + name + "\" "; 67 if (size != null) html += "size=\"" + size+"\""; 68 if (multiple) { 69 html += " multiple"; 70 } 71 html += ">"; 72 if (empty) html += "<option></option>"; 73 74 String val = null; 75 Vector list = new Vector(); 76 Vector vec = valuesList; 77 if (sorted!=null && (sorted.equals("ALPHA") || sorted.equals("\"ALPHA\""))) { 79 vec=SortedVector.SortVector(vec); 80 } 81 Enumeration e = vec.elements(); 82 int j=0; 83 while (e.hasMoreElements() && ((j++<max)||max==-1)) { 84 val = (String ) e.nextElement(); 85 if (sel && selected.equalsIgnoreCase(val)) { 86 list.addElement("<option selected>" + val + "</option>\n"); 87 } else if (!ex || (!exclude.equalsIgnoreCase(val))) { 88 list.addElement("<option>" + val + "</option>\n"); 89 } 90 112 } 113 Enumeration le = list.elements(); 114 int i=0; 115 String h = ""; 116 while(le.hasMoreElements()) 117 { 118 while( i < 22 && le.hasMoreElements() ) 119 { 120 h += (String ) le.nextElement(); 121 i++; 122 } 123 html += h; 124 h = ""; 125 i = 0; 126 } 127 html += "</select>" ; 128 } 129 else if (moredouble) 130 { 131 html += "<select name=\"" + name + "\" "; 133 if (size != null) html += "size=\"" + size+"\""; 134 if (multiple) { 135 html += " multiple"; 136 } 137 html += ">"; 138 if (empty) html += "<option></option>"; 139 140 String val = null; 141 String val2 = null; 142 Vector list = new Vector(); 143 Enumeration e = valuesList.elements(); 144 while (e.hasMoreElements()) { 145 val = (String ) e.nextElement(); 146 if (e.hasMoreElements()) { 147 val2 = (String ) e.nextElement(); 148 } else { 149 log.error("HTMLElementSelect.generate: Expecting a double list (the DOUBLE key word was selected"); 150 return html; 151 } 152 if (sel && selected.equalsIgnoreCase(val)) { 153 list.addElement("<option value=\""+val2+"\" selected>" + val + "</option>\n"); 154 } else if (!ex || (!exclude.equalsIgnoreCase(val))) { 155 list.addElement("<option value=\""+val2+"\">" + val + "</option>\n"); 156 } 157 190 } 191 Enumeration le = list.elements(); 193 int i=0; 194 String h = ""; 195 while(le.hasMoreElements()) { 196 while( i < 22 && le.hasMoreElements()) { 197 h += (String ) le.nextElement(); 198 i++; 199 } 200 html += h; 201 h = ""; 202 i = 0; 203 } 204 html += "</select>" ; 205 } else { 206 html += "<select name=\"" + name + "\" "; 207 if (size != null) html += "size=\"" + size+"\""; 208 if (multiple) { 209 html += " multiple"; 210 } 211 html += ">"; 212 html += "<option "; 213 if (sel) html += " selected"; 214 html += ">" + values + "</option></select>" ; 215 } 216 return html; 217 } 218 } 219 | Popular Tags |