1 31 32 package org.opencms.workplace.demos.widget; 33 34 import org.opencms.jsp.CmsJspActionElement; 35 import org.opencms.main.CmsContextInfo; 36 import org.opencms.scheduler.CmsScheduledJobInfo; 37 import org.opencms.widgets.CmsCheckboxWidget; 38 import org.opencms.widgets.CmsInputWidget; 39 import org.opencms.widgets.CmsVfsFileWidget; 40 import org.opencms.workplace.CmsWidgetDialog; 41 import org.opencms.workplace.CmsWidgetDialogParameter; 42 import org.opencms.workplace.CmsWorkplaceSettings; 43 44 import java.util.ArrayList ; 45 import java.util.Iterator ; 46 import java.util.List ; 47 import java.util.Map ; 48 import java.util.TreeMap ; 49 50 import javax.servlet.http.HttpServletRequest ; 51 import javax.servlet.http.HttpServletResponse ; 52 import javax.servlet.jsp.PageContext ; 53 54 64 public class CmsAdminWidgetDemo5 extends CmsWidgetDialog { 65 66 67 public static final String DIALOG_TYPE = "widgetdemo5"; 68 69 70 CmsContextInfo m_contextInfo; 71 72 73 CmsScheduledJobInfo m_jobInfo; 74 75 80 public CmsAdminWidgetDemo5(CmsJspActionElement jsp) { 81 82 super(jsp); 83 } 84 85 92 public CmsAdminWidgetDemo5(PageContext context, HttpServletRequest req, HttpServletResponse res) { 93 94 this(new CmsJspActionElement(context, req, res)); 95 } 96 97 100 public void actionCommit() { 101 102 104 } 105 106 111 public String buildDemo5Form() { 112 113 StringBuffer result = new StringBuffer (1024); 114 115 try { 116 result.append(createDialogHtml()); 118 } catch (Throwable t) { 119 t.printStackTrace(); 121 } 122 return result.toString(); 123 } 124 125 128 protected void defineWidgets() { 129 130 m_jobInfo = new CmsScheduledJobInfo(); 131 m_contextInfo = new CmsContextInfo(); 132 133 addWidget(new CmsWidgetDialogParameter(m_jobInfo, "jobName", new CmsInputWidget())); 134 addWidget(new CmsWidgetDialogParameter(m_jobInfo, "className", new CmsInputWidget())); 135 addWidget(new CmsWidgetDialogParameter(m_jobInfo, "cronExpression", new CmsInputWidget())); 136 137 addWidget(new CmsWidgetDialogParameter(m_contextInfo, "userName", new CmsInputWidget())); 138 addWidget(new CmsWidgetDialogParameter(m_contextInfo, "projectName", new CmsInputWidget())); 139 addWidget(new CmsWidgetDialogParameter(m_contextInfo, "siteRoot", new CmsVfsFileWidget())); 140 addWidget(new CmsWidgetDialogParameter(m_contextInfo, "requestedUri", new CmsVfsFileWidget())); 141 addWidget(new CmsWidgetDialogParameter(m_contextInfo, "localeName", new CmsInputWidget())); 142 addWidget(new CmsWidgetDialogParameter(m_contextInfo, "encoding", new CmsInputWidget())); 143 addWidget(new CmsWidgetDialogParameter(m_contextInfo, "remoteAddr", new CmsInputWidget())); 144 145 addWidget(new CmsWidgetDialogParameter(m_jobInfo, "reuseInstance", new CmsCheckboxWidget())); 146 addWidget(new CmsWidgetDialogParameter(m_jobInfo, "active", new CmsCheckboxWidget())); 147 148 List testList = new ArrayList (); 149 testList.add("value1"); 150 testList.add("another value"); 151 addWidget(new CmsWidgetDialogParameter(testList, "theList", new CmsInputWidget())); 152 153 Map testMap = new TreeMap (); 154 testMap.put("key1", "value1"); 155 testMap.put("key2", "another value"); 156 addWidget(new CmsWidgetDialogParameter(testMap, "theMap", new CmsInputWidget())); 157 } 158 159 162 protected String [] getPageArray() { 163 164 return new String [] {"page1"}; 165 } 166 167 170 protected void initMessages() { 171 172 addMessages(Messages.get().getBundleName()); 174 addMessages(org.opencms.workplace.demos.Messages.get().getBundleName()); 176 super.initMessages(); 177 } 178 179 182 protected void initWorkplaceRequestValues(CmsWorkplaceSettings settings, HttpServletRequest request) { 183 184 setParamDialogtype(DIALOG_TYPE); 186 187 fillParamValues(request); 189 190 defineWidgets(); 192 fillWidgetValues(request); 193 194 if (DIALOG_SAVE.equals(getParamAction())) { 196 setAction(ACTION_SAVE); 198 List errors = commitWidgetValues(); 199 if (errors.size() > 0) { 200 Iterator i = errors.iterator(); 201 while (i.hasNext()) { 202 Exception e = (Exception )i.next(); 203 System.err.println(e.getMessage()); 204 if (e.getCause() != null) { 205 System.err.println("Cause: " + e.getCause().getMessage()); 206 } 207 } 208 setAction(ACTION_DEFAULT); 209 } 210 } else if (DIALOG_OK.equals(getParamAction())) { 211 setAction(ACTION_CANCEL); 213 } else if (DIALOG_CANCEL.equals(getParamAction())) { 214 setAction(ACTION_CANCEL); 216 } else if (EDITOR_ACTION_ELEMENT_ADD.equals(getParamAction())) { 217 setAction(ACTION_ELEMENT_ADD); 218 actionToggleElement(); 219 setAction(ACTION_DEFAULT); 220 } else if (EDITOR_ACTION_ELEMENT_REMOVE.equals(getParamAction())) { 221 setAction(ACTION_ELEMENT_REMOVE); 222 actionToggleElement(); 223 setAction(ACTION_DEFAULT); 224 } else { 225 setAction(ACTION_DEFAULT); 227 } 228 } 229 } | Popular Tags |