[pal-cvs 3621] [1356] added day view.

Back to archive index

svnno****@sourc***** svnno****@sourc*****
2008年 11月 17日 (月) 18:09:12 JST


Revision: 1356
          http://svn.sourceforge.jp/cgi-bin/viewcvs.cgi?root=pal&view=rev&rev=1356
Author:   shinsuke
Date:     2008-11-17 18:09:12 +0900 (Mon, 17 Nov 2008)

Log Message:
-----------
added day view.

Modified Paths:
--------------
    scheduler/trunk/src/main/java/jp/sf/pal/scheduler/action/user/CalendarAction.java
    scheduler/trunk/src/main/webapp/WEB-INF/view/user/routineSchedule/confirm.jsp
    scheduler/trunk/src/main/webapp/WEB-INF/view/user/singleSchedule/confirm.jsp

Added Paths:
-----------
    scheduler/trunk/src/main/webapp/WEB-INF/view/user/calendar/personalday.jsp


-------------- next part --------------
Modified: scheduler/trunk/src/main/java/jp/sf/pal/scheduler/action/user/CalendarAction.java
===================================================================
--- scheduler/trunk/src/main/java/jp/sf/pal/scheduler/action/user/CalendarAction.java	2008-11-16 21:57:30 UTC (rev 1355)
+++ scheduler/trunk/src/main/java/jp/sf/pal/scheduler/action/user/CalendarAction.java	2008-11-17 09:09:12 UTC (rev 1356)
@@ -34,12 +34,18 @@
 
     public List<Map<String, Object>> calendarDayItems;
 
-    public List<Map<String, String>> weekDayItems;
+    public List<Map<String, Object>> weekDayItems;
 
-    public List<List<List<Map<String, String>>>> eventInWeekItems;
+    public List<List<List<Map<String, Object>>>> eventInWeekItems;
 
-    public List<List<Map<String, String>>> allDayEventInWeekItems;
+    public List<List<Map<String, Object>>> allDayEventInWeekItems;
 
+    public List<List<Map<String, Object>>> eventInDayItems;
+
+    public List<Map<String, Object>> allDayEventInDayItems;
+
+    public int maxCols;
+
     @ActionForm
     private CalendarForm calendarForm;
 
@@ -85,15 +91,235 @@
 
     }
 
