Update of 
/var/cvs/contributions/CMSContainer/cmsc/taglib/src/java/com/finalist/cmsc/taglib/form
In directory 
james.mmbase.org:/tmp/cvs-serv22820/cmsc/taglib/src/java/com/finalist/cmsc/taglib/form

Modified Files:
        CheckboxTag.java 
Log Message:
CMSC-632 Was broken, not anymore :-)


See also: 
http://cvs.mmbase.org/viewcvs/contributions/CMSContainer/cmsc/taglib/src/java/com/finalist/cmsc/taglib/form
See also: http://www.mmbase.org/jira/browse/CMSC-632


Index: CheckboxTag.java
===================================================================
RCS file: 
/var/cvs/contributions/CMSContainer/cmsc/taglib/src/java/com/finalist/cmsc/taglib/form/CheckboxTag.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -b -r1.6 -r1.7
--- CheckboxTag.java    16 Jan 2008 11:22:13 -0000      1.6
+++ CheckboxTag.java    21 Jan 2008 12:29:02 -0000      1.7
@@ -25,13 +25,14 @@
    public String var;
    public String value;
    public Object selected;
+       public boolean checked;
 
    @Override
    public void doTag() throws JspException, IOException {
       PageContext ctx = (PageContext) getJspContext();
 
-      ctx.getOut().print("<input type=\"checkbox\" class=\"checkbox\" name=\"" 
+ var + "\" value=\"" + value + "\" ");
-      if (isSelected(ctx.getRequest()) == true) {
+               ctx.getOut().print("<input type=\"checkbox\" class=\"checkbox\" 
style=\"width:15px;\" name=\"" + var + "\" value=\"" + value + "\" ");
+               if (isSelected(ctx.getRequest()) == true || this.checked == 
true) {
          ctx.getOut().print("checked=\"checked\"");
       }
       ctx.getOut().print(">");
@@ -64,11 +65,17 @@
                return true;
             }
          } else if (selectedValues instanceof List) {
-            List<String> selectedItems = (ArrayList<String>) selectedValues;
-            if (selectedItems.contains(value)) {
+                               List selectedItems = (ArrayList) selectedValues;
+                               if (selectedItems != null && 
selectedItems.size() > 0) {
+                                       for (int i = 0; i < 
selectedItems.size(); i++) {
+                                               String item = 
String.valueOf(selectedItems.get(i));
+                                               if (item.equals(value)) {
                return true;
             }
          }
+
+                               }
+                       }
       }
       return false;
    }
@@ -77,6 +84,19 @@
       this.var = var;
    }
 
+
+       public void setSelected(Object selected) {
+               this.selected = selected;
+       }
+
+       public boolean isChecked() {
+               return checked;
+       }
+
+       public void setChecked(boolean checked) {
+               this.checked = checked;
+       }
+
    public String getValue() {
       return value;
    }
@@ -85,8 +105,4 @@
       this.value = value;
    }
 
-   public void setSelected(Object selected) {
-      this.selected = selected;
-   }
-
 }
\ No newline at end of file
_______________________________________________
Cvs mailing list
Cvs@lists.mmbase.org
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to