1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.exoplatform.ecm.webui.form.field;
18
19 import org.exoplatform.ecm.webui.form.DialogFormField;
20 import org.exoplatform.ecm.webui.utils.DialogFormUtil;
21 import org.exoplatform.services.cms.JcrInputProperty;
22 import org.exoplatform.webui.form.UIFormInputBase;
23 import org.exoplatform.webui.form.UIFormStringInput;
24
25
26
27
28
29
30
31 public class UIFormTextField extends DialogFormField{
32
33 public UIFormTextField(String name, String label, String[] arguments) {
34 super(name, label, arguments);
35 }
36
37 @SuppressWarnings("unchecked")
38 public <T extends UIFormInputBase> T createUIFormInput() throws Exception {
39 UIFormStringInput uiInput = new UIFormStringInput(name, name, defaultValue) ;
40
41 if (validateType != null) {
42 DialogFormUtil.addValidators(uiInput, validateType);
43 }
44 if(label != null && label.length()!=0) {
45 uiInput.setLabel(label);
46 }
47 if("password".equals(type)) uiInput.setType(UIFormStringInput.PASSWORD_TYPE);
48 return (T)uiInput;
49 }
50
51 public boolean isEditIfNull() { return "if-null".equals(editable); }
52
53 public JcrInputProperty createJcrInputProperty (){
54 JcrInputProperty inputProperty = new JcrInputProperty();
55 inputProperty.setJcrPath(jcrPath);
56 if(mixinTypes != null) inputProperty.setMixintype(mixinTypes) ;
57 if(jcrPath.equals("/node") && nodeType != null ) inputProperty.setNodetype(nodeType);
58 return inputProperty;
59 }
60 }