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

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

Implement RefereesRemindPage.

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