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

Last change on this file since 16546 was 16545, checked in by Henrik Bettermann, 4 years ago

Enable applicants to upload also additional jpg files.

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