source: main/waeup.kofa/trunk/CHANGES.txt @ 15986

Last change on this file since 15986 was 15986, checked in by Henrik Bettermann, 5 years ago

When adding course tickets, check if course has already been
passed at previous level.

File size: 19.6 KB
Line 
1Changes
2*******
3
41.6.1.dev0 (unreleased)
5=======================
6
7* When adding course tickets, check if course has already been
8  passed at previous level.
9
10* Add `StudentTrimmedPaymentExporter` (requested by Uniben).
11
12* Add `AccommodationDisplayFormPage`.
13
14* Don't allow students to add former courses in course lists.
15
16* Use kofa-filterbox for filtering users when assigniing
17  local roles in academics section.
18
19* Add `waeup.local.ReportsOfficer` role.
20
21* Add `TrimmedDataExporter`.
22
23* Make `getUsers` customizable.
24
25* Add logging message to `releaseBedIfMaintenanceNotPaid`.
26
27* Provide components for file uploads in the applicants section.
28
29* Copy also files from applicants to students section.
30
31* Reset _curr_stud_id if student could not be created.
32
33* Add `TranscriptDataExporter` and reorganize exporter names.
34
35* Add `session_level`filter to `StudentStudyLevelExporter`.
36
37* Add LetterPDFCreator utility and use this pdf creator
38  for admission slips. letterhead_admission.jpg file
39  must exist in students/static.
40
41* Add application worklfow transition `reset6`.
42
43* Add `StudentOutstandingCoursesExporter`.
44
45* Sort lecturers on scores slip.
46
47* Don't show hint on pdf slips.
48
49* Make max passport picture size customizable.
50
51* Redirect to `ChangePasswordRequestPage` after successfully
52  adding an officer.
53
54* Add get_bursary_data webservice.
55
56* Implement bed selector.
57
58* Implement combi payments.
59
60* Make max file size customizable.
61
62* Add `score_editing_disabled` switch at course level.
63
64* Take `DELETION_MARKER` into consideration when updating passwords.
65
66* Implement parents access to student data.
67
68* Do not print picture on application slip if application is without
69  passport picture.
70
71* Do not copy applicant_id into reg_number field after applicant creation.
72
73* Successful applicant payments do trigger 'approve' transition only
74  if applicant is in state 'started' and either p_category is 'application' or
75  applicant is special.
76
77* Allow to add applicants containers with a number instead of entrance year
78  in container code.
79
80* Add semester filter to Fix `CourseTicketExporter`.
81
82* Add `FacultiesExportJobContainerSelectStudents` view to allow
83  bursary officers to export student data for a  small subset of students
84  by entering a list of student ids or matric numbers.
85
86* Add passport picture switch to applicants containers.
87
88* Use decimal.Decimal to counteract Python floating point limitation.
89
90* Add level 0 (None) to course levels.
91
92* Ease customization of selectable payment categories.
93
94* Make maximum number of files listed in `finished` subfolder
95  customizable.
96
97* Add attendance_sheet.pdf view.
98
99* Implement course result validation workflow for lecturers.
100
101* Add graduated students filter.
102
103* Backup deleted graduated student data somewhere else to ease graduated
104  student data migration.
105
106* Add `transcript_remark` field to study levels. Add page to allow
107  transcript officers editing the field during transcript processing.
108
109* Increase password strength. Officers are now required
110  to set a password which has at least 8 characters and which contains
111  at least one uppercase letter, one lowercase letter and one
112  digit. Stored insecure passwords are no longer accepted.
113  Officers with an insecure password can't login and are
114  redirected to the `ChangePasswordRequestPage` to request a
115  new password.
116
117* Add `AccommodationPaymentsExporter` which can be used by
118  accommodation officers.
119
120* Add ReleaseExpiredAllocationsActionButton which has previously
121  only been used by Uniben.
122
123* Fix get_student_payment_stats. Department codes are not
124  unique. Use its path instead.
125
126* Implement study level 0 (Level Zero) option for storing
127  orphaned course tickets (tickets without level assignment
128  or information). Add `ticket_session` field to `ICourseTicket`.
129
130* Implement new transcript processing workflow.
131
132* Always display applicant payments if they exist.
133
134* Allow `ApplicationsManager` to view statistics.
135
136* Add payment session filter to payment exporters.
137
138* Add `SessionPaymentsOverviewExporter`.
139
140* Rename `StudentPaymentsOverviewExporter`.
141
142* Fix `CourseTicketExporter`. Ticket level and session filter
143  did not work.
144
145* Add payment category filter to payment exporters.
146
147* Remove 'hidden' attribute from ordereddSelectionList which has
148  caused a malfunction in Internet Exporer.
149
150* Set ssl index URL in buildout.cfg
151
152* Use the 'new' recaptcha v2.
153
154* Allow lecturer role assignment also at department level.
155
1561.6 (2018-04-05)
157================
158
159* Add ticket level and session filter to `CourseTicketExporter`.
160
161* Add 'Student Record Creation' Report page.
162
163* Add `CreateStudents` permission and `StudentsCreator` role.
164
165* Do not allow uploading data with trailing whitespaces.
166
167* Do no longer hide the 'Create students' buttons but switch the portal to
168  maintenance mode to ensure that nobody can enter the portal during
169  record creation except for user 'admin'. This guarantees that record
170  creation is only started once.
171
172* Replace `gpa_boundaries` utility attribute by `GPABoundaries` method
173  which may return different values in custom packages depending on faculty,
174  department or certificate code (requested by AAU Ekpoma).
175
176* Allow `ApplicantOnlinePaymentProcessor` to import records without
177  `p_id` column in create mode.
178
179* Add `waeup.showStudents` permission to `ExportManager` role.
180
181* Fix `CertificateProcessor.checkHeaders`. The processor requires both
182  faculty_code *and* department_code in create mode.
183
184* Add 'Update all tickets' button to `StudyLevelEditFormPage`.
185
186* Do not allow to create more than 10 students with a single request to
187  avoid a timeout of Nginx/Apache.
188
189* Redirect to manage page after editing of certificate courses.
190
191* Add `course_category` attribute to course tickets. In the base package,
192  this attribute is omitted from display and manage pages.
193
194* Add `course_category` attribute to certificate courses.
195
196* Simplify configuration of maximum or minimum total credits.
197
198* Add `outstanding` attribute to course tickets.
199
200* Exclude graduated students from `LevelReport`, `SessionResultsPresentation`
201  and `RawScoreReport`.
202
203* Allow applicants in states `admitted`, `not admitted` or `created` to
204  download the payment slip.
205
206* Catch traceback (`RequiredMissing`) if a required field is cleared
207  by import.
208
209* Add role `FingerprintReaderDeviceRole` intended for fingerprint reader
210  devices that access the portal via XMLRPC.
211
212
2131.5 (2017-02-14)
214================
215
216* Happy Valentines Day everybody!
217
218* Sort arguments in table of `ReportsContainerPage`.
219
220* Add `entry_session` and `p_session` filter to Student Payment Statistics
221  generator. Adjust reports: Change footer and filename formats.
222
223* Add officer name fields do `IDepartment` and `IFaculty`.
224  Plugins must be updated!
225
226* Add serial number column to Session Results Presentations.
227
228* Add Raw Score Report to base package.
229
230* Only user 'admin' is allowed to access the `DatacenterSettings` page.
231
232* Show correct level title on Level Reports and Session Results Presentations.
233
234* Get set of selected students also from list of matric numbers.
235
236* Confine Level Reports and Session Results Presentations to certificates.
237
238* Show report number (job_id) on report pdf slips.
239
240* Level report: Count and display the number of courses registered but
241  not taken.
242
243* Add control button to create graduated students.
244
245* Add option to render transcripts without passport picture and QR code.
246
247* Catch Reportlab `LayoutError`.
248
249* Replace `course_registration_allowed` by `course_registration_forbidden`
250  method.
251
252* Add export purge button.
253
254* Add report purge button.
255
256* Add property attribute `total_score` in order to make provision
257  for additional scores (like contineous assessments) in custom
258  packages.
259
260* Make provision against storing other objects than applicant payments
261  in applicant containers.
262
263* Count mandates on configuration page and provide 'Purge' button.
264
265* Start `ApplicantExporter` and `ApplicantPaymentExporter` at the same
266  time when calling `ExportJobContainerJobStart`.
267
268* Add `ApplicantPaymentExporter`.
269
270* Add file upload functionality to `EditScoresPage`.
271
272* Add `LecturerLandingPage` and `LecturerCourses` `ManageLink`
273  viewlet.
274
275* Add `ExportPDFScoresSlip`.
276
277* Add `DownloadScoresView` which is for lecturers only. Remove
278  `waeup.showStudents` from `Lecturer` role. Adjust
279  `DataForLecturerExporter`. Only editable course tickets are being
280  exported.
281
282* Remove application fee fallback option. Application fees can only
283  be set via applicants containers. Hide Payment Tickets section on
284  application pages if fee isn't set.
285
286* Add  `ApplicantOnlinePaymentProcessor`.
287
288* Improve `AddStudyLevelFormPage`.
289
290* Create new exporter for lecturers and further restrict the usage of
291  exporters at course level. Lecturers can only export data of
292  current academic session.
293
294* Show certificate-specific p_level value on payment pages.
295  Ensure that only allowed payment levels can be selected when
296  adding a balance payment.
297
298* Add `flash_notice` field.
299
300* Documentation updates.
301
302* Update pinned versions: six
303
304
3051.4.1 (2016-02-14)
306==================
307
308* Add new application workflow state (`processed`) and transition
309  (`process`).
310
311* Add `DegreeSource` and `degree` field to `ICertificate`.
312  Plugins must be updated!
313
314* Upgrade bootstrap.py script and update some dependencies. For
315  already running instances a new init might be neccessary, i.e.
316  you might have to create a new virtualenv and run bootstap.py
317  and buildout from that new virtualenv to get rid of old
318  package versions in the runtime environment.
319
320* Upgrade versions.cfg to contain bugfix releases of packages we
321  depend on.
322
323
3241.4 (2016-01-14)
325================
326
327* Add button and view which allow students to unregister their
328  current course list unless the courses have not been validated.
329
330* Configure transfer payments and let students enter their desired
331  study course. Save entered text in `p_item` attribute.
332
333* Add further permissions to the local `ApplicationsManager` role and
334  make it assignable at applicants container level.
335
336* Disable rendering of HTML tags in fullnames.
337
338* Add bed statistics components.
339
340* Add option which allows students to select a desired hostel before
341  booking accommodation.
342
343* Add `BedProcessor`.
344
345* Add portal maintenance mode.
346
347* Allow also `reg_number` on public page to check application status
348  without password.
349
350* Remove `beds_reserved` attribute from hostels. Hostels do no longer
351  contain information about reserved bed spaces.
352
353* Add methods and page to release expired bed allocations.
354
355* Use lastname instead of firstname for first-time password requests.
356
357* When building docs, ignore members with dots in name.
358
359
3601.3.3 (2015-10-06)
361==================
362
363* Show file size of pdf documents in the documents section.
364
365* Add `MANIFEST.in`.
366
367
3681.3.2 (2015-09-14)
369==================
370
371* Add public page to check application status without password.
372
373* Fix department breakdown of student statistics.
374
375* Enable purging of applicants containers.
376
377* Enable pre-filling of applicants containers with empty
378  application records which are used during self-registration
379  to avoid excessive growth of the Data.fs.
380
381* Do only allow one running export job.
382
383* Add switch to disable all exports.
384
385* Enable import of list-of-choices fields.
386
387* Include 'end day' when searching for payments in a given period.
388
389* Do not create special application payment tickets with zero amount.
390
391* Remove manual clearance lock. Replace `clearance_locked` field by
392  property attribute.
393
394* Make student email field required.
395
396* Rename application workflow transitions and remove forbidden transitions.
397
398* Rename 'application section' for the sake of consistency.
399
400* Rename student views which are not layout-aware and thus not pages.
401
402* Register KofaSourceOrderedMultiSelectWidget for IterableSource and
403  KofaSourceOrderedMultiSelectWidget for IVocabularyTokenized.
404
405* Implement session-specific course registration deadline and
406  late registration payment.
407
408* Remove quite old bug in `doImport`: Replace empty strings *and* lists with
409  ignore-markers in update *and* create mode.
410
411* Add StudentUnpaidPaymentExporter to export only unpaid tickets.
412  This exporter is designed for finding and finally purging outdated
413  payment ticket.
414
415* Remove deprecated xml importer and exporter components.
416
417* Rearrange datacenter upload page. Provide modal windows to view all
418  processors and sources and vocabularies.
419
420* Reorganize doctests. Remove deprecated doctests.
421
422* Enable temporary suspension of officer accounts. Plugins must be
423  updated after restart.
424
425* Rename 'Portal Users' 'Officers'.
426
427* Add link 'Kofa Docs for this page' at the end of the content box
428  which refers to the corresponding section of the
429  `Kofa Documentation <http://kofa-doc.waeup.org>`_.
430
431* Filter students by current level in reports.
432
433* Add `StudentsUtils.increaseMatricInteger` method which allows to use various
434  matric number counters when computing the matric number.
435
436* Bypass school fee payment activation code creation if student is allowed
437  to proceed to next session.
438
439* Convert `level` into a schema field to be consistent with the documentation.
440
441* Rename classes `StudentPaymentsExporter` and `BedTicketsExporter` to be
442  in accordance with other exporter names.
443
444* Add `ReportsOfficer` and `ReportsManager` roles with corresponding
445  permissions.
446
447* Do not automatically allow import managers to import user data.
448
449* Skip empty rows produced by spreadsheet software.
450
451* Add components to  configure a student export jobs in faculties.
452
453* `StudentOnlinePaymentProcessor` : Raise `DuplicationError` if payment
454  (in state ``paid``) with same `p_session` and `p_category` exists.
455
456* Add new payment state ``waived``. This state can only be set by import
457  and is only used for the payments overview exporter to
458  mark sessions with waived fees.
459
460* Add exporter methods and export page to filter student data exports
461  by entering a list of student ids.
462
463* Student statistic can now be broken down by faculties or by departments.
464
465* Check if `p_id` exists in payments catalog when importing payment tickets in
466  create mode.
467
468
4691.3.1 (2015-01-14)
470==================
471
472* 1.3 was a brown bag release. Fix uploaded files.
473
474
4751.3 (2015-01-13)
476================
477
478* Add documents package.
479
480* Do not compare ResultEntry objects but their attributes.
481
482* Modify getWidgetsData so that we always get the same error format.
483
484* Validate all codes in university.
485
486* Catch traceback when creating an application slip with a corrupted
487  image file.
488
489* Remove deprecated HTML and REST widgets and use html2dict and rest2dict
490  instead.
491
492* UserProcessor: Check if imported roles do exist in the portal.
493
494* Enable localization of batch processing modules.
495
496* Hide 'Create students' button. Only user admin can see this button.
497
498* Add application_slip_notice field to ApplicantsContainer.
499
500* Remove 'Size' column from logfiles table.
501
502* Add permission, page and button to mass-clear all students in a department.
503
504* Hide export download button 24 hours after file generation.
505
506* Add helper to allow `meminfo` checks for cached memory, etc.
507
508* Allow external checks of system load before performing expensive
509  actions.
510
511* Add new dependency: `psutil` (required to check system state).
512
513* Show flash message on general search page for the academic section.
514
515* Fix `CertificateCourseProcessor`. Mandatory is not a required field
516  and might be missing in import files. Improve logging. Extend and
517  fix CertCourseProcessorTests.
518
519* Provide customizable method for disabling clearance by clearance
520  officers.
521
522* Merge Javascript functions into one file. Add Javascript function to
523  calculate copyright notice year automatically.
524
525* Use lastname (surname) instead of firstname to verify found
526  application record on ApplicantRegistrationPage.
527
528* Append hash '#' also to datetimes to circumvent unwanted excel
529  automatic.
530
531* Method for (customizable) application passport upload requirements
532  added.
533
534* Filter payment ticket data exports by specifying the payment_date
535  period.
536
537* Method for (customizable) application payment slip download
538  requirements added.
539
540* Method for (customizable) application payment ticket upload
541  requirements added.
542
543* Remove unused rowadd javascript function.
544
545* certcode and reg_number added to DataForBursaryExporter.
546
547* Some batch processor names corrected.
548
549* Fixed ReST markup in setup.py long description.
550
551
5521.2 (2014-06-16)
553================
554
555* Redirect to login page after using password mandate.
556
557* Adding student payment tickets is logged.
558
559* Provide XMLRPC services for storing and retrieving fingerprint
560  scans.
561
562* Sort ContextualDictSource by dictionary values not by keys.
563
564* Add regular school fee and balance payments when exporting payments
565  overviews.
566
567* Add samePaymentMade method to StudentsUtils.
568
569* Fingerprint file upload enabled.
570
571* is_fresh property method added to Student class.
572
573* Special application procedure modified. Special applicants must submit
574  their form before they can download payment slips. Thus the regular
575  workflow is now applied but, in contrast to regular applications,
576  special applicants can create and pay more than one payment ticket.
577  Also application slips are hidden.
578
579* Add setMatricNumber and constructMatricNumber methods to StudentsUtils.
580
581* When sending mails, always set from-address to 'no-reply@waeup.org'.
582  Real from-addresses are now set in Cc and Reply-To fields. This is
583  to tackle problems with yahoo (does not allow yahoo.com mails to be
584  sent from non-yahoo servers).
585
586* Multiple payments in special application containers enabled.
587  Special payment applicants remain in state started after payment.
588
589* File input fields brought into shape with Bootstrap 3.
590
591* Transcript and access code pagetemplates adjusted.
592
593* Print QR codes on all student slips.
594
595* Allow adding current_level to base data section on all student slips
596  (requested by Uniben).
597
598* Windows is no longer supported. Installation manual removed.
599
600* Added JS helper to scroll to sequencelists after adding/removing items.
601
602
6031.1 (2014-03-13)
604================
605
606* Add display_fullname column to `CourseTicketExporter` (requested by Uniben).
607
608* Do also export student and course ticket data of students on probation.
609
610* 'Create student' option removed from 'Application Transition'
611  select field.
612
613* API docs added.
614
615* Back-to links replaced by animated jQuery plugins.
616
617* Default frontpage text updated.
618
619* Use absolute urls on datacenter pages.
620
621* Provide customizable method for disabling student payments.
622
623* After login and logout, regular users (officers) are redirected
624  to the portal's index page not to the portal's root. The
625  root URL can now be rewritten be Nginx or Apache so that the user
626  is being redirected to the university website
627  when entering the root URL directly or clicking the acronym.
628
629* Show tooltip alert and warning window before updating plugins.
630
631* JSAction has been deprecated. KofaAction can be used instead. Additional
632  parameters can be used in @action decorators to enable tooltips and/or
633  warning windows. The old @jsaction decorator still triggers a default
634  warning message.
635
636* jquery-ui.min.js is also used for tooltips.
637
638* Do not create TSC AC batch when updating plugins.
639  All TSC batches are created.
640
641* Make table on applicantsrootpage responsive.
642
643* Change width of input, select and textarea fields.
644
645* Use only https in theme.html.
646
647* INSTALL.txt updated and integrated into Sphinx documentation.
648
649* Redundancies removed in docs.
650
651
6521.0 (2014-02-22)
653================
654
655* Diazofied the complete package.
656
657
6580.2.1 (2014-02-21)
659==================
660
661* Send mails to from-address, if site-wide config admin is
662  different from it.
663
664* Change flash message for successful applicants.
665
666* Use more attributes of applicants with payer objects.
667
668* Update copyright infos (year).
669
670* Localization updates.
671
672
6730.2 (2014-01-09)
674================
675
676Tons of changes.
677
678
6790.1 (never released)
680====================
681
682Initial version. Copy from waeup.sirp.
Note: See TracBrowser for help on using the repository browser.