Index: assignment/assignment-impl/impl/src/java/org/sakaiproject/assignment/impl/AssignmentEntityProviderImpl.java =================================================================== --- assignment/assignment-impl/impl/src/java/org/sakaiproject/assignment/impl/AssignmentEntityProviderImpl.java (revision 133088) +++ assignment/assignment-impl/impl/src/java/org/sakaiproject/assignment/impl/AssignmentEntityProviderImpl.java (working copy) @@ -749,7 +749,27 @@ return rv; } + + /** + * item/assignmentId + */ + @EntityCustomAction(action = "item", viewKey = EntityView.VIEW_LIST) + public SimpleAssignment getAssignment(EntityView view, + Map params) { + String assignmentId = view.getPathSegment(2); + // check user can access this assignment + Assignment a; + try { + a = assignmentService.getAssignment (assignmentId); + } catch (IdUnusedException e) { + throw new EntityNotFoundException("Invalid assignment id: " + assignmentId, assignmentId); + } catch (PermissionException e) { + throw new EntityNotFoundException("No access to assignment: " + assignmentId, assignmentId); + } + return new SimpleAssignment(a); + } + // PROPERTY STUFF /* (non-Javadoc) Index: calendar/calendar-bundles/resources/calendar.properties =================================================================== --- calendar/calendar-bundles/resources/calendar.properties (revision 133086) +++ calendar/calendar-bundles/resources/calendar.properties (working copy) @@ -54,6 +54,7 @@ java.alert.subsurlempty = You need to enter a url for the calendar to be added. java.alert.invalidname = This is an invalid calendar name -- please try again ### (moot) java.alert.uknown = An unknown error has occurred. +java.alert.opendate=This assignment is not yet available. java.pleasetitle = Please enter a title. java.pleasetime = Please enter a time. Index: calendar/calendar-bundles/resources/calendar_ar.properties =================================================================== --- calendar/calendar-bundles/resources/calendar_ar.properties (revision 133086) +++ calendar/calendar-bundles/resources/calendar_ar.properties (working copy) @@ -326,3 +326,4 @@ view.legend=\u062F\u0644\u064A\u0644 set.months=\u0634\u0647\u0631(\u0634\u0647\u0648\u0631) set.toset=\u0627\u0644\u0639\u0646\u0627\u0635\u0631 \u0627\u0644\u0645\u0637\u0644\u0648\u0628\u0629 \u0645\u0639\u0644\u0645\u0629 \u0628 +java.alert.opendate=\u0647\u0630\u0647 \u0627\u0644\u0645\u0647\u0645\u0629 \u0644\u064A\u0633\u062A \u0645\u062A\u0627\u062D\u0629 \u0628\u0639\u062F. \ No newline at end of file Index: calendar/calendar-bundles/resources/calendar_ca.properties =================================================================== --- calendar/calendar-bundles/resources/calendar_ca.properties (revision 133086) +++ calendar/calendar-bundles/resources/calendar_ca.properties (working copy) @@ -510,3 +510,4 @@ viewy.wed = Dc. week_view = Calendari per setmanes +java.alert.opendate=Aquesta assignaci\u00F3 no est\u00E0 disponible encara. \ No newline at end of file Index: calendar/calendar-bundles/resources/calendar_en_GB.properties =================================================================== --- calendar/calendar-bundles/resources/calendar_en_GB.properties (revision 133086) +++ calendar/calendar-bundles/resources/calendar_en_GB.properties (working copy) @@ -6,3 +6,4 @@ legend.key7=Seminar legend.key6=Lecture legend.key5=Lab Session +java.alert.opendate=This assignment is not yet available. \ No newline at end of file Index: calendar/calendar-bundles/resources/calendar_es.properties =================================================================== --- calendar/calendar-bundles/resources/calendar_es.properties (revision 133086) +++ calendar/calendar-bundles/resources/calendar_es.properties (working copy) @@ -399,4 +399,5 @@ java.importcal=Importar calendario start.ampm=AM o PM de inicio start.hour=Hora de inicio -start.minute=Minuto de inicio \ No newline at end of file +start.minute=Minuto de inicio +java.alert.opendate=Esta asignaci\u00F3n no est\u00E1 disponible todav\u00EDa. \ No newline at end of file Index: calendar/calendar-bundles/resources/calendar_es_MX.properties =================================================================== --- calendar/calendar-bundles/resources/calendar_es_MX.properties (revision 133086) +++ calendar/calendar-bundles/resources/calendar_es_MX.properties (working copy) @@ -384,4 +384,4 @@ set.months=mes(es) date_format = dd/MM/yyyy date_link_format =dd-MM-yyyy - +java.alert.opendate=Esta asignaci\u00F3n no est\u00E1 disponible todav\u00EDa. Index: calendar/calendar-bundles/resources/calendar_eu.properties =================================================================== --- calendar/calendar-bundles/resources/calendar_eu.properties (revision 133086) +++ calendar/calendar-bundles/resources/calendar_eu.properties (working copy) @@ -351,3 +351,4 @@ view.legend=Legenda set.months=hilabetea(k) set.toset=Beharrezko elementuak honela markatuta daude +java.alert.opendate=Esleipen hau oraindik ez dago eskuragarri. \ No newline at end of file Index: calendar/calendar-bundles/resources/calendar_fr_CA.properties =================================================================== --- calendar/calendar-bundles/resources/calendar_fr_CA.properties (revision 133086) +++ calendar/calendar-bundles/resources/calendar_fr_CA.properties (working copy) @@ -346,3 +346,4 @@ view.legend=L\u00E9gende set.toset=\u00C9l\u00E9ments obligatoires indiqu\u00E9s par set.months=mois +java.alert.opendate=Cette affectation n'est pas encore disponible. \ No newline at end of file Index: calendar/calendar-bundles/resources/calendar_fr_FR.properties =================================================================== --- calendar/calendar-bundles/resources/calendar_fr_FR.properties (revision 133086) +++ calendar/calendar-bundles/resources/calendar_fr_FR.properties (working copy) @@ -387,3 +387,4 @@ ### (moot) java.alert.uknown=An unknown error has occurred. next=Suivant previous=Pr\u00e9c\u00e9dent +java.alert.opendate=Cette affectation n'est pas encore disponible. \ No newline at end of file Index: calendar/calendar-bundles/resources/calendar_ja.properties =================================================================== --- calendar/calendar-bundles/resources/calendar_ja.properties (revision 133086) +++ calendar/calendar-bundles/resources/calendar_ja.properties (working copy) @@ -382,3 +382,4 @@ view.legend=\u51E1\u4F8B set.months=\u6708\u3054\u3068 set.toset=\u5FC5\u9808\u30A2\u30A4\u30C6\u30E0\u306F\u6B21\u306E\u30DE\u30FC\u30AF\u304C\u4ED8\u3044\u3066\u3044\u307E\u3059\uFF1A +java.alert.opendate=\u3053\u306E\u5272\u308A\u5F53\u3066\u306F\u3001\u307E\u3060\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002 \ No newline at end of file Index: calendar/calendar-bundles/resources/calendar_ko.properties =================================================================== --- calendar/calendar-bundles/resources/calendar_ko.properties (revision 133086) +++ calendar/calendar-bundles/resources/calendar_ko.properties (working copy) @@ -243,3 +243,4 @@ java.alert.start=\uAC1C\uC2DC\uC77C\uC774 \uC885\uB8CC\uC77C\uBCF4\uB2E4 \uC55E\uC11C\uC57C \uD569\uB2C8\uB2E4. set.months=\uC6D4 viewl.froms=\uC0AC\uC774\uD2B8\uBA85\: +java.alert.opendate=\uC774 \uD560\uB2F9\uC740 \uC544\uC9C1 \uC0AC\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. \ No newline at end of file Index: calendar/calendar-bundles/resources/calendar_mn.properties =================================================================== --- calendar/calendar-bundles/resources/calendar_mn.properties (revision 133086) +++ calendar/calendar-bundles/resources/calendar_mn.properties (working copy) @@ -482,4 +482,5 @@ prefs_move_down=\u0414\u043E\u043E\u0448\u043E\u043E \u0437\u04E9\u04E9\u0445 date_format = \u0421\u0430\u0440 \u04E9\u0434\u04E9\u0440, \u0436\u0438\u043B date_link_format =\u0416\u0438\u043B-\u0421\u0430\u0440-\u04E8\u0434\u04E9\u0440 -java.importcal= \u041A\u0430\u043B\u0435\u043D\u0434\u0430\u0440 \u043E\u0440\u0443\u0443\u043B\u0430\u0445 \ No newline at end of file +java.importcal= \u041A\u0430\u043B\u0435\u043D\u0434\u0430\u0440 \u043E\u0440\u0443\u0443\u043B\u0430\u0445 +java.alert.opendate=\u042D\u043D\u044D \u0434\u0430\u0430\u043B\u0433\u0430\u0432\u0430\u0440 \u043E\u0434\u043E\u043E\u0445\u043E\u043D\u0434\u043E\u043E \u0431\u0430\u0439\u0445\u0433\u04AF\u0439 \u0431\u0430\u0439\u043D\u0430. \ No newline at end of file Index: calendar/calendar-bundles/resources/calendar_nl.properties =================================================================== --- calendar/calendar-bundles/resources/calendar_nl.properties (revision 133086) +++ calendar/calendar-bundles/resources/calendar_nl.properties (working copy) @@ -354,3 +354,4 @@ view.legend=Legenda set.toset=Verplichte items hebben een set.months=maand(en) +java.alert.opendate=Deze opdracht is nog niet beschikbaar. \ No newline at end of file Index: calendar/calendar-bundles/resources/calendar_pl_PL.properties =================================================================== --- calendar/calendar-bundles/resources/calendar_pl_PL.properties (revision 133086) +++ calendar/calendar-bundles/resources/calendar_pl_PL.properties (working copy) @@ -480,3 +480,4 @@ prefs_move_down=Przenie\u015B w d\u00F3\u0142 date_format = MMMMM dd, yyyy date_link_format =yyyy-MM-dd +java.alert.opendate=To zadanie nie jest jeszcze dost\u0119pny. \ No newline at end of file Index: calendar/calendar-bundles/resources/calendar_pt_BR.properties =================================================================== --- calendar/calendar-bundles/resources/calendar_pt_BR.properties (revision 133086) +++ calendar/calendar-bundles/resources/calendar_pt_BR.properties (working copy) @@ -503,5 +503,5 @@ prefs_low_priority = Baixa prioridade prefs_move_up = Para cima prefs_move_down = Para baixo +java.alert.opendate=To zadanie nie jest jeszcze dost\u0119pny. - Index: calendar/calendar-bundles/resources/calendar_pt_PT.properties =================================================================== --- calendar/calendar-bundles/resources/calendar_pt_PT.properties (revision 133086) +++ calendar/calendar-bundles/resources/calendar_pt_PT.properties (working copy) @@ -382,3 +382,4 @@ view.legend=Legenda set.months=m\u00EAs(es) set.toset=Items obrigat\u00F3rios marcados com +java.alert.opendate=To zadanie nie jest jeszcze dost\u0119pny. Index: calendar/calendar-bundles/resources/calendar_ru.properties =================================================================== --- calendar/calendar-bundles/resources/calendar_ru.properties (revision 133086) +++ calendar/calendar-bundles/resources/calendar_ru.properties (working copy) @@ -382,3 +382,4 @@ view.legend=\u041E\u0431\u043E\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F set.toset=\u041E\u0431\u044F\u0437\u0430\u0442\u0435\u043B\u044C\u043D\u044B\u0435 \u043F\u043E\u043B\u044F \u043E\u0442\u043C\u0435\u0447\u0435\u043D\u044B \u0437\u043D\u0430\u043A\u043E\u043C set.months=\u043C\u0435\u0441\u044F\u0446\u0435\u0432 +java.alert.opendate=\u042D\u0442\u043E \u043D\u0430\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u0435\u0449\u0435 \u200B\u200B\u043D\u0435 \u0434\u043E\u0441\u0442\u0443\u043F\u0435\u043D. Index: calendar/calendar-bundles/resources/calendar_sv.properties =================================================================== --- calendar/calendar-bundles/resources/calendar_sv.properties (revision 133086) +++ calendar/calendar-bundles/resources/calendar_sv.properties (working copy) @@ -429,4 +429,5 @@ set.MWF= M\u00e5n/ons/fredag set.TTh= Tis/torsdag java.alert.default_view= Detta \u00e4r nu den f\u00f6rvalda vyn -java.alert.invalidname= Detta \u00e4r ett ogiltigt kalendernamn -- f\u00f6rs\u00f6k igen \ No newline at end of file +java.alert.invalidname= Detta \u00e4r ett ogiltigt kalendernamn -- f\u00f6rs\u00f6k igen +java.alert.opendate=Uppdraget \u00E4r \u00E4nnu inte tillg\u00E4nglig. \ No newline at end of file Index: calendar/calendar-bundles/resources/calendar_tr_TR.properties =================================================================== --- calendar/calendar-bundles/resources/calendar_tr_TR.properties (revision 133086) +++ calendar/calendar-bundles/resources/calendar_tr_TR.properties (working copy) @@ -410,3 +410,4 @@ viewy.tue=Sa viewy.wed=Ça week_view=Haftal\u0131k Takvim +java.alert.opendate=Bu atama hen\u00FCz mevcut de\u011Fildir. \ No newline at end of file Index: calendar/calendar-bundles/resources/calendar_vi.properties =================================================================== --- calendar/calendar-bundles/resources/calendar_vi.properties (revision 133086) +++ calendar/calendar-bundles/resources/calendar_vi.properties (working copy) @@ -395,3 +395,4 @@ java.alert.aliasreq=B\u00ED danh \u0111\u01B0\u1EE3c y\u00EAu c\u1EA7u \u0111\u1EC3 cho ph\u00E9p xu\u1EA5t iCal. view.before=Tr\u01B0\u1EDBc \u0111\u00F3 imp.mm.outlook=Microsoft Outlook d\u1EEF li\u1EC7u ph\u1EA3i \u0111\u01B0\u1EE3c xu\u1EA5t v\u00E0o m\u1ED9t file CSV (gi\u00E1 tr\u1ECB c\u00E1ch nhau b\u1EB1ng d\u1EA5u ph\u1EA9y) +java.alert.opendate=Nhi\u1EC7m v\u1EE5 n\u00E0y l\u00E0 ch\u01B0a c\u00F3. \ No newline at end of file Index: calendar/calendar-bundles/resources/calendar_zh_CN.properties =================================================================== --- calendar/calendar-bundles/resources/calendar_zh_CN.properties (revision 133086) +++ calendar/calendar-bundles/resources/calendar_zh_CN.properties (working copy) @@ -382,3 +382,4 @@ viewy.tue=\u661F\u671F\u4E8C viewy.wed=\u661F\u671F\u4E09 week_view=\u6309\u5468\u663E\u793A\u65E5\u7A0B +java.alert.opendate=\u8FD9\u79CD\u5206\u914D\u662F\u5C1A\u672A\u516C\u5E03\u3002 \ No newline at end of file Index: calendar/calendar-bundles/resources/calendar_zh_TW.properties =================================================================== --- calendar/calendar-bundles/resources/calendar_zh_TW.properties (revision 133086) +++ calendar/calendar-bundles/resources/calendar_zh_TW.properties (working copy) @@ -347,3 +347,4 @@ view.legend=\u5716\u5217 set.toset=\u5FC5\u586B\u7684\u9805\u76EE\u6A19\u6709\u8A18\u865F\u6A19\u8A8C set.months=\u6708 +java.alert.opendate=\u8FD9\u79CD\u5206\u914D\u662F\u5C1A\u672A\u516C\u5E03\u3002 \ No newline at end of file Index: calendar/calendar-summary-tool/tool/pom.xml =================================================================== --- calendar/calendar-summary-tool/tool/pom.xml (revision 133086) +++ calendar/calendar-summary-tool/tool/pom.xml (working copy) @@ -46,6 +46,10 @@ sakai-calendar-util + org.sakaiproject.entitybroker + entitybroker-api + + org.sakaiproject.site sakai-mergedlist-util Index: calendar/calendar-summary-tool/tool/src/java/org/sakaiproject/tool/summarycalendar/ui/CalendarBean.java =================================================================== --- calendar/calendar-summary-tool/tool/src/java/org/sakaiproject/tool/summarycalendar/ui/CalendarBean.java (revision 133086) +++ calendar/calendar-summary-tool/tool/src/java/org/sakaiproject/tool/summarycalendar/ui/CalendarBean.java (working copy) @@ -72,8 +72,11 @@ import org.sakaiproject.util.MergedListEntryProviderFixedListWrapper; import org.sakaiproject.util.ResourceLoader; import org.sakaiproject.util.StringUtil; +import org.sakaiproject.entitybroker.EntityBroker; +import org.sakaiproject.entitybroker.EntityReference; +import org.sakaiproject.entitybroker.entityprovider.extension.ActionReturn; +import org.sakaiproject.entitybroker.exception.EntityNotFoundException; - public class CalendarBean { public static final String MODE_MONTHVIEW = "month"; @@ -774,6 +777,23 @@ String eventUrl = buildEventUrl(site, event.getReference()); selectedEvent.setUrl(eventUrl); selectedEvent.setAttachments(event.getAttachments()); + try{ + String assignmentId = event.getField(CalendarUtil.NEW_ASSIGNMENT_DUEDATE_CALENDAR_ASSIGNMENT_ID); + if (assignmentId != null && assignmentId.trim().length() > 0) + { + StringBuilder entityId = new StringBuilder( ASSN_ENTITY_PREFIX ); + entityId.append( assignmentId ); + if (entityBroker == null) + { + entityBroker = (EntityBroker) ComponentManager.get("org.sakaiproject.entitybroker.EntityBroker"); + } + entityBroker.executeCustomAction(entityId.toString(), ASSN_ENTITY_ACTION, null, null); + } + + }catch(EntityNotFoundException e){ + selectedEvent.setOpenDateError(true); + } + // groups if(M_as.unlock("calendar.all.groups", "/site/"+calendar.getContext())){ Collection grps = event.getGroupObjects(); @@ -861,4 +881,9 @@ Calendar c = Calendar.getInstance(getCurrentUserTimezone(),msgs.getLocale()); return new CalendarUtil(c).getCalendarDaysOfWeekNames(false); } + private final static String ASSN_ENTITY_ID = "assignment"; + private final static String ASSN_ENTITY_ACTION = "item"; + private EntityBroker entityBroker; + private final static String ASSN_ENTITY_PREFIX = EntityReference.SEPARATOR+ASSN_ENTITY_ID+EntityReference.SEPARATOR+ASSN_ENTITY_ACTION+EntityReference.SEPARATOR; + } Index: calendar/calendar-summary-tool/tool/src/java/org/sakaiproject/tool/summarycalendar/ui/EventSummary.java =================================================================== --- calendar/calendar-summary-tool/tool/src/java/org/sakaiproject/tool/summarycalendar/ui/EventSummary.java (revision 133086) +++ calendar/calendar-summary-tool/tool/src/java/org/sakaiproject/tool/summarycalendar/ui/EventSummary.java (working copy) @@ -71,8 +71,8 @@ private boolean hasAttachments = false; private List attachments = new ArrayList(); private List attachmentsWrp = new ArrayList(); + private boolean openDateError = false; - private static Log LOG = LogFactory.getLog(EventSummary.class); public String getDisplayName() { @@ -295,4 +295,12 @@ private String getTimeStr(Time time) { return time.toStringLocalTimeZ(); } + + public boolean isOpenDateError() { + return openDateError; + } + + public void setOpenDateError(boolean openDateError) { + this.openDateError = openDateError; + } } Index: calendar/calendar-summary-tool/tool/src/webapp/summary-calendar/calendar.jsp =================================================================== --- calendar/calendar-summary-tool/tool/src/webapp/summary-calendar/calendar.jsp (revision 133086) +++ calendar/calendar-summary-tool/tool/src/webapp/summary-calendar/calendar.jsp (working copy) @@ -166,9 +166,14 @@ <%/* Selected event */%>

- - - + + + + + + + +