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

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

Enable customization of application form final submission message.

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