+    private boolean compare(int year1, int month1, int date1, int year2,
+            int month2, int date2) {
+        if (year1 == year2 && month1 == month2 && date1 == date2) {
+            return true;
+        }
+        return false;
+    }
+
+    private Map<String, Object> createEmptyEvent() {
+        Map<String, Object> emptyEvent = new HashMap<String, Object>();
+        emptyEvent.put("startEvent", "true");
+        emptyEvent.put("cols", "1");
+        emptyEvent.put("rows", "1");
+        emptyEvent.put("time", "none");
+        return emptyEvent;
+    }
+
+    private void putEventSchedule(EventSchedule eventSchedule, Time startTime,
+            Time endTime) {
+        if (startTime != null && endTime != null) {
+            int sIdx = DateUtil.getHours(startTime);
+            int eIdx = DateUtil.getHours(endTime) - 1;
+            if (DateUtil.getMinutes(endTime) != 0) {
+                eIdx++;
+            }
+            if (eIdx > 23) {
+                eIdx = 23;
+            }
+            for (int i = sIdx; i <= eIdx; i++) {
+                Map<String, Object> eventMap = createEvent(eventSchedule, true,
+                        true);
+                if (i == sIdx) {
+                    eventMap.put("startEvent", "true");
+                    int size = eIdx - sIdx + 1;
+                    eventMap.put("rows", String.valueOf(size));
+                    eventMap.put("lastEvent", "true");
+                } else {
+                    eventMap.put("startEvent", "false");
+                }
+                eventMap.put("cols", "1");
+                eventInDayItems.get(i).add(eventMap);
+            }
+        } else if (startTime != null && endTime == null) {
+            int sIdx = DateUtil.getHours(startTime);
+            for (int i = sIdx; i <= 23; i++) {
+                Map<String, Object> eventMap = createEvent(eventSchedule, true,
+                        false);
+                if (i == sIdx) {
+                    eventMap.put("startEvent", "true");
+                    int size = 23 - sIdx + 1;
+                    eventMap.put("rows", String.valueOf(size));
+                    eventMap.put("lastEvent", "true");
+                } else {
+                    eventMap.put("startEvent", "false");
+                }
+                eventMap.put("cols", "1");
+                eventInDayItems.get(i).add(eventMap);
+            }
+        } else if (startTime == null && endTime != null) {
+            int eIdx = DateUtil.getHours(endTime) - 1;
+            if (DateUtil.getMinutes(endTime) != 0) {
+                eIdx++;
+            }
+            if (eIdx > 23) {
+                eIdx = 23;
+            }
+            for (int i = 0; i <= eIdx; i++) {
+                Map<String, Object> eventMap = createEvent(eventSchedule,
+                        false, true);
+                if (i == 0) {
+                    eventMap.put("startEvent", "true");
+                    int size = eIdx + 1;
+                    eventMap.put("rows", String.valueOf(size));
+                    eventMap.put("lastEvent", "true");
+                } else {
+                    eventMap.put("startEvent", "false");
+                }
+                eventMap.put("cols", "1");
+                eventInDayItems.get(i).add(eventMap);
+            }
+        } else {
+            // all day
+            allDayEventInDayItems.add(createEvent(eventSchedule, false, false));
+        }
+
+    }
+
+    private String displayPersonalDay() {
+        createSideCalendar();
+
+        Calendar cal = calendarForm.getTargetCalendar();
+        Calendar nextCal = cal;
+        int tYear = CalendarUtil.getYear(cal);
+        int tMonth = CalendarUtil.getMonth(cal) + 1;
+        int tDate = CalendarUtil.getDate(cal);
+        int tDay = CalendarUtil.getDay(cal);
+        eventInDayItems = new ArrayList<List<Map<String, Object>>>();
+        allDayEventInDayItems = new ArrayList<Map<String, Object>>();
+        for (int i = 0; i < 24; i++) {
+            eventInDayItems.add(new ArrayList<Map<String, Object>>());
+        }
+
+        String userId = request.getRemoteUser();
+        List<SingleScheduleMapping> ssmList = singleScheduleService
+                .getPersonalScheduleMappingList(userId, cal.getTime(), nextCal
+                        .getTime());
+        for (SingleScheduleMapping ssm : ssmList) {
+            SingleSchedule singleSchedule = ssm.getSingleSchedule();
+            Date startDate = singleSchedule.getStartDate();
+            int sYear = DateUtil.getYear(startDate) + 1900;
+            int sMonth = DateUtil.getMonth(startDate) + 1;
+            int sDate = DateUtil.getDate(startDate);
+
+            Date endDate = singleSchedule.getEndDate();
+            int eYear = DateUtil.getYear(endDate) + 1900;
+            int eMonth = DateUtil.getMonth(endDate) + 1;
+            int eDate = DateUtil.getDate(endDate);
+
+            Time startTime = singleSchedule.getStartTime();
+            Time endTime = singleSchedule.getEndTime();
+            if (compare(tYear, tMonth, tDate, sYear, sMonth, sDate)
+                    && compare(tYear, tMonth, tDate, eYear, eMonth, eDate)) {
+                putEventSchedule(singleSchedule, startTime, endTime);
+            } else if (compare(tYear, tMonth, tDate, sYear, sMonth, sDate)
+                    && !compare(tYear, tMonth, tDate, eYear, eMonth, eDate)) {
+                putEventSchedule(singleSchedule, startTime, null);
+            } else if (!compare(tYear, tMonth, tDate, sYear, sMonth, sDate)
+                    && compare(tYear, tMonth, tDate, eYear, eMonth, eDate)) {
+                putEventSchedule(singleSchedule, null, endTime);
+            } else {
+                // all day
+                allDayEventInDayItems.add(createEvent(singleSchedule, false,
+                        false));
+            }
+        }
+
+        maxCols = 0;
+        for (List<Map<String, Object>> events : eventInDayItems) {
+            if (!events.isEmpty() && events.size() > maxCols) {
+                maxCols = events.size();
+            }
+        }
+
+        for (List<Map<String, Object>> events : eventInDayItems) {
+            if (!events.isEmpty()) {
+                int idx = events.size() - 1;
+                Map<String, Object> lastEvent = events.get(idx);
+                for (int i = idx; i < maxCols - 1; i++) {
+                    events.add(createEmptyEvent());
+                }
+            }
+        }
+
+        List<RoutineScheduleMapping> rsmList = routineScheduleService
+                .getPersonalScheduleMappingList(userId, cal.getTime(), nextCal
+                        .getTime());
+        for (RoutineScheduleMapping rsm : rsmList) {
+            RoutineSchedule routineSchedule = rsm.getRoutineSchedule();
+            Date startDate = routineSchedule.getStartDate();
+            // int sYear = DateUtil.getYear(startDate) + 1900;
+            int sMonth = DateUtil.getMonth(startDate) + 1;
+            int sDate = DateUtil.getDate(startDate);
+
+            Time startTime = routineSchedule.getStartTime();
+            Time endTime = routineSchedule.getEndTime();
+            String type = routineSchedule.getType();
+            if ("MTWTFSS".equals(type)) {
+                putEventSchedule(routineSchedule, startTime, endTime);
+            } else if ("MTWTF".equals(type)) {
+                if (tDay > 1 && tDay < 7) {
+                    putEventSchedule(routineSchedule, startTime, endTime);
+                }
+            } else if ("MWF".equals(type)) {
+                if (tDay == 2 || tDay == 4 || tDay == 6) {
+                    putEventSchedule(routineSchedule, startTime, endTime);
+                }
+            } else if ("TT".equals(type)) {
+                if (tDay == 3 || tDay == 5) {
+                    putEventSchedule(routineSchedule, startTime, endTime);
+                }
+            } else if ("WEEKLY".equals(type)) {
+                if (tDay == DateUtil.getDay(startDate) + 1) {
+                    putEventSchedule(routineSchedule, startTime, endTime);
+                }
+            } else if ("MONTHLY".equals(type)) {
+                if (tDate == sDate) {
+                    putEventSchedule(routineSchedule, startTime, endTime);
+                }
+            } else if ("YEARLY".equals(type)) {
+                if (tDate == sDate && tMonth == sMonth) {
+                    putEventSchedule(routineSchedule, startTime, endTime);
+                }
+            }
+
+        }
+
+        for (List<Map<String, Object>> events : eventInDayItems) {
+            if (!events.isEmpty() && events.size() > maxCols) {
+                maxCols = events.size();
+            }
+        }
+
+        for (List<Map<String, Object>> events : eventInDayItems) {
+            if (!events.isEmpty()) {
+                int idx = events.size() - 1;
+                Map<String, Object> lastEvent = events.get(idx);
+                int cols = maxCols - idx;
+                for (int i = idx; i < maxCols - 1; i++) {
+                    events.add(createEmptyEvent());
+                }
+            } else {
+                Map<String, Object> emptyEvent = new HashMap<String, Object>();
+                emptyEvent.put("noEvent", "true");
+                events.add(emptyEvent);
+            }
+        }
+
+        return "personalday.jsp";
+    }
+
     private String displayPersonalWeek() {
         createSideCalendar();
 
         List<Calendar> calendarList = new ArrayList<Calendar>(7);
-        eventInWeekItems = new ArrayList<List<List<Map<String, String>>>>(7);
-        allDayEventInWeekItems = new ArrayList<List<Map<String, String>>>(7);
+        eventInWeekItems = new ArrayList<List<List<Map<String, Object>>>>(7);
+        allDayEventInWeekItems = new ArrayList<List<Map<String, Object>>>(7);
         Calendar cal = calendarForm.getTargetCalendar();
         calendarList.add(cal);
-        weekDayItems = new ArrayList<Map<String, String>>();
+        weekDayItems = new ArrayList<Map<String, Object>>();
         Map<String, Integer> indexMap = new HashMap<String, Integer>(7);
         SimpleDateFormat sdf = new SimpleDateFormat("MM/dd(E)");// TODO i18n
         for (int i = 0; i < 7; i++) {
@@ -103,7 +329,7 @@
             int month = CalendarUtil.getMonth(cal) + 1;
             int date = CalendarUtil.getDate(cal);
 
-            Map<String, String> map = new HashMap<String, String>();
+            Map<String, Object> map = new HashMap<String, Object>();
             map.put("displayedDate", sdf.format(cal.getTime()));
             map.put("dayOfWeek", String.valueOf(CalendarUtil.getDay(cal)));
             map.put("date", String.valueOf(date));
@@ -114,14 +340,14 @@
 
             indexMap.put(year + "-" + month + "-" + date, i);
 
-            List<List<Map<String, String>>> eventInDayItems = new ArrayList<List<Map<String, String>>>(
+            List<List<Map<String, Object>>> eventInDayItems = new ArrayList<List<Map<String, Object>>>(
                     24);
             for (int j = 0; j < 24; j++) {
-                eventInDayItems.add(new ArrayList<Map<String, String>>());
+                eventInDayItems.add(new ArrayList<Map<String, Object>>());
             }
             eventInWeekItems.add(eventInDayItems);
 
-            allDayEventInWeekItems.add(new ArrayList<Map<String, String>>());
+            allDayEventInWeekItems.add(new ArrayList<Map<String, Object>>());
         }
 
         String userId = request.getRemoteUser();
@@ -242,7 +468,7 @@
                                 createEvent(routineSchedule, false, false));
                     }
                 } else if ("MTWTF".equals(type)) {
-                    String d = weekDayItems.get(i).get("dayOfWeek");
+                    String d = (String) weekDayItems.get(i).get("dayOfWeek");
                     if (d != null) {
                         int dayOfWeek = Integer.parseInt(d);
                         if (dayOfWeek > 1 && dayOfWeek < 7) {
@@ -261,7 +487,7 @@
                         }
                     }
                 } else if ("MWF".equals(type)) {
-                    String d = weekDayItems.get(i).get("dayOfWeek");
+                    String d = (String) weekDayItems.get(i).get("dayOfWeek");
                     if (d != null) {
                         int dayOfWeek = Integer.parseInt(d);
                         if (dayOfWeek == 2 || dayOfWeek == 4 || dayOfWeek == 6) {
@@ -280,7 +506,7 @@
                         }
                     }
                 } else if ("TT".equals(type)) {
-                    String d = weekDayItems.get(i).get("dayOfWeek");
+                    String d = (String) weekDayItems.get(i).get("dayOfWeek");
                     if (d != null) {
                         int dayOfWeek = Integer.parseInt(d);
                         if (dayOfWeek == 3 || dayOfWeek == 5) {
@@ -299,7 +525,7 @@
                         }
                     }
                 } else if ("WEEKLY".equals(type)) {
-                    String d = weekDayItems.get(i).get("dayOfWeek");
+                    String d = (String) weekDayItems.get(i).get("dayOfWeek");
                     if (d != null) {
                         int dayOfWeek = Integer.parseInt(d);
                         if (dayOfWeek == DateUtil.getDay(startDate) + 1) {
@@ -318,7 +544,7 @@
                         }
                     }
                 } else if ("MONTHLY".equals(type)) {
-                    String d = weekDayItems.get(i).get("date");
+                    String d = (String) weekDayItems.get(i).get("date");
                     if (d != null) {
                         int date = Integer.parseInt(d);
                         if (date == sDate) {
@@ -337,8 +563,8 @@
                         }
                     }
                 } else if ("YEARLY".equals(type)) {
-                    String d = weekDayItems.get(i).get("date");
-                    String m = weekDayItems.get(i).get("month");
+                    String d = (String) weekDayItems.get(i).get("date");
+                    String m = (String) weekDayItems.get(i).get("month");
                     if (d != null && m != null) {
                         int date = Integer.parseInt(d);
                         int month = Integer.parseInt(m);
@@ -375,11 +601,11 @@
                     + calendarDay.get("month") + "-"
                     + calendarDay.get("dayOfMonth"), count);
             calendarDay.put("allDayEventItems",
-                    new ArrayList<Map<String, String>>());
-            List<List<Map<String, String>>> eventInDayItems = new ArrayList<List<Map<String, String>>>(
+                    new ArrayList<Map<String, Object>>());
+            List<List<Map<String, Object>>> eventInDayItems = new ArrayList<List<Map<String, Object>>>(
                     24);
             for (int j = 0; j < 24; j++) {
-                eventInDayItems.add(new ArrayList<Map<String, String>>());
+                eventInDayItems.add(new ArrayList<Map<String, Object>>());
             }
             calendarDay.put("eventItems", eventInDayItems);
             count++;
@@ -437,33 +663,33 @@
                 if (i == sIndex.intValue() && i == eIndex.intValue()) {
                     if (time == null) {
                         // all day
-                        List<Map<String, String>> allDayEventInMonthItems = (List<Map<String, String>>) calendarDayItems
+                        List<Map<String, Object>> allDayEventInMonthItems = (List<Map<String, Object>>) calendarDayItems
                                 .get(i).get("allDayEventItems");
                         allDayEventInMonthItems.add(createEvent(singleSchedule,
                                 false, false));
                     } else {
                         int timeIndex = DateUtil.getHours(time);
-                        List<List<Map<String, String>>> eventInMonthItems = (List<List<Map<String, String>>>) calendarDayItems
+                        List<List<Map<String, Object>>> eventInMonthItems = (List<List<Map<String, Object>>>) calendarDayItems
                                 .get(i).get("eventItems");
                         eventInMonthItems.get(timeIndex).add(
                                 createEvent(singleSchedule, true, true));
                     }
                 } else if (i == sIndex.intValue() && i != eIndex.intValue()) {
                     if (time == null) {
-                        List<Map<String, String>> allDayEventInMonthItems = (List<Map<String, String>>) calendarDayItems
+                        List<Map<String, Object>> allDayEventInMonthItems = (List<Map<String, Object>>) calendarDayItems
                                 .get(i).get("allDayEventItems");
                         allDayEventInMonthItems.add(createEvent(singleSchedule,
                                 false, false));
                     } else {
                         int timeIndex = DateUtil.getHours(time);
-                        List<List<Map<String, String>>> eventInMonthItems = (List<List<Map<String, String>>>) calendarDayItems
+                        List<List<Map<String, Object>>> eventInMonthItems = (List<List<Map<String, Object>>>) calendarDayItems
                                 .get(i).get("eventItems");
                         eventInMonthItems.get(timeIndex).add(
                                 createEvent(singleSchedule, true, false));
                     }
                 } else if (i != sIndex.intValue() && i == eIndex.intValue()) {
                     if (singleSchedule.getEndTime() == null) {
-                        List<Map<String, String>> allDayEventInMonthItems = (List<Map<String, String>>) calendarDayItems
+                        List<Map<String, Object>> allDayEventInMonthItems = (List<Map<String, Object>>) calendarDayItems
                                 .get(i).get("allDayEventItems");
                         allDayEventInMonthItems.add(createEvent(singleSchedule,
                                 false, false));
@@ -473,14 +699,14 @@
                         if (timeIndex < 0) {
                             timeIndex = 0;
                         }
-                        List<List<Map<String, String>>> eventInMonthItems = (List<List<Map<String, String>>>) calendarDayItems
+                        List<List<Map<String, Object>>> eventInMonthItems = (List<List<Map<String, Object>>>) calendarDayItems
                                 .get(i).get("eventItems");
                         eventInMonthItems.get(timeIndex).add(
                                 createEvent(singleSchedule, false, true));
                     }
                 } else if (i != sIndex.intValue() && i != eIndex.intValue()) {
                     // all day
-                    List<Map<String, String>> allDayEventInMonthItems = (List<Map<String, String>>) calendarDayItems
+                    List<Map<String, Object>> allDayEventInMonthItems = (List<Map<String, Object>>) calendarDayItems
                             .get(i).get("allDayEventItems");
                     allDayEventInMonthItems.add(createEvent(singleSchedule,
                             false, false));
@@ -522,13 +748,13 @@
                 if ("MTWTFSS".equals(type)) {
                     if (time != null) {
                         int timeIndex = DateUtil.getHours(time);
-                        List<List<Map<String, String>>> eventInMonthItems = (List<List<Map<String, String>>>) calendarDayItems
+                        List<List<Map<String, Object>>> eventInMonthItems = (List<List<Map<String, Object>>>) calendarDayItems
                                 .get(i).get("eventItems");
                         eventInMonthItems.get(timeIndex).add(
                                 createEvent(routineSchedule, true, true));
                     } else {
                         // all day
-                        List<Map<String, String>> allDayEventInMonthItems = (List<Map<String, String>>) calendarDayItems
+                        List<Map<String, Object>> allDayEventInMonthItems = (List<Map<String, Object>>) calendarDayItems
                                 .get(i).get("allDayEventItems");
                         allDayEventInMonthItems.add(createEvent(
                                 routineSchedule, false, false));
@@ -541,7 +767,7 @@
                         if (dayOfWeek > 1 && dayOfWeek < 7) {
                             if (time != null) {
                                 int timeIndex = DateUtil.getHours(time);
-                                List<List<Map<String, String>>> eventInMonthItems = (List<List<Map<String, String>>>) calendarDayItems
+                                List<List<Map<String, Object>>> eventInMonthItems = (List<List<Map<String, Object>>>) calendarDayItems
                                         .get(i).get("eventItems");
                                 eventInMonthItems.get(timeIndex)
                                         .add(
@@ -549,7 +775,7 @@
                                                         true, true));
                             } else {
                                 // all day
-                                List<Map<String, String>> allDayEventInMonthItems = (List<Map<String, String>>) calendarDayItems
+                                List<Map<String, Object>> allDayEventInMonthItems = (List<Map<String, Object>>) calendarDayItems
                                         .get(i).get("allDayEventItems");
                                 allDayEventInMonthItems.add(createEvent(
                                         routineSchedule, false, false));
@@ -564,7 +790,7 @@
                         if (dayOfWeek == 2 || dayOfWeek == 4 || dayOfWeek == 6) {
                             if (time != null) {
                                 int timeIndex = DateUtil.getHours(time);
-                                List<List<Map<String, String>>> eventInMonthItems = (List<List<Map<String, String>>>) calendarDayItems
+                                List<List<Map<String, Object>>> eventInMonthItems = (List<List<Map<String, Object>>>) calendarDayItems
                                         .get(i).get("eventItems");
                                 eventInMonthItems.get(timeIndex)
                                         .add(
@@ -572,7 +798,7 @@
                                                         true, true));
                             } else {
                                 // all day
-                                List<Map<String, String>> allDayEventInMonthItems = (List<Map<String, String>>) calendarDayItems
+                                List<Map<String, Object>> allDayEventInMonthItems = (List<Map<String, Object>>) calendarDayItems
                                         .get(i).get("allDayEventItems");
                                 allDayEventInMonthItems.add(createEvent(
                                         routineSchedule, false, false));
@@ -587,7 +813,7 @@
                         if (dayOfWeek == 3 || dayOfWeek == 5) {
                             if (time != null) {
                                 int timeIndex = DateUtil.getHours(time);
-                                List<List<Map<String, String>>> eventInMonthItems = (List<List<Map<String, String>>>) calendarDayItems
+                                List<List<Map<String, Object>>> eventInMonthItems = (List<List<Map<String, Object>>>) calendarDayItems
                                         .get(i).get("eventItems");
                                 eventInMonthItems.get(timeIndex)
                                         .add(
@@ -595,7 +821,7 @@
                                                         true, true));
                             } else {
                                 // all day
-                                List<Map<String, String>> allDayEventInMonthItems = (List<Map<String, String>>) calendarDayItems
+                                List<Map<String, Object>> allDayEventInMonthItems = (List<Map<String, Object>>) calendarDayItems
                                         .get(i).get("allDayEventItems");
                                 allDayEventInMonthItems.add(createEvent(
                                         routineSchedule, false, false));
@@ -610,7 +836,7 @@
                         if (dayOfWeek == DateUtil.getDay(startDate) + 1) {
                             if (time != null) {
                                 int timeIndex = DateUtil.getHours(time);
-                                List<List<Map<String, String>>> eventInMonthItems = (List<List<Map<String, String>>>) calendarDayItems
+                                List<List<Map<String, Object>>> eventInMonthItems = (List<List<Map<String, Object>>>) calendarDayItems
                                         .get(i).get("eventItems");
                                 eventInMonthItems.get(timeIndex)
                                         .add(
@@ -618,7 +844,7 @@
                                                         true, true));
                             } else {
                                 // all day
-                                List<Map<String, String>> allDayEventInMonthItems = (List<Map<String, String>>) calendarDayItems
+                                List<Map<String, Object>> allDayEventInMonthItems = (List<Map<String, Object>>) calendarDayItems
                                         .get(i).get("allDayEventItems");
                                 allDayEventInMonthItems.add(createEvent(
                                         routineSchedule, false, false));
@@ -633,7 +859,7 @@
                         if (date == sDate) {
                             if (time != null) {
                                 int timeIndex = DateUtil.getHours(time);
-                                List<List<Map<String, String>>> eventInMonthItems = (List<List<Map<String, String>>>) calendarDayItems
+                                List<List<Map<String, Object>>> eventInMonthItems = (List<List<Map<String, Object>>>) calendarDayItems
                                         .get(i).get("eventItems");
                                 eventInMonthItems.get(timeIndex)
                                         .add(
@@ -641,7 +867,7 @@
                                                         true, true));
                             } else {
                                 // all day
-                                List<Map<String, String>> allDayEventInMonthItems = (List<Map<String, String>>) calendarDayItems
+                                List<Map<String, Object>> allDayEventInMonthItems = (List<Map<String, Object>>) calendarDayItems
                                         .get(i).get("allDayEventItems");
                                 allDayEventInMonthItems.add(createEvent(
                                         routineSchedule, false, false));
@@ -658,7 +884,7 @@
                         if (date == sDate && month == sMonth) {
                             if (time != null) {
                                 int timeIndex = DateUtil.getHours(time);
-                                List<List<Map<String, String>>> eventInMonthItems = (List<List<Map<String, String>>>) calendarDayItems
+                                List<List<Map<String, Object>>> eventInMonthItems = (List<List<Map<String, Object>>>) calendarDayItems
                                         .get(i).get("eventItems");
                                 eventInMonthItems.get(timeIndex)
                                         .add(
@@ -666,7 +892,7 @@
                                                         true, true));
                             } else {
                                 // all day
-                                List<Map<String, String>> allDayEventInMonthItems = (List<Map<String, String>>) calendarDayItems
+                                List<Map<String, Object>> allDayEventInMonthItems = (List<Map<String, Object>>) calendarDayItems
                                         .get(i).get("allDayEventItems");
                                 allDayEventInMonthItems.add(createEvent(
                                         routineSchedule, false, false));
@@ -687,9 +913,9 @@
         return displayPersonalWeek();
     }
 
-    @Execute(validator = true, input = "error.jsp", urlPattern = "selectpersonaldate/{year}/{month}/{date}")
+    @Execute(validator = true, input = "error.jsp", urlPattern = "selectpersonalday/{year}/{month}/{date}")
     public String selectpersonalday() {
-        return displayPersonalWeek();
+        return displayPersonalDay();
     }
 
     @Execute(validator = true, input = "error.jsp", urlPattern = "selectpersonalweek/{year}/{month}/{date}")
@@ -738,6 +964,24 @@
         return displayPersonalWeek();
     }
 
+    @Execute(validator = true, input = "error.jsp", urlPattern = "movepersonaldayprevmonth/{year}/{month}/{date}")
+    public String movepersonaldayprevmonth() {
+        calendarForm.changeCalendarToPrevMonth();
+        return displayPersonalDay();
+    }
+
+    @Execute(validator = false, input = "error.jsp")
+    public String movepersonaldaythismonth() {
+        calendarForm.changeCalendarToToday();
+        return displayPersonalDay();
+    }
+
+    @Execute(validator = true, input = "error.jsp", urlPattern = "movepersonaldaynextmonth/{year}/{month}/{date}")
+    public String movepersonaldaynextmonth() {
+        calendarForm.changeCalendarToNextMonth();
+        return displayPersonalDay();
+    }
+
     private Map<String, Object> createCalendarDayItem(Calendar cal,
             boolean thisMonth) {
         Map<String, Object> map = new HashMap<String, Object>();
@@ -770,9 +1014,9 @@
         return map;
     }
 
-    private Map<String, String> createEvent(EventSchedule eventSchedule,
+    private Map<String, Object> createEvent(EventSchedule eventSchedule,
             boolean start, boolean end) {
-        Map<String, String> map = new HashMap<String, String>();
+        Map<String, Object> map = new HashMap<String, Object>();
         map.put("id", eventSchedule.getId().toString());
         map.put("title", eventSchedule.getTitle());
         if (start || end) {

Added: scheduler/trunk/src/main/webapp/WEB-INF/view/user/calendar/personalday.jsp
===================================================================
--- scheduler/trunk/src/main/webapp/WEB-INF/view/user/calendar/personalday.jsp	                        (rev 0)
+++ scheduler/trunk/src/main/webapp/WEB-INF/view/user/calendar/personalday.jsp	2008-11-17 09:09:12 UTC (rev 1356)
@@ -0,0 +1,110 @@
+<%@page pageEncoding="UTF-8" contentType="text/html; charset=UTF-8" %>
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+<title></title>
+</head>
+<body>
+<div style="padding:3px;">
+<!-- tab: BEGIN -->
+<div class="tab-nav">
+  <ul>
+	<li class="first"></li>
+	<li class="selected"><span>Day</span></li>
+	<li class="spacer"></li>
+	<li class="selectable"><s:link href="selectpersonalweek/${year}/${month}/${date}" style="text-decoration: none;">Week</s:link></li>
+	<li class="spacer"></li>
+	<li class="selectable"><s:link href="selectpersonalmonth/${year}/${month}/${date}" style="text-decoration: none;">Month</s:link></li>
+	<li class="last"></li>
+  </ul>
+</div>
+<!-- tab: END -->
+
+<div><html:messages id="msg" message="true"><bean:write name="msg" ignore="true"/></html:messages><html:errors/></div>
+
+<div class="form-table" style="float:left;">
+<div style="margin:10px 0;">
+<s:link href="/user/singleSchedule/createpage/selectpersonalday/${year}/${month}/${date}"><bean:message key="labels.create_new_event"/></s:link>
+</div>
+<div style="margin:5px 0 2px 0;text-align: center;">
+<s:link href="movepersonaldayprevmonth/${year}/${month}/${date}">&lt;</s:link>
+<s:link href="movepersonaldaythismonth">Today</s:link>
+<s:link href="movepersonaldaynextmonth/${year}/${month}/${date}">&gt;</s:link>
+</div>
+<table>
+	<caption>${year}/${month}<!-- TODO i18n --></caption>
+	<thead>
+		<tr>
+			<th style="width:13px;text-align: center;">S</th>
+			<th style="width:13px;text-align: center;">M</th>
+			<th style="width:13px;text-align: center;">T</th>
+			<th style="width:13px;text-align: center;">W</th>
+			<th style="width:13px;text-align: center;">T</th>
+			<th style="width:13px;text-align: center;">F</th>
+			<th style="width:13px;text-align: center;">S</th>
+		</tr>
+	</thead>
+	<tbody>
+		<tr>
+<c:forEach var="day" varStatus="s" items="${calendarDayItems}">
+			<td style="text-align: center;${day.target == 'true' ? 'background-color:#ffffa1;' : ''}">
+<s:link href="selectpersonalday/${day.year}/${day.month}/${day.dayOfMonth}" style="text-decoration: none;"><span style="${day.thisMonth == 'true' ? '' : 'color:gray;'}">${day.dayOfMonth}</span></s:link>
+			</td>
+<c:if test="${day.dayOfWeek==7}"></tr><tr></c:if>
+</c:forEach>
+		</tr>
+	</tbody>
+</table>
+</div>
+
+<div class="list-table" style="margin-top:3px;margin-left:10px;float:left;">
+<table>
+	<thead>
+		<tr>
+			<th style="width:50px;text-align: center;">Time</th>
+			<th style="width:550px;text-align: center;" colspan="${maxCols}">Events</th>
+		</tr>
+	</thead>
+	<tbody>
+		<tr>
+			<th>All Day</th>
+			<td colspan="${maxCols}">
+<ul style="margin:0;padding:0;">
+<c:forEach var="event" varStatus="s" items="${allDayEventInDayItems}">
+	<li style="list-style-type:none;">
+<c:if test="${event.repeat=='true'}"><s:link href="/user/routineSchedule/confirmpage/4/${event.id}/selectpersonalday/${year}/${month}/${date}">${event.title}</s:link></c:if>
+<c:if test="${event.repeat=='false'}"><s:link href="/user/singleSchedule/confirmpage/4/${event.id}/selectpersonalday/${year}/${month}/${date}">${event.title}</s:link></c:if>
+	</li>
+</c:forEach>
+</ul>
+			</td>
+		</tr>
+<c:forEach var="eventInTimeItems" varStatus="s" items="${eventInDayItems}">
+		<tr class="${s.index %2 == 0 ? 'row1' : 'row2'}">
+			<th>${s.index}:00</th><!-- TODO i18n -->
+<c:forEach var="event" varStatus="s2" items="${eventInTimeItems}">
+<c:if test="${event.noEvent=='true'}">
+<td colspan="${maxCols}">&nbsp;</td>
+</c:if>
+<c:if test="${event.startEvent=='true'}">
+			<td style="vertical-align: top;" rowspan="${event.rows}" colspan="${event.cols}">
+<c:if test="${event.time!='none'}">
+<ul style="margin:0;padding:0;">
+	<li style="list-style-type:none;">${event.time}<br/>
+<c:if test="${event.repeat=='true'}"><s:link href="/user/routineSchedule/confirmpage/4/${event.id}/selectpersonalday/${year}/${month}/${date}">${event.title}</s:link></c:if>
+<c:if test="${event.repeat=='false'}"><s:link href="/user/singleSchedule/confirmpage/4/${event.id}/selectpersonalday/${year}/${month}/${date}">${event.title}</s:link></c:if>
+	</li>
+</ul>
+</c:if>
+			</td>
+</c:if>
+</c:forEach>
+		</tr>
+</c:forEach>
+	</tbody>
+</table>
+</div>
+</div>
+
+</body>
+</html>


Property changes on: scheduler/trunk/src/main/webapp/WEB-INF/view/user/calendar/personalday.jsp
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: scheduler/trunk/src/main/webapp/WEB-INF/view/user/routineSchedule/confirm.jsp
===================================================================
--- scheduler/trunk/src/main/webapp/WEB-INF/view/user/routineSchedule/confirm.jsp	2008-11-16 21:57:30 UTC (rev 1355)
+++ scheduler/trunk/src/main/webapp/WEB-INF/view/user/routineSchedule/confirm.jsp	2008-11-17 09:09:12 UTC (rev 1356)
@@ -122,7 +122,7 @@
             <input type="submit" name="back" value="<bean:message key="labels.back"/>"/>
         </c:if>
         <c:if test="${mode == 4}">
-            <input type="submit" name="back" value="<bean:message key="labels.back"/>"/>
+            <!-- input type="submit" name="back" value="<bean:message key="labels.back"/>"/ -->
             <input type="submit" name="editpagefromconfirm" value="<bean:message key="labels.edit"/>"/>
             <input type="submit" name="deletepagefromconfirm" value="<bean:message key="labels.delete"/>"/>
         </c:if>

Modified: scheduler/trunk/src/main/webapp/WEB-INF/view/user/singleSchedule/confirm.jsp
===================================================================
--- scheduler/trunk/src/main/webapp/WEB-INF/view/user/singleSchedule/confirm.jsp	2008-11-16 21:57:30 UTC (rev 1355)
+++ scheduler/trunk/src/main/webapp/WEB-INF/view/user/singleSchedule/confirm.jsp	2008-11-17 09:09:12 UTC (rev 1356)
@@ -109,7 +109,7 @@
             <input type="submit" name="back" value="<bean:message key="labels.back"/>"/>
         </c:if>
         <c:if test="${mode == 4}">
-            <input type="submit" name="back" value="<bean:message key="labels.back"/>"/>
+            <!-- input type="submit" name="back" value="<bean:message key="labels.back"/>"/ -->
             <input type="submit" name="editpagefromconfirm" value="<bean:message key="labels.edit"/>"/>
             <input type="submit" name="deletepagefromconfirm" value="<bean:message key="labels.delete"/>"/>
         </c:if>


pal-cvs メーリングリストの案内
Back to archive index