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

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

Add ApplicantEmailSource (not used and tested in base package).

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