You can subscribe to this list here.
2007 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(275) |
Jul
(81) |
Aug
(19) |
Sep
(26) |
Oct
(190) |
Nov
(118) |
Dec
(16) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2008 |
Jan
(9) |
Feb
(318) |
Mar
(251) |
Apr
(354) |
May
(209) |
Jun
(261) |
Jul
(226) |
Aug
(136) |
Sep
(156) |
Oct
(30) |
Nov
(5) |
Dec
(13) |
2009 |
Jan
(26) |
Feb
(35) |
Mar
(63) |
Apr
(21) |
May
(26) |
Jun
(33) |
Jul
(55) |
Aug
(71) |
Sep
(23) |
Oct
(40) |
Nov
(18) |
Dec
(13) |
2010 |
Jan
(17) |
Feb
(98) |
Mar
(39) |
Apr
(25) |
May
(107) |
Jun
(257) |
Jul
(270) |
Aug
(206) |
Sep
(237) |
Oct
(187) |
Nov
(302) |
Dec
(187) |
2011 |
Jan
(63) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Nightly B. <no...@un...> - 2011-01-25 12:30:38
|
Download the resultant file at http://www.unitime.org/uct_builds.php, see the attached build and change logs for more details. |
From: Tomas M. <to...@us...> - 2011-01-25 02:53:27
|
Update of /cvsroot/unitime/UniTime/JavaSource/org/unitime/timetable/gwt/server In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv23527/JavaSource/org/unitime/timetable/gwt/server Modified Files: CourseLoader.java Log Message: If the class limit can be tweaked (if there is more students enrolled than the class limit), check the course limit too (and tweak if needed). Index: CourseLoader.java =================================================================== RCS file: /cvsroot/unitime/UniTime/JavaSource/org/unitime/timetable/gwt/server/CourseLoader.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** CourseLoader.java 14 Jan 2011 18:24:30 -0000 1.3 --- CourseLoader.java 25 Jan 2011 02:53:17 -0000 1.4 *************** *** 462,465 **** --- 462,473 ---- hasLimit = true; } + if (enrl.getCourse() != null && enrl.getCourse().getLimit() >= 0 && enrl.getCourse().getLimit() < 1 + enrl.getCourse().getEnrollments().size()) { + sLog.info(" course " + enrl.getCourse().getName() + " has no space available (limit is "+ enrl.getCourse().getLimit() + ")"); + if (tweakLimits) { + enrl.getCourse().setLimit(enrl.getCourse().getEnrollments().size() + 1); + sLog.info(" limit increased to "+enrl.getCourse().getLimit()); + } + hasLimit = true; + } if (!hasLimit && !hasOverlap) { for (Iterator<Enrollment> i = r.getModel().conflictValues(r.getInitialAssignment()).iterator(); i.hasNext();) { |
From: Tomas M. <to...@us...> - 2011-01-25 02:53:24
|
Update of /cvsroot/unitime/UniTime/JavaSource/org/unitime/timetable/solver/studentsct In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv23527/JavaSource/org/unitime/timetable/solver/studentsct Modified Files: StudentSectioningDatabaseLoader.java Log Message: If the class limit can be tweaked (if there is more students enrolled than the class limit), check the course limit too (and tweak if needed). Index: StudentSectioningDatabaseLoader.java =================================================================== RCS file: /cvsroot/unitime/UniTime/JavaSource/org/unitime/timetable/solver/studentsct/StudentSectioningDatabaseLoader.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** StudentSectioningDatabaseLoader.java 14 Jan 2011 18:24:29 -0000 1.3 --- StudentSectioningDatabaseLoader.java 25 Jan 2011 02:53:16 -0000 1.4 *************** *** 576,579 **** --- 576,587 ---- hasLimit = true; } + if (enrl.getCourse() != null && enrl.getCourse().getLimit() >= 0 && enrl.getCourse().getLimit() < 1 + enrl.getCourse().getEnrollments().size()) { + iProgress.info(" course " + enrl.getCourse().getName() + " has no space available (limit is "+ enrl.getCourse().getLimit() + ")"); + if (iTweakLimits) { + enrl.getCourse().setLimit(enrl.getCourse().getEnrollments().size() + 1); + iProgress.info(" limit increased to "+enrl.getCourse().getLimit()); + } + hasLimit = true; + } if (!hasLimit && !hasOverlap) { for (Iterator<Enrollment> i = r.getModel().conflictValues(r.getInitialAssignment()).iterator(); i.hasNext();) { |
From: Tomas M. <to...@us...> - 2011-01-25 02:51:01
|
Update of /cvsroot/unitime/UniTime/JavaSource/org/unitime/timetable/solver In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv23084/JavaSource/org/unitime/timetable/solver Modified Files: TimetableDatabaseLoader.java Log Message: loadRoomAvailabilty -- avoid meetings outside of the session Index: TimetableDatabaseLoader.java =================================================================== RCS file: /cvsroot/unitime/UniTime/JavaSource/org/unitime/timetable/solver/TimetableDatabaseLoader.java,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -d -r1.21 -r1.22 *** TimetableDatabaseLoader.java 10 Dec 2010 22:25:40 -0000 1.21 --- TimetableDatabaseLoader.java 25 Jan 2011 02:50:53 -0000 1.22 *************** *** 3097,3100 **** --- 3097,3101 ---- BitSet weekCode = new BitSet(size); int offset = iSession.getDayOfYear(d,m) - firstDOY; + if (offset < 0 || offset >= size) continue; weekCode.set(offset); switch (c.get(Calendar.DAY_OF_WEEK)) { |
From: Nightly B. <no...@un...> - 2011-01-21 23:51:23
|
Download the resultant file at http://www.unitime.org/uct_builds.php, see the attached build and change logs for more details. |
From: Tomas M. <to...@us...> - 2011-01-21 19:14:08
|
Update of /cvsroot/unitime/UniTime/WebContent/help In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv14308/WebContent/help Modified Files: Release-Notes.xml Log Message: added recent changes (tomcat 7 compatibility issues) Index: Release-Notes.xml =================================================================== RCS file: /cvsroot/unitime/UniTime/WebContent/help/Release-Notes.xml,v retrieving revision 1.85 retrieving revision 1.86 diff -C2 -d -r1.85 -r1.86 *** Release-Notes.xml 18 Jan 2011 23:12:19 -0000 1.85 --- Release-Notes.xml 21 Jan 2011 19:14:00 -0000 1.86 *************** *** 77,80 **** --- 77,95 ---- </item> </category> + <category> + <title>Apache Tomcat 7 Compatibility Issues</title> + <item> + <name>Query Log</name> + <description> + <line>Fixed the AbstractMethodError in QueryLogFilter (by changing the HttpServletRequestWrapper to be a Java Proxy)</line> + </description> + </item> + <item> + <name>Various Pages</name> + <description> + <line>Corrected syntax to meet the new Tomcat 7 validation</line> + </description> + </item> + </category> </release> |
From: Tomas M. <to...@us...> - 2011-01-21 19:13:28
|
Update of /cvsroot/unitime/UniTime/WebContent/user In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv14218/WebContent/user Modified Files: eventGrid.jsp courseOfferingEdit.jsp instructionalOfferingModify.jsp eventAdd.jsp schedulingSubpartEdit.jsp Log Message: Apache Tomcat 7 Compatibility Issues - various pages: corrected syntax to meet the new Tomcat 7 validation Index: eventAdd.jsp =================================================================== RCS file: /cvsroot/unitime/UniTime/WebContent/user/eventAdd.jsp,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -d -r1.20 -r1.21 *** eventAdd.jsp 1 Dec 2010 11:10:47 -0000 1.20 --- eventAdd.jsp 21 Jan 2011 19:13:19 -0000 1.21 *************** *** 298,311 **** <logic:equal name="rf" property="room" value="false"> <bean:define id="rfId" name="rf" property="uniqueId"/> ! <html:multibox property="roomTypes" onchange="<%="document.getElementById('nul" + rfId + "').style.display = (this.checked ? null : 'none');"%>" styleId="<%="chnul" + rfId%>"> <bean:write name="rf" property="uniqueId"/> </html:multibox> <bean:write name="rf" property="label"/><span id="<%="nul"+rfId%>">: ! <html:select name="eventAddForm" property="<%="nonUniversityLocation[" + rfId + "]"%>" onfocus="setUp();" onkeypress="return selectSearch(event, this);" onkeydown="return checkKey(event, this);"> <html:option value="-1">Select...</html:option> ! <html:optionsCollection name="eventAddForm" property="<%="nonUniversityLocations[" + rfId + "]"%>" label="label" value="uniqueId"/> </html:select> </span> --- 298,312 ---- <logic:equal name="rf" property="room" value="false"> <bean:define id="rfId" name="rf" property="uniqueId"/> ! <% String onChange = "document.getElementById('nul" + rfId + "').style.display = (this.checked ? null : 'none');"; %> ! <html:multibox property="roomTypes" onchange="<%=onChange%>" styleId='<%="chnul" + rfId%>'> <bean:write name="rf" property="uniqueId"/> </html:multibox> <bean:write name="rf" property="label"/><span id="<%="nul"+rfId%>">: ! <html:select name="eventAddForm" property='<%="nonUniversityLocation[" + rfId + "]"%>' onfocus="setUp();" onkeypress="return selectSearch(event, this);" onkeydown="return checkKey(event, this);"> <html:option value="-1">Select...</html:option> ! <html:optionsCollection name="eventAddForm" property='<%="nonUniversityLocations[" + rfId + "]"%>' label="label" value="uniqueId"/> </html:select> </span> Index: eventGrid.jsp =================================================================== RCS file: /cvsroot/unitime/UniTime/WebContent/user/eventGrid.jsp,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** eventGrid.jsp 1 Dec 2010 11:10:47 -0000 1.15 --- eventGrid.jsp 21 Jan 2011 19:13:19 -0000 1.16 *************** *** 94,107 **** <logic:equal name="rf" property="room" value="false"> <bean:define id="rfId" name="rf" property="uniqueId"/> ! <html:multibox property="roomTypes" onchange="<%="document.getElementById('nul" + rfId + "').style.display = (this.checked ? null : 'none');"%>" styleId="<%="chnul" + rfId%>"> <bean:write name="rf" property="uniqueId"/> </html:multibox> <bean:write name="rf" property="label"/><span id="<%="nul"+rfId%>">: ! <html:select name="eventGridForm" property="<%="nonUniversityLocation[" + rfId + "]"%>" onfocus="setUp();" onkeypress="return selectSearch(event, this);" onkeydown="return checkKey(event, this);"> <html:option value="-1">Select...</html:option> ! <html:optionsCollection name="eventGridForm" property="<%="nonUniversityLocations[" + rfId + "]"%>" label="label" value="uniqueId"/> </html:select> </span> --- 94,108 ---- <logic:equal name="rf" property="room" value="false"> <bean:define id="rfId" name="rf" property="uniqueId"/> ! <% String onChange = "document.getElementById('nul" + rfId + "').style.display = (this.checked ? null : 'none');"; %> ! <html:multibox property="roomTypes" onchange="<%=onChange%>" styleId='<%="chnul" + rfId%>'> <bean:write name="rf" property="uniqueId"/> </html:multibox> <bean:write name="rf" property="label"/><span id="<%="nul"+rfId%>">: ! <html:select name="eventGridForm" property='<%="nonUniversityLocation[" + rfId + "]"%>' onfocus="setUp();" onkeypress="return selectSearch(event, this);" onkeydown="return checkKey(event, this);"> <html:option value="-1">Select...</html:option> ! <html:optionsCollection name="eventGridForm" property='<%="nonUniversityLocations[" + rfId + "]"%>' label="label" value="uniqueId"/> </html:select> </span> Index: instructionalOfferingModify.jsp =================================================================== RCS file: /cvsroot/unitime/UniTime/WebContent/user/instructionalOfferingModify.jsp,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** instructionalOfferingModify.jsp 1 Dec 2010 11:10:47 -0000 1.14 --- instructionalOfferingModify.jsp 21 Jan 2011 19:13:19 -0000 1.15 *************** *** 316,320 **** <TD align="left" valign="top" nowrap><logic:equal name="<%=frmName%>" property='<%= "readOnlyClasses[" + ctr + "]" %>' value="false" ><html:text name="<%=frmName%>" property='<%= "numberOfRooms[" + ctr + "]" %>' tabindex="<%=java.lang.Integer.toString(8000 + ctr.intValue())%>" maxlength="5" size="3"/></logic:equal><logic:equal name="<%=frmName%>" property='<%= "readOnlyClasses[" + ctr + "]" %>' value="true" ><bean:write name="<%=frmName%>" property='<%= "numberOfRooms[" + ctr + "]" %>'/><html:hidden property='<%= "numberOfRooms[" + ctr + "]" %>'/></logic:equal></TD> <TD align="left" valign="top" nowrap><logic:equal name="<%=frmName%>" property='<%= "readOnlyClasses[" + ctr + "]" %>' value="false" ><html:select style="width:200;" onfocus="<%= \"setUp(); changeWidth('departments[\" + ctr + \"]', 210)\" %>" onblur="<%= \" changeWidth('departments[\" + ctr + \"]', 200);\" %>" property='<%= "departments[" + ctr + "]" %>' tabindex="<%=java.lang.Integer.toString(10000 + ctr.intValue())%>"><html:option value="-1">Department</html:option><html:options collection='<%=Department.EXTERNAL_DEPT_ATTR_NAME + "list"%>' property="uniqueId" labelProperty="managingDeptLabel" /></html:select></logic:equal><logic:equal name="<%=frmName%>" property='<%= "readOnlyClasses[" + ctr + "]" %>' value="true" ><logic:iterate scope="request" name="<%=Department.EXTERNAL_DEPT_ATTR_NAME%>" id="dept"><logic:equal name="<%=frmName%>" property='<%= "departments[" + ctr + "]" %>' value="<%=((Department)dept).getUniqueId().toString()%>"><bean:write name="dept" property="managingDeptLabel" /></logic:equal></logic:iterate><html:hidden property='<%= "departments[" + ctr + "]" %>'/></logic:equal></TD> ! <TD align="left" valign="top" nowrap><logic:equal name="<%=frmName%>" property='<%= "readOnlyClasses[" + ctr + "]" %>' value="false" ><html:select style="width:100;" onfocus="<%= \"setUp(); changeWidth('datePatterns[\" + ctr + \"]', 200)\" %>" onblur="<%= \" changeWidth('datePatterns[\" + ctr + \"]', 100);\" %>"property='<%= "datePatterns[" + ctr + "]" %>' tabindex="<%=java.lang.Integer.toString(12000 + ctr.intValue())%>"><html:options collection="<%=DatePattern.DATE_PATTERN_LIST_ATTR%>" property="id" labelProperty="value" /></html:select></logic:equal><logic:equal name="<%=frmName%>" property='<%= "readOnlyClasses[" + ctr + "]" %>' value="true" ><logic:equal name="<%=frmName%>" property='<%= "datePatterns[" + ctr + "]"%>' value="">Default</logic:equal><logic:iterate scope="request" name="<%=DatePattern.DATE_PATTERN_LIST_ATTR%>" id="dp"><logic:notEqual name="<%=frmName%>" property='<%= "datePatterns[" + ctr + "]" %>' value=""><logic:equal name="<%=frmName%>" property='<%= "datePatterns[" + ctr + "]" %>' value="<%=((IdValue)dp).getId().toString()%>"><bean:write name="dp" property="value" /></logic:equal></logic:notEqual></logic:iterate><html:hidden property='<%= "datePatterns[" + ctr + "]" %>'/></logic:equal></TD> <TD align="center" valign="top" nowrap><logic:equal name="<%=frmName%>" property="displayDisplayInstructors" value="true" ><logic:equal name="<%=frmName%>" property='<%= "readOnlyClasses[" + ctr + "]" %>' value="false" ><html:checkbox name="<%=frmName%>" property='<%= "displayInstructors[" + ctr + "]" %>' tabindex="<%=java.lang.Integer.toString(14000 + ctr.intValue())%>"/></logic:equal><logic:equal name="<%=frmName%>" property='<%= "readOnlyClasses[" + ctr + "]" %>' value="true" > <logic:equal name="<%=frmName%>" property='<%= "displayInstructors[" + ctr + "]" %>' value="true" ><IMG border='0' title='Display all instructors for this class in the schedule book.' alt='true' align='absmiddle' src='images/tick.gif'></logic:equal><html:hidden property='<%= "displayInstructors[" + ctr + "]" %>'/></logic:equal></logic:equal><logic:equal name="<%=frmName%>" property="displayDisplayInstructors" value="false" ><html:hidden property='<%= "displayInstructors[" + ctr + "]" %>'/></logic:equal></TD> <TD align="center" valign="top" nowrap><logic:equal name="<%=frmName%>" property="displayDisplayInSchedule" value="true" ><logic:equal name="<%=frmName%>" property='<%= "readOnlyClasses[" + ctr + "]" %>' value="false" ><html:checkbox name="<%=frmName%>" property='<%= "displayInScheduleBooks[" + ctr + "]" %>' tabindex="<%=java.lang.Integer.toString(16000 + ctr.intValue())%>"/></logic:equal><logic:equal name="<%=frmName%>" property='<%= "readOnlyClasses[" + ctr + "]" %>' value="true" ><logic:equal name="<%=frmName%>" property='<%= "displayInScheduleBooks[" + ctr + "]" %>' value="true" ><IMG border='0' title='Display this classes in the schedule book.' alt='true' align='absmiddle' src='images/tick.gif'></logic:equal><html:hidden property='<%= "displayInScheduleBooks[" + ctr + "]" %>'/></logic:equal></logic:equal><logic:equal name="<%=frmName%>" property="displayDisplayInSchedule" value="false" ><html:hidden property='<%= "displayInScheduleBooks[" + ctr + "]" %>'/></logic:equal></TD> --- 316,320 ---- <TD align="left" valign="top" nowrap><logic:equal name="<%=frmName%>" property='<%= "readOnlyClasses[" + ctr + "]" %>' value="false" ><html:text name="<%=frmName%>" property='<%= "numberOfRooms[" + ctr + "]" %>' tabindex="<%=java.lang.Integer.toString(8000 + ctr.intValue())%>" maxlength="5" size="3"/></logic:equal><logic:equal name="<%=frmName%>" property='<%= "readOnlyClasses[" + ctr + "]" %>' value="true" ><bean:write name="<%=frmName%>" property='<%= "numberOfRooms[" + ctr + "]" %>'/><html:hidden property='<%= "numberOfRooms[" + ctr + "]" %>'/></logic:equal></TD> <TD align="left" valign="top" nowrap><logic:equal name="<%=frmName%>" property='<%= "readOnlyClasses[" + ctr + "]" %>' value="false" ><html:select style="width:200;" onfocus="<%= \"setUp(); changeWidth('departments[\" + ctr + \"]', 210)\" %>" onblur="<%= \" changeWidth('departments[\" + ctr + \"]', 200);\" %>" property='<%= "departments[" + ctr + "]" %>' tabindex="<%=java.lang.Integer.toString(10000 + ctr.intValue())%>"><html:option value="-1">Department</html:option><html:options collection='<%=Department.EXTERNAL_DEPT_ATTR_NAME + "list"%>' property="uniqueId" labelProperty="managingDeptLabel" /></html:select></logic:equal><logic:equal name="<%=frmName%>" property='<%= "readOnlyClasses[" + ctr + "]" %>' value="true" ><logic:iterate scope="request" name="<%=Department.EXTERNAL_DEPT_ATTR_NAME%>" id="dept"><logic:equal name="<%=frmName%>" property='<%= "departments[" + ctr + "]" %>' value="<%=((Department)dept).getUniqueId().toString()%>"><bean:write name="dept" property="managingDeptLabel" /></logic:equal></logic:iterate><html:hidden property='<%= "departments[" + ctr + "]" %>'/></logic:equal></TD> ! <TD align="left" valign="top" nowrap><logic:equal name="<%=frmName%>" property='<%= "readOnlyClasses[" + ctr + "]" %>' value="false" ><html:select style="width:100;" onfocus="<%= \"setUp(); changeWidth('datePatterns[\" + ctr + \"]', 200)\" %>" onblur="<%= \" changeWidth('datePatterns[\" + ctr + \"]', 100);\" %>" property='<%= "datePatterns[" + ctr + "]" %>' tabindex="<%=java.lang.Integer.toString(12000 + ctr.intValue())%>"><html:options collection="<%=DatePattern.DATE_PATTERN_LIST_ATTR%>" property="id" labelProperty="value" /></html:select></logic:equal><logic:equal name="<%=frmName%>" property='<%= "readOnlyClasses[" + ctr + "]" %>' value="true" ><logic:equal name="<%=frmName%>" property='<%= "datePatterns[" + ctr + "]"%>' value="">Default</logic:equal><logic:iterate scope="request" name="<%=DatePattern.DATE_PATTERN_LIST_ATTR%>" id="dp"><logic:notEqual name="<%=frmName%>" property='<%= "datePatterns[" + ctr + "]" %>' value=""><logic:equal name="<%=frmName%>" property='<%= "datePatterns[" + ctr + "]" %>' value="<%=((IdValue)dp).getId().toString()%>"><bean:write name="dp" property="value" /></logic:equal></logic:notEqual></logic:iterate><html:hidden property='<%= "datePatterns[" + ctr + "]" %>'/></logic:equal></TD> <TD align="center" valign="top" nowrap><logic:equal name="<%=frmName%>" property="displayDisplayInstructors" value="true" ><logic:equal name="<%=frmName%>" property='<%= "readOnlyClasses[" + ctr + "]" %>' value="false" ><html:checkbox name="<%=frmName%>" property='<%= "displayInstructors[" + ctr + "]" %>' tabindex="<%=java.lang.Integer.toString(14000 + ctr.intValue())%>"/></logic:equal><logic:equal name="<%=frmName%>" property='<%= "readOnlyClasses[" + ctr + "]" %>' value="true" > <logic:equal name="<%=frmName%>" property='<%= "displayInstructors[" + ctr + "]" %>' value="true" ><IMG border='0' title='Display all instructors for this class in the schedule book.' alt='true' align='absmiddle' src='images/tick.gif'></logic:equal><html:hidden property='<%= "displayInstructors[" + ctr + "]" %>'/></logic:equal></logic:equal><logic:equal name="<%=frmName%>" property="displayDisplayInstructors" value="false" ><html:hidden property='<%= "displayInstructors[" + ctr + "]" %>'/></logic:equal></TD> <TD align="center" valign="top" nowrap><logic:equal name="<%=frmName%>" property="displayDisplayInSchedule" value="true" ><logic:equal name="<%=frmName%>" property='<%= "readOnlyClasses[" + ctr + "]" %>' value="false" ><html:checkbox name="<%=frmName%>" property='<%= "displayInScheduleBooks[" + ctr + "]" %>' tabindex="<%=java.lang.Integer.toString(16000 + ctr.intValue())%>"/></logic:equal><logic:equal name="<%=frmName%>" property='<%= "readOnlyClasses[" + ctr + "]" %>' value="true" ><logic:equal name="<%=frmName%>" property='<%= "displayInScheduleBooks[" + ctr + "]" %>' value="true" ><IMG border='0' title='Display this classes in the schedule book.' alt='true' align='absmiddle' src='images/tick.gif'></logic:equal><html:hidden property='<%= "displayInScheduleBooks[" + ctr + "]" %>'/></logic:equal></logic:equal><logic:equal name="<%=frmName%>" property="displayDisplayInSchedule" value="false" ><html:hidden property='<%= "displayInScheduleBooks[" + ctr + "]" %>'/></logic:equal></TD> Index: courseOfferingEdit.jsp =================================================================== RCS file: /cvsroot/unitime/UniTime/WebContent/user/courseOfferingEdit.jsp,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** courseOfferingEdit.jsp 1 Dec 2010 11:10:47 -0000 1.8 --- courseOfferingEdit.jsp 21 Jan 2011 19:13:19 -0000 1.9 *************** *** 196,200 **** <td nowrap>Fractional Increments Allowed: </td> <td> ! <html:checkbox property="fractionalIncrementsAllowed"disabled="<%=(frm.getCreditFormat() != null && frm.getCreditFormat().equals(VariableRangeCreditUnitConfig.CREDIT_FORMAT))?false:true%>"/> </td> </tr> --- 196,200 ---- <td nowrap>Fractional Increments Allowed: </td> <td> ! <html:checkbox property="fractionalIncrementsAllowed" disabled="<%=(frm.getCreditFormat() != null && frm.getCreditFormat().equals(VariableRangeCreditUnitConfig.CREDIT_FORMAT))?false:true%>"/> </td> </tr> Index: schedulingSubpartEdit.jsp =================================================================== RCS file: /cvsroot/unitime/UniTime/WebContent/user/schedulingSubpartEdit.jsp,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** schedulingSubpartEdit.jsp 1 Dec 2010 11:10:47 -0000 1.7 --- schedulingSubpartEdit.jsp 21 Jan 2011 19:13:19 -0000 1.8 *************** *** 213,217 **** <td nowrap>Fractional Increments Allowed: </td> <td> ! <html:checkbox property="fractionalIncrementsAllowed"disabled="<%=(frm.getCreditFormat() != null && frm.getCreditFormat().equals(VariableRangeCreditUnitConfig.CREDIT_FORMAT))?false:true%>"/> </td> </tr> --- 213,217 ---- <td nowrap>Fractional Increments Allowed: </td> <td> ! <html:checkbox property="fractionalIncrementsAllowed" disabled="<%=(frm.getCreditFormat() != null && frm.getCreditFormat().equals(VariableRangeCreditUnitConfig.CREDIT_FORMAT))?false:true%>"/> </td> </tr> |
From: Tomas M. <to...@us...> - 2011-01-21 19:13:27
|
Update of /cvsroot/unitime/UniTime/WebContent/tt In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv14218/WebContent/tt Modified Files: suggestions.jsp info.jsp Log Message: Apache Tomcat 7 Compatibility Issues - various pages: corrected syntax to meet the new Tomcat 7 validation Index: suggestions.jsp =================================================================== RCS file: /cvsroot/unitime/UniTime/WebContent/tt/suggestions.jsp,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** suggestions.jsp 1 Dec 2010 11:10:39 -0000 1.3 --- suggestions.jsp 21 Jan 2011 19:13:19 -0000 1.4 *************** *** 228,232 **** <TD colspan='2' align='right'> <html:submit onclick="displayLoading();" property="op" title="Apply changes" value="Apply"/> ! <html:button onclick="displayLoading();" accesskey="C" title="Close window (Alt+C)" property="op" value="Close" onclick="parent.hideGwtDialog();"/> </TD> </TR> --- 228,232 ---- <TD colspan='2' align='right'> <html:submit onclick="displayLoading();" property="op" title="Apply changes" value="Apply"/> ! <html:button onclick="parent.hideGwtDialog();" accesskey="C" title="Close window (Alt+C)" property="op" value="Close"/> </TD> </TR> Index: info.jsp =================================================================== RCS file: /cvsroot/unitime/UniTime/WebContent/tt/info.jsp,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** info.jsp 1 Dec 2010 11:10:39 -0000 1.6 --- info.jsp 21 Jan 2011 19:13:19 -0000 1.7 *************** *** 90,94 **** <logic:equal name="model" property="canAssign" value="true"> <tr><td colspan='2' align="right"> ! <html:submit onclick="displayLoading();" property="op" value="Assign" onclick="return confirmAssign();" /> </td></tr> </logic:equal> --- 90,94 ---- <logic:equal name="model" property="canAssign" value="true"> <tr><td colspan='2' align="right"> ! <html:submit onclick="return confirmAssign();" property="op" value="Assign" /> </td></tr> </logic:equal> |
From: Tomas M. <to...@us...> - 2011-01-21 19:13:27
|
Update of /cvsroot/unitime/UniTime/WebContent/exam In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv14218/WebContent/exam Modified Files: info.jsp Log Message: Apache Tomcat 7 Compatibility Issues - various pages: corrected syntax to meet the new Tomcat 7 validation Index: info.jsp =================================================================== RCS file: /cvsroot/unitime/UniTime/WebContent/exam/info.jsp,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** info.jsp 1 Dec 2010 11:10:40 -0000 1.11 --- info.jsp 21 Jan 2011 19:13:19 -0000 1.12 *************** *** 88,92 **** <logic:equal name="model" property="canAssign" value="true"> <tr><td colspan='2' align="right"> ! <html:submit onclick="displayLoading();" property="op" value="Assign" onclick="return confirmAssign();" /> </td></tr> </logic:equal> --- 88,92 ---- <logic:equal name="model" property="canAssign" value="true"> <tr><td colspan='2' align="right"> ! <html:submit onclick="return confirmAssign();" property="op" value="Assign" /> </td></tr> </logic:equal> |
From: Tomas M. <to...@us...> - 2011-01-21 19:11:58
|
Update of /cvsroot/unitime/UniTime/JavaSource/org/unitime/timetable/filter In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv13887/JavaSource/org/unitime/timetable/filter Modified Files: QueryLogFilter.java Log Message: Apache Tomcat 7 Compatibility Issues - fixed the AbstractMethodError in QueryLogFilter (by changing the HttpServletRequestWrapper to be a Java Proxy) Index: QueryLogFilter.java =================================================================== RCS file: /cvsroot/unitime/UniTime/JavaSource/org/unitime/timetable/filter/QueryLogFilter.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** QueryLogFilter.java 1 Dec 2010 11:10:47 -0000 1.2 --- QueryLogFilter.java 21 Jan 2011 19:11:49 -0000 1.3 *************** *** 20,29 **** package org.unitime.timetable.filter; - import java.io.BufferedReader; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; ! import java.io.UnsupportedEncodingException; ! import java.security.Principal; import java.util.ArrayList; import java.util.Date; --- 20,30 ---- package org.unitime.timetable.filter; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; ! import java.io.OutputStream; ! import java.lang.reflect.InvocationHandler; ! import java.lang.reflect.Method; ! import java.lang.reflect.Proxy; import java.util.ArrayList; import java.util.Date; *************** *** 31,36 **** import java.util.HashSet; import java.util.List; - import java.util.Locale; - import java.util.Map; import java.util.Vector; --- 32,35 ---- *************** *** 38,49 **** import javax.servlet.FilterChain; import javax.servlet.FilterConfig; - import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.ServletInputStream; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; - import javax.servlet.http.Cookie; import javax.servlet.http.HttpServletRequest; - import javax.servlet.http.HttpSession; import net.sf.cpsolver.ifs.util.JProf; --- 37,45 ---- *************** *** 89,96 **** } catch (IllegalStateException e) {} if (request instanceof HttpServletRequest) { HttpServletRequest r = (HttpServletRequest)request; ! if (r.getRequestURI().endsWith(".gwt")) ! request = new HttpServletRequestWrapper(r); } --- 85,95 ---- } catch (IllegalStateException e) {} + HttpServletRequestWrapper wrapper = null; if (request instanceof HttpServletRequest) { HttpServletRequest r = (HttpServletRequest)request; ! if (r.getRequestURI().endsWith(".gwt")) { ! wrapper = new HttpServletRequestWrapper(r); ! request = wrapper.createRequest(); ! } } *************** *** 130,136 **** } } catch (IllegalStateException e) {} ! if (r instanceof HttpServletRequestWrapper && ((HttpServletRequestWrapper)r).getBody() != null) { try { ! String body = new String(((HttpServletRequestWrapper)r).getBody()); q.setQuery(body); String args[] = body.split("\\|"); --- 129,135 ---- } } catch (IllegalStateException e) {} ! if (wrapper != null && wrapper.getBody() != null) { try { ! String body = new String(wrapper.getBody()); q.setQuery(body); String args[] = body.split("\\|"); *************** *** 225,468 **** } ! private static class HttpServletRequestWrapper implements HttpServletRequest { private HttpServletRequest iRequest; ! private ServletInputStreamWrapper iInputStream = null; public HttpServletRequestWrapper(HttpServletRequest r) { iRequest = r; } ! @Override ! public String getAuthType() { ! return iRequest.getAuthType(); ! } ! @Override ! public String getContextPath() { ! return iRequest.getContextPath(); ! } ! @Override ! public Cookie[] getCookies() { ! return iRequest.getCookies(); ! } ! @Override ! public long getDateHeader(String name) { ! return iRequest.getDateHeader(name); ! } ! @Override ! public String getHeader(String name) { ! return iRequest.getHeader(name); ! } ! @Override ! public Enumeration getHeaderNames() { ! return iRequest.getHeaderNames(); ! } ! @Override ! public Enumeration getHeaders(String name) { ! return iRequest.getHeaders(name); ! } ! @Override ! public int getIntHeader(String name) { ! return iRequest.getIntHeader(name); ! } ! @Override ! public String getMethod() { ! return iRequest.getMethod(); ! } ! @Override ! public String getPathInfo() { ! return iRequest.getPathInfo(); ! } ! @Override ! public String getPathTranslated() { ! return iRequest.getPathTranslated(); ! } ! @Override ! public String getQueryString() { ! return iRequest.getQueryString(); ! } ! @Override ! public String getRemoteUser() { ! return iRequest.getRemoteUser(); ! } ! @Override ! public String getRequestURI() { ! return iRequest.getRequestURI(); ! } ! @Override ! public StringBuffer getRequestURL() { ! return iRequest.getRequestURL(); ! } ! @Override ! public String getRequestedSessionId() { ! return iRequest.getRequestedSessionId(); ! } ! @Override ! public String getServletPath() { ! return iRequest.getServletPath(); ! } ! @Override ! public HttpSession getSession() { ! return iRequest.getSession(); ! } ! @Override ! public HttpSession getSession(boolean create) { ! return iRequest.getSession(create); ! } ! @Override ! public Principal getUserPrincipal() { ! return iRequest.getUserPrincipal(); ! } ! @Override ! public boolean isRequestedSessionIdFromCookie() { ! return iRequest.isRequestedSessionIdFromCookie(); ! } ! @Override ! public boolean isRequestedSessionIdFromURL() { ! return iRequest.isRequestedSessionIdFromURL(); ! } ! @Override ! @Deprecated ! public boolean isRequestedSessionIdFromUrl() { ! return iRequest.isRequestedSessionIdFromUrl(); ! } ! @Override ! public boolean isRequestedSessionIdValid() { ! return iRequest.isRequestedSessionIdValid(); ! } ! @Override ! public boolean isUserInRole(String role) { ! return iRequest.isUserInRole(role); ! } ! @Override ! public Object getAttribute(String name) { ! return iRequest.getAttribute(name); ! } ! @Override ! public Enumeration getAttributeNames() { ! return iRequest.getAttributeNames(); ! } ! @Override ! public String getCharacterEncoding() { ! return iRequest.getCharacterEncoding(); ! } ! @Override ! public int getContentLength() { ! return iRequest.getContentLength(); } @Override ! public String getContentType() { ! return iRequest.getContentType(); } ! @Override public ServletInputStream getInputStream() throws IOException { ! if (iInputStream == null) ! iInputStream = new ServletInputStreamWrapper(iRequest.getInputStream()); return iInputStream; } public byte[] getBody() { ! return (iInputStream == null ? null : iInputStream.getBytes()); ! } ! @Override ! public String getLocalAddr() { ! return iRequest.getLocalAddr(); ! } ! @Override ! public String getLocalName() { ! return iRequest.getLocalName(); ! } ! @Override ! public int getLocalPort() { ! return iRequest.getLocalPort(); ! } ! @Override ! public Locale getLocale() { ! return iRequest.getLocale(); ! } ! @Override ! public Enumeration getLocales() { ! return iRequest.getLocales(); ! } ! @Override ! public String getParameter(String name) { ! return iRequest.getParameter(name); ! } ! @Override ! public Map getParameterMap() { ! return iRequest.getParameterMap(); ! } ! @Override ! public Enumeration getParameterNames() { ! return iRequest.getParameterNames(); ! } ! @Override ! public String[] getParameterValues(String name) { ! return iRequest.getParameterValues(name); ! } ! @Override ! public String getProtocol() { ! return iRequest.getProtocol(); ! } ! @Override ! public BufferedReader getReader() throws IOException { ! return iRequest.getReader(); ! } ! @Override ! @Deprecated ! public String getRealPath(String path) { ! return iRequest.getRealPath(path); ! } ! @Override ! public String getRemoteAddr() { ! return iRequest.getRemoteAddr(); ! } ! @Override ! public String getRemoteHost() { ! return iRequest.getRemoteHost(); ! } ! @Override ! public int getRemotePort() { ! return iRequest.getRemotePort(); ! } ! @Override ! public RequestDispatcher getRequestDispatcher(String path) { ! return iRequest.getRequestDispatcher(path); ! } ! @Override ! public String getScheme() { ! return iRequest.getScheme(); ! } ! @Override ! public String getServerName() { ! return iRequest.getServerName(); ! } ! @Override ! public int getServerPort() { ! return iRequest.getServerPort(); ! } ! @Override ! public boolean isSecure() { ! return iRequest.isSecure(); ! } ! @Override ! public void removeAttribute(String name) { ! iRequest.removeAttribute(name); ! } ! @Override ! public void setAttribute(String name, Object o) { ! iRequest.setAttribute(name, o); } ! @Override ! public void setCharacterEncoding(String env) ! throws UnsupportedEncodingException { ! iRequest.setCharacterEncoding(env); ! } } private static class ServletInputStreamWrapper extends ServletInputStream { private InputStream iInputStream; ! private ByteArrayOutputStream iBytes; ! public ServletInputStreamWrapper(InputStream is) { ! iBytes = new ByteArrayOutputStream(); ! iInputStream = is; } --- 224,269 ---- } ! private static class HttpServletRequestWrapper implements InvocationHandler { private HttpServletRequest iRequest; ! private ServletInputStream iInputStream = null; ! private ByteArrayOutputStream iBody = null; public HttpServletRequestWrapper(HttpServletRequest r) { iRequest = r; } ! ! public HttpServletRequest createRequest() { ! return (HttpServletRequest)Proxy.newProxyInstance(QueryLogFilter.class.getClassLoader(), new Class[] {HttpServletRequest.class}, this); } + @Override ! public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { ! if ("getInputStream".equals(method.getName()) && method.getParameterTypes().length == 0) ! return getInputStream(); ! return iRequest.getClass().getMethod(method.getName(),method.getParameterTypes()).invoke(iRequest, args); } ! public ServletInputStream getInputStream() throws IOException { ! if (iInputStream == null) { ! iBody = new ByteArrayOutputStream(); ! iInputStream = new ServletInputStreamWrapper(iRequest.getInputStream(), iBody); ! } return iInputStream; } + public byte[] getBody() { ! return (iBody == null ? null : iBody.toByteArray()); } ! ! } private static class ServletInputStreamWrapper extends ServletInputStream { private InputStream iInputStream; ! private OutputStream iOutputStream; ! public ServletInputStreamWrapper(InputStream in, OutputStream out) { ! iInputStream = in; ! iOutputStream = out; } *************** *** 470,474 **** public int read() throws IOException { int out = iInputStream.read(); ! iBytes.write(out); return out; } --- 271,275 ---- public int read() throws IOException { int out = iInputStream.read(); ! iOutputStream.write(out); return out; } *************** *** 477,486 **** public void close() throws IOException { iInputStream.close(); ! iBytes.flush(); ! iBytes.close(); ! } ! ! public byte[] getBytes() { ! return iBytes.toByteArray(); } } --- 278,283 ---- public void close() throws IOException { iInputStream.close(); ! iOutputStream.flush(); ! iOutputStream.close(); } } |
From: Nightly B. <no...@un...> - 2011-01-19 00:23:06
|
Download the resultant file at http://www.unitime.org/uct_builds.php, see the attached build and change logs for more details. |
From: Nightly B. <no...@un...> - 2011-01-19 00:22:02
|
Download the resultant file at http://www.unitime.org/uct_builds.php, see the attached build and change logs for more details. |
From: Tomas M. <to...@us...> - 2011-01-18 23:12:27
|
Update of /cvsroot/unitime/UniTime/WebContent/help In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv13474/WebContent/help Modified Files: Release-Notes.xml Log Message: Room Timetable: Only show rooms that can be used for event management. Index: Release-Notes.xml =================================================================== RCS file: /cvsroot/unitime/UniTime/WebContent/help/Release-Notes.xml,v retrieving revision 1.84 retrieving revision 1.85 diff -C2 -d -r1.84 -r1.85 *** Release-Notes.xml 18 Jan 2011 14:16:52 -0000 1.84 --- Release-Notes.xml 18 Jan 2011 23:12:19 -0000 1.85 *************** *** 46,49 **** --- 46,55 ---- </description> </item> + <item> + <name>Event Timetable</name> + <description> + <line>Room Timetable: Only show rooms that can be used for event management.</line> + </description> + </item> </category> <category> |
From: Tomas M. <to...@us...> - 2011-01-18 23:12:27
|
Update of /cvsroot/unitime/UniTime/JavaSource/org/unitime/timetable/gwt/server In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv13474/JavaSource/org/unitime/timetable/gwt/server Modified Files: EventServlet.java Log Message: Room Timetable: Only show rooms that can be used for event management. Index: EventServlet.java =================================================================== RCS file: /cvsroot/unitime/UniTime/JavaSource/org/unitime/timetable/gwt/server/EventServlet.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** EventServlet.java 17 Dec 2010 18:20:13 -0000 1.3 --- EventServlet.java 18 Jan 2011 23:12:19 -0000 1.4 *************** *** 182,188 **** switch (type) { case ROOM: ! List<Room> rooms = hibSession.createQuery("select r from Room r where r.session.uniqueId = :sessionId and (" + "r.buildingAbbv || ' ' || r.roomNumber = :name or r.buildingAbbv || r.roomNumber = :name)") ! .setString("name", name).setLong("sessionId", academicSession.getUniqueId()).list(); if (!rooms.isEmpty()) { Room room = rooms.get(0); --- 182,193 ---- switch (type) { case ROOM: ! List<Room> rooms = hibSession.createQuery("select distinct r from Room r " + ! "inner join r.roomDepts rd inner join rd.department.timetableManagers m inner join m.managerRoles mr " + ! "where r.session.uniqueId = :sessionId and rd.control=true and mr.role.reference=:eventMgr and (" + "r.buildingAbbv || ' ' || r.roomNumber = :name or r.buildingAbbv || r.roomNumber = :name)") ! .setString("name", name) ! .setLong("sessionId", academicSession.getUniqueId()) ! .setString("eventMgr", Roles.EVENT_MGR_ROLE) ! .list(); if (!rooms.isEmpty()) { Room room = rooms.get(0); *************** *** 196,202 **** return ret; } ! List<NonUniversityLocation> locations = hibSession.createQuery("select l from NonUniversityLocation l where " + ! "l.session.uniqueId = :sessionId and l.name = :name") ! .setString("name", name).setLong("sessionId", academicSession.getUniqueId()).list(); if (!locations.isEmpty()) { NonUniversityLocation location = locations.get(0); --- 201,213 ---- return ret; } ! List<NonUniversityLocation> locations = hibSession.createQuery("select distinct l from NonUniversityLocation l " + ! "inner join l.roomDepts rd inner join rd.department.timetableManagers m inner join m.managerRoles mr " + ! "where l.session.uniqueId = :sessionId and l.name = :name and " + ! "rd.control=true and mr.role.reference=:eventMgr" ! ) ! .setString("name", name) ! .setLong("sessionId", academicSession.getUniqueId()) ! .setString("eventMgr", Roles.EVENT_MGR_ROLE) ! .list(); if (!locations.isEmpty()) { NonUniversityLocation location = locations.get(0); *************** *** 863,871 **** switch (type) { case ROOM: ! List<Room> rooms = hibSession.createQuery("select r from Room r, RoomTypeOption o where r.session.uniqueId = :sessionId and " + "o.status = 1 and o.roomType = r.roomType and o.session = r.session and (" + "lower(r.roomNumber) like :name or lower(r.buildingAbbv || ' ' || r.roomNumber) like :name or lower(r.buildingAbbv || r.roomNumber) like :name) " + "order by r.buildingAbbv, r.roomNumber") ! .setString("name", query.toLowerCase() + "%").setLong("sessionId", academicSession.getUniqueId()).setMaxResults(limit).list(); for (Room room: rooms) { ResourceInterface ret = new ResourceInterface(); --- 874,888 ---- switch (type) { case ROOM: ! List<Room> rooms = hibSession.createQuery("select distinct r from Room r " + ! "inner join r.roomDepts rd inner join rd.department.timetableManagers m inner join m.managerRoles mr, " + ! "RoomTypeOption o where r.session.uniqueId = :sessionId and " + ! "rd.control=true and mr.role.reference=:eventMgr and " + "o.status = 1 and o.roomType = r.roomType and o.session = r.session and (" + "lower(r.roomNumber) like :name or lower(r.buildingAbbv || ' ' || r.roomNumber) like :name or lower(r.buildingAbbv || r.roomNumber) like :name) " + "order by r.buildingAbbv, r.roomNumber") ! .setString("name", query.toLowerCase() + "%") ! .setLong("sessionId", academicSession.getUniqueId()) ! .setString("eventMgr", Roles.EVENT_MGR_ROLE) ! .setMaxResults(limit).list(); for (Room room: rooms) { ResourceInterface ret = new ResourceInterface(); *************** *** 883,890 **** resources.add(ret); } ! List<NonUniversityLocation> locations = hibSession.createQuery("select l from NonUniversityLocation l, RoomTypeOption o where " + "l.session.uniqueId = :sessionId and o.status = 1 and o.roomType = l.roomType and o.session = l.session and lower(l.name) like :name " + "order by l.name") ! .setString("name", query.toLowerCase() + "%").setLong("sessionId", academicSession.getUniqueId()).setMaxResults(limit).list(); for (NonUniversityLocation location: locations) { ResourceInterface ret = new ResourceInterface(); --- 900,913 ---- resources.add(ret); } ! List<NonUniversityLocation> locations = hibSession.createQuery("select distinct l from NonUniversityLocation l " + ! "inner join l.roomDepts rd inner join rd.department.timetableManagers m inner join m.managerRoles mr, " + ! "RoomTypeOption o where " + ! "rd.control=true and mr.role.reference=:eventMgr and " + "l.session.uniqueId = :sessionId and o.status = 1 and o.roomType = l.roomType and o.session = l.session and lower(l.name) like :name " + "order by l.name") ! .setString("name", query.toLowerCase() + "%") ! .setLong("sessionId", academicSession.getUniqueId()) ! .setString("eventMgr", Roles.EVENT_MGR_ROLE) ! .setMaxResults(limit).list(); for (NonUniversityLocation location: locations) { ResourceInterface ret = new ResourceInterface(); |
From: Tomas M. <to...@us...> - 2011-01-18 14:17:00
|
Update of /cvsroot/unitime/UniTime/JavaSource/org/unitime/timetable/webutil/timegrid In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv24798/JavaSource/org/unitime/timetable/webutil/timegrid Modified Files: ExamGridTable.java Log Message: Examination Timetable: Date filter corrected for the case when session start date is in a different year than the period. Index: ExamGridTable.java =================================================================== RCS file: /cvsroot/unitime/UniTime/JavaSource/org/unitime/timetable/webutil/timegrid/ExamGridTable.java,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** ExamGridTable.java 1 Dec 2010 11:10:48 -0000 1.17 --- ExamGridTable.java 18 Jan 2011 14:16:52 -0000 1.18 *************** *** 388,392 **** cal.setLenient(true); cal.add(Calendar.DAY_OF_YEAR, day); ! return 1+cal.get(Calendar.WEEK_OF_YEAR)-iForm.getSessionBeginWeek(); } --- 388,399 ---- cal.setLenient(true); cal.add(Calendar.DAY_OF_YEAR, day); ! int week = 1; ! while (cal.getTime().after(iForm.getSessionBeginDate()) && cal.get(Calendar.WEEK_OF_YEAR) != iForm.getSessionBeginWeek()) { ! cal.add(Calendar.DAY_OF_YEAR, -7); week ++; ! } ! while (cal.getTime().before(iForm.getSessionBeginDate()) && cal.get(Calendar.WEEK_OF_YEAR) != iForm.getSessionBeginWeek()) { ! cal.add(Calendar.DAY_OF_WEEK, 7); week --; ! } ! return week; } |
From: Tomas M. <to...@us...> - 2011-01-18 14:17:00
|
Update of /cvsroot/unitime/UniTime/JavaSource/org/unitime/timetable/form In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv24798/JavaSource/org/unitime/timetable/form Modified Files: ExamGridForm.java Log Message: Examination Timetable: Date filter corrected for the case when session start date is in a different year than the period. Index: ExamGridForm.java =================================================================== RCS file: /cvsroot/unitime/UniTime/JavaSource/org/unitime/timetable/form/ExamGridForm.java,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** ExamGridForm.java 1 Dec 2010 11:10:38 -0000 1.9 --- ExamGridForm.java 18 Jan 2011 14:16:52 -0000 1.10 *************** *** 168,172 **** Calendar cal = Calendar.getInstance(Locale.US); cal.setTime(period.getStartDate()); ! int week = 1+cal.get(Calendar.WEEK_OF_YEAR)-iSessionBeginWeek; if (added.add(1000+week)) { while (cal.get(Calendar.DAY_OF_WEEK)!=Calendar.MONDAY) cal.add(Calendar.DAY_OF_YEAR, -1); --- 168,179 ---- Calendar cal = Calendar.getInstance(Locale.US); cal.setTime(period.getStartDate()); ! int week = 1; ! while (cal.getTime().after(iSessionBeginDate) && cal.get(Calendar.WEEK_OF_YEAR) != iSessionBeginWeek) { ! cal.add(Calendar.DAY_OF_YEAR, -7); week ++; ! } ! while (cal.getTime().before(iSessionBeginDate) && cal.get(Calendar.WEEK_OF_YEAR) != iSessionBeginWeek) { ! cal.add(Calendar.DAY_OF_WEEK, 7); week --; ! } ! cal.setTime(period.getStartDate()); if (added.add(1000+week)) { while (cal.get(Calendar.DAY_OF_WEEK)!=Calendar.MONDAY) cal.add(Calendar.DAY_OF_YEAR, -1); |
From: Tomas M. <to...@us...> - 2011-01-18 14:17:00
|
Update of /cvsroot/unitime/UniTime/WebContent/help In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv24798/WebContent/help Modified Files: Release-Notes.xml Log Message: Examination Timetable: Date filter corrected for the case when session start date is in a different year than the period. Index: Release-Notes.xml =================================================================== RCS file: /cvsroot/unitime/UniTime/WebContent/help/Release-Notes.xml,v retrieving revision 1.83 retrieving revision 1.84 diff -C2 -d -r1.83 -r1.84 *** Release-Notes.xml 14 Jan 2011 18:24:29 -0000 1.83 --- Release-Notes.xml 18 Jan 2011 14:16:52 -0000 1.84 *************** *** 40,43 **** --- 40,49 ---- </description> </item> + <item> + <name>Examination Timetable</name> + <description> + <line>Date filter corrected for the case when session start date is in a different year than the period.</line> + </description> + </item> </category> <category> |
From: Tomas M. <to...@us...> - 2011-01-18 14:15:48
|
Update of /cvsroot/unitime/UniTime/WebContent/help In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv24630/WebContent/help Modified Files: Tag: maint_UniTime31 Release-Notes.xml Log Message: added recent changes Index: Release-Notes.xml =================================================================== RCS file: /cvsroot/unitime/UniTime/WebContent/help/Release-Notes.xml,v retrieving revision 1.71 retrieving revision 1.71.2.1 diff -C2 -d -r1.71 -r1.71.2.1 *** Release-Notes.xml 24 Nov 2010 17:45:30 -0000 1.71 --- Release-Notes.xml 18 Jan 2011 14:15:40 -0000 1.71.2.1 *************** *** 32,35 **** --- 32,50 ---- <name>Bug fixes</name> <description> + <line>Examination Timetable: Fixed ClassCastException when resource is set to Instructor.</line> + <line>Examination Timetable: Date filter corrected for the case when session start date is in a different year than the period.</line> + </description> + </item> + </category> + </release> + + <release> + <version>3.1.291</version> + <release-date>Thursday, 25 Nov 2010</release-date> + <category> + <title>BUG FIXES & OTHER IMPROVEMENTS</title> + <item> + <name>Bug fixes</name> + <description> <line>Edit Date Pattern: fixed ArrayIndexOutOfBoundsException when pattern offset is negative, assumption about the days of weeks corrected</line> <line>Class Assignment: remove all related constraint infos to avoid hibernate cache issues when an orphaned constraint info is automatically deleted |
From: Tomas M. <to...@us...> - 2011-01-18 14:15:36
|
Update of /cvsroot/unitime/UniTime/JavaSource/org/unitime/timetable/form In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv24595/JavaSource/org/unitime/timetable/form Modified Files: Tag: maint_UniTime31 ExamGridForm.java Log Message: Examination Timetable: Date filter corrected for the case when session start date is in a different year than the period. Index: ExamGridForm.java =================================================================== RCS file: /cvsroot/unitime/UniTime/JavaSource/org/unitime/timetable/form/ExamGridForm.java,v retrieving revision 1.8 retrieving revision 1.8.4.1 diff -C2 -d -r1.8 -r1.8.4.1 *** ExamGridForm.java 9 May 2008 04:09:50 -0000 1.8 --- ExamGridForm.java 18 Jan 2011 14:15:28 -0000 1.8.4.1 *************** *** 148,152 **** Calendar cal = Calendar.getInstance(Locale.US); cal.setTime(period.getStartDate()); ! int week = 1+cal.get(Calendar.WEEK_OF_YEAR)-iSessionBeginWeek; if (added.add(1000+week)) { while (cal.get(Calendar.DAY_OF_WEEK)!=Calendar.MONDAY) cal.add(Calendar.DAY_OF_YEAR, -1); --- 148,159 ---- Calendar cal = Calendar.getInstance(Locale.US); cal.setTime(period.getStartDate()); ! int week = 1; ! while (cal.getTime().after(iSessionBeginDate) && cal.get(Calendar.WEEK_OF_YEAR) != iSessionBeginWeek) { ! cal.add(Calendar.DAY_OF_YEAR, -7); week ++; ! } ! while (cal.getTime().before(iSessionBeginDate) && cal.get(Calendar.WEEK_OF_YEAR) != iSessionBeginWeek) { ! cal.add(Calendar.DAY_OF_WEEK, 7); week --; ! } ! cal.setTime(period.getStartDate()); if (added.add(1000+week)) { while (cal.get(Calendar.DAY_OF_WEEK)!=Calendar.MONDAY) cal.add(Calendar.DAY_OF_YEAR, -1); |
From: Tomas M. <to...@us...> - 2011-01-18 14:15:36
|
Update of /cvsroot/unitime/UniTime/JavaSource/org/unitime/timetable/webutil/timegrid In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv24595/JavaSource/org/unitime/timetable/webutil/timegrid Modified Files: Tag: maint_UniTime31 ExamGridTable.java Log Message: Examination Timetable: Date filter corrected for the case when session start date is in a different year than the period. Index: ExamGridTable.java =================================================================== RCS file: /cvsroot/unitime/UniTime/JavaSource/org/unitime/timetable/webutil/timegrid/ExamGridTable.java,v retrieving revision 1.16 retrieving revision 1.16.4.1 diff -C2 -d -r1.16 -r1.16.4.1 *** ExamGridTable.java 1 Aug 2009 17:23:30 -0000 1.16 --- ExamGridTable.java 18 Jan 2011 14:15:28 -0000 1.16.4.1 *************** *** 388,392 **** cal.setLenient(true); cal.add(Calendar.DAY_OF_YEAR, day); ! return 1+cal.get(Calendar.WEEK_OF_YEAR)-iForm.getSessionBeginWeek(); } --- 388,399 ---- cal.setLenient(true); cal.add(Calendar.DAY_OF_YEAR, day); ! int week = 1; ! while (cal.getTime().after(iForm.getSessionBeginDate()) && cal.get(Calendar.WEEK_OF_YEAR) != iForm.getSessionBeginWeek()) { ! cal.add(Calendar.DAY_OF_YEAR, -7); week ++; ! } ! while (cal.getTime().before(iForm.getSessionBeginDate()) && cal.get(Calendar.WEEK_OF_YEAR) != iForm.getSessionBeginWeek()) { ! cal.add(Calendar.DAY_OF_WEEK, 7); week --; ! } ! return week; } |
From: Tomas M. <to...@us...> - 2011-01-18 14:15:24
|
Update of /cvsroot/unitime/UniTime/JavaSource/org/unitime/timetable/solver/exam In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv24541/JavaSource/org/unitime/timetable/solver/exam Modified Files: Tag: maint_UniTime31 ExamSolver.java Log Message: Examination Timetable: Fixed ClassCastException when resource is set to Instructor. Index: ExamSolver.java =================================================================== RCS file: /cvsroot/unitime/UniTime/JavaSource/org/unitime/timetable/solver/exam/ExamSolver.java,v retrieving revision 1.25 retrieving revision 1.25.4.1 diff -C2 -d -r1.25 -r1.25.4.1 *** ExamSolver.java 17 Jun 2008 21:24:51 -0000 1.25 --- ExamSolver.java 18 Jan 2011 14:15:16 -0000 1.25.4.1 *************** *** 772,776 **** synchronized (currentSolution()) { ExamInstructor instructor = null; ! for (Enumeration e=((ExamModel)currentSolution().getModel()).getRooms().elements();e.hasMoreElements();) { ExamInstructor i = (ExamInstructor)e.nextElement(); if (i.getId()==instructorId) { --- 772,776 ---- synchronized (currentSolution()) { ExamInstructor instructor = null; ! for (Enumeration e=((ExamModel)currentSolution().getModel()).getInstructors().elements();e.hasMoreElements();) { ExamInstructor i = (ExamInstructor)e.nextElement(); if (i.getId()==instructorId) { |
From: Nightly B. <no...@un...> - 2011-01-14 23:50:53
|
Download the resultant file at http://www.unitime.org/uct_builds.php, see the attached build and change logs for more details. |
From: Tomas M. <to...@us...> - 2011-01-14 18:24:38
|
Update of /cvsroot/unitime/UniTime/JavaSource/org/unitime/timetable/gwt/server In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv1296/JavaSource/org/unitime/timetable/gwt/server Modified Files: SectioningServer.java CourseLoader.java Log Message: Student Sectioning Solver - enforce course and configuration limits Index: SectioningServer.java =================================================================== RCS file: /cvsroot/unitime/UniTime/JavaSource/org/unitime/timetable/gwt/server/SectioningServer.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** SectioningServer.java 13 Jan 2011 23:08:48 -0000 1.3 --- SectioningServer.java 14 Jan 2011 18:24:30 -0000 1.4 *************** *** 331,335 **** for (Iterator<Config> e = course.getOffering().getConfigs().iterator(); e.hasNext();) { Config config = e.next(); ! Config clonedConfig = new Config(config.getId(), config.getName(), clonedOffering); Hashtable<Subpart, Subpart> subparts = new Hashtable<Subpart, Subpart>(); Hashtable<Section, Section> sections = new Hashtable<Section, Section>(); --- 331,335 ---- for (Iterator<Config> e = course.getOffering().getConfigs().iterator(); e.hasNext();) { Config config = e.next(); ! Config clonedConfig = new Config(config.getId(), config.getLimit(), config.getName(), clonedOffering); Hashtable<Subpart, Subpart> subparts = new Hashtable<Subpart, Subpart>(); Hashtable<Section, Section> sections = new Hashtable<Section, Section>(); *************** *** 524,528 **** if (enrollment.getRequest() instanceof CourseRequest) { CourseRequest r = (CourseRequest)enrollment.getRequest(); ! Course course = enrollment.getOffering().getCourse(enrollment.getStudent()); ca.setAssigned(false); ca.setCourseId(course.getId()); --- 524,528 ---- if (enrollment.getRequest() instanceof CourseRequest) { CourseRequest r = (CourseRequest)enrollment.getRequest(); ! Course course = enrollment.getCourse(); ca.setAssigned(false); ca.setCourseId(course.getId()); *************** *** 566,570 **** } else { CourseRequest cr = (CourseRequest)q.getRequest(); ! Course o = q.getOffering().getCourse(q.getStudent()); String ov = o.getSubjectArea() + " " + o.getCourseNumber(); if (overlapingSections.get(cr).size() == 1) --- 566,570 ---- } else { CourseRequest cr = (CourseRequest)q.getRequest(); ! Course o = q.getCourse(); String ov = o.getSubjectArea() + " " + o.getCourseNumber(); if (overlapingSections.get(cr).size() == 1) *************** *** 584,588 **** if (x.getRequest().isAlternative() && x.getRequest() instanceof CourseRequest) { if (--alt == 0) { ! Course o = x.getOffering().getCourse(x.getStudent()); ca.setInstead(o.getSubjectArea() + " " +o.getCourseNumber()); break; --- 584,588 ---- if (x.getRequest().isAlternative() && x.getRequest() instanceof CourseRequest) { if (--alt == 0) { ! Course o = x.getCourse(); ca.setInstead(o.getSubjectArea() + " " +o.getCourseNumber()); break; *************** *** 611,615 **** f.getTime().getEndTimeHeader()); } else { ! Course o = x.getOffering().getCourse(x.getStudent()); Section s = (Section)a; ca.addOverlap(o.getSubjectArea() + " " + o.getCourseNumber() + " " + s.getSubpart().getName()); --- 611,615 ---- f.getTime().getEndTimeHeader()); } else { ! Course o = x.getCourse(); Section s = (Section)a; ca.addOverlap(o.getSubjectArea() + " " + o.getCourseNumber() + " " + s.getSubpart().getName()); *************** *** 635,639 **** TreeSet<Section> sections = new TreeSet<Section>(new EnrollmentSectionComparator()); sections.addAll(enrollment.getSections()); ! Course course = enrollment.getOffering().getCourse(enrollment.getStudent()); ClassAssignmentInterface.CourseAssignment ca = new ClassAssignmentInterface.CourseAssignment(); ca.setAssigned(true); --- 635,639 ---- TreeSet<Section> sections = new TreeSet<Section>(new EnrollmentSectionComparator()); sections.addAll(enrollment.getSections()); ! Course course = enrollment.getCourse(); ClassAssignmentInterface.CourseAssignment ca = new ClassAssignmentInterface.CourseAssignment(); ca.setAssigned(true); Index: CourseLoader.java =================================================================== RCS file: /cvsroot/unitime/UniTime/JavaSource/org/unitime/timetable/gwt/server/CourseLoader.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** CourseLoader.java 1 Dec 2010 11:10:49 -0000 1.2 --- CourseLoader.java 14 Jan 2011 18:24:30 -0000 1.3 *************** *** 208,212 **** for (Iterator<InstrOfferingConfig> i = io.getInstrOfferingConfigs().iterator(); i.hasNext(); ) { InstrOfferingConfig ioc = i.next(); ! Config config = new Config(ioc.getUniqueId(), courseName + " [" + ioc.getName() + "]", offering); TreeSet<SchedulingSubpart> subparts = new TreeSet<SchedulingSubpart>(new SchedulingSubpartComparator()); subparts.addAll(ioc.getSchedulingSubparts()); --- 208,212 ---- for (Iterator<InstrOfferingConfig> i = io.getInstrOfferingConfigs().iterator(); i.hasNext(); ) { InstrOfferingConfig ioc = i.next(); ! Config config = new Config(ioc.getUniqueId(), (ioc.isUnlimitedEnrollment() ? -1 : ioc.getLimit()), courseName + " [" + ioc.getName() + "]", offering); TreeSet<SchedulingSubpart> subparts = new TreeSet<SchedulingSubpart>(new SchedulingSubpartComparator()); subparts.addAll(ioc.getSchedulingSubparts()); *************** *** 425,429 **** sLog.error("There is a problem assigning " + cr.getName() + " to " + s.getName(DepartmentalInstructor.sNameFormatInitialLast) + " (" + s.getExternalUniqueId() + ") [" + iAcademicSession + "]"); boolean hasLimit = false, hasOverlap = false; ! sections: for (Iterator<Section> i = enrl.getSections().iterator(); i.hasNext();) { Section section = i.next(); if (section.getTime() != null) { --- 425,429 ---- sLog.error("There is a problem assigning " + cr.getName() + " to " + s.getName(DepartmentalInstructor.sNameFormatInitialLast) + " (" + s.getExternalUniqueId() + ") [" + iAcademicSession + "]"); boolean hasLimit = false, hasOverlap = false; ! for (Iterator<Section> i = enrl.getSections().iterator(); i.hasNext();) { Section section = i.next(); if (section.getTime() != null) { *************** *** 439,448 **** sectionx.getName() + " " + sectionx.getTime().getLongName()); hasOverlap = true; - continue sections; } } } } ! if (section.getLimit() >= section.getEnrollments().size()) { sLog.info(" " + section.getSubpart().getName() + " " + section.getName() + (section.getTime() == null ? "" : " " + section.getTime().getLongName()) + " has no space available (limit is "+ section.getLimit() + ")"); --- 439,447 ---- sectionx.getName() + " " + sectionx.getTime().getLongName()); hasOverlap = true; } } } } ! if (section.getLimit() >= 0 && section.getLimit() < 1 + section.getEnrollments().size()) { sLog.info(" " + section.getSubpart().getName() + " " + section.getName() + (section.getTime() == null ? "" : " " + section.getTime().getLongName()) + " has no space available (limit is "+ section.getLimit() + ")"); *************** *** 452,459 **** } hasLimit = true; - continue sections; } sLog.info(" " + section.getSubpart().getName() + " " + section.getName() + (section.getTime() == null ? "" : " " + section.getTime().getLongName())); } if (!hasLimit && !hasOverlap) { for (Iterator<Enrollment> i = r.getModel().conflictValues(r.getInitialAssignment()).iterator(); i.hasNext();) { --- 451,465 ---- } hasLimit = true; } sLog.info(" " + section.getSubpart().getName() + " " + section.getName() + (section.getTime() == null ? "" : " " + section.getTime().getLongName())); } + if (enrl.getConfig().getLimit() >= 0 && enrl.getConfig().getLimit() < 1 + enrl.getConfig().getEnrollments().size()) { + sLog.info(" config " + enrl.getConfig().getName() + " has no space available (limit is "+ enrl.getConfig().getLimit() + ")"); + if (tweakLimits) { + enrl.getConfig().setLimit(enrl.getConfig().getEnrollments().size() + 1); + sLog.info(" limit increased to "+enrl.getConfig().getLimit()); + } + hasLimit = true; + } if (!hasLimit && !hasOverlap) { for (Iterator<Enrollment> i = r.getModel().conflictValues(r.getInitialAssignment()).iterator(); i.hasNext();) { *************** *** 468,472 **** } } ! if (hasLimit && tweakLimits && r.getModel().conflictValues(r.getInitialAssignment()).isEmpty()) { r.assign(0, r.getInitialAssignment()); } --- 474,478 ---- } } ! if (hasLimit && !hasOverlap && tweakLimits && r.getModel().conflictValues(r.getInitialAssignment()).isEmpty()) { r.assign(0, r.getInitialAssignment()); } |
From: Tomas M. <to...@us...> - 2011-01-14 18:24:37
|
Update of /cvsroot/unitime/UniTime/WebContent/help In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv1296/WebContent/help Modified Files: Release-Notes.xml Log Message: Student Sectioning Solver - enforce course and configuration limits Index: Release-Notes.xml =================================================================== RCS file: /cvsroot/unitime/UniTime/WebContent/help/Release-Notes.xml,v retrieving revision 1.82 retrieving revision 1.83 diff -C2 -d -r1.82 -r1.83 *** Release-Notes.xml 13 Jan 2011 23:09:21 -0000 1.82 --- Release-Notes.xml 14 Jan 2011 18:24:29 -0000 1.83 *************** *** 58,62 **** <line>minimize overlaps with free times (when those cannot be fully satisfied)</line> </line> ! <line>Batch sectioning: added a new priority based construction phase</line> </description> </item> --- 58,65 ---- <line>minimize overlaps with free times (when those cannot be fully satisfied)</line> </line> ! <line>Batch sectioning improvements: ! <line>added a new priority based construction phase</line> ! <line>enforce course and configuration limits</line> ! </line> </description> </item> |
From: Tomas M. <to...@us...> - 2011-01-14 18:24:37
|
Update of /cvsroot/unitime/UniTime/WebContent/WEB-INF/lib In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv1296/WebContent/WEB-INF/lib Modified Files: cpsolver-all-1.2.jar Log Message: Student Sectioning Solver - enforce course and configuration limits Index: cpsolver-all-1.2.jar =================================================================== RCS file: /cvsroot/unitime/UniTime/WebContent/WEB-INF/lib/cpsolver-all-1.2.jar,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 Binary files /tmp/cvszh1vPt and /tmp/cvsIwOnsD differ |