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

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

Add exporters for previous study course data.

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