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

Last change on this file since 16523 was 16518, checked in by Henrik Bettermann, 3 years ago

Adjust ApplicantOnlinePaymentProcessor.getMapping (2nd bugfix).

Sort attendance.pdf first by faculty and department before certcode.

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