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

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

Use Applicant.createStudent method also to create graduated
students from transcript application data (not used in base package).

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