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

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