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

Last change on this file since 15964 was 15964, checked in by Henrik Bettermann, 5 years ago

Make getUsers customizable.

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