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

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

Implement BatchProcessor.checkCreateRequirements and
BatchProcessor.checkUpdateRequirements methods mainly
to protect course result lists of graduated student.

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