Index: lams_admin/conf/xdoclet/struts-forms.xml
===================================================================
RCS file: /usr/local/cvsroot/lams_admin/conf/xdoclet/struts-forms.xml,v
diff -u -r1.38 -r1.39
--- lams_admin/conf/xdoclet/struts-forms.xml 16 Feb 2011 10:25:16 -0000 1.38
+++ lams_admin/conf/xdoclet/struts-forms.xml 5 Dec 2011 16:03:17 -0000 1.39
@@ -11,6 +11,7 @@
+
Index: lams_admin/web/organisation/createOrEdit.jsp
===================================================================
RCS file: /usr/local/cvsroot/lams_admin/web/organisation/createOrEdit.jsp,v
diff -u -r1.3 -r1.4
--- lams_admin/web/organisation/createOrEdit.jsp 9 Apr 2009 00:08:35 -0000 1.3
+++ lams_admin/web/organisation/createOrEdit.jsp 5 Dec 2011 16:03:17 -0000 1.4
@@ -103,6 +103,12 @@
+
+
+ |
+
+
+
|
Index: lams_central/src/java/org/lamsfoundation/lams/web/DisplayGroupAction.java
===================================================================
RCS file: /usr/local/cvsroot/lams_central/src/java/org/lamsfoundation/lams/web/DisplayGroupAction.java,v
diff -u -r1.23 -r1.24
--- lams_central/src/java/org/lamsfoundation/lams/web/DisplayGroupAction.java 7 Jul 2011 17:35:14 -0000 1.23
+++ lams_central/src/java/org/lamsfoundation/lams/web/DisplayGroupAction.java 5 Dec 2011 16:04:12 -0000 1.24
@@ -136,7 +136,7 @@
if (isSysAdmin && stateId.equals(OrganisationState.ACTIVE)) {
if (orgBean.getType().equals(OrganisationType.COURSE_TYPE)) {
moreLinks.add(new IndexLinkBean("index.classman", "javascript:openOrgManagement("
- + org.getOrganisationId() + ")", "manage-group-button", null));
+ + org.getOrganisationId() + ")", "manage-group-button", null, null));
}
}
@@ -147,7 +147,7 @@
+ "/gradebook/gradebookLearning.do?dispatch=courseLearner&organisationID="
+ org.getOrganisationId() + "'," + "750,400,0,0);";
- links.add(new IndexLinkBean("index.coursegradebook.learner", link, "my-grades-button", null));
+ links.add(new IndexLinkBean("index.coursegradebook.learner", link, "my-grades-button", null, null));
}
if ((contains(roles, Role.ROLE_GROUP_ADMIN) || contains(roles, Role.ROLE_GROUP_MANAGER) || contains(roles,
@@ -157,17 +157,26 @@
if ((!isSysAdmin)
&& (contains(roles, Role.ROLE_GROUP_ADMIN) || contains(roles, Role.ROLE_GROUP_MANAGER))) {
moreLinks.add(new IndexLinkBean("index.classman", "javascript:openOrgManagement("
- + org.getOrganisationId() + ")", "manage-group-button", null));
+ + org.getOrganisationId() + ")", "manage-group-button", null, null));
}
if (contains(roles, Role.ROLE_GROUP_MANAGER) || contains(roles, Role.ROLE_MONITOR))
links.add(new IndexLinkBean("index.addlesson", Configuration.get(ConfigurationKeys.SERVER_URL)
+ "/home.do?method=addLesson&courseID=" + org.getOrganisationId() + "&classID=" + ""
+ "&KeepThis=true&TB_iframe=true&height=480&width=610", "add-lesson-button thickbox"
- + org.getOrganisationId(), null));
+ + org.getOrganisationId(), null, null));
moreLinks.add(new IndexLinkBean("index.searchlesson", Configuration.get(ConfigurationKeys.SERVER_URL)
+ "/findUserLessons.do?dispatch=getResults&courseID=" + org.getOrganisationId()
+ "&KeepThis=true&TB_iframe=true&height=400&width=600", "search-lesson thickbox"
- + org.getOrganisationId(), "index.searchlesson.tooltip"));
+ + org.getOrganisationId(), null, "index.searchlesson.tooltip"));
+
+ // Adding course notifications links if enabled
+ if (org.getEnableCourseNotifications() && (contains(roles, Role.ROLE_GROUP_MANAGER) || contains(roles, Role.ROLE_MONITOR))) {
+ moreLinks.add(new IndexLinkBean("index.emailnotifications", Configuration.get(ConfigurationKeys.SERVER_URL)
+ + "/monitoring/emailNotifications.do?method=getCourseView&organisationID="
+ + org.getOrganisationId() + "&KeepThis=true&TB_iframe=true&height=500&width=800",
+ "course-notifications thickbox" + org.getOrganisationId(), null,
+ "index.emailnotifications.tooltip"));
+ }
// Adding gradebook course monitor links if enabled
if (org.getEnableGradebookForMonitors() && (contains(roles, Role.ROLE_GROUP_MANAGER) || contains(roles, Role.ROLE_MONITOR))) {
@@ -176,9 +185,8 @@
+ "/gradebook/gradebookMonitoring.do?dispatch=courseMonitor&organisationID="
+ org.getOrganisationId() + "'," + "850,400,0,0);";
- moreLinks.add(new IndexLinkBean("index.coursegradebook", link, "course-gradebook-button",
+ moreLinks.add(new IndexLinkBean("index.coursegradebook", link, "course-gradebook-button", null,
"index.coursegradebook.tooltip"));
-
}
} else {//CLASS_TYPE
@@ -187,16 +195,18 @@
+ "/home.do?method=addLesson&courseID=" + org.getParentOrganisation().getOrganisationId()
+ "&classID=" + org.getOrganisationId()
+ "&KeepThis=true&TB_iframe=true&height=480&width=610", "add-lesson-button thickbox"
- + org.getOrganisationId(), null));
-
+ + org.getOrganisationId(), null, null));
+
// Adding gradebook course monitor links if enabled
- if (org.getParentOrganisation().getEnableGradebookForMonitors() && (contains(roles, Role.ROLE_GROUP_MANAGER) || contains(roles, Role.ROLE_MONITOR))) {
+ if (org.getParentOrganisation().getEnableGradebookForMonitors()
+ && (contains(roles, Role.ROLE_GROUP_MANAGER) || contains(roles, Role.ROLE_MONITOR))) {
String link = "javascript:openGradebookCourseMonitorPopup(" + "'" + org.getName() + "','"
+ Configuration.get(ConfigurationKeys.SERVER_URL)
+ "/gradebook/gradebookMonitoring.do?dispatch=courseMonitor&organisationID="
+ org.getOrganisationId() + "'," + "850,400,0,0);";
- moreLinks.add(new IndexLinkBean("index.coursegradebook.subgroup", link, "mycourses-mark-img", ""));
+ moreLinks.add(new IndexLinkBean("index.coursegradebook.subgroup", link, "mycourses-mark-img", null,
+ null));
}
}
}
@@ -313,15 +323,24 @@
if (stateId.equals(OrganisationState.ACTIVE)) {
if (contains(roles, Role.ROLE_GROUP_MANAGER) || contains(roles, Role.ROLE_MONITOR)) {
lessonLinks.add(new IndexLinkBean("index.monitor", "javascript:openMonitorLesson(" + bean.getId()
- + ")", "mycourses-monitor-img", ""));
+ + ")", null, "mycourses-monitor-img", null));
}
} else if (stateId.equals(OrganisationState.ARCHIVED)) {
if (contains(roles, Role.ROLE_GROUP_MANAGER)) {
lessonLinks.add(new IndexLinkBean("index.monitor", "javascript:openMonitorLesson(" + bean.getId()
- + ")", "mycourses-monitor-img", ""));
+ + ")", null, "mycourses-monitor-img", null));
}
}
+
+ // Adding lesson notifications links if enabled
+ if (bean.isEnableLessonNotifications() && (contains(roles, Role.ROLE_GROUP_MANAGER) || contains(roles, Role.ROLE_MONITOR))) {
+ String emailnotificationsUrl = Configuration.get(ConfigurationKeys.SERVER_URL)
+ + "/monitoring/emailNotifications.do?method=getLessonView&lessonID=" + bean.getId()
+ + "&KeepThis=true&TB_iframe=true&height=560&width=800";
+ lessonLinks.add(new IndexLinkBean("index.emailnotifications", emailnotificationsUrl,
+ "thickbox" + orgId, "mycourses-notifications-img", "index.emailnotifications.tooltip"));
+ }
// Adding gradebook course monitor links if enabled
if ((contains(roles, Role.ROLE_GROUP_MANAGER) || contains(roles, Role.ROLE_MONITOR))
@@ -331,7 +350,7 @@
+ Configuration.get(ConfigurationKeys.SERVER_URL)
+ "/gradebook/gradebookMonitoring.do?lessonID=" + bean.getId() + "'," + "850,700,0,0);";
- lessonLinks.add(new IndexLinkBean("index.coursegradebookmonitor", link, "mycourses-mark-img", ""));
+ lessonLinks.add(new IndexLinkBean("index.coursegradebookmonitor", link, null, "mycourses-mark-img", null));
}
if (lessonLinks.size() > 0) {
Index: lams_central/web/groupContents.jsp
===================================================================
RCS file: /usr/local/cvsroot/lams_central/web/groupContents.jsp,v
diff -u -r1.10 -r1.11
--- lams_central/web/groupContents.jsp 7 Jul 2011 17:35:14 -0000 1.10
+++ lams_central/web/groupContents.jsp 5 Dec 2011 16:04:12 -0000 1.11
@@ -29,8 +29,15 @@
" >
" >
-
-
+
+
+
+
+
+
+
+
+
@@ -77,11 +84,17 @@
" >
" >
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
Index: lams_central/web/css/defaultHTML.css
===================================================================
RCS file: /usr/local/cvsroot/lams_central/web/css/defaultHTML.css,v
diff -u -r1.45 -r1.46
--- lams_central/web/css/defaultHTML.css 29 Jul 2011 14:56:14 -0000 1.45
+++ lams_central/web/css/defaultHTML.css 5 Dec 2011 16:04:11 -0000 1.46
@@ -1361,6 +1361,9 @@
.mycourses-completed-img {background: url('../images/css/lesson_completed.png') no-repeat 0 3px; margin-left:20px; margin-right:5px; padding:5px 0px 5px 25px;
}
+.mycourses-notifications-img {background: url('../images/css/notifications_go.png') no-repeat 0 3px; margin-left:20px; margin-right:5px; padding:5px 0px 5px 25px;
+}
+
/* Date and time restriction area in monitor */
#restrictUsageDiv {font-size: 13px; padding-bottom: 10px; padding-left: 18px; padding-top: -5px;}
#restrictUsageDiv :first-child {padding-bottom: 10px; padding-top: -5px;}
@@ -1681,3 +1684,22 @@
border-right:1px solid #d2d2d2;
border-bottom: 0px;
}
+
+#content-main a.course-notifications {
+ background: url('../images/css/course-notifications.png') no-repeat 0px 0px;
+ color: #666;
+ padding: 5px 12px 6px 30px;
+ text-decoration: none;
+ border-right:1px solid #d2d2d2;
+ border-bottom: 0px;
+ display: run-in;
+}
+
+#content-main a:hover.course-notifications {
+ background: url('../images/css/course-notifications.png') no-repeat 0px 0px;
+ color: #47bc23;
+ padding: 5px 12px 6px 30px;
+ text-decoration: none;
+ border-right:1px solid #d2d2d2;
+ border-bottom: 0px;
+}
Index: lams_central/web/css/defaultHTML_rtl.css
===================================================================
RCS file: /usr/local/cvsroot/lams_central/web/css/defaultHTML_rtl.css,v
diff -u -r1.28 -r1.29
--- lams_central/web/css/defaultHTML_rtl.css 29 Jul 2011 14:56:14 -0000 1.28
+++ lams_central/web/css/defaultHTML_rtl.css 5 Dec 2011 16:04:11 -0000 1.29
@@ -1354,6 +1354,9 @@
.mycourses-completed-img {background: url('../images/css/lesson_completed.png') no-repeat 0 3px; margin-left:20px; margin-right:5px; padding:5px 0px 5px 25px;
}
+.mycourses-notifications-img {background: url('../images/css/notifications_go.png') no-repeat 0 3px; margin-right:5px; padding:5px 0px 5px 25px;
+}
+
/* Date and time restriction area in monitor */
#restrictUsageDiv {font-size: 13px; padding-bottom: 10px; padding-left: 18px; padding-top: -5px;}
#restrictUsageDiv :first-child {padding-bottom: 10px; padding-top: -5px;}
@@ -1676,4 +1679,23 @@
text-decoration: none;
border-right:1px solid #d2d2d2;
border-bottom: 0px;
+}
+
+#content-main a.course-notifications {
+ background: url('../images/css/course-notifications.png') no-repeat 0px 0px;
+ color: #666;
+ padding: 5px 12px 6px 30px;
+ text-decoration: none;
+ border-right:1px solid #d2d2d2;
+ border-bottom: 0px;
+ display: run-in;
+}
+
+#content-main a:hover.course-notifications {
+ background: url('../images/css/course-notifications.png') no-repeat 0px 0px;
+ color: #47bc23;
+ padding: 5px 12px 6px 30px;
+ text-decoration: none;
+ border-right:1px solid #d2d2d2;
+ border-bottom: 0px;
}
\ No newline at end of file
Index: lams_central/web/css/jquery.jqGrid-4.1.2.css
===================================================================
RCS file: /usr/local/cvsroot/lams_central/web/css/Attic/jquery.jqGrid-4.1.2.css,v
diff -u
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ lams_central/web/css/jquery.jqGrid-4.1.2.css 5 Dec 2011 16:04:11 -0000 1.1
@@ -0,0 +1,134 @@
+/*Grid*/
+.ui-jqgrid {position: relative; font-size:11px;}
+.ui-jqgrid .ui-jqgrid-view {position: relative;left:0px; top: 0px; padding: .0em;}
+/* caption*/
+.ui-jqgrid .ui-jqgrid-titlebar {padding: .3em .2em .2em .3em; position: relative; border-left: 0px none;border-right: 0px none; border-top: 0px none;}
+.ui-jqgrid .ui-jqgrid-title { float: left; margin: .1em 0 .2em; }
+.ui-jqgrid .ui-jqgrid-titlebar-close { position: absolute;top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height:18px;}.ui-jqgrid .ui-jqgrid-titlebar-close span { display: block; margin: 1px; }
+.ui-jqgrid .ui-jqgrid-titlebar-close:hover { padding: 0; }
+/* header*/
+.ui-jqgrid .ui-jqgrid-hdiv {position: relative; margin: 0em;padding: 0em; overflow-x: hidden; overflow-y: auto; border-left: 0px none !important; border-top : 0px none !important; border-right : 0px none !important;}
+.ui-jqgrid .ui-jqgrid-hbox {float: left; padding-right: 20px;}
+.ui-jqgrid .ui-jqgrid-htable {table-layout:fixed;margin:0em;}
+.ui-jqgrid .ui-jqgrid-htable th {height:22px;padding: 0 2px 0 2px;}
+.ui-jqgrid .ui-jqgrid-htable th div {overflow: hidden; position:relative; height:17px;}
+.ui-th-column, .ui-jqgrid .ui-jqgrid-htable th.ui-th-column {overflow: hidden;white-space: nowrap;text-align:center;border-top : 0px none;border-bottom : 0px none;}
+.ui-th-ltr, .ui-jqgrid .ui-jqgrid-htable th.ui-th-ltr {border-left : 0px none;}
+.ui-th-rtl, .ui-jqgrid .ui-jqgrid-htable th.ui-th-rtl {border-right : 0px none;}
+.ui-jqgrid .ui-th-div-ie {white-space: nowrap; zoom :1; height:17px;}
+.ui-jqgrid .ui-jqgrid-resize {height:20px !important;position: relative; cursor :e-resize;display: inline;overflow: hidden;}
+.ui-jqgrid .ui-grid-ico-sort {overflow:hidden;position:absolute;display:inline; cursor: pointer !important;}
+.ui-jqgrid .ui-icon-asc {margin-top:-3px; height:12px;}
+.ui-jqgrid .ui-icon-desc {margin-top:3px;height:12px;}
+.ui-jqgrid .ui-i-asc {margin-top:0px;height:16px;}
+.ui-jqgrid .ui-i-desc {margin-top:0px;margin-left:13px;height:16px;}
+.ui-jqgrid .ui-jqgrid-sortable {cursor:pointer;}
+.ui-jqgrid tr.ui-search-toolbar th { border-top-width: 1px !important; border-top-color: inherit !important; border-top-style: ridge !important }
+tr.ui-search-toolbar input {margin: 1px 0px 0px 0px}
+tr.ui-search-toolbar select {margin: 1px 0px 0px 0px}
+/* body */
+.ui-jqgrid .ui-jqgrid-bdiv {position: relative; margin: 0em; padding:0; overflow: auto; text-align:left;}
+.ui-jqgrid .ui-jqgrid-btable {table-layout:fixed; margin:0em; outline-style: none; }
+.ui-jqgrid tr.jqgrow { outline-style: none; }
+.ui-jqgrid tr.jqgroup { outline-style: none; }
+.ui-jqgrid tr.jqgrow td {font-weight: normal; overflow: hidden; white-space: pre; height: 22px;padding: 0 2px 0 2px;border-bottom-width: 1px; border-bottom-color: inherit; border-bottom-style: solid;}
+.ui-jqgrid tr.jqgfirstrow td {padding: 0 2px 0 2px;border-right-width: 1px; border-right-style: solid;}
+.ui-jqgrid tr.jqgroup td {font-weight: normal; overflow: hidden; white-space: pre; height: 22px;padding: 0 2px 0 2px;border-bottom-width: 1px; border-bottom-color: inherit; border-bottom-style: solid;}
+.ui-jqgrid tr.jqfoot td {font-weight: bold; overflow: hidden; white-space: pre; height: 22px;padding: 0 2px 0 2px;border-bottom-width: 1px; border-bottom-color: inherit; border-bottom-style: solid;}
+.ui-jqgrid tr.ui-row-ltr td {text-align:left;border-right-width: 1px; border-right-color: inherit; border-right-style: solid;}
+.ui-jqgrid tr.ui-row-rtl td {text-align:right;border-left-width: 1px; border-left-color: inherit; border-left-style: solid;}
+.ui-jqgrid td.jqgrid-rownum { padding: 0 2px 0 2px; margin: 0px; border: 0px none;}
+.ui-jqgrid .ui-jqgrid-resize-mark { width:2px; left:0; background-color:#777; cursor: e-resize; cursor: col-resize; position:absolute; top:0; height:100px; overflow:hidden; display:none; border:0 none;}
+/* footer */
+.ui-jqgrid .ui-jqgrid-sdiv {position: relative; margin: 0em;padding: 0em; overflow: hidden; border-left: 0px none !important; border-top : 0px none !important; border-right : 0px none !important;}
+.ui-jqgrid .ui-jqgrid-ftable {table-layout:fixed; margin-bottom:0em;}
+.ui-jqgrid tr.footrow td {font-weight: bold; overflow: hidden; white-space:nowrap; height: 21px;padding: 0 2px 0 2px;border-top-width: 1px; border-top-color: inherit; border-top-style: solid;}
+.ui-jqgrid tr.footrow-ltr td {text-align:left;border-right-width: 1px; border-right-color: inherit; border-right-style: solid;}
+.ui-jqgrid tr.footrow-rtl td {text-align:right;border-left-width: 1px; border-left-color: inherit; border-left-style: solid;}
+/* Pager*/
+.ui-jqgrid .ui-jqgrid-pager { border-left: 0px none !important;border-right: 0px none !important; border-bottom: 0px none !important; margin: 0px !important; padding: 0px !important; position: relative; height: 25px;white-space: nowrap;overflow: hidden;}
+.ui-jqgrid .ui-pager-control {position: relative;}
+.ui-jqgrid .ui-pg-table {position: relative; padding-bottom:2px; width:auto; margin: 0em;}
+.ui-jqgrid .ui-pg-table td {font-weight:normal; vertical-align:middle; padding:1px;}
+.ui-jqgrid .ui-pg-button { height:19px !important;}
+.ui-jqgrid .ui-pg-button span { display: block; margin: 1px; float:left;}
+.ui-jqgrid .ui-pg-button:hover { padding: 0px; }
+.ui-jqgrid .ui-state-disabled:hover {padding:1px;}
+.ui-jqgrid .ui-pg-input { height:13px;font-size:.8em; margin: 0em;}
+.ui-jqgrid .ui-pg-selbox {font-size:.8em; line-height:18px; display:block; height:18px; margin: 0em;}
+.ui-jqgrid .ui-separator {height: 18px; border-left: 1px solid #ccc ; border-right: 1px solid #ccc ; margin: 1px; float: right;}
+.ui-jqgrid .ui-paging-info {font-weight: normal;height:19px; margin-top:3px;margin-right:4px;}
+.ui-jqgrid .ui-jqgrid-pager .ui-pg-div {padding:1px 0;float:left;list-style-image:none;list-style-position:outside;list-style-type:none;position:relative;}
+.ui-jqgrid .ui-jqgrid-pager .ui-pg-button { cursor:pointer; }
+.ui-jqgrid .ui-jqgrid-pager .ui-pg-div span.ui-icon {float:left;margin:0 2px;}
+.ui-jqgrid td input, .ui-jqgrid td select .ui-jqgrid td textarea { margin: 0em;}
+.ui-jqgrid td textarea {width:auto;height:auto;}
+.ui-jqgrid .ui-jqgrid-toppager {border-left: 0px none !important;border-right: 0px none !important; border-top: 0px none !important; margin: 0px !important; padding: 0px !important; position: relative; height: 25px !important;white-space: nowrap;overflow: hidden;}
+/*subgrid*/
+.ui-jqgrid .ui-jqgrid-btable .ui-sgcollapsed span {display: block;}
+.ui-jqgrid .ui-subgrid {margin:0em;padding:0em; width:100%;}
+.ui-jqgrid .ui-subgrid table {table-layout: fixed;}
+.ui-jqgrid .ui-subgrid tr.ui-subtblcell td {height:18px;border-right-width: 1px; border-right-color: inherit; border-right-style: solid;border-bottom-width: 1px; border-bottom-color: inherit; border-bottom-style: solid;}
+.ui-jqgrid .ui-subgrid td.subgrid-data {border-top: 0px none !important;}
+.ui-jqgrid .ui-subgrid td.subgrid-cell {border-width: 0px 0px 1px 0px;}
+.ui-jqgrid .ui-th-subgrid {height:20px;}
+/* loading */
+.ui-jqgrid .loading {position: absolute; top: 45%;left: 45%;width: auto;z-index:101;padding: 6px; margin: 5px;text-align: center;font-weight: bold;display: none;border-width: 2px !important;}
+.ui-jqgrid .jqgrid-overlay {display:none;z-index:100;}
+* html .jqgrid-overlay {width: expression(this.parentNode.offsetWidth+'px');height: expression(this.parentNode.offsetHeight+'px');}
+* .jqgrid-overlay iframe {position:absolute;top:0;left:0;z-index:-1;width: expression(this.parentNode.offsetWidth+'px');height: expression(this.parentNode.offsetHeight+'px');}
+/* end loading div */
+/* toolbar */
+.ui-jqgrid .ui-userdata {border-left: 0px none; border-right: 0px none; height : 21px;overflow: hidden; }
+/*Modal Window */
+.ui-jqdialog { display: none; width: 300px; position: absolute; padding: .2em; font-size:11px; overflow:visible;}
+.ui-jqdialog .ui-jqdialog-titlebar { padding: .3em .2em; position: relative; }
+.ui-jqdialog .ui-jqdialog-title { margin: .1em 0 .2em; }
+.ui-jqdialog .ui-jqdialog-titlebar-close { position: absolute; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; }
+
+.ui-jqdialog .ui-jqdialog-titlebar-close span { display: block; margin: 1px; }
+.ui-jqdialog .ui-jqdialog-titlebar-close:hover, .ui-jqdialog .ui-jqdialog-titlebar-close:focus { padding: 0; }
+.ui-jqdialog-content, .ui-jqdialog .ui-jqdialog-content { border: 0; padding: .3em .2em; background: none; height:auto;}
+.ui-jqdialog .ui-jqconfirm {padding: .4em 1em; border-width:3px;position:absolute;bottom:10px;right:10px;overflow:visible;display:none;height:80px;width:220px;text-align:center;}
+/* end Modal window*/
+/* Form edit */
+.ui-jqdialog-content .FormGrid {margin: 0px;}
+.ui-jqdialog-content .EditTable { width: 100%; margin-bottom:0em;}
+.ui-jqdialog-content .DelTable { width: 100%; margin-bottom:0em;}
+.EditTable td input, .EditTable td select, .EditTable td textarea {margin: 0em;}
+.EditTable td textarea { width:auto; height:auto;}
+.ui-jqdialog-content td.EditButton {text-align: right;border-top: 0px none;border-left: 0px none;border-right: 0px none; padding-bottom:5px; padding-top:5px;}
+.ui-jqdialog-content td.navButton {text-align: center; border-left: 0px none;border-top: 0px none;border-right: 0px none; padding-bottom:5px; padding-top:5px;}
+.ui-jqdialog-content input.FormElement {padding:.3em}
+.ui-jqdialog-content .data-line {padding-top:.1em;border: 0px none;}
+
+.ui-jqdialog-content .CaptionTD {text-align: left; vertical-align: middle;border: 0px none; padding: 2px;white-space: nowrap;}
+.ui-jqdialog-content .DataTD {padding: 2px; border: 0px none; vertical-align: top;}
+.ui-jqdialog-content .form-view-data {white-space:pre}
+.fm-button { display: inline-block; margin:0 4px 0 0; padding: .4em .5em; text-decoration:none !important; cursor:pointer; position: relative; text-align: center; zoom: 1; }
+.fm-button-icon-left { padding-left: 1.9em; }
+.fm-button-icon-right { padding-right: 1.9em; }
+.fm-button-icon-left .ui-icon { right: auto; left: .2em; margin-left: 0; position: absolute; top: 50%; margin-top: -8px; }
+.fm-button-icon-right .ui-icon { left: auto; right: .2em; margin-left: 0; position: absolute; top: 50%; margin-top: -8px;}
+#nData, #pData { float: left; margin:3px;padding: 0; width: 15px; }
+/* End Eorm edit */
+/*.ui-jqgrid .edit-cell {}*/
+.ui-jqgrid .selected-row, div.ui-jqgrid .selected-row td {font-style : normal;border-left: 0px none;}
+/* Tree Grid */
+.ui-jqgrid .tree-wrap {float: left; position: relative;height: 18px;white-space: nowrap;overflow: hidden;}
+.ui-jqgrid .tree-minus {position: absolute; height: 18px; width: 18px; overflow: hidden;}
+.ui-jqgrid .tree-plus {position: absolute; height: 18px; width: 18px; overflow: hidden;}
+.ui-jqgrid .tree-leaf {position: absolute; height: 18px; width: 18px;overflow: hidden;}
+.ui-jqgrid .treeclick {cursor: pointer;}
+/* moda dialog */
+* iframe.jqm {position:absolute;top:0;left:0;z-index:-1;width: expression(this.parentNode.offsetWidth+'px');height: expression(this.parentNode.offsetHeight+'px');}
+.ui-jqgrid-dnd tr td {border-right-width: 1px; border-right-color: inherit; border-right-style: solid; height:20px}
+/* RTL Support */
+.ui-jqgrid .ui-jqgrid-title-rtl {float:right;margin: .1em 0 .2em; }
+.ui-jqgrid .ui-jqgrid-hbox-rtl {float: right; padding-left: 20px;}
+.ui-jqgrid .ui-jqgrid-resize-ltr {float: right;margin: -2px -2px -2px 0px;}
+.ui-jqgrid .ui-jqgrid-resize-rtl {float: left;margin: -2px 0px -1px -3px;}
+.ui-jqgrid .ui-sort-rtl {left:0px;}
+.ui-jqgrid .tree-wrap-ltr {float: left;}
+.ui-jqgrid .tree-wrap-rtl {float: right;}
+.ui-jqgrid .ui-ellipsis {text-overflow:ellipsis; -moz-binding:url('ellipsis-xbl.xml#ellipsis');}
\ No newline at end of file
Index: lams_central/web/images/css/course-notifications.png
===================================================================
RCS file: /usr/local/cvsroot/lams_central/web/images/css/course-notifications.png,v
diff -u -r1.1 -r1.2
Binary files differ
Index: lams_central/web/images/css/notifications_go.png
===================================================================
RCS file: /usr/local/cvsroot/lams_central/web/images/css/notifications_go.png,v
diff -u -r1.1 -r1.2
Binary files differ
Index: lams_central/web/includes/javascript/jquery.jqGrid.locale-en.js
===================================================================
RCS file: /usr/local/cvsroot/lams_central/web/includes/javascript/jquery.jqGrid.locale-en.js,v
diff -u
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ lams_central/web/includes/javascript/jquery.jqGrid.locale-en.js 5 Dec 2011 16:04:12 -0000 1.1
@@ -0,0 +1,128 @@
+;(function($){
+/**
+ * jqGrid English Translation
+ * Tony Tomov tony@trirand.com
+ * http://trirand.com/blog/
+ * Dual licensed under the MIT and GPL licenses:
+ * http://www.opensource.org/licenses/mit-license.php
+ * http://www.gnu.org/licenses/gpl.html
+**/
+$.jgrid = {
+ defaults : {
+ recordtext: "View {0} - {1} of {2}",
+ emptyrecords: "No records to view",
+ loadtext: "Loading...",
+ pgtext : "Page {0} of {1}"
+ },
+ search : {
+ caption: "Search...",
+ Find: "Find",
+ Reset: "Reset",
+ odata : ['equal', 'not equal', 'less', 'less or equal','greater','greater or equal', 'begins with','does not begin with','is in','is not in','ends with','does not end with','contains','does not contain'],
+ groupOps: [ { op: "AND", text: "all" }, { op: "OR", text: "any" } ],
+ matchText: " match",
+ rulesText: " rules"
+ },
+ edit : {
+ addCaption: "Add Record",
+ editCaption: "Edit Record",
+ bSubmit: "Submit",
+ bCancel: "Cancel",
+ bClose: "Close",
+ saveData: "Data has been changed! Save changes?",
+ bYes : "Yes",
+ bNo : "No",
+ bExit : "Cancel",
+ msg: {
+ required:"Field is required",
+ number:"Please, enter valid number",
+ minValue:"value must be greater than or equal to ",
+ maxValue:"value must be less than or equal to",
+ email: "is not a valid e-mail",
+ integer: "Please, enter valid integer value",
+ date: "Please, enter valid date value",
+ url: "is not a valid URL. Prefix required ('http://' or 'https://')",
+ nodefined : " is not defined!",
+ novalue : " return value is required!",
+ customarray : "Custom function should return array!",
+ customfcheck : "Custom function should be present in case of custom checking!"
+
+ }
+ },
+ view : {
+ caption: "View Record",
+ bClose: "Close"
+ },
+ del : {
+ caption: "Delete",
+ msg: "Delete selected record(s)?",
+ bSubmit: "Delete",
+ bCancel: "Cancel"
+ },
+ nav : {
+ edittext: "",
+ edittitle: "Edit selected row",
+ addtext:"",
+ addtitle: "Add new row",
+ deltext: "",
+ deltitle: "Delete selected row",
+ searchtext: "",
+ searchtitle: "Find records",
+ refreshtext: "",
+ refreshtitle: "Reload Grid",
+ alertcap: "Warning",
+ alerttext: "Please, select row",
+ viewtext: "",
+ viewtitle: "View selected row"
+ },
+ col : {
+ caption: "Select columns",
+ bSubmit: "Ok",
+ bCancel: "Cancel"
+ },
+ errors : {
+ errcap : "Error",
+ nourl : "No url is set",
+ norecords: "No records to process",
+ model : "Length of colNames <> colModel!"
+ },
+ formatter : {
+ integer : {thousandsSeparator: " ", defaultValue: '0'},
+ number : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, defaultValue: '0.00'},
+ currency : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0.00'},
+ date : {
+ dayNames: [
+ "Sun", "Mon", "Tue", "Wed", "Thr", "Fri", "Sat",
+ "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"
+ ],
+ monthNames: [
+ "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec",
+ "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"
+ ],
+ AmPm : ["am","pm","AM","PM"],
+ S: function (j) {return j < 11 || j > 13 ? ['st', 'nd', 'rd', 'th'][Math.min((j - 1) % 10, 3)] : 'th'},
+ srcformat: 'Y-m-d',
+ newformat: 'd/m/Y',
+ masks : {
+ ISO8601Long:"Y-m-d H:i:s",
+ ISO8601Short:"Y-m-d",
+ ShortDate: "n/j/Y",
+ LongDate: "l, F d, Y",
+ FullDateTime: "l, F d, Y g:i:s A",
+ MonthDay: "F d",
+ ShortTime: "g:i A",
+ LongTime: "g:i:s A",
+ SortableDateTime: "Y-m-d\\TH:i:s",
+ UniversalSortableDateTime: "Y-m-d H:i:sO",
+ YearMonth: "F, Y"
+ },
+ reformatAfterEdit : false
+ },
+ baseLinkUrl: '',
+ showAction: '',
+ target: '',
+ checkbox : {disabled:true},
+ idName : 'id'
+ }
+};
+})(jQuery);
\ No newline at end of file
Fisheye: Tag 1.1 refers to a dead (removed) revision in file `lams_central/web/includes/javascript/jquery.jqGrid.min.js'.
Fisheye: No comparison available. Pass `N' to diff?
Fisheye: Tag 1.1 refers to a dead (removed) revision in file `lams_central/web/includes/javascript/jquery.jstepper.min.js'.
Fisheye: No comparison available. Pass `N' to diff?
Index: lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/lesson/Lesson.hbm.xml
===================================================================
RCS file: /usr/local/cvsroot/lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/lesson/Lesson.hbm.xml,v
diff -u -r1.41 -r1.42
--- lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/lesson/Lesson.hbm.xml 2 Dec 2011 19:43:40 -0000 1.41
+++ lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/lesson/Lesson.hbm.xml 5 Dec 2011 16:04:24 -0000 1.42
@@ -61,6 +61,9 @@
+
+
@@ -251,7 +254,8 @@
- SELECT l.lesson_id, l.name, l.description, l.lesson_state_id, lp.lesson_completed_flag
+
+ SELECT l.lesson_id, l.name, l.description, l.lesson_state_id, lp.lesson_completed_flag, l.enable_lesson_notifications
FROM (lams_lesson l, lams_learning_design ld, lams_group g, lams_user_group ug, lams_grouping gi)
LEFT JOIN lams_learner_progress lp ON lp.user_id = ug.user_id AND lp.lesson_id = l.lesson_id
WHERE l.learning_design_id = ld.learning_design_id
@@ -271,7 +275,8 @@
- SELECT l.lesson_id, l.name, l.description, l.lesson_state_id, lp.lesson_completed_flag
+
+ SELECT l.lesson_id, l.name, l.description, l.lesson_state_id, lp.lesson_completed_flag, l.enable_lesson_notifications
FROM (lams_lesson l, lams_learning_design ld, lams_group g, lams_user_group ug, lams_grouping gi)
LEFT JOIN lams_learner_progress lp ON lp.user_id = ug.user_id AND lp.lesson_id = l.lesson_id
WHERE l.learning_design_id = ld.learning_design_id
@@ -291,7 +296,8 @@
- SELECT l.lesson_id, l.name, l.description, l.lesson_state_id, lp.lesson_completed_flag
+
+ SELECT l.lesson_id, l.name, l.description, l.lesson_state_id, lp.lesson_completed_flag, l.enable_lesson_notifications
FROM (lams_lesson l, lams_learning_design ld)
LEFT JOIN lams_learner_progress lp ON lp.user_id = :userId AND lp.lesson_id = l.lesson_id
WHERE l.learning_design_id = ld.learning_design_id
Index: lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/usermanagement/Organisation.hbm.xml
===================================================================
RCS file: /usr/local/cvsroot/lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/usermanagement/Organisation.hbm.xml,v
diff -u -r1.20 -r1.21
--- lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/usermanagement/Organisation.hbm.xml 9 Apr 2009 00:08:36 -0000 1.20
+++ lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/usermanagement/Organisation.hbm.xml 5 Dec 2011 16:04:24 -0000 1.21
@@ -96,6 +96,15 @@
+
+
+ @hibernate.property column="enable_course_notifications"
+ length="1" not-null="true"
+
+
+
Index: lams_common/db/sql/create_lams_11_tables.sql
===================================================================
RCS file: /usr/local/cvsroot/lams_common/db/sql/create_lams_11_tables.sql,v
diff -u -r1.159 -r1.160
--- lams_common/db/sql/create_lams_11_tables.sql 2 Dec 2011 19:43:40 -0000 1.159
+++ lams_common/db/sql/create_lams_11_tables.sql 5 Dec 2011 16:04:24 -0000 1.160
@@ -227,6 +227,7 @@
, admin_browse_all_users TINYINT(1) NOT NULL DEFAULT 0
, admin_change_status TINYINT(1) NOT NULL DEFAULT 0
, admin_create_guest TINYINT(1) NOT NULL DEFAULT 0
+ , enable_course_notifications TINYINT(1) NOT NULL DEFAULT 0
, enable_monitor_gradebook TINYINT(1) NOT NULL DEFAULT 0
, enable_learner_gradebook TINYINT(1) NOT NULL DEFAULT 0
, locale_id INTEGER
@@ -650,6 +651,7 @@
, learner_presence_avail TINYINT(1) DEFAULT 0
, learner_im_avail TINYINT(1) DEFAULT 0
, live_edit_enabled TINYINT(1) DEFAULT 0
+ , enable_lesson_notifications TINYINT(1) DEFAULT 0
, locked_for_edit TINYINT DEFAULT 0
, marks_released TINYINT DEFAULT 0
, version INTEGER DEFAULT 1
Index: lams_common/src/java/org/lamsfoundation/lams/dbupdates/patch02040006.sql
===================================================================
RCS file: /usr/local/cvsroot/lams_common/src/java/org/lamsfoundation/lams/dbupdates/patch02040006.sql,v
diff -u -r1.13 -r1.14
--- lams_common/src/java/org/lamsfoundation/lams/dbupdates/patch02040006.sql 2 Dec 2011 19:43:40 -0000 1.13
+++ lams_common/src/java/org/lamsfoundation/lams/dbupdates/patch02040006.sql 5 Dec 2011 16:04:24 -0000 1.14
@@ -165,6 +165,10 @@
ALTER TABLE lams_lesson ADD COLUMN scheduled_number_days_to_lesson_finish INT(3) DEFAULT NULL;
ALTER TABLE lams_user_group ADD COLUMN scheduled_lesson_end_date DATETIME;
+-- WVI-15 Email Notifications
+ALTER TABLE lams_lesson ADD COLUMN enable_lesson_notifications TINYINT(1) DEFAULT 0;
+ALTER TABLE lams_organisation ADD COLUMN enable_course_notifications TINYINT(1) NOT NULL DEFAULT 0;
+
COMMIT;
SET AUTOCOMMIT = 1;
set FOREIGN_KEY_CHECKS = 1;
Index: lams_common/src/java/org/lamsfoundation/lams/index/IndexLessonBean.java
===================================================================
RCS file: /usr/local/cvsroot/lams_common/src/java/org/lamsfoundation/lams/index/IndexLessonBean.java,v
diff -u -r1.1 -r1.2
--- lams_common/src/java/org/lamsfoundation/lams/index/IndexLessonBean.java 8 Jan 2008 07:02:33 -0000 1.1
+++ lams_common/src/java/org/lamsfoundation/lams/index/IndexLessonBean.java 5 Dec 2011 16:04:24 -0000 1.2
@@ -26,101 +26,129 @@
/**
* @version
- *
+ *
*
- * View Source
+ * View Source
*
- *
+ *
* @author Fei Yang
- *
+ *
* Created at 10:13:43 on 14/06/2006
*/
-public class IndexLessonBean implements Comparable{
- private Long id;
- private String name;
- private String description;
- private String url;
- private Integer state;
- private boolean completed;
- private List links;
+public class IndexLessonBean implements Comparable {
+ private Long id;
+ private String name;
+ private String description;
+ private String url;
+ private Integer state;
+ private boolean completed;
+ private boolean enableLessonNotifications;
+ private List links;
- public IndexLessonBean(String name, String url) {
- this.name = name;
- this.url = url;
- }
-
- public IndexLessonBean(Long id, String name, String description, Integer state, boolean completed) {
- this.id = id;
- this.name = name;
- this.description = description;
- this.state = state;
- this.completed = completed;
- }
-
- public IndexLessonBean(Long id, String name, String description, String url, Integer state, boolean completed, List links) {
- this.id = id;
- this.name = name;
- this.description = description;
- this.url = url;
- this.state = state;
- this.completed = completed;
- this.links = links;
- }
- /**
- * @return Returns the links.
- */
- public List getLinks() {
- return links;
- }
- /**
- * @param links The links to set.
- */
- public void setLinks(List links) {
- this.links = links;
- }
- public Long getId() {
- return id;
- }
- public void setId(Long id) {
- this.id = id;
- }
- /**
- * @return Returns the name.
- */
- public String getName() {
- return name;
- }
- /**
- * @param name The name to set.
- */
- public void setName(String name) {
- this.name = name;
- }
- public int compareTo(Object o) {
- return name.compareTo(((IndexLessonBean)o).getName());
- }
- public String getDescription() {
- return description;
- }
- public void setDescription(String description) {
- this.description = description;
- }
- public String getUrl() {
- return url;
- }
- public void setUrl(String url) {
- this.url = url;
- }
- public Integer getState() {
- return state;
- }
- public void setState(Integer state) {
- this.state = state;
- }
- public boolean getCompleted() {
- return completed;
- }
- public void setCompleted(boolean completed) {
- this.completed = completed;
- }
+ public IndexLessonBean(String name, String url) {
+ this.name = name;
+ this.url = url;
+ }
+
+ public IndexLessonBean(Long id, String name, String description, Integer state, boolean completed, boolean enableLessonNotifications) {
+ this.id = id;
+ this.name = name;
+ this.description = description;
+ this.state = state;
+ this.completed = completed;
+ this.enableLessonNotifications = enableLessonNotifications;
+ }
+
+ public IndexLessonBean(Long id, String name, String description, String url, Integer state, boolean completed,
+ List links) {
+ this.id = id;
+ this.name = name;
+ this.description = description;
+ this.url = url;
+ this.state = state;
+ this.completed = completed;
+ this.links = links;
+ }
+
+ /**
+ * @return Returns the links.
+ */
+ public List getLinks() {
+ return links;
+ }
+
+ /**
+ * @param links
+ * The links to set.
+ */
+ public void setLinks(List links) {
+ this.links = links;
+ }
+
+ public Long getId() {
+ return id;
+ }
+
+ public void setId(Long id) {
+ this.id = id;
+ }
+
+ /**
+ * @return Returns the name.
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * @param name
+ * The name to set.
+ */
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public int compareTo(Object o) {
+ return name.compareTo(((IndexLessonBean) o).getName());
+ }
+
+ public String getDescription() {
+ return description;
+ }
+
+ public void setDescription(String description) {
+ this.description = description;
+ }
+
+ public String getUrl() {
+ return url;
+ }
+
+ public void setUrl(String url) {
+ this.url = url;
+ }
+
+ public Integer getState() {
+ return state;
+ }
+
+ public void setState(Integer state) {
+ this.state = state;
+ }
+
+ public boolean getCompleted() {
+ return completed;
+ }
+
+ public void setCompleted(boolean completed) {
+ this.completed = completed;
+ }
+
+ public boolean isEnableLessonNotifications() {
+ return enableLessonNotifications;
+ }
+
+ public void setEnableLessonNotifications(boolean enableLessonNotifications) {
+ this.enableLessonNotifications = enableLessonNotifications;
+ }
}
Index: lams_common/src/java/org/lamsfoundation/lams/index/IndexLinkBean.java
===================================================================
RCS file: /usr/local/cvsroot/lams_common/src/java/org/lamsfoundation/lams/index/IndexLinkBean.java,v
diff -u -r1.2 -r1.3
--- lams_common/src/java/org/lamsfoundation/lams/index/IndexLinkBean.java 10 Nov 2008 03:46:27 -0000 1.2
+++ lams_common/src/java/org/lamsfoundation/lams/index/IndexLinkBean.java 5 Dec 2011 16:04:24 -0000 1.3
@@ -34,63 +34,79 @@
* Created at 10:12:09 on 14/06/2006
*/
public class IndexLinkBean {
-
- private String name;
- private String url;
- private String style;
- private String tooltip;
-
- public IndexLinkBean(String name, String url, String style, String tooltip) {
- super();
- this.name = name;
- this.url = url;
- this.style = style;
- this.tooltip = tooltip;
- }
-
- public IndexLinkBean(String name, String url) {
- this.name = name;
- this.url = url;
- }
- /**
- * @return Returns the name.
- */
- public String getName() {
- return name;
- }
- /**
- * @param name The name to set.
- */
- public void setName(String name) {
- this.name = name;
- }
- /**
- * @return Returns the url.
- */
- public String getUrl() {
- return url;
- }
- /**
- * @param url The url to set.
- */
- public void setUrl(String url) {
- this.url = url;
- }
-
- public String getStyle() {
- return style;
- }
-
- public void setStyle(String style) {
- this.style = style;
- }
-
- public String getTooltip() {
- return tooltip;
- }
- public void setTooltip(String tooltip) {
- this.tooltip = tooltip;
- }
+ private String name;
+ private String url;
+ private String style;
+ private String spanStyle;
+ private String tooltip;
+ public IndexLinkBean(String name, String url, String style, String spanStyle, String tooltip) {
+ super();
+ this.name = name;
+ this.url = url;
+ this.style = style;
+ this.spanStyle = spanStyle;
+ this.tooltip = tooltip;
+ }
+
+ public IndexLinkBean(String name, String url) {
+ this.name = name;
+ this.url = url;
+ }
+
+ /**
+ * @return Returns the name.
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * @param name
+ * The name to set.
+ */
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ /**
+ * @return Returns the url.
+ */
+ public String getUrl() {
+ return url;
+ }
+
+ /**
+ * @param url
+ * The url to set.
+ */
+ public void setUrl(String url) {
+ this.url = url;
+ }
+
+ public String getStyle() {
+ return style;
+ }
+
+ public void setStyle(String style) {
+ this.style = style;
+ }
+
+ public String getSpanStyle() {
+ return spanStyle;
+ }
+
+ public void setSpanStyle(String spanStyle) {
+ this.spanStyle = spanStyle;
+ }
+
+ public String getTooltip() {
+ return tooltip;
+ }
+
+ public void setTooltip(String tooltip) {
+ this.tooltip = tooltip;
+ }
+
}
Index: lams_common/src/java/org/lamsfoundation/lams/learningdesign/dao/IGroupUserDAO.java
===================================================================
RCS file: /usr/local/cvsroot/lams_common/src/java/org/lamsfoundation/lams/learningdesign/dao/IGroupUserDAO.java,v
diff -u -r1.2 -r1.3
--- lams_common/src/java/org/lamsfoundation/lams/learningdesign/dao/IGroupUserDAO.java 2 Dec 2011 19:43:40 -0000 1.2
+++ lams_common/src/java/org/lamsfoundation/lams/learningdesign/dao/IGroupUserDAO.java 5 Dec 2011 16:04:24 -0000 1.3
@@ -23,18 +23,23 @@
/* $Id$ */
package org.lamsfoundation.lams.learningdesign.dao;
+import java.util.Date;
+import java.util.List;
+
import org.lamsfoundation.lams.dao.IBaseDAO;
-import org.lamsfoundation.lams.learningdesign.Group;
import org.lamsfoundation.lams.learningdesign.GroupUser;
import org.lamsfoundation.lams.lesson.Lesson;
+import org.lamsfoundation.lams.usermanagement.User;
/**
* @author Andrey Balan
*/
public interface IGroupUserDAO extends IBaseDAO {
- public GroupUser getGroupUser(Lesson lesson, Integer userId);
+ GroupUser getGroupUser(Lesson lesson, Integer userId);
+
+ List getUsersWithLessonEndingSoonerThan(Lesson lesson, Date timeToScheduledLessonEnd);
- public void saveGroupUser(GroupUser groupUser);
+ void saveGroupUser(GroupUser groupUser);
}
Index: lams_common/src/java/org/lamsfoundation/lams/learningdesign/dao/hibernate/GroupUserDAO.java
===================================================================
RCS file: /usr/local/cvsroot/lams_common/src/java/org/lamsfoundation/lams/learningdesign/dao/hibernate/GroupUserDAO.java,v
diff -u -r1.2 -r1.3
--- lams_common/src/java/org/lamsfoundation/lams/learningdesign/dao/hibernate/GroupUserDAO.java 2 Dec 2011 19:43:40 -0000 1.2
+++ lams_common/src/java/org/lamsfoundation/lams/learningdesign/dao/hibernate/GroupUserDAO.java 5 Dec 2011 16:04:24 -0000 1.3
@@ -23,19 +23,25 @@
/* $Id$ */
package org.lamsfoundation.lams.learningdesign.dao.hibernate;
+import java.util.Date;
import java.util.HashMap;
import java.util.List;
import org.lamsfoundation.lams.dao.hibernate.BaseDAO;
import org.lamsfoundation.lams.learningdesign.GroupUser;
import org.lamsfoundation.lams.learningdesign.dao.IGroupUserDAO;
import org.lamsfoundation.lams.lesson.Lesson;
+import org.lamsfoundation.lams.usermanagement.User;
/**
* @author Andrey Balan
*/
public class GroupUserDAO extends BaseDAO implements IGroupUserDAO {
+ private static final String GET_USERS_BY_LESSON_AND_TIME = "SELECT DISTINCT gu.user FROM "
+ + GroupUser.class.getName()
+ + " AS gu WHERE gu.group.grouping.groupingId=? AND (gu.scheduledLessonEndDate IS NOT NULL) AND (NOW() < gu.scheduledLessonEndDate) AND (? > gu.scheduledLessonEndDate)";
+
public GroupUser getGroupUser(Lesson lesson, Integer userId) {
HashMap properties = new HashMap();
properties.put("group.grouping.groupingId", lesson.getLessonClass().getGroupingId());
@@ -46,9 +52,21 @@
} else {
return list.get(0);
}
-
+
}
+ /**
+ * Returns users with deadline sooner than specified date
+ *
+ * @param lesson
+ * @param timeToScheduledLessonEnd
+ * @return
+ */
+ public List getUsersWithLessonEndingSoonerThan(Lesson lesson, Date timeToScheduledLessonEnd) {
+ return getHibernateTemplate().find(GET_USERS_BY_LESSON_AND_TIME,
+ new Object[] { lesson.getLessonClass().getGroupingId(), timeToScheduledLessonEnd });
+ }
+
public void saveGroupUser(GroupUser groupUser) {
getHibernateTemplate().save(groupUser);
}
Index: lams_common/src/java/org/lamsfoundation/lams/lesson/Lesson.java
===================================================================
RCS file: /usr/local/cvsroot/lams_common/src/java/org/lamsfoundation/lams/lesson/Lesson.java,v
diff -u -r1.37 -r1.38
--- lams_common/src/java/org/lamsfoundation/lams/lesson/Lesson.java 2 Dec 2011 19:43:40 -0000 1.37
+++ lams_common/src/java/org/lamsfoundation/lams/lesson/Lesson.java 5 Dec 2011 16:04:24 -0000 1.38
@@ -143,6 +143,9 @@
private Boolean liveEditEnabled;
/** Persistent field. Defaults to FALSE if not set to anything by a constructor parameter. */
+ private Boolean enableLessonNotifications;
+
+ /** Persistent field. Defaults to FALSE if not set to anything by a constructor parameter. */
private Boolean marksReleased;
private Date releaseDate;
@@ -160,11 +163,12 @@
*/
public Lesson(String name, String description, Date createDateTime, User user, Integer lessonStateId,
Integer previousLessonStateId, Boolean learnerExportAvailable, LearningDesign learningDesign,
- Set learnerProgresses, Boolean learnerPresenceAvailable, Boolean learnerImAvailable, Boolean liveEditEnabled, Integer scheduledNumberDaysTolessonFinish) {
+ Set learnerProgresses, Boolean learnerPresenceAvailable, Boolean learnerImAvailable,
+ Boolean liveEditEnabled, Boolean enableLessonNotifications, Integer scheduledNumberDaysTolessonFinish) {
this(null, name, description, createDateTime, null, null, user, lessonStateId, previousLessonStateId,
learnerExportAvailable, false, learningDesign, null, null, learnerProgresses, learnerPresenceAvailable,
- learnerImAvailable, liveEditEnabled, scheduledNumberDaysTolessonFinish);
- }
+ learnerImAvailable, liveEditEnabled, enableLessonNotifications, scheduledNumberDaysTolessonFinish);
+ }
/**
* Constructor that creates a new lesson with organization and class information. Chain construtor pattern
@@ -176,39 +180,40 @@
Boolean learnerPresenceAvailable, Boolean learnerImAvailable, Boolean liveEditEnabled) {
this(null, name, description, createDateTime, null, null, user, lessonStateId, previousLessonStateId,
learnerExportAvailable, false, learningDesign, lessonClass, organisation, learnerProgresses,
- learnerPresenceAvailable, learnerImAvailable, liveEditEnabled, null);
- }
+ learnerPresenceAvailable, learnerImAvailable, liveEditEnabled, false, null);
+ }
/** full constructor */
public Lesson(Long lessonId, String name, String description, Date createDateTime, Date startDateTime,
Date endDateTime, User user, Integer lessonStateId, Integer previousLessonStateId,
Boolean learnerExportAvailable, Boolean lockedForEdit, LearningDesign learningDesign,
LessonClass lessonClass, Organisation organisation, Set learnerProgresses,
Boolean learnerPresenceAvailable, Boolean learnerImAvailable, Boolean liveEditEnabled,
- Integer scheduledNumberDaysToLessonFinish) {
- this.lessonId = lessonId;
- this.lessonName = name;
- this.lessonDescription = description;
- this.createDateTime = createDateTime;
- this.startDateTime = startDateTime;
- this.endDateTime = endDateTime;
- this.user = user;
- this.lessonStateId = lessonStateId;
- this.previousLessonStateId = previousLessonStateId;
- this.learnerExportAvailable = learnerExportAvailable != null ? learnerExportAvailable : Boolean.FALSE;
- this.learnerPresenceAvailable = learnerPresenceAvailable != null ? learnerPresenceAvailable : Boolean.FALSE;
- this.learnerImAvailable = learnerImAvailable != null ? learnerImAvailable : Boolean.FALSE;
- this.lockedForEdit = false;
- this.learningDesign = learningDesign;
- this.lessonClass = lessonClass;
- this.organisation = organisation;
- this.learnerProgresses = learnerProgresses;
- this.liveEditEnabled = liveEditEnabled;
- this.gradebookUserLessons = new HashSet();
- this.marksReleased = false;
- this.scheduledNumberDaysToLessonFinish = scheduledNumberDaysToLessonFinish;
+ Boolean enableLessonNotifications, Integer scheduledNumberDaysToLessonFinish) {
+ this.lessonId = lessonId;
+ this.lessonName = name;
+ this.lessonDescription = description;
+ this.createDateTime = createDateTime;
+ this.startDateTime = startDateTime;
+ this.endDateTime = endDateTime;
+ this.user = user;
+ this.lessonStateId = lessonStateId;
+ this.previousLessonStateId = previousLessonStateId;
+ this.learnerExportAvailable = learnerExportAvailable != null ? learnerExportAvailable : Boolean.FALSE;
+ this.learnerPresenceAvailable = learnerPresenceAvailable != null ? learnerPresenceAvailable : Boolean.FALSE;
+ this.learnerImAvailable = learnerImAvailable != null ? learnerImAvailable : Boolean.FALSE;
+ this.lockedForEdit = false;
+ this.learningDesign = learningDesign;
+ this.lessonClass = lessonClass;
+ this.organisation = organisation;
+ this.learnerProgresses = learnerProgresses;
+ this.liveEditEnabled = liveEditEnabled;
+ this.enableLessonNotifications = enableLessonNotifications;
+ this.gradebookUserLessons = new HashSet();
+ this.marksReleased = false;
+ this.scheduledNumberDaysToLessonFinish = scheduledNumberDaysToLessonFinish;
}
-
+
/**
* Factory method that create a new lesson. It initialized all necessary data for a new lesson with organization and
* lesson class information. It is designed for monitor side to create a lesson by teacher.
@@ -270,6 +275,7 @@
Boolean learnerPresenceAvailable,
Boolean learnerImAvailable,
Boolean liveEditEnabled,
+ Boolean enableLessonNotifications,
Integer scheduledNumberDaysToLessonFinish)
{
return new Lesson(lessonName,
@@ -284,6 +290,7 @@
learnerPresenceAvailable,
learnerImAvailable,
liveEditEnabled,
+ enableLessonNotifications,
scheduledNumberDaysToLessonFinish);
}
//---------------------------------------------------------------------
@@ -526,6 +533,17 @@
this.liveEditEnabled = liveEditEnabled;
}
+ /**
+ * @hibernate.property type="java.lang.Boolean" column="enable_lesson_notifications" length="1"
+ */
+ public Boolean getEnableLessonNotifications() {
+ return enableLessonNotifications;
+ }
+
+ public void setEnableLessonNotifications(Boolean enableLessonNotifications) {
+ this.enableLessonNotifications = enableLessonNotifications;
+ }
+
/**
* @hibernate.property type="java.lang.Boolean" column="locked_for_edit"
* length="1"
@@ -676,15 +694,15 @@
this.marksReleased = marksReleased;
}
- /**
- * @hibernate.property type="java.util.Date" column="release_date"
+ /**
+ * @hibernate.property type="java.util.Date" column="release_date"
*
*/
public Date getReleaseDate() {
- return releaseDate;
- }
+ return releaseDate;
+ }
- public void setReleaseDate(Date releaseDate) {
- this.releaseDate = releaseDate;
- }
+ public void setReleaseDate(Date releaseDate) {
+ this.releaseDate = releaseDate;
+ }
}
Index: lams_common/src/java/org/lamsfoundation/lams/lesson/service/LessonService.java
===================================================================
RCS file: /usr/local/cvsroot/lams_common/src/java/org/lamsfoundation/lams/lesson/service/LessonService.java,v
diff -u -r1.40 -r1.41
--- lams_common/src/java/org/lamsfoundation/lams/lesson/service/LessonService.java 5 Nov 2010 00:19:09 -0000 1.40
+++ lams_common/src/java/org/lamsfoundation/lams/lesson/service/LessonService.java 5 Dec 2011 16:04:24 -0000 1.41
@@ -774,8 +774,11 @@
String lessonDescription = (String) tuple[2];
Integer lessonState = (Integer) tuple[3];
Boolean lessonCompleted = (Boolean) tuple[4];
+ lessonCompleted = lessonCompleted == null ? false : lessonCompleted.booleanValue();
+ Boolean enableLessonNotifications = (Boolean) tuple[5];
+ enableLessonNotifications = enableLessonNotifications == null ? false : enableLessonNotifications.booleanValue();
IndexLessonBean bean = new IndexLessonBean(lessonId, lessonName, lessonDescription, lessonState,
- (lessonCompleted == null ? false : lessonCompleted.booleanValue()));
+ lessonCompleted, enableLessonNotifications);
map.put(new Long(lessonId), bean);
}
}
Index: lams_common/src/java/org/lamsfoundation/lams/usermanagement/Organisation.java
===================================================================
RCS file: /usr/local/cvsroot/lams_common/src/java/org/lamsfoundation/lams/usermanagement/Organisation.java,v
diff -u -r1.19 -r1.20
--- lams_common/src/java/org/lamsfoundation/lams/usermanagement/Organisation.java 9 Apr 2009 00:08:36 -0000 1.19
+++ lams_common/src/java/org/lamsfoundation/lams/usermanagement/Organisation.java 5 Dec 2011 16:04:24 -0000 1.20
@@ -32,21 +32,20 @@
import org.apache.commons.lang.builder.ToStringBuilder;
import org.lamsfoundation.lams.usermanagement.dto.OrganisationDTO;
-/**
- * @hibernate.class
- * table="lams_organisation"
- *
-*/
+/**
+ * @hibernate.class table="lams_organisation"
+ *
+ */
public class Organisation implements Serializable, Comparable {
- private static final long serialVersionUID = -6742443056151585129L;
+ private static final long serialVersionUID = -6742443056151585129L;
- /** identifier field */
+ /** identifier field */
private Integer organisationId;
/** nullable persistent field */
private String name;
-
+
/** nullable persistent field */
private String code;
@@ -73,460 +72,415 @@
/** persistent field */
private Set childOrganisations;
-
+
/** persistent field */
private Set lessons;
-
+
private OrganisationState organisationState;
- private SupportedLocale locale;
+ private SupportedLocale locale;
/** persistent field */
private Boolean courseAdminCanAddNewUsers;
/** persistent field */
private Boolean courseAdminCanBrowseAllUsers;
-
+
/** persistent field */
private Boolean courseAdminCanChangeStatusOfCourse;
/** persistent field */
private Boolean courseAdminCanCreateGuestAccounts;
-
+
/** persistent field */
+ private Boolean enableCourseNotifications;
+
+ /** persistent field */
private Boolean enableGradebookForMonitors;
-
+
/** persistent field */
private Boolean enableGradebookForLearners;
-
+
/** persistent field */
private Date archivedDate;
-
+
private String orderedLessonIds;
/** full constructor */
- public Organisation(String name, String description, Organisation parentOrganisation,
- Date createDate, User createdBy, Workspace workspace,
- OrganisationType organisationType, Set userOrganisations, Set childOrganisations, Set lessons,
- Boolean courseAdminCanAddNewUsers, Boolean courseAdminCanBrowseAllUsers, Boolean courseAdminCanChangeStatusOfCourse,
- Boolean courseAdminCanCreateGuestAccounts, String orderedLessonIds, Boolean enableGradebookForLearners, Boolean enableGradebookForMonitors) {
- this.name = name;
- this.description = description;
- this.parentOrganisation = parentOrganisation;
- this.createDate = createDate;
- this.createdBy = createdBy;
- this.workspace = workspace;
- this.organisationType = organisationType;
- this.userOrganisations = userOrganisations;
- this.childOrganisations = childOrganisations;
- this.lessons = lessons;
- this.courseAdminCanAddNewUsers = courseAdminCanAddNewUsers;
- this.courseAdminCanBrowseAllUsers = courseAdminCanBrowseAllUsers;
- this.courseAdminCanChangeStatusOfCourse = courseAdminCanChangeStatusOfCourse;
- this.courseAdminCanCreateGuestAccounts = courseAdminCanCreateGuestAccounts;
- this.orderedLessonIds = orderedLessonIds;
- this.enableGradebookForLearners = enableGradebookForLearners;
- this.enableGradebookForMonitors = enableGradebookForMonitors;
+ public Organisation(String name, String description, Organisation parentOrganisation, Date createDate,
+ User createdBy, Workspace workspace, OrganisationType organisationType, Set userOrganisations,
+ Set childOrganisations, Set lessons, Boolean courseAdminCanAddNewUsers,
+ Boolean courseAdminCanBrowseAllUsers, Boolean courseAdminCanChangeStatusOfCourse,
+ Boolean courseAdminCanCreateGuestAccounts, Boolean enableCourseNotifications, String orderedLessonIds,
+ Boolean enableGradebookForLearners, Boolean enableGradebookForMonitors) {
+ this.name = name;
+ this.description = description;
+ this.parentOrganisation = parentOrganisation;
+ this.createDate = createDate;
+ this.createdBy = createdBy;
+ this.workspace = workspace;
+ this.organisationType = organisationType;
+ this.userOrganisations = userOrganisations;
+ this.childOrganisations = childOrganisations;
+ this.lessons = lessons;
+ this.courseAdminCanAddNewUsers = courseAdminCanAddNewUsers;
+ this.courseAdminCanBrowseAllUsers = courseAdminCanBrowseAllUsers;
+ this.courseAdminCanChangeStatusOfCourse = courseAdminCanChangeStatusOfCourse;
+ this.courseAdminCanCreateGuestAccounts = courseAdminCanCreateGuestAccounts;
+ this.enableCourseNotifications = enableCourseNotifications;
+ this.orderedLessonIds = orderedLessonIds;
+ this.enableGradebookForLearners = enableGradebookForLearners;
+ this.enableGradebookForMonitors = enableGradebookForMonitors;
}
/** default constructor */
public Organisation() {
- this.courseAdminCanAddNewUsers = Boolean.FALSE;
- this.courseAdminCanBrowseAllUsers = Boolean.FALSE;
- this.courseAdminCanChangeStatusOfCourse = Boolean.FALSE;
- this.courseAdminCanCreateGuestAccounts = Boolean.FALSE;
- this.enableGradebookForLearners = Boolean.FALSE;
- this.enableGradebookForMonitors = Boolean.FALSE;
-
+ this.courseAdminCanAddNewUsers = Boolean.FALSE;
+ this.courseAdminCanBrowseAllUsers = Boolean.FALSE;
+ this.courseAdminCanChangeStatusOfCourse = Boolean.FALSE;
+ this.courseAdminCanCreateGuestAccounts = Boolean.FALSE;
+ this.enableCourseNotifications = Boolean.FALSE;
+ this.enableGradebookForLearners = Boolean.FALSE;
+ this.enableGradebookForMonitors = Boolean.FALSE;
}
/** minimal constructor */
- public Organisation(Date createDate, User createdBy, Workspace workspace, OrganisationType organisationType, Set userOrganisations, Set lessons) {
- this.createDate = createDate;
- this.createdBy = createdBy;
- this.workspace = workspace;
- this.organisationType = organisationType;
- this.userOrganisations = userOrganisations;
- this.lessons = lessons;
-
- // mandatory fields in the db
- this.courseAdminCanAddNewUsers = Boolean.FALSE;
- this.courseAdminCanBrowseAllUsers = Boolean.FALSE;
- this.courseAdminCanChangeStatusOfCourse = Boolean.FALSE;
- this.courseAdminCanCreateGuestAccounts = Boolean.FALSE;
- this.enableGradebookForLearners = Boolean.FALSE;
- this.enableGradebookForMonitors = Boolean.FALSE;
+ public Organisation(Date createDate, User createdBy, Workspace workspace, OrganisationType organisationType,
+ Set userOrganisations, Set lessons) {
+ this.createDate = createDate;
+ this.createdBy = createdBy;
+ this.workspace = workspace;
+ this.organisationType = organisationType;
+ this.userOrganisations = userOrganisations;
+ this.lessons = lessons;
+
+ // mandatory fields in the db
+ this.courseAdminCanAddNewUsers = Boolean.FALSE;
+ this.courseAdminCanBrowseAllUsers = Boolean.FALSE;
+ this.courseAdminCanChangeStatusOfCourse = Boolean.FALSE;
+ this.courseAdminCanCreateGuestAccounts = Boolean.FALSE;
+ this.enableCourseNotifications = Boolean.FALSE;
+ this.enableGradebookForLearners = Boolean.FALSE;
+ this.enableGradebookForMonitors = Boolean.FALSE;
}
- public Organisation(String name,
- String description,
- Date createDate,
- User createdBy,
- OrganisationType organisationType) {
- super();
- this.name = name;
- this.description = description;
- this.createDate = createDate;
- this.createdBy = createdBy;
- this.organisationType = organisationType;
- }
- /**
- * @hibernate.id
- * generator-class="native"
- * type="java.lang.Integer"
- * column="organisation_id"
- *
+ public Organisation(String name, String description, Date createDate, User createdBy,
+ OrganisationType organisationType) {
+ super();
+ this.name = name;
+ this.description = description;
+ this.createDate = createDate;
+ this.createdBy = createdBy;
+ this.organisationType = organisationType;
+ }
+
+ /**
+ * @hibernate.id generator-class="native" type="java.lang.Integer" column="organisation_id"
+ *
*/
public Integer getOrganisationId() {
- return this.organisationId;
+ return this.organisationId;
}
public void setOrganisationId(Integer organisationId) {
- this.organisationId = organisationId;
+ this.organisationId = organisationId;
}
- /**
- * @hibernate.property
- * column="name"
- * length="250"
- *
+ /**
+ * @hibernate.property column="name" length="250"
+ *
*/
public String getName() {
- return this.name;
+ return this.name;
}
public void setName(String name) {
- this.name = name;
+ this.name = name;
}
- /**
- * @hibernate.property
- * column="code"
- * length="20"
- *
+ /**
+ * @hibernate.property column="code" length="20"
+ *
*/
public String getCode() {
- return this.code;
+ return this.code;
}
public void setCode(String code) {
- this.code = code;
+ this.code = code;
}
-
- /**
- * @hibernate.property
- * column="description"
- * length="250"
- *
+
+ /**
+ * @hibernate.property column="description" length="250"
+ *
*/
public String getDescription() {
- return this.description;
+ return this.description;
}
public void setDescription(String description) {
- this.description = description;
+ this.description = description;
}
- /**
- * @hibernate.many-to-one
- * @hibernate.column name="parent_organisation_id"
- *
+ /**
+ * @hibernate.many-to-one
+ * @hibernate.column name="parent_organisation_id"
+ *
*/
public Organisation getParentOrganisation() {
- return this.parentOrganisation;
+ return this.parentOrganisation;
}
public void setParentOrganisation(Organisation parentOrganisation) {
- this.parentOrganisation = parentOrganisation;
+ this.parentOrganisation = parentOrganisation;
}
- /**
- * @hibernate.property
- * column="create_date"
- * length="19"
- * not-null="true"
- *
+ /**
+ * @hibernate.property column="create_date" length="19" not-null="true"
+ *
*/
public Date getCreateDate() {
- return this.createDate;
+ return this.createDate;
}
public void setCreateDate(Date createDate) {
- this.createDate = createDate;
+ this.createDate = createDate;
}
/**
- * @hibernate.many-to-one not-null="true"
- * @hibernate.column name="created_by"
- *
+ * @hibernate.many-to-one not-null="true"
+ * @hibernate.column name="created_by"
+ *
*/
public User getCreatedBy() {
- return this.createdBy;
+ return this.createdBy;
}
public void setCreatedBy(User createdBy) {
- this.createdBy = createdBy;
+ this.createdBy = createdBy;
}
-
- /**
- * @hibernate.many-to-one
- * cascade="all"
- * not-null="false"
- * @hibernate.column name="workspace_id"
- *
+ /**
+ * @hibernate.many-to-one cascade="all" not-null="false"
+ * @hibernate.column name="workspace_id"
+ *
*/
public Workspace getWorkspace() {
- return this.workspace;
+ return this.workspace;
}
public void setWorkspace(Workspace workspace) {
- this.workspace = workspace;
+ this.workspace = workspace;
}
- /**
- * @hibernate.many-to-one
- * not-null="true"
- *
+ /**
+ * @hibernate.many-to-one not-null="true"
+ *
*/
public OrganisationType getOrganisationType() {
- return this.organisationType;
+ return this.organisationType;
}
public void setOrganisationType(OrganisationType organisationType) {
- this.organisationType = organisationType;
+ this.organisationType = organisationType;
}
- /**
- * @hibernate.set
- * lazy="true"
- * inverse="true"
- * cascade="none"
- * @hibernate.collection-key
- * column="organisation_id"
- * @hibernate.collection-one-to-many
- * class="org.lamsfoundation.lams.usermanagement.UserOrganisation"
- *
+ /**
+ * @hibernate.set lazy="true" inverse="true" cascade="none"
+ * @hibernate.collection-key column="organisation_id"
+ * @hibernate.collection-one-to-many class="org.lamsfoundation.lams.usermanagement.UserOrganisation"
+ *
*/
public Set getUserOrganisations() {
- return this.userOrganisations;
+ return this.userOrganisations;
}
public void setUserOrganisations(Set userOrganisations) {
- this.userOrganisations = userOrganisations;
+ this.userOrganisations = userOrganisations;
}
- /**
- * @hibernate.set
- * lazy="true"
- * inverse="true"
- * cascade="none"
- * @hibernate.collection-key
- * column="parent_organisation_id"
- * @hibernate.collection-one-to-many
- * class="org.lamsfoundation.lams.usermanagement.Organisation"
- *
+ /**
+ * @hibernate.set lazy="true" inverse="true" cascade="none"
+ * @hibernate.collection-key column="parent_organisation_id"
+ * @hibernate.collection-one-to-many class="org.lamsfoundation.lams.usermanagement.Organisation"
+ *
*/
- public Set getChildOrganisations() {
- return childOrganisations;
- }
+ public Set getChildOrganisations() {
+ return childOrganisations;
+ }
- public void setChildOrganisations(Set childOrganisations) {
- this.childOrganisations = childOrganisations;
- }
-
- /**
- * @hibernate.set
- * lazy="true"
- * inverse="true"
- * cascade="none"
- * @hibernate.collection-key
- * column="organisation_id"
- * @hibernate.collection-one-to-many
- * class="org.lamsfoundation.lams.lesson.Lesson"
- *
+ public void setChildOrganisations(Set childOrganisations) {
+ this.childOrganisations = childOrganisations;
+ }
+
+ /**
+ * @hibernate.set lazy="true" inverse="true" cascade="none"
+ * @hibernate.collection-key column="organisation_id"
+ * @hibernate.collection-one-to-many class="org.lamsfoundation.lams.lesson.Lesson"
+ *
*/
public Set getLessons() {
- return this.lessons;
+ return this.lessons;
}
public void setLessons(Set lessons) {
- this.lessons = lessons;
+ this.lessons = lessons;
}
- /**
- * @hibernate.many-to-one
- * not-null="true"
- * @hibernate.column name="organisation_state_id"
- *
+ /**
+ * @hibernate.many-to-one not-null="true"
+ * @hibernate.column name="organisation_state_id"
+ *
*/
public OrganisationState getOrganisationState() {
- return this.organisationState;
+ return this.organisationState;
}
public void setOrganisationState(OrganisationState organisationState) {
- this.organisationState = organisationState;
+ this.organisationState = organisationState;
}
- /**
- * @hibernate.property
- * column="admin_add_new_users"
- * length="1"
- * not-null="true"
- *
+ /**
+ * @hibernate.property column="admin_add_new_users" length="1" not-null="true"
+ *
*/
public Boolean getCourseAdminCanAddNewUsers() {
- return this.courseAdminCanAddNewUsers;
+ return this.courseAdminCanAddNewUsers;
}
public void setCourseAdminCanAddNewUsers(Boolean courseAdminCanAddNewUsers) {
- this.courseAdminCanAddNewUsers = courseAdminCanAddNewUsers;
+ this.courseAdminCanAddNewUsers = courseAdminCanAddNewUsers;
}
- /**
- * @hibernate.property
- * column="admin_browse_all_users"
- * length="1"
- * not-null="true"
- *
+ /**
+ * @hibernate.property column="admin_browse_all_users" length="1" not-null="true"
+ *
*/
public Boolean getCourseAdminCanBrowseAllUsers() {
- return this.courseAdminCanBrowseAllUsers;
+ return this.courseAdminCanBrowseAllUsers;
}
public void setCourseAdminCanBrowseAllUsers(Boolean courseAdminCanBrowseAllUsers) {
- this.courseAdminCanBrowseAllUsers = courseAdminCanBrowseAllUsers;
+ this.courseAdminCanBrowseAllUsers = courseAdminCanBrowseAllUsers;
}
- /**
- * @hibernate.property
- * column="admin_change_status"
- * length="1"
- * not-null="true"
- *
+ /**
+ * @hibernate.property column="admin_change_status" length="1" not-null="true"
+ *
*/
public Boolean getCourseAdminCanChangeStatusOfCourse() {
- return this.courseAdminCanChangeStatusOfCourse;
+ return this.courseAdminCanChangeStatusOfCourse;
}
public void setCourseAdminCanChangeStatusOfCourse(Boolean courseAdminCanChangeStatusOfCourse) {
- this.courseAdminCanChangeStatusOfCourse = courseAdminCanChangeStatusOfCourse;
+ this.courseAdminCanChangeStatusOfCourse = courseAdminCanChangeStatusOfCourse;
}
- /**
- * @hibernate.property
- * column="admin_create_guest"
- * length="1"
- * not-null="true"
- *
+ /**
+ * @hibernate.property column="admin_create_guest" length="1" not-null="true"
+ *
*/
public Boolean getCourseAdminCanCreateGuestAccounts() {
- return this.courseAdminCanCreateGuestAccounts;
+ return this.courseAdminCanCreateGuestAccounts;
}
public void setCourseAdminCanCreateGuestAccounts(Boolean courseAdminCanCreateGuestAccounts) {
- this.courseAdminCanCreateGuestAccounts = courseAdminCanCreateGuestAccounts;
+ this.courseAdminCanCreateGuestAccounts = courseAdminCanCreateGuestAccounts;
}
-
-
- public String toString() {
- return new ToStringBuilder(this)
- .append("organisationId", getOrganisationId())
- .toString();
+ /**
+ * @hibernate.property column="enable_course_notifications" length="1" not-null="true"
+ *
+ */
+ public Boolean getEnableCourseNotifications() {
+ return this.enableCourseNotifications;
}
+ public void setEnableCourseNotifications(Boolean enableCourseNotifications) {
+ this.enableCourseNotifications = enableCourseNotifications;
+ }
+
+ public String toString() {
+ return new ToStringBuilder(this).append("organisationId", getOrganisationId()).toString();
+ }
+
public boolean equals(Object other) {
- if ( !(other instanceof Organisation) ) return false;
- Organisation castOther = (Organisation) other;
- return new EqualsBuilder()
- .append(this.getOrganisationId(), castOther.getOrganisationId())
- .isEquals();
+ if (!(other instanceof Organisation))
+ return false;
+ Organisation castOther = (Organisation) other;
+ return new EqualsBuilder().append(this.getOrganisationId(), castOther.getOrganisationId()).isEquals();
}
public int hashCode() {
- return new HashCodeBuilder()
- .append(getOrganisationId())
- .toHashCode();
+ return new HashCodeBuilder().append(getOrganisationId()).toHashCode();
}
- public OrganisationDTO getOrganisationDTO(){
- return new OrganisationDTO(this);
+
+ public OrganisationDTO getOrganisationDTO() {
+ return new OrganisationDTO(this);
}
- /**
- * @hibernate.many-to-one
- * not-null="true"
- * lazy="false"
- * @hibernate.column name="locale_id"
- * @param localeCountry
- */
- public SupportedLocale getLocale() {
- return locale;
- }
- public void setLocale(SupportedLocale locale) {
- this.locale = locale;
- }
+ /**
+ * @hibernate.many-to-one not-null="true" lazy="false"
+ * @hibernate.column name="locale_id"
+ * @param localeCountry
+ */
+ public SupportedLocale getLocale() {
+ return locale;
+ }
- public int compareTo(Object o) {
- return name.compareToIgnoreCase(((Organisation)o).getName());
- }
-
- /**
- * @hibernate.property
- * column="archived_date"
- * length="19"
- * not-null="false"
- *
+ public void setLocale(SupportedLocale locale) {
+ this.locale = locale;
+ }
+
+ public int compareTo(Object o) {
+ return name.compareToIgnoreCase(((Organisation) o).getName());
+ }
+
+ /**
+ * @hibernate.property column="archived_date" length="19" not-null="false"
+ *
*/
public Date getArchivedDate() {
- return this.archivedDate;
+ return this.archivedDate;
}
public void setArchivedDate(Date archivedDate) {
- this.archivedDate = archivedDate;
+ this.archivedDate = archivedDate;
}
-
+
/**
- * @hibernate.property column="ordered_lesson_ids" length="65535"
+ * @hibernate.property column="ordered_lesson_ids" length="65535"
*/
- public String getOrderedLessonIds()
- {
- return orderedLessonIds;
+ public String getOrderedLessonIds() {
+ return orderedLessonIds;
}
- public void setOrderedLessonIds(String orderedLessonIds)
- {
- this.orderedLessonIds = orderedLessonIds;
+ public void setOrderedLessonIds(String orderedLessonIds) {
+ this.orderedLessonIds = orderedLessonIds;
}
- /**
- * @hibernate.property
- * column="enable_teacher_gradebook"
- * length="1"
- * not-null="true"
- *
+ /**
+ * @hibernate.property column="enable_teacher_gradebook" length="1" not-null="true"
+ *
*/
public Boolean getEnableGradebookForMonitors() {
- return enableGradebookForMonitors;
+ return enableGradebookForMonitors;
}
public void setEnableGradebookForMonitors(Boolean enableGradebookForMonitors) {
- this.enableGradebookForMonitors = enableGradebookForMonitors;
+ this.enableGradebookForMonitors = enableGradebookForMonitors;
}
- /**
- * @hibernate.property
- * column="enable_learner_gradebook"
- * length="1"
- * not-null="true"
- *
+ /**
+ * @hibernate.property column="enable_learner_gradebook" length="1" not-null="true"
+ *
*/
public Boolean getEnableGradebookForLearners() {
- return enableGradebookForLearners;
+ return enableGradebookForLearners;
}
public void setEnableGradebookForLearners(Boolean enableGradebookForLearners) {
- this.enableGradebookForLearners = enableGradebookForLearners;
+ this.enableGradebookForLearners = enableGradebookForLearners;
}
}
Index: lams_common/test/java/org/lamsfoundation/lams/lesson/dao/TestLessonDAO.java
===================================================================
RCS file: /usr/local/cvsroot/lams_common/test/java/org/lamsfoundation/lams/lesson/dao/Attic/TestLessonDAO.java,v
diff -u -r1.21 -r1.22
--- lams_common/test/java/org/lamsfoundation/lams/lesson/dao/TestLessonDAO.java 2 Dec 2011 19:43:40 -0000 1.21
+++ lams_common/test/java/org/lamsfoundation/lams/lesson/dao/TestLessonDAO.java 5 Dec 2011 16:04:24 -0000 1.22
@@ -124,6 +124,7 @@
false,
false,
false,
+ false,
null);
try
Index: lams_common/test/java/org/lamsfoundation/lams/lesson/service/TestLessonService.java
===================================================================
RCS file: /usr/local/cvsroot/lams_common/test/java/org/lamsfoundation/lams/lesson/service/Attic/TestLessonService.java,v
diff -u -r1.6 -r1.7
--- lams_common/test/java/org/lamsfoundation/lams/lesson/service/TestLessonService.java 2 Dec 2011 19:43:40 -0000 1.6
+++ lams_common/test/java/org/lamsfoundation/lams/lesson/service/TestLessonService.java 5 Dec 2011 16:04:24 -0000 1.7
@@ -79,7 +79,7 @@
User test1 = userManagementService.getUserByLogin(TEST1_USER_LOGIN);
// this lesson isn't valid as it doesn't have a learning design
- Lesson newLesson = Lesson.createNewLessonWithoutClass("test lesson", "test lesson", mmm, true, null, false, false, false, null);
+ Lesson newLesson = Lesson.createNewLessonWithoutClass("test lesson", "test lesson", mmm, true, null, false, false, false, false, null);
lessonDAO.saveLesson(newLesson);
Organisation organisation = (Organisation) baseDAO.find(Organisation.class, TEST_ORG_ID);
Index: lams_monitoring/build.xml
===================================================================
RCS file: /usr/local/cvsroot/lams_monitoring/build.xml,v
diff -u -r1.29 -r1.30
--- lams_monitoring/build.xml 2 Apr 2009 04:11:52 -0000 1.29
+++ lams_monitoring/build.xml 5 Dec 2011 16:03:31 -0000 1.30
@@ -136,6 +136,7 @@
+
Index: lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/service/IMonitoringService.java
===================================================================
RCS file: /usr/local/cvsroot/lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/service/IMonitoringService.java,v
diff -u -r1.90 -r1.91
--- lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/service/IMonitoringService.java 2 Dec 2011 19:43:27 -0000 1.90
+++ lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/service/IMonitoringService.java 5 Dec 2011 16:03:31 -0000 1.91
@@ -75,6 +75,8 @@
* the user who want to create this lesson.
* @param customCSV
* the custom comma separated values to be used by toolAdapters
+ * @param enableNotifications
+ * enable "email notifications" link for the current lesson
* @param numberDaysToLessonFinish
* number of days the lesson will be available to user since he starts it. (lesson finish scheduling
* feature)
@@ -83,7 +85,7 @@
public Lesson initializeLesson(String lessonName, String lessonDescription, Boolean learnerExportAvailable,
long learningDesignId, Integer organisationId, Integer userID, String customCSV,
Boolean learnerPresenceAvailable, Boolean learnerImAvailable, Boolean liveEditEnabled,
- Integer numberDaysToLessonFinish);
+ Boolean enableNotifications, Integer numberDaysToLessonFinish);
/**
* Initialize a new lesson so as to start the learning process for a normal
Index: lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/service/MonitoringService.java
===================================================================
RCS file: /usr/local/cvsroot/lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/service/MonitoringService.java,v
diff -u -r1.158 -r1.159
--- lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/service/MonitoringService.java 2 Dec 2011 19:43:27 -0000 1.158
+++ lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/service/MonitoringService.java 5 Dec 2011 16:03:30 -0000 1.159
@@ -29,6 +29,7 @@
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
+import java.util.Collection;
import java.util.Comparator;
import java.util.Date;
import java.util.HashSet;
@@ -47,6 +48,7 @@
import javax.servlet.http.HttpSession;
+import org.apache.commons.collections.CollectionUtils;
import org.apache.log4j.Logger;
import org.lamsfoundation.lams.authoring.service.IAuthoringService;
import org.lamsfoundation.lams.dao.IBaseDAO;
@@ -66,6 +68,7 @@
import org.lamsfoundation.lams.learningdesign.ToolActivity;
import org.lamsfoundation.lams.learningdesign.dao.IActivityDAO;
import org.lamsfoundation.lams.learningdesign.dao.IGroupDAO;
+import org.lamsfoundation.lams.learningdesign.dao.IGroupUserDAO;
import org.lamsfoundation.lams.learningdesign.dao.IGroupingDAO;
import org.lamsfoundation.lams.learningdesign.dao.ILearningDesignDAO;
import org.lamsfoundation.lams.learningdesign.dao.ITransitionDAO;
@@ -168,6 +171,8 @@
private IGroupingDAO groupingDAO;
private IGroupDAO groupDAO;
+
+ private IGroupUserDAO groupUserDAO;
private ILearnerProgressDAO learnerProgressDAO;
@@ -308,6 +313,13 @@
}
/**
+ * @param groupDAO
+ */
+ public void setGroupUserDAO(IGroupUserDAO groupUserDAO) {
+ this.groupUserDAO = groupUserDAO;
+ }
+
+ /**
* @param groupingDAO
*/
public void setGroupingDAO(IGroupingDAO groupingDAO) {
@@ -403,7 +415,7 @@
public Lesson initializeLesson(String lessonName, String lessonDescription, Boolean learnerExportAvailable,
long learningDesignId, Integer organisationId, Integer userID, String customCSV,
Boolean learnerPresenceAvailable, Boolean learnerImAvailable, Boolean liveEditEnabled,
- Integer scheduledNumberDaysToLessonFinish) {
+ Boolean enableLessonNotifications, Integer scheduledNumberDaysToLessonFinish) {
LearningDesign originalLearningDesign = authoringService.getLearningDesign(new Long(learningDesignId));
if (originalLearningDesign == null) {
@@ -439,7 +451,7 @@
User user = userID != null ? (User) baseDAO.find(User.class, userID) : null;
Lesson initializedLesson = initializeLesson(lessonName, lessonDescription, learnerExportAvailable,
originalLearningDesign, user, runSeqFolder, LearningDesign.COPY_TYPE_LESSON, customCSV,
- learnerPresenceAvailable, learnerImAvailable, liveEditEnabled, scheduledNumberDaysToLessonFinish);
+ learnerPresenceAvailable, learnerImAvailable, liveEditEnabled, enableLessonNotifications, scheduledNumberDaysToLessonFinish);
Long initializedLearningDesignId = initializedLesson.getLearningDesign().getLearningDesignId();
logEventService.logEvent(LogEvent.TYPE_TEACHER_LESSON_CREATE, userID, initializedLearningDesignId, initializedLesson.getLessonId(), null);
@@ -453,7 +465,8 @@
* design is not assigned to any workspace folder.
*/
public Lesson initializeLessonForPreview(String lessonName, String lessonDescription, long learningDesignId,
- Integer userID, String customCSV, Boolean learnerPresenceAvailable, Boolean learnerImAvailable, Boolean liveEditEnabled) {
+ Integer userID, String customCSV, Boolean learnerPresenceAvailable, Boolean learnerImAvailable,
+ Boolean liveEditEnabled) {
LearningDesign originalLearningDesign = authoringService.getLearningDesign(new Long(learningDesignId));
if (originalLearningDesign == null) {
throw new MonitoringServiceException("Learning design for id=" + learningDesignId
@@ -463,13 +476,13 @@
return initializeLesson(lessonName, lessonDescription, Boolean.TRUE, originalLearningDesign, user, null,
LearningDesign.COPY_TYPE_PREVIEW, customCSV, learnerPresenceAvailable, learnerImAvailable,
- liveEditEnabled, null);
+ liveEditEnabled, null, null);
}
public Lesson initializeLesson(String lessonName, String lessonDescription, Boolean learnerExportAvailable,
LearningDesign originalLearningDesign, User user, WorkspaceFolder workspaceFolder, int copyType,
- String customCSV, Boolean learnerPresenceAvailable, Boolean learnerImAvailable, Boolean liveEditEnabled,
- Integer scheduledNumberDaysToLessonFinish) {
+ String customCSV, Boolean learnerPresenceAvailable, Boolean learnerImAvailable, Boolean liveEditEnabled,
+ Boolean enableLessonNotifications, Integer scheduledNumberDaysToLessonFinish) {
// copy the current learning design
LearningDesign copiedLearningDesign = authoringService.copyLearningDesign(originalLearningDesign, new Integer(
@@ -485,9 +498,10 @@
}
Lesson lesson = createNewLesson(title, lessonDescription, user, learnerExportAvailable, copiedLearningDesign,
- learnerPresenceAvailable, learnerImAvailable, liveEditEnabled, scheduledNumberDaysToLessonFinish);
- auditAction(MonitoringService.AUDIT_LESSON_CREATED_KEY,
- new Object[] { lessonName, copiedLearningDesign.getTitle(), learnerExportAvailable });
+ learnerPresenceAvailable, learnerImAvailable, liveEditEnabled, enableLessonNotifications,
+ scheduledNumberDaysToLessonFinish);
+ auditAction(MonitoringService.AUDIT_LESSON_CREATED_KEY, new Object[] { lessonName,
+ copiedLearningDesign.getTitle(), learnerExportAvailable });
return lesson;
}
@@ -515,6 +529,7 @@
.get("enablePresence"));
boolean learnerImAvailable = WDDXProcessor.convertToBoolean("enableIm", table.get("enableIm"));
boolean liveEditEnabled = WDDXProcessor.convertToBoolean("enableLiveEdit", table.get("enableLiveEdit"));
+ Boolean enableLessonNotifications = WDDXProcessor.convertToBoolean("enableLessonNotifications", table.get("enableLessonNotifications"));
String customCSV = WDDXProcessor.convertToString(WDDXTAGS.CUSTOM_CSV, table.get(WDDXTAGS.CUSTOM_CSV));
Integer scheduledNumberDaysToLessonFinish = WDDXProcessor.convertToInteger("scheduledNumberDaysToLessonFinish", table.get("scheduledNumberDaysToLessonFinish"));
@@ -527,7 +542,7 @@
learnerPresenceAvailable, learnerImAvailable, liveEditEnabled);
} else {
newLesson = initializeLesson(title, desc, learnerExportAvailable, ldId, organisationId, creatorUserId,
- customCSV, learnerPresenceAvailable, learnerImAvailable, liveEditEnabled,
+ customCSV, learnerPresenceAvailable, learnerImAvailable, liveEditEnabled, enableLessonNotifications,
scheduledNumberDaysToLessonFinish);
}
@@ -1573,6 +1588,7 @@
return flashMessage.serializeMessage();
}
+
/**
* (non-Javadoc)
*
@@ -2036,18 +2052,22 @@
* @param user
* user the user who want to create this lesson.
* @param learnerExportAvailable
- * should the export portfolio option be made available to the
- * learner?
+ * should the export portfolio option be made available to the learner?
* @param copiedLearningDesign
* the copied learning design
+ * @param enableLessonNotifications
+ * enable "email notifications" link for the current lesson
+ *
* @return the lesson object without class.
*
*/
private Lesson createNewLesson(String lessonName, String lessonDescription, User user,
Boolean learnerExportAvailable, LearningDesign copiedLearningDesign, Boolean learnerPresenceAvailable,
- Boolean learnerImAvailable, Boolean liveEditEnabled, Integer scheduledNumberDaysToLessonFinish) {
+ Boolean learnerImAvailable, Boolean liveEditEnabled, Boolean enableLessonNotifications,
+ Integer scheduledNumberDaysToLessonFinish) {
Lesson newLesson = Lesson.createNewLessonWithoutClass(lessonName, lessonDescription, user,
- learnerExportAvailable, copiedLearningDesign, learnerPresenceAvailable, learnerImAvailable, liveEditEnabled, scheduledNumberDaysToLessonFinish);
+ learnerExportAvailable, copiedLearningDesign, learnerPresenceAvailable, learnerImAvailable,
+ liveEditEnabled, enableLessonNotifications, scheduledNumberDaysToLessonFinish);
lessonDAO.saveLesson(newLesson);
return newLesson;
}
@@ -2801,17 +2821,18 @@
boolean learnerImAvailable = WDDXProcessor.convertToBoolean("enableIm", table.get("enableIm"));
String customCSV = WDDXProcessor.convertToString(WDDXTAGS.CUSTOM_CSV, table.get(WDDXTAGS.CUSTOM_CSV));
boolean liveEditEnabled = WDDXProcessor.convertToBoolean("enableLiveEdit", table.get("enableLiveEdit"));
+ Boolean enableLessonNotifications = WDDXProcessor.convertToBoolean("enableLessonNotifications", table.get("enableLessonNotifications"));
int numLessons = WDDXProcessor.convertToInt("numberLessonsSplit", table.get("numberLessonsSplit"));
Integer scheduledNumberDaysToLessonFinish = WDDXProcessor.convertToInteger("scheduledNumberDaysToLessonFinish", table.get("scheduledNumberDaysToLessonFinish"));
- // initialise multiple lessons
-
- if (numLessons > 0) {
- for (int i = 1; i <= numLessons; i++) {
- Lesson newLesson = initializeLesson(title + " " + i, desc, learnerExportAvailable, ldId,
- organisationId, creatorUserId, customCSV, learnerPresenceAvailable, learnerImAvailable, liveEditEnabled, scheduledNumberDaysToLessonFinish);
- lessonIds.add(newLesson.getLessonId());
- }
+ // initialize multiple lessons
+ if (numLessons > 0) {
+ for (int i = 1; i <= numLessons; i++) {
+ Lesson newLesson = initializeLesson(title + " " + i, desc, learnerExportAvailable, ldId,
+ organisationId, creatorUserId, customCSV, learnerPresenceAvailable, learnerImAvailable,
+ liveEditEnabled, enableLessonNotifications, scheduledNumberDaysToLessonFinish);
+ lessonIds.add(newLesson.getLessonId());
+ }
}
} catch (Exception e) {
@@ -2975,7 +2996,8 @@
.getLessonDescription(), lesson.getLearnerExportAvailable(), lesson
.getLearningDesign().getLearningDesignId(), group.getOrganisationId(), userDto
.getUserID(), null, lesson.getLearnerPresenceAvailable(), lesson
- .getLearnerImAvailable(), lesson.getLiveEditEnabled(), null);
+ .getLearnerImAvailable(), lesson.getLiveEditEnabled(), lesson
+ .getEnableLessonNotifications(), null);
// save LessonClasses
newLesson = this
Fisheye: Tag 1.1 refers to a dead (removed) revision in file `lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/web/EmailNotificationsAction.java'.
Fisheye: No comparison available. Pass `N' to diff?
Index: lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/web/MonitoringAction.java
===================================================================
RCS file: /usr/local/cvsroot/lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/web/MonitoringAction.java,v
diff -u -r1.68 -r1.69
--- lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/web/MonitoringAction.java 2 Dec 2011 19:43:27 -0000 1.68
+++ lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/web/MonitoringAction.java 5 Dec 2011 16:03:30 -0000 1.69
@@ -194,7 +194,7 @@
Boolean learnerPresenceAvailable = WebUtil.readBooleanParam(request, "learnerPresenceAvailable", false);
Boolean learnerImAvailable = WebUtil.readBooleanParam(request, "learnerImAvailable", false);
Boolean liveEditEnabled = WebUtil.readBooleanParam(request, "liveEditEnabled", false);
- Lesson newLesson = monitoringService.initializeLesson(title,desc,learnerExportAvailable,ldId,organisationId,getUserId(), null, learnerPresenceAvailable, learnerImAvailable, liveEditEnabled, null);
+ Lesson newLesson = monitoringService.initializeLesson(title,desc,learnerExportAvailable,ldId,organisationId,getUserId(), null, learnerPresenceAvailable, learnerImAvailable, liveEditEnabled, Boolean.FALSE, null);
flashMessage = new FlashMessage("initializeLesson",newLesson.getLessonId());
} catch (Exception e) {
@@ -730,6 +730,7 @@
languageCollection.add(new String("lesson.tab.heading.label"));
languageCollection.add(new String("add.now.button.label"));
languageCollection.add(new String("advanced.tab.form.advanced.options.label"));
+ languageCollection.add(new String("advanced.tab.enable.lesson.notifications"));
languageCollection.add(new String("advanced.tab.form.enable.im.label"));
languageCollection.add(new String("advanced.tab.form.time.limits.label"));
languageCollection.add(new String("advanced.tab.form.enter.number.days.label"));
Index: lams_monitoring/test/java/org/lamsfoundation/lams/monitoring/service/TestMonitoringService.java
===================================================================
RCS file: /usr/local/cvsroot/lams_monitoring/test/java/org/lamsfoundation/lams/monitoring/service/Attic/TestMonitoringService.java,v
diff -u -r1.49 -r1.50
--- lams_monitoring/test/java/org/lamsfoundation/lams/monitoring/service/TestMonitoringService.java 2 Dec 2011 19:43:27 -0000 1.49
+++ lams_monitoring/test/java/org/lamsfoundation/lams/monitoring/service/TestMonitoringService.java 5 Dec 2011 16:03:31 -0000 1.50
@@ -157,7 +157,7 @@
long previousLDId = getMaxId(lamsLearningDesignTableName, idName);
Lesson testLesson = monitoringService.initializeLesson("Test_Lesson", "Test_Description", Boolean.TRUE,
- TEST_LEARNING_DESIGN_ID, null, testUser.getUserId(), null, false, false, false, null);
+ TEST_LEARNING_DESIGN_ID, null, testUser.getUserId(), null, false, false, false, false, null);
TestMonitoringService.TEST_LESSON_ID = testLesson.getLessonId();
Lesson createdLesson = lessonDao.getLesson(TestMonitoringService.TEST_LESSON_ID);
assertNotNull(createdLesson);
Fisheye: Tag 1.1 refers to a dead (removed) revision in file `lams_monitoring/web/emailnotifications/courseNotifications.jsp'.
Fisheye: No comparison available. Pass `N' to diff?
Fisheye: Tag 1.1 refers to a dead (removed) revision in file `lams_monitoring/web/emailnotifications/lessonNotifications.jsp'.
Fisheye: No comparison available. Pass `N' to diff?