TemplateUtils.java

00001 
00025 package org.openmobileis.services.util;
00026 
00027 import java.util.Calendar;
00028 
00029 import org.openmobileis.common.util.collection.Array;
00030 import org.openmobileis.modules.common.data.Label;
00031 
00032 import freemarker.template.SimpleHash;
00033 import freemarker.template.SimpleList;
00034 
00035 /*
00036  * Title:        OpenMobileIS project source <BR>
00037  * Description:
00038  * @author      Philippe Delrieu
00039  * @since       JDK 1.1
00040  * @version 1.0.
00041  */
00042 
00043 public final class TemplateUtils {
00044 
00045 
00046 
00068     public static SimpleHash getInputDate(
00069         int selectedDay,
00070         int selectedMonth,
00071         int selectedYear,
00072         int selectedHours,
00073         int selectedMinutes
00074         ) {
00075 
00076         SimpleHash inputDate = new SimpleHash();
00077         int cpt;
00078         SimpleList list;
00079         SimpleHash element;
00080         // fill day
00081         list = new SimpleList();
00082         for (cpt = 1; cpt <= 31; cpt++) {
00083             element = new SimpleHash();
00084             element.put("select", selectedDay == cpt);
00085             element.put("value", format(cpt));
00086             list.add(element);
00087         }
00088         inputDate.put("dayList", list);
00089         // fill month
00090         list = new SimpleList();
00091         for (cpt = 1; cpt <= 12; cpt++) {
00092             element = new SimpleHash();
00093             element.put("select", selectedMonth + 1 == cpt);
00094             element.put("value", format(cpt));
00095             list.add(element);
00096         }
00097         inputDate.put("monthList", list);
00098 
00099         list = new SimpleList();
00100         Calendar cal = Calendar.getInstance();
00101         int currentYear = cal.get(Calendar.YEAR);
00102         for (cpt = currentYear - 1; cpt <= currentYear + 3; cpt++) {
00103             element = new SimpleHash();
00104             element.put("value", String.valueOf(cpt));
00105             element.put("select", selectedYear == cpt);
00106             list.add(element);
00107         }
00108         inputDate.put("yearList", list);
00109         // fill hours
00110         list = new SimpleList();
00111         for (cpt = 0; cpt <= 23; cpt++) {
00112             element = new SimpleHash();
00113             element.put("value", format(cpt));
00114             element.put("select", selectedHours == cpt);
00115             list.add(element);
00116         }
00117         inputDate.put("hourList", list);
00118         // fill minutes
00119         list = new SimpleList();
00120         for (cpt = 0; cpt <= 59; cpt += 5) {
00121             element = new SimpleHash();
00122             element.put("value", format(cpt));
00123             element.put("select", selectedMinutes == cpt);
00124             list.add(element);
00125         }
00126         inputDate.put("minutesList", list);
00127 
00128         // return the input date
00129         return inputDate;
00130     }
00131     
00132     public static SimpleHash getInputDuration(int selectedHours, int selectedMinutes, int maxHour){
00133         SimpleList list;
00134         SimpleHash element;
00135         SimpleHash inputDuration = new SimpleHash();
00136         int cpt;
00137       // fill hours
00138         list = new SimpleList();
00139         for (cpt = 0; cpt <= maxHour; cpt++) {
00140             element = new SimpleHash();
00141             element.put("value", format(cpt));
00142             element.put("select", selectedHours == cpt);
00143             list.add(element);
00144         }
00145         inputDuration.put("hourList", list);
00146         // fill minutes
00147         list = new SimpleList();
00148         for (cpt = 0; cpt <= 59; cpt += 5) {
00149             element = new SimpleHash();
00150             element.put("value", format(cpt));
00151             element.put("select", selectedMinutes == cpt);
00152             list.add(element);
00153         }
00154         inputDuration.put("minutesList", list);
00155         
00156         return inputDuration;
00157     }
00158 
00159     public static String format(int value) {
00160         if (value < 10) {
00161             return "0" + value;
00162         } else {
00163             return String.valueOf(value);
00164         }
00165     }
00166  
00167     
00182     public static SimpleList fillFormPopUpWithLabel(Array labelArray, String selectedId)    {
00183         SimpleList list = new SimpleList();
00184         SimpleHash listElement;
00185         for (int i=0; i<labelArray.size(); i++) {
00186             Label lab = (Label) labelArray.get(i);
00187             listElement = new SimpleHash();
00188             listElement.put("name", lab.getLabel());
00189             if ((selectedId!=null)&&(selectedId.equals(lab.getLabelId())))  {
00190                 listElement.put("selected", true);
00191             } else  {
00192                 listElement.put("selected", false);
00193             }
00194             listElement.put("value", lab.getLabelId());
00195             list.add(listElement);      
00196         }
00197         return list;
00198     }
00199 
00200 }

Generated on Mon Dec 4 11:03:30 2006 for OpenMobileIS by  doxygen 1.5.1-p1