ddd.pdf
TRANSCRIPT
Project team:Roy Berkeveld, 0608170
Gijs Direks, 0611093Michael van Duijkeren, 0535368
Neal van den Eertwegh, 0610024Dion Jansen, 0590077Koen Kivits, 0608715
Sander Leemans, 0608896Kevin van der Pol, 0620300
Nick van der Veeken, 0587266
Computer Science, TU/e
Project Manager:Wilco Belgraver Thissen, 0514143
Quality Assurance Manager:Jelle Hellings, 0592127
Senior management:Mark van den Brand, HG 5.59
Lou Somers, HG 5.36
Advisor:Erik Luit, HG 7.12
Customer:Natalia Sidorova, HG 7.84
Detailed Design DocumentEindhoven, January 15, 2010 ddd-1.0.3103
Technische Universiteit EindhovenUniversity of Technology
Abstract
This document contains a description of the implementation details for the QIS system. Thisprogram is part of the Software Engineering Project (2IP35) at Eindhoven University of Technology.The document complies with the Detailed Design Document(ddd) from the Software EngineeringStandard, as set by the European Space Agency.
Technische Universiteit EindhovenUniversity of Technology
Contents
1 Introduction 91.1 Purpose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91.2 Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91.3 List of definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91.4 List of references . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91.5 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2 Standards and conventions 112.1 Design standards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.2 Documentation standards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.3 Naming conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.4 Coding standards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.5 Software development tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3 Component descriptions 12
4 Build procedure 13
A Source code listings 14A.1 Package qis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
A.1.1 Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15A.2 Package qis.app . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
A.2.1 Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17A.2.2 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
A.3 Package qis.app.auth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19A.3.1 Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19A.3.2 Class has right . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
A.4 Module qis.app.auth.backends . . . . . . . . . . . . . . . . . . . . . . . . . . . 20A.4.1 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20A.4.2 Class EmergencySuperuserBackend . . . . . . . . . . . . . . . . . . . . . 20A.4.3 Class DummyBackend . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21A.4.4 Class LocalBackend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23A.4.5 Class ActiveDirectoryBackend . . . . . . . . . . . . . . . . . . . . . . . . 24
A.5 Module qis.app.context processors . . . . . . . . . . . . . . . . . . . . . . . . . 26A.5.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
A.6 Module qis.app.mail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
1
Technische Universiteit EindhovenUniversity of Technology
A.6.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27A.6.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
A.7 Module qis.app.middleware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28A.7.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28A.7.2 Class RequestAnywhere . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
A.8 Module qis.app.modeladmins . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30A.8.1 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30A.8.2 Class QisModelForm . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31A.8.3 Class QisModelAdmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32A.8.4 Class QisAdministrativeModelAdmin . . . . . . . . . . . . . . . . . . . . 36A.8.5 Class SystemYearForm . . . . . . . . . . . . . . . . . . . . . . . . . . . 38A.8.6 Class SystemYearAdmin . . . . . . . . . . . . . . . . . . . . . . . . . . . 39A.8.7 Class PeriodAdmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41A.8.8 Class SubperiodAdmin . . . . . . . . . . . . . . . . . . . . . . . . . . . 43A.8.9 Class SubdepartmentForm . . . . . . . . . . . . . . . . . . . . . . . . . 45A.8.10 Class SubdepartmentInline . . . . . . . . . . . . . . . . . . . . . . . . . 46A.8.11 Class DepartmentAdmin . . . . . . . . . . . . . . . . . . . . . . . . . . 47A.8.12 Class ExpertiseGroupInline . . . . . . . . . . . . . . . . . . . . . . . . . 49A.8.13 Class SubdepartmentAdmin . . . . . . . . . . . . . . . . . . . . . . . . . 50A.8.14 Class ExpertiseGroupAdmin . . . . . . . . . . . . . . . . . . . . . . . . . 52A.8.15 Class TargetGroupForm . . . . . . . . . . . . . . . . . . . . . . . . . . . 54A.8.16 Class TargetGroupInline . . . . . . . . . . . . . . . . . . . . . . . . . . . 55A.8.17 Class StudyProgramAdmin . . . . . . . . . . . . . . . . . . . . . . . . . 57A.8.18 Class TargetGroupAdmin . . . . . . . . . . . . . . . . . . . . . . . . . . 58A.8.19 Class TargetGroupNameAdmin . . . . . . . . . . . . . . . . . . . . . . . 61A.8.20 Class TaskTypeAdmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62A.8.21 Class EducationTypeAdmin . . . . . . . . . . . . . . . . . . . . . . . . . 64A.8.22 Class PositionAdmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66A.8.23 Class StudyPhaseAdmin . . . . . . . . . . . . . . . . . . . . . . . . . . . 67A.8.24 Class AlwaysAdministratorEditable . . . . . . . . . . . . . . . . . . . . . 69A.8.25 Class RightForm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71A.8.26 Class RightInline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73A.8.27 Class RightSetAdmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74A.8.28 Class RightAdmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76A.8.29 Class CourseRelatedAdmin . . . . . . . . . . . . . . . . . . . . . . . . . 78A.8.30 Class CourseAdmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80A.8.31 Class CourseInstanceForm . . . . . . . . . . . . . . . . . . . . . . . . . . 82A.8.32 Class CourseInstanceAdmin . . . . . . . . . . . . . . . . . . . . . . . . . 83A.8.33 Class TaskAdmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85A.8.34 Class EducationTaskAdmin . . . . . . . . . . . . . . . . . . . . . . . . . 87A.8.35 Class AssignmentForm . . . . . . . . . . . . . . . . . . . . . . . . . . . 89A.8.36 Class AssignmentAdmin . . . . . . . . . . . . . . . . . . . . . . . . . . . 90A.8.37 Class NotificationAdmin . . . . . . . . . . . . . . . . . . . . . . . . . . . 93A.8.38 Class EmploymentInline . . . . . . . . . . . . . . . . . . . . . . . . . . . 95A.8.39 Class EmployeeAdmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96A.8.40 Class EmploymentAdmin . . . . . . . . . . . . . . . . . . . . . . . . . . 98A.8.41 Class ReportAdmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
2
Technische Universiteit EindhovenUniversity of Technology
A.9 Module qis.app.models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103A.9.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103A.9.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103A.9.3 Class QisManager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104A.9.4 Class QisModel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106A.9.5 Class AutoYearQisModel . . . . . . . . . . . . . . . . . . . . . . . . . . 107A.9.6 Class System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108A.9.7 Class Notification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110A.9.8 Class SystemYearManager . . . . . . . . . . . . . . . . . . . . . . . . . 111A.9.9 Class SystemYear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113A.9.10 Class PeriodManager . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116A.9.11 Class Period . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118A.9.12 Class SubperiodManager . . . . . . . . . . . . . . . . . . . . . . . . . . 119A.9.13 Class Subperiod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121A.9.14 Class DepartmentManager . . . . . . . . . . . . . . . . . . . . . . . . . 122A.9.15 Class Department . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124A.9.16 Class SubdepartmentManager . . . . . . . . . . . . . . . . . . . . . . . 126A.9.17 Class Subdepartment . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128A.9.18 Class StudyProgramManager . . . . . . . . . . . . . . . . . . . . . . . . 131A.9.19 Class StudyProgram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132A.9.20 Class TargetGroupNameManager . . . . . . . . . . . . . . . . . . . . . . 134A.9.21 Class TargetGroupName . . . . . . . . . . . . . . . . . . . . . . . . . . 135A.9.22 Class TargetGroupManager . . . . . . . . . . . . . . . . . . . . . . . . . 136A.9.23 Class TargetGroup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138A.9.24 Class CourseManager . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139A.9.25 Class Course . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141A.9.26 Class StudyPhaseManager . . . . . . . . . . . . . . . . . . . . . . . . . 143A.9.27 Class StudyPhase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144A.9.28 Class CourseInstanceManager . . . . . . . . . . . . . . . . . . . . . . . . 145A.9.29 Class CourseInstance . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147A.9.30 Class TaskTypeManager . . . . . . . . . . . . . . . . . . . . . . . . . . . 149A.9.31 Class TaskType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151A.9.32 Class TaskManager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152A.9.33 Class Task . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154A.9.34 Class EducationTaskManager . . . . . . . . . . . . . . . . . . . . . . . . 156A.9.35 Class EducationTask . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158A.9.36 Class EducationTypeManager . . . . . . . . . . . . . . . . . . . . . . . . 160A.9.37 Class EducationType . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162A.9.38 Class AssignmentManager . . . . . . . . . . . . . . . . . . . . . . . . . 163A.9.39 Class Assignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165A.9.40 Class EmployeeManager . . . . . . . . . . . . . . . . . . . . . . . . . . . 167A.9.41 Class Employee . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168A.9.42 Class AbstractRightSetManager . . . . . . . . . . . . . . . . . . . . . . 171A.9.43 Class AbstractRightSet . . . . . . . . . . . . . . . . . . . . . . . . . . . 172A.9.44 Class RightSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174A.9.45 Class AbstractRightManager . . . . . . . . . . . . . . . . . . . . . . . . 176A.9.46 Class AbstractRight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
3
Technische Universiteit EindhovenUniversity of Technology
A.9.47 Class Right . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180A.9.48 Class PositionManager . . . . . . . . . . . . . . . . . . . . . . . . . . . 181A.9.49 Class Position . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183A.9.50 Class EmploymentManager . . . . . . . . . . . . . . . . . . . . . . . . . 184A.9.51 Class Employment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186A.9.52 Class ExpertiseGroupManager . . . . . . . . . . . . . . . . . . . . . . . 188A.9.53 Class ExpertiseGroup . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190A.9.54 Class ReportManager . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191A.9.55 Class Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193A.9.56 Class Subdepartment . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
A.10 Module qis.app.request cache . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198A.10.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198A.10.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198A.10.3 Class NotCached . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
A.11 Module qis.app.sites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200A.11.1 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200A.11.2 Class QisSite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
A.12 Package qis.app.templatetags . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203A.12.1 Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
A.13 Module qis.app.templatetags.app modify . . . . . . . . . . . . . . . . . . . . . . 204A.13.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204A.13.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
A.14 Module qis.app.templatetags.context operations . . . . . . . . . . . . . . . . . . 205A.14.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
A.15 Module qis.app.templatetags.course list . . . . . . . . . . . . . . . . . . . . . . 206A.15.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206A.15.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
A.16 Module qis.app.templatetags.employee list . . . . . . . . . . . . . . . . . . . . . 207A.16.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207A.16.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
A.17 Module qis.app.templatetags.qis url helpers . . . . . . . . . . . . . . . . . . . . 208A.17.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208A.17.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
A.18 Module qis.app.templatetags.report budget . . . . . . . . . . . . . . . . . . . . 209A.18.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209A.18.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
A.19 Module qis.app.templatetags.report capacity . . . . . . . . . . . . . . . . . . . . 211A.19.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211A.19.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
A.20 Module qis.app.templatetags.report course tasks . . . . . . . . . . . . . . . . . . 212A.20.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212A.20.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
A.21 Module qis.app.templatetags.report course type . . . . . . . . . . . . . . . . . . 213A.21.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213A.21.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
A.22 Module qis.app.templatetags.report csv . . . . . . . . . . . . . . . . . . . . . . 215A.22.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
4
Technische Universiteit EindhovenUniversity of Technology
A.22.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215A.22.3 Class CSVExport . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216A.22.4 Class SimpleNode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216A.22.5 Class SimpleNode2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217A.22.6 Class SimpleNode3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218A.22.7 Class SimpleNode4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
A.23 Module qis.app.templatetags.report education workload . . . . . . . . . . . . . . 221A.23.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221A.23.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
A.24 Module qis.app.templatetags.report employee . . . . . . . . . . . . . . . . . . . 223A.24.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223A.24.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
A.25 Module qis.app.templatetags.report employee tasks . . . . . . . . . . . . . . . . 225A.25.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225A.25.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
A.26 Module qis.app.templatetags.report employees . . . . . . . . . . . . . . . . . . . 226A.26.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226A.26.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
A.27 Module qis.app.templatetags.report filters . . . . . . . . . . . . . . . . . . . . . 228A.27.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228A.27.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
A.28 Module qis.app.templatetags.report hours . . . . . . . . . . . . . . . . . . . . . 229A.28.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229A.28.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
A.29 Module qis.app.templatetags.report list . . . . . . . . . . . . . . . . . . . . . . . 230A.29.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230A.29.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
A.30 Module qis.app.templatetags.report own . . . . . . . . . . . . . . . . . . . . . . 231A.30.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231A.30.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
A.31 Module qis.app.templatetags.report own tasks . . . . . . . . . . . . . . . . . . . 233A.31.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233A.31.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
A.32 Module qis.app.templatetags.studyprogram list . . . . . . . . . . . . . . . . . . 234A.32.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234A.32.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234
A.33 Module qis.app.templatetags.task list . . . . . . . . . . . . . . . . . . . . . . . . 235A.33.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235A.33.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235
A.34 Module qis.app.tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236A.34.1 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236A.34.2 Class TestViews . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
A.35 Module qis.app.views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240A.35.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240A.35.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
A.36 Module qis.manage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242A.37 Module qis.manage prod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
5
Technische Universiteit EindhovenUniversity of Technology
A.38 Module qis.runserver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244A.38.1 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
A.39 Module qis.settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245A.39.1 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
A.40 Module qis.settings prod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247A.40.1 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
A.41 Package qis.tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249A.41.1 Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
A.42 Module qis.tools.compile tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250A.43 Module qis.tools.djangoproject . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
A.43.1 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251A.44 Module qis.tools.generate passhash . . . . . . . . . . . . . . . . . . . . . . . . . 252
A.44.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252A.45 Module qis.tools.import legacy . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
A.45.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253A.45.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253A.45.3 Class obj . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
A.46 Module qis.tools.mailserver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254A.47 Module qis.tools.setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
A.47.1 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255A.47.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255A.47.3 Class ValidationException . . . . . . . . . . . . . . . . . . . . . . . . . . 255A.47.4 Class QisSettings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
A.48 Module qis.urls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258A.48.1 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
B Requirements traceability matrix 260
6
Technische Universiteit EindhovenUniversity of Technology
Document Status Sheet
Document status overview
General
Document title: Detailed Design DocumentIdentification: ddd-1.0.3103Authors: Kevin van der Pol, Roy BerkeveldDocument status: Final
Document history
Version Date Author Reason of change
0.0 08-09-2009 Kevin van der Pol, Roy Berkeveld Created document
1.0 15-01-2010 Kevin van der Pol First version
7
Technische Universiteit EindhovenUniversity of Technology
Document Change Records since previous issue
General
Date: 15-01-2010Document title: Detailed Design DocumentIdentification: ddd-1.0.3103
Changes
Page Paragraph Reason to change
8
Technische Universiteit EindhovenUniversity of Technology
Chapter 1
Introduction
1.1 Purpose
This document describes the implementation of the QIS system on the most detailed level. Theappendix contains the generated documentation of the source code listings of the QIS system.
1.2 Scope
QIS is an application designed and developed by Group QIS for the Departement of Mathe-matics and Computer Science at the Eindhoven University of Technology. The purpose of theapplication is to support workload division within the department and to support various partiesregarding the management of working hours and tasks, holidays, courses and employees.
1.3 List of definitions
ESA European Space AgencyDDD Detailed Design Document
1.4 List of references
[1] Group QIS. Architectural design document. Technical report, Eindhoven University ofTechnology, Computer Science, November 2009.
[2] Group QIS. Software configuration manangement plan. Technical report, Eindhoven Uni-versity of Technology, Computer Science, September 2009.
[3] Group QIS. Software quality assurance plan. Technical report, Eindhoven University ofTechnology, Computer Science, September 2009.
9
Technische Universiteit EindhovenUniversity of Technology
[4] Group QIS. Software requirements document. Technical report, Eindhoven University ofTechnology, Computer Science, October 2009.
1.5 Overview
The remainder of this document describes implementation standards and conventions, and de-scriptions of each of the modules. Then there is a section on the build procedure of the software.This is not present in the ESA standard, but may be useful to future developers. Finally, theappendix contains the generated documentation of the source code listings of the QIS system.
10
Technische Universiteit EindhovenUniversity of Technology
Chapter 2
Standards and conventions
2.1 Design standards
The method used to design the component model is UML. The class diagram can be found in theSRD[4].
2.2 Documentation standards
The documentation standards are described in the SQAP[3].
2.3 Naming conventions
The file naming conventions are described in the SCMP[2].
2.4 Coding standards
The coding standards can be found in the SQAP[3].
2.5 Software development tools
The software development tools are described in the SCMP[2].
11
Technische Universiteit EindhovenUniversity of Technology
Chapter 3
Component descriptions
Details about the component descriptions of QIS can be found in the ADD[1].
12
Technische Universiteit EindhovenUniversity of Technology
Chapter 4
Build procedure
QIS is interpreted and does not need to be built.
However, during execution, Python dynamically generates bytecode files. Should the system runfrom a readonly directory, those bytecode files need to be generated beforehand. A tool is presentto do just this, you’ll find it in qis/tools/compileall.py. It takes as argument a path tocompile recursively, you should pass it the project’s root directory.
This tool is already run during the application setup and therefore only needs to be run afterchanges have been made to the code. If the application is stored writeable for the executinguser, this tool will never need to be run as Python will regenerate the bytecode when changes aredetected.
13
Technische Universiteit EindhovenUniversity of Technology
Appendix A
Source code listings
14
Technische Universiteit EindhovenUniversity of Technology
A.1 Package qis
A.1.1 Modules
• app: Initialization for the application.(Section A.2, p. 17)
– auth (Section A.3, p. 19)∗ backends: Provides all the details needed to realize proper authentication.
(Section A.4, p. 20)– context processors: A set of request processors that return dictionaries to be merged
into a template context.(Section A.5, p. 26)
– mail: Allows for consistency in mail.(Section A.6, p. 27)
– middleware: Contains custom middleware for QIS(Section A.7, p. 28)
– modeladmins (Section A.8, p. 30)– models (Section A.9, p. 103)– request cache: Provides some useful caching functions that only live during single
requests.(Section A.10, p. 198)
– sites (Section A.11, p. 200)– templatetags (Section A.12, p. 203)∗ app modify (Section A.13, p. 204)∗ context operations (Section A.14, p. 205)∗ course list (Section A.15, p. 206)∗ employee list (Section A.16, p. 207)∗ qis url helpers (Section A.17, p. 208)∗ report budget (Section A.18, p. 209)∗ report capacity (Section A.19, p. 211)∗ report course tasks (Section A.20, p. 212)∗ report course type (Section A.21, p. 213)∗ report csv (Section A.22, p. 215)∗ report education workload (Section A.23, p. 221)∗ report employee (Section A.24, p. 223)∗ report employee tasks (Section A.25, p. 225)∗ report employees (Section A.26, p. 226)∗ report filters (Section A.27, p. 228)∗ report hours (Section A.28, p. 229)∗ report list (Section A.29, p. 230)∗ report own (Section A.30, p. 231)∗ report own tasks (Section A.31, p. 233)∗ studyprogram list (Section A.32, p. 234)∗ task list (Section A.33, p. 235)
– tests: Loads the legacy data from a set of CSV exports into the model.(Section A.34, p. 236)
15
Technische Universiteit EindhovenUniversity of Technology
– views: Global and generic views for QIS(Section A.35, p. 240)
• manage (Section A.36, p. 242)• manage prod (Section A.37, p. 243)• runserver (Section A.38, p. 244)• settings: Django DEBUG settings for QIS project, extends settings prod
(Section A.39, p. 245)• settings prod: Django settings for QIS project.
(Section A.40, p. 247)• tools (Section A.41, p. 249)
– compile tree (Section A.42, p. 250)– djangoproject: Enables importing qis.*, django.* and gives you project settings
(Section A.43, p. 251)– generate passhash: Generates salted password hashes.
(Section A.44, p. 252)– import legacy: Loads the legacy data from a set of CSV exports into the model.
(Section A.45, p. 253)– mailserver (Section A.46, p. 254)– setup (Section A.47, p. 255)
• urls (Section A.48, p. 258)
16
Technische Universiteit EindhovenUniversity of Technology
A.2 Package qis.app
Initialization for the application.
Currently carries syncdb hooks that set up essential and useful parts of the database.
A.2.1 Modules
• auth (Section A.3, p. 19)– backends: Provides all the details needed to realize proper authentication.
(Section A.4, p. 20)• context processors: A set of request processors that return dictionaries to be merged into
a template context.(Section A.5, p. 26)• mail: Allows for consistency in mail.
(Section A.6, p. 27)• middleware: Contains custom middleware for QIS
(Section A.7, p. 28)• modeladmins (Section A.8, p. 30)• models (Section A.9, p. 103)• request cache: Provides some useful caching functions that only live during single requests.
(Section A.10, p. 198)• sites (Section A.11, p. 200)• templatetags (Section A.12, p. 203)
– app modify (Section A.13, p. 204)– context operations (Section A.14, p. 205)– course list (Section A.15, p. 206)– employee list (Section A.16, p. 207)– qis url helpers (Section A.17, p. 208)– report budget (Section A.18, p. 209)– report capacity (Section A.19, p. 211)– report course tasks (Section A.20, p. 212)– report course type (Section A.21, p. 213)– report csv (Section A.22, p. 215)– report education workload (Section A.23, p. 221)– report employee (Section A.24, p. 223)– report employee tasks (Section A.25, p. 225)– report employees (Section A.26, p. 226)– report filters (Section A.27, p. 228)– report hours (Section A.28, p. 229)– report list (Section A.29, p. 230)– report own (Section A.30, p. 231)– report own tasks (Section A.31, p. 233)– studyprogram list (Section A.32, p. 234)– task list (Section A.33, p. 235)
• tests: Loads the legacy data from a set of CSV exports into the model.
17
Technische Universiteit EindhovenUniversity of Technology
(Section A.34, p. 236)• views: Global and generic views for QIS
(Section A.35, p. 240)
A.2.2 Functions
create system instance(app, created models, verbosity, **kwargs)
create permissions(app, created models, verbosity, **kwargs)
Creates the ’view’ permission for all models.
Technique copied from django.contrib.auth.management.
create groups(app, created models, verbosity, **kwargs)
Initializes the application’s internal groups.
Attaches the set of permissions from qis.app.models.PERMISSIONS to each group.
create task types(app, created models, verbosity, **kwargs)
Fills the database with TaskType objects.
These come straight from qis.app.models.TASK TYPES. They are rather static forthe system, but are used extensively in queries so we prefer to have them in theDB.
initialize right data(app, created models, verbosity, **kwargs)
Fills right data with some initial sets.
These cannot be imported from fixtures, since they require some complex relationsto be set up. We can’t trust fixed ID’s.
initialize report data(app, created models, verbosity, **kwargs)
Create initial set of reports
18
Technische Universiteit EindhovenUniversity of Technology
A.3 Package qis.app.auth
A.3.1 Modules
• backends: Provides all the details needed to realize proper authentication.(Section A.4, p. 20)
A.3.2 Class has right
object
qis.app.auth.has right
Decorator to verify that the current user has at least one of the given permissions. Raises error classon failure (default Http404).
Methods
init (self, *rights, **kwargs)
x. init (...) initializes x; see x. class . doc for signature
Overrides: object. init extit(inherited documentation)
function(self, instance, *args, **kwargs)
call (self, wrapped)
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
19
Technische Universiteit EindhovenUniversity of Technology
A.4 Module qis.app.auth.backends
Provides all the details needed to realize proper authentication.
Holds extensions to django.contrib.auth in the form of backends and view decorators. Westick to the Django implementation as close as possible to avoid introducing incompatibilitieswith django.contrib.admin, which depends heavily on django.contrib.auth.
You should note that these Backends are designed to be used together and that switchingbetween them will result in a consistent system. Keep this in mind when making modifica-tions or using other backends.
A.4.1 Variables
Name Descriptionbackends Value: (<class
’qis.app.auth.backends.EmergencySuperuserBackend’...
A.4.2 Class EmergencySuperuserBackend
object
qis.app.auth.backends.EmergencySuperuserBackend
Authenticate against the settings EMERGENCY SUPERUSER LOGIN and EMERGENCY SUPERUSER PASSHASH.
Useful for testing and last-resort purposes; grants superuser rights in all models. Fear usingit in production environments, this is a risk to both security and stability! You have morepermissions than any other user with maximum rights, please compensate with intelligence.
Methods
authenticate(self, username=None, password=None)
get user(self, user id)
Inherited from object
delattr (), getattribute (), hash (), init (), new (), reduce (),reduce ex (), repr (), setattr (), str ()
20
Technische Universiteit EindhovenUniversity of Technology
Properties
Name DescriptionInherited from object
class
A.4.3 Class DummyBackend
object
django.contrib.auth.backends.ModelBackend
qis.app.auth.backends.DummyBackend
Known Subclasses: qis.app.auth.backends.ActiveDirectoryBackend, qis.app.auth.backends.LocalBackend
Gives any employee that exists access with any password.
This is not an authentication backend. Never use this backend outside local, properlyisolated development!
Designed to be inherited from by other backends, gets the basic user setup in place forothers. All that is missing is password-related stuff.
Make sure inherited classes override check password() and disabled()
Methods
disabled(self )
Always enabled. Use to conditionally fail authentication.
check password(self, user, password)
Always returns True. Use to verify if the entered password is accepted.
We assume user to be a valid User object.
21
Technische Universiteit EindhovenUniversity of Technology
authenticate(self, username=None, password=None)
The username passed as “remote user“ is considered trusted. This methodsimply returns the “User“ object with the given username, creating a new“User“ object where required.
Returns None if an “Employee“ object with the given username is not foundin the database.
Overrides: django.contrib.auth.backends.ModelBackend.authenticate
clean username(self, username)
Performs any cleaning on the ”username” prior to using it to get or createthe user object. Returns the cleaned username.
A username is only valid if an object with that username exists inqis.app.models.Employee.
configure user(self, user)
Configures a user initially to match the Employee attributes and returns it.
Do not call this if the user has already been configured, it will unset theirpassword. Use update user instead.
update user(self, user)
Update a user object to match the Employee settings
get group permissions(self, user obj, add group column=False)
Returns a set of permission strings that this user has through his/her groups.If add group column is True, a second column identifying the group apermission belongs to is added.
Originally from django.contrib.auth.backends.ModelBackend, modified toreturn an optional group column.
Overrides:django.contrib.auth.backends.ModelBackend.get group permissions
get all permissions(self, user obj)
Returns all permissions a user has in the current year.
If no valid year can be found (for non-year related views), return the maximalset.
Overrides: django.contrib.auth.backends.ModelBackend.get all permissions
22
Technische Universiteit EindhovenUniversity of Technology
Inherited from django.contrib.auth.backends.ModelBackend
get user(), has module perms(), has perm()
Inherited from object
delattr (), getattribute (), hash (), init (), new (), reduce (),reduce ex (), repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
A.4.4 Class LocalBackend
object
django.contrib.auth.backends.ModelBackend
qis.app.auth.backends.DummyBackend
qis.app.auth.backends.LocalBackend
Performs user authentication of employees via locally stored credentials.
Methods
disabled(self )
Returns whether the backend has been disabled in the system
Overrides: qis.app.auth.backends.DummyBackend.disabled
check password(self, user, password)
Check the password against the user’s stored (encrypted) password.
Overrides: qis.app.auth.backends.DummyBackend.check password
23
Technische Universiteit EindhovenUniversity of Technology
configure user(self, user)
Configures a user initially to match the Employee attributes and returns it.
Do not call this if the user has already been configured, it will reset theirpassword. Use update user instead.
Overrides: qis.app.auth.backends.DummyBackend.configure user
provide user password(self, user)
Generate a random password and mail it to the user
Inherited from qis.app.auth.backends.DummyBackend(Section A.4.3)
authenticate(), clean username(), get all permissions(), get group permissions(),update user()
Inherited from django.contrib.auth.backends.ModelBackend
get user(), has module perms(), has perm()
Inherited from object
delattr (), getattribute (), hash (), init (), new (), reduce (),reduce ex (), repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
A.4.5 Class ActiveDirectoryBackend
object
django.contrib.auth.backends.ModelBackend
qis.app.auth.backends.DummyBackend
qis.app.auth.backends.ActiveDirectoryBackend
Performs user authentication of employees through Active Directory
24
Technische Universiteit EindhovenUniversity of Technology
Methods
disabled(self )
Returns whether the backend has been disabled in the system
Overrides: qis.app.auth.backends.DummyBackend.disabled
check password(self, user, password)
Check the password against Active Directory.
Overrides: qis.app.auth.backends.DummyBackend.check password
Inherited from qis.app.auth.backends.DummyBackend(Section A.4.3)
authenticate(), clean username(), configure user(), get all permissions(), get group permissions(),update user()
Inherited from django.contrib.auth.backends.ModelBackend
get user(), has module perms(), has perm()
Inherited from object
delattr (), getattribute (), hash (), init (), new (), reduce (),reduce ex (), repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
25
Technische Universiteit EindhovenUniversity of Technology
A.5 Module qis.app.context processors
A set of request processors that return dictionaries to be merged into a template context.Each function takes the request object as its only parameter and returns a dictionary to addto the context.
These are referenced from the setting TEMPLATE CONTEXT PROCESSORS and used byRequestContext.
A.5.1 Functions
globals(request)
Adds some global variables to the context.
The following are added when available:
* system year, derived from request.path
* return page, from the GET data. Used to return to previous pages.
* as type, from the GET data. The type of assignment we’re changing now.
* cur task, from the GET data. The ID of the task being edited.
* cur employment, from the GET data. The ID of the employment being assigned tasks.
qisperms(request)
Allows the permissions to be accessed in templates.
– view workload, will be accessible by all employees who have a view right inQIS. This will amount to almost all employees. – modify workload, will beaccessible to the employees who can modify workload information for any ofthe subdepartments (the model manager will make sure they are only allowedto modify the subepartment they have rights to). – modify workload, will beaccessible to the employees who can modify course information for any of thesubdepartments (the model manager will make sure they are only allowed tomodify the subepartment they have rights to).
26
Technische Universiteit EindhovenUniversity of Technology
A.6 Module qis.app.mail
Allows for consistency in mail.
A.6.1 Functions
wrap(text, width)
Wraps given text to at most width characters, preserves newlines.
Newlines must be POSIX ("
").
send(to, subject, content)
Sends mail with provided content, wrapped in nice QIS markup.
Do NOT call this function in repetition, as it will open an SMTP connectionfor every invocation.
send mass QIS mail(provided messagelist)
Sends mail with provided content, wrapped in nice QIS markup. This versionuses the mass mail capability of Django.
Provided messagelist is a tuple of Messages. Message = (subject, body,from email, recipient list) Where recipient list is either a single string, or alist of strings (where each string is a valid email-address)
if from email equals None, it will be replaced with ’[email protected]’
A.6.2 Variables
Name DescriptionBODY TEMPLATE Value: ’Dear %s,\n\n%s\n\nPlease
visit QIS at http://localhost:8...
27
Technische Universiteit EindhovenUniversity of Technology
A.7 Module qis.app.middleware
Contains custom middleware for QIS
Middleware are methods which wrap around all requests of an application. Currently con-tains middleware to ease handling with requests.
A.7.1 Functions
get current request()
Retrieves the current request from a thread-local store.
If called when no request is being handled, it might return a stale requestobject, or an empty class representing an invalid request.
A.7.2 Class RequestAnywhere
object
qis.app.middleware.RequestAnywhere
Middleware that makes the request object available on request.
Stores the request object in a thread-local store. This works since a thread is dedicated tohandling a request - no other requests may interleave and change the thread-local store.Note that after a request has been handled, the object remains.
Methods
process request(self, request)
Stores the given request in a thread local store.
Inherited from object
delattr (), getattribute (), hash (), init (), new (), reduce (),reduce ex (), repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
continued on next page
28
Technische Universiteit EindhovenUniversity of Technology
Name Descriptionclass
29
Technische Universiteit EindhovenUniversity of Technology
A.8 Module qis.app.modeladmins
A.8.1 Variables
Name DescriptionBLANK CHOICE DASH Value: [(’’, ’---------’)]
DJANGO QISGROUP FO-RMAT
Value: ’[QIS Application Group] %s’
FORMFIELD FOR DBFI-ELD DEFAULTS
Value: {<class
’django.db.models.fields.CharField’>:
{’widget’: ...
HORIZONTAL Value: 1
MAXYEAR Value: 9999
MINYEAR Value: 1
PERMISSIONS Value: ((’view own workload’, ’VOW’,
[]), (’view expertisegroup ...
REPORT GROUPS Value: [(1, ’Workload’), (2,
’Employee reports’), (3, ’Course
In...
RIGHT OBJECTS Value:[(’view expertisegroup workload object’,
’VEGW object’, ’...
TASK TYPES Value: ((’researchproject’, ’Research
project’), (’managementpro...
VERTICAL Value: 2
datetime CAPI Value: <PyCObject object at
0x8eba110>name Value: ’MSDCI object’
object Value:’modify subdepartment courseinf object’
perms Value: [’change system’,
’view employee’, ’change employee’,
’de...
related name Value: ’modify courseinf rights’
right Value: ’modify system administration’
30
Technische Universiteit EindhovenUniversity of Technology
A.8.2 Class QisModelForm
object
django.utils.encoding.StrAndUnicode
django.forms.forms.BaseForm
django.forms.models.BaseModelForm
django.forms.models.ModelForm
qis.app.modeladmins.QisModelForm
Known Subclasses: qis.app.modeladmins.AssignmentForm, qis.app.modeladmins.CourseInstanceForm,qis.app.modeladmins.RightForm, qis.app.modeladmins.SubdepartmentForm, qis.app.modeladmins.SystemYearForm,qis.app.modeladmins.TargetGroupForm
Methods
Inherited from django.forms.models.BaseModelForm
init (), clean(), date error message(), save(), unique error message(), vali-date unique()
Inherited from django.forms.forms.BaseForm
getitem (), iter (), unicode (), add initial prefix(), add prefix(), as p(),as table(), as ul(), full clean(), has changed(), hidden fields(), is multipart(),is valid(), non field errors(), visible fields()
Inherited from django.utils.encoding.StrAndUnicode
str ()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr ()
Properties
Name Descriptionmedia Provide a description of all media required to
render the widgets on this formcontinued on next page
31
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionInherited from django.forms.forms.BaseFormchanged data, errorsInherited from object
class
Class Variables
Name Descriptionbase fields Value: {}declared fields Value: {}
A.8.3 Class QisModelAdmin
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
Known Subclasses: qis.app.modeladmins.QisAdministrativeModelAdmin, qis.app.modeladmins.AssignmentAdmin,qis.app.modeladmins.CourseRelatedAdmin, qis.app.modeladmins.EmployeeAdmin, qis.app.modeladmins.EmploymentAdmin,qis.app.modeladmins.NotificationAdmin, qis.app.modeladmins.ReportAdmin, qis.app.modeladmins.StudyProgramAdmin,qis.app.modeladmins.TargetGroupAdmin, qis.app.modeladmins.TaskAdmin
Methods
queryset(self, request)
Returns only those objects the current user has permissions for
Overrides: qis.admin.options.ModelAdmin.queryset
no longer permitted(self )
Return True if model operations are no longer permitted.
has add permission(self, request)
Returns True if the given request has permission to add an object.
Overrides: qis.admin.options.ModelAdmin.has add permission
32
Technische Universiteit EindhovenUniversity of Technology
has view permission(self, request, obj=None)
Returns True if the given request has permission to view the given Djangomodel instance.
If ‘obj‘ is None, this should return True if the given request has permission todelete *any* object of the given type.
has change permission(self, request, obj=None)
Returns True if the given request has permission to change the given Djangomodel instance.
If ‘obj‘ is None, this should return True if the given request has permission todelete *any* object of the given type.
Overrides: qis.admin.options.ModelAdmin.has change permission
has delete permission(self, request, obj=None)
Returns True if the given request has permission to delete the given Djangomodel instance.
If ‘obj‘ is None, this should return True if the given request has permission todelete *any* object of the given type.
Overrides: qis.admin.options.ModelAdmin.has delete permission
get model perms(self, request)
Returns a dict of all perms for this model. This dict has the keys “add“,“change“, “delete“ and “view“ mapping to the True/False for each of thoseactions.
Overrides: qis.admin.options.ModelAdmin.get model perms
response add(self, request, obj, post url continue=’../%s/’)
Determines the HttpResponse for the add view stage.
Copied from parent class with view permission modifications.
Overrides: qis.admin.options.ModelAdmin.response add
add view(request, *args, **kwargs)
Generic add view page with additional system year attribute
Overrides: qis.admin.options.ModelAdmin.add view
33
Technische Universiteit EindhovenUniversity of Technology
change view(request, *args, **kwargs)
Generic change view page with additional system year attribute
Overrides: qis.admin.options.ModelAdmin.change view
delete view(request, *args, **kwargs)
Generic delete view page with additional system year attribute
Overrides: qis.admin.options.ModelAdmin.delete view
changelist view(request, *args, **kwargs)
The ’change list’ admin view for this model.
Copied from parent class with view permission modifications. Also addedsystem year in context.
Overrides: qis.admin.options.ModelAdmin.changelist view
formfield for dbfield(self, db field, **kwargs)
Hook for specifying the form Field instance for a given database Fieldinstance.
If kwargs are given, they’re passed to the form Field’s constructor.
Overridden to make use of RelatedFieldWidgetWrapper depend on modeladd * permissions.
Overrides: qis.admin.options.BaseModelAdmin.formfield for dbfield
formfield for foreignkey(self, db field, request, **kwargs)
Limits changing related objects to those we are permitted to.
This is often not good enough. We may have view permissions for thingsthat we shouldn’t ever assign stuff to. To be overridden wherever this maybe the case.
Overrides: qis.admin.options.BaseModelAdmin.formfield for foreignkey
get urls(self )
Overrides: qis.admin.options.ModelAdmin.get urls
Inherited from qis.admin.options.ModelAdmin
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),
34
Technische Universiteit EindhovenUniversity of Technology
message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionmediaInherited from qis.admin.options.ModelAdminurlsInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionmsa extended edit enable Value: False
history view Value: None
Inherited from qis.admin.options.ModelAdminactions, actions on bottom, actions on top, change form template,change list template, date hierarchy, delete confirmation template,inlines, list display, list display links, list editable, list filter, list per page,list select related, object history template, ordering, save as, save on top,search fieldsInherited from qis.admin.options.BaseModelAdminexclude, fields, fieldsets, filter horizontal, filter vertical,formfield overrides, prepopulated fields, radio fields, raw id fields
35
Technische Universiteit EindhovenUniversity of Technology
A.8.4 Class QisAdministrativeModelAdmin
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
qis.app.modeladmins.QisAdministrativeModelAdmin
Known Subclasses: qis.app.modeladmins.AlwaysAdministratorEditable, qis.app.modeladmins.DepartmentAdmin,qis.app.modeladmins.EducationTypeAdmin, qis.app.modeladmins.ExpertiseGroupAdmin, qis.app.modeladmins.PeriodAdmin,qis.app.modeladmins.PositionAdmin, qis.app.modeladmins.StudyPhaseAdmin, qis.app.modeladmins.SubdepartmentAdmin,qis.app.modeladmins.SubperiodAdmin, qis.app.modeladmins.SystemYearAdmin, qis.app.modeladmins.TargetGroupNameAdmin,qis.app.modeladmins.TaskTypeAdmin
Methods
Inherited from qis.app.modeladmins.QisModelAdmin(Section A.8.3)
add view(), change view(), changelist view(), delete view(), formfield for dbfield(),formfield for foreignkey(), get model perms(), get urls(), has add permission(),has change permission(), has delete permission(), has view permission(), no longer permitted(),queryset(), response add()
Inherited from qis.admin.options.ModelAdmin
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
36
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionmediaInherited from qis.admin.options.ModelAdminurlsInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionchange list template Value:
’qis/administrative change list.html’
change form template Value:’qis/administrative change form.html’
history view Value: None
Inherited from qis.app.modeladmins.QisModelAdmin (Section A.8.3)msa extended edit enableInherited from qis.admin.options.ModelAdminactions, actions on bottom, actions on top, date hierarchy,delete confirmation template, inlines, list display, list display links,list editable, list filter, list per page, list select related,object history template, ordering, save as, save on top, search fieldsInherited from qis.admin.options.BaseModelAdminexclude, fields, fieldsets, filter horizontal, filter vertical,formfield overrides, prepopulated fields, radio fields, raw id fields
37
Technische Universiteit EindhovenUniversity of Technology
A.8.5 Class SystemYearForm
object
django.utils.encoding.StrAndUnicode
django.forms.forms.BaseForm
django.forms.models.BaseModelForm
django.forms.models.ModelForm
qis.app.modeladmins.QisModelForm
qis.app.modeladmins.SystemYearForm
Methods
clean(self )
Validates whether Ends >= Begins, and raises validation error otherwise.
Overrides: django.forms.forms.BaseForm.clean
Inherited from django.forms.models.BaseModelForm
init (), date error message(), save(), unique error message(), validate unique()
Inherited from django.forms.forms.BaseForm
getitem (), iter (), unicode (), add initial prefix(), add prefix(), as p(),as table(), as ul(), full clean(), has changed(), hidden fields(), is multipart(),is valid(), non field errors(), visible fields()
Inherited from django.utils.encoding.StrAndUnicode
str ()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr ()
Properties
38
Technische Universiteit EindhovenUniversity of Technology
Name Descriptionmedia Provide a description of all media required to
render the widgets on this formInherited from django.forms.forms.BaseFormchanged data, errorsInherited from object
class
Class Variables
Name DescriptionInherited from qis.app.modeladmins.QisModelForm (Section A.8.2)base fields, declared fields
A.8.6 Class SystemYearAdmin
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
qis.app.modeladmins.QisAdministrativeModelAdmin
qis.app.modeladmins.SystemYearAdmin
Methods
has delete permission(self, request, obj=None)
Returns True if the given request has permission to delete the system year.
If ‘obj‘ is None, this should return True if the given request has permission todelete *any* system year.
Overrides: qis.admin.options.ModelAdmin.has delete permission
39
Technische Universiteit EindhovenUniversity of Technology
has add permission(self, request)
Returns True if the given request has permission to add an object.
Overrides: qis.admin.options.ModelAdmin.has add permission extit(inheriteddocumentation)
change view(self, request, object id, extra context=None,system year=None)
Generic change view page with additional system year attribute
Overrides: qis.admin.options.ModelAdmin.change view
delete view(self, request, object id, extra context=None,system year=None)
Generic delete view page with additional system year attribute
Overrides: qis.admin.options.ModelAdmin.delete view
Inherited from qis.app.modeladmins.QisModelAdmin(Section A.8.3)
add view(), changelist view(), formfield for dbfield(), formfield for foreignkey(),get model perms(), get urls(), has change permission(), has view permission(),no longer permitted(), queryset(), response add()
Inherited from qis.admin.options.ModelAdmin
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionmediaInherited from qis.admin.options.ModelAdmin
continued on next page
40
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionurlsInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionfieldsets Value: ((None, {’fields’: (’name’,
’begins’, ’ends’, ’fte amount...
list display Value: [’name’, ’begins’, ’ends’,
’all subdepartments closed’]
ordering Value: [’begins’, ’ends’, ’name’]
Inherited from qis.app.modeladmins.QisAdministrativeModelAdmin (Section A.8.4)change form template, change list template, history viewInherited from qis.app.modeladmins.QisModelAdmin (Section A.8.3)msa extended edit enableInherited from qis.admin.options.ModelAdminactions, actions on bottom, actions on top, date hierarchy,delete confirmation template, inlines, list display links, list editable,list filter, list per page, list select related, object history template,save as, save on top, search fieldsInherited from qis.admin.options.BaseModelAdminexclude, fields, filter horizontal, filter vertical, formfield overrides,prepopulated fields, radio fields, raw id fields
A.8.7 Class PeriodAdmin
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
qis.app.modeladmins.QisAdministrativeModelAdmin
qis.app.modeladmins.PeriodAdmin
41
Technische Universiteit EindhovenUniversity of Technology
Methods
Inherited from qis.app.modeladmins.QisModelAdmin(Section A.8.3)
add view(), change view(), changelist view(), delete view(), formfield for dbfield(),formfield for foreignkey(), get model perms(), get urls(), has add permission(),has change permission(), has delete permission(), has view permission(), no longer permitted(),queryset(), response add()
Inherited from qis.admin.options.ModelAdmin
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionmediaInherited from qis.admin.options.ModelAdminurlsInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionfieldsets Value: ((None, {’fields’:
(’name’)}))list display Value: [’name’]
ordering Value: [’name’]
Inherited from qis.app.modeladmins.QisAdministrativeModelAdmin (Section A.8.4)continued on next page
42
Technische Universiteit EindhovenUniversity of Technology
Name Descriptionchange form template, change list template, history viewInherited from qis.app.modeladmins.QisModelAdmin (Section A.8.3)msa extended edit enableInherited from qis.admin.options.ModelAdminactions, actions on bottom, actions on top, date hierarchy,delete confirmation template, inlines, list display links, list editable,list filter, list per page, list select related, object history template,save as, save on top, search fieldsInherited from qis.admin.options.BaseModelAdminexclude, fields, filter horizontal, filter vertical, formfield overrides,prepopulated fields, radio fields, raw id fields
A.8.8 Class SubperiodAdmin
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
qis.app.modeladmins.QisAdministrativeModelAdmin
qis.app.modeladmins.SubperiodAdmin
Methods
Inherited from qis.app.modeladmins.QisModelAdmin(Section A.8.3)
add view(), change view(), changelist view(), delete view(), formfield for dbfield(),formfield for foreignkey(), get model perms(), get urls(), has add permission(),has change permission(), has delete permission(), has view permission(), no longer permitted(),queryset(), response add()
Inherited from qis.admin.options.ModelAdmin
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
43
Technische Universiteit EindhovenUniversity of Technology
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionmediaInherited from qis.admin.options.ModelAdminurlsInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionfieldsets Value: ((None, {’fields’: (’period’,
’name’, ’weeks’)}))list filter Value: [’period’]
list display Value: [’name’, ’period’]
ordering Value: [’name’]
Inherited from qis.app.modeladmins.QisAdministrativeModelAdmin (Section A.8.4)change form template, change list template, history viewInherited from qis.app.modeladmins.QisModelAdmin (Section A.8.3)msa extended edit enableInherited from qis.admin.options.ModelAdminactions, actions on bottom, actions on top, date hierarchy,delete confirmation template, inlines, list display links, list editable,list per page, list select related, object history template, save as,save on top, search fieldsInherited from qis.admin.options.BaseModelAdminexclude, fields, filter horizontal, filter vertical, formfield overrides,prepopulated fields, radio fields, raw id fields
44
Technische Universiteit EindhovenUniversity of Technology
A.8.9 Class SubdepartmentForm
object
django.utils.encoding.StrAndUnicode
django.forms.forms.BaseForm
django.forms.models.BaseModelForm
django.forms.models.ModelForm
qis.app.modeladmins.QisModelForm
qis.app.modeladmins.SubdepartmentForm
Methods
init (self, *args, **kwargs)
x. init (...) initializes x; see x. class . doc for signature
Overrides: object. init extit(inherited documentation)
Inherited from django.forms.models.BaseModelForm
clean(), date error message(), save(), unique error message(), validate unique()
Inherited from django.forms.forms.BaseForm
getitem (), iter (), unicode (), add initial prefix(), add prefix(), as p(),as table(), as ul(), full clean(), has changed(), hidden fields(), is multipart(),is valid(), non field errors(), visible fields()
Inherited from django.utils.encoding.StrAndUnicode
str ()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr ()
Properties
45
Technische Universiteit EindhovenUniversity of Technology
Name Descriptionmedia Provide a description of all media required to
render the widgets on this formInherited from django.forms.forms.BaseFormchanged data, errorsInherited from object
class
Class Variables
Name DescriptionInherited from qis.app.modeladmins.QisModelForm (Section A.8.2)base fields, declared fields
A.8.10 Class SubdepartmentInline
object
qis.admin.options.BaseModelAdmin
qis.admin.options.InlineModelAdmin
qis.admin.options.TabularInline
qis.app.modeladmins.SubdepartmentInline
Methods
Inherited from qis.admin.options.InlineModelAdmin
init (), get fieldsets(), get formset()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for dbfield(), formfield for foreignkey(), form-field for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
46
Technische Universiteit EindhovenUniversity of Technology
Properties
Name DescriptionInherited from qis.admin.options.InlineModelAdminmediaInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionextra Value: 1
fields Value: [’name’]
Inherited from qis.admin.options.TabularInlinetemplateInherited from qis.admin.options.InlineModelAdminfk name, max num, verbose name, verbose name pluralInherited from qis.admin.options.BaseModelAdminexclude, fieldsets, filter horizontal, filter vertical, formfield overrides,prepopulated fields, radio fields, raw id fields
A.8.11 Class DepartmentAdmin
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
qis.app.modeladmins.QisAdministrativeModelAdmin
qis.app.modeladmins.DepartmentAdmin
47
Technische Universiteit EindhovenUniversity of Technology
Methods
queryset(self, request)
Returns only those objects the current user has permissions for
Overrides: qis.admin.options.ModelAdmin.queryset extit(inheriteddocumentation)
Inherited from qis.app.modeladmins.QisModelAdmin(Section A.8.3)
add view(), change view(), changelist view(), delete view(), formfield for dbfield(),formfield for foreignkey(), get model perms(), get urls(), has add permission(),has change permission(), has delete permission(), has view permission(), no longer permitted(),response add()
Inherited from qis.admin.options.ModelAdmin
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionmediaInherited from qis.admin.options.ModelAdminurlsInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
48
Technische Universiteit EindhovenUniversity of Technology
Name Descriptionfieldsets Value: ((None, {’fields’:
(’name’)}))inlines Value: [<class
’qis.app.modeladmins.SubdepartmentInline’>]
search fields Value: [’name’]
list display Value: [’name’]
ordering Value: [’name’]
msa extended edit enable Value: True
Inherited from qis.app.modeladmins.QisAdministrativeModelAdmin (Section A.8.4)change form template, change list template, history viewInherited from qis.admin.options.ModelAdminactions, actions on bottom, actions on top, date hierarchy,delete confirmation template, list display links, list editable, list filter,list per page, list select related, object history template, save as,save on topInherited from qis.admin.options.BaseModelAdminexclude, fields, filter horizontal, filter vertical, formfield overrides,prepopulated fields, radio fields, raw id fields
A.8.12 Class ExpertiseGroupInline
object
qis.admin.options.BaseModelAdmin
qis.admin.options.InlineModelAdmin
qis.admin.options.TabularInline
qis.app.modeladmins.ExpertiseGroupInline
Methods
Inherited from qis.admin.options.InlineModelAdmin
init (), get fieldsets(), get formset()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for dbfield(), formfield for foreignkey(), form-field for manytomany()
Inherited from object
49
Technische Universiteit EindhovenUniversity of Technology
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from qis.admin.options.InlineModelAdminmediaInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionextra Value: 3
fields Value: [’name’]
Inherited from qis.admin.options.TabularInlinetemplateInherited from qis.admin.options.InlineModelAdminfk name, max num, verbose name, verbose name pluralInherited from qis.admin.options.BaseModelAdminexclude, fieldsets, filter horizontal, filter vertical, formfield overrides,prepopulated fields, radio fields, raw id fields
A.8.13 Class SubdepartmentAdmin
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
qis.app.modeladmins.QisAdministrativeModelAdmin
qis.app.modeladmins.SubdepartmentAdmin
50
Technische Universiteit EindhovenUniversity of Technology
Methods
queryset(self, request)
Returns only those objects the current user has permissions for
Overrides: qis.admin.options.ModelAdmin.queryset extit(inheriteddocumentation)
change view(request, *args, **kwargs)
Generic change view page with additional system year attribute and now alsowith a close perm which checks if you have change permissions for thatsubdepartments
Overrides: qis.admin.options.ModelAdmin.change view
Inherited from qis.app.modeladmins.QisModelAdmin(Section A.8.3)
add view(), changelist view(), delete view(), formfield for dbfield(), formfield for foreignkey(),get model perms(), get urls(), has add permission(), has change permission(),has delete permission(), has view permission(), no longer permitted(), response add()
Inherited from qis.admin.options.ModelAdmin
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionmediaInherited from qis.admin.options.ModelAdminurlsInherited from qis.admin.options.BaseModelAdmindeclared fieldsets
continued on next page
51
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionInherited from object
class
Class Variables
Name Descriptionchange form template Value:
’qis/subdepartment change form.html’
fieldsets Value: ((None, {’fields’:(’department’, ’name’)}))
inlines Value: [<class
’qis.app.modeladmins.ExpertiseGroupInline’>]
search fields Value: [’name’]
list filter Value: [’department’]
list display Value: [’name’, ’department’]
ordering Value: [’name’]
msa extended edit enable Value: True
Inherited from qis.app.modeladmins.QisAdministrativeModelAdmin (Section A.8.4)change list template, history viewInherited from qis.admin.options.ModelAdminactions, actions on bottom, actions on top, date hierarchy,delete confirmation template, list display links, list editable, list per page,list select related, object history template, save as, save on topInherited from qis.admin.options.BaseModelAdminexclude, fields, filter horizontal, filter vertical, formfield overrides,prepopulated fields, radio fields, raw id fields
A.8.14 Class ExpertiseGroupAdmin
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
qis.app.modeladmins.QisAdministrativeModelAdmin
qis.app.modeladmins.ExpertiseGroupAdmin
52
Technische Universiteit EindhovenUniversity of Technology
Methods
Inherited from qis.app.modeladmins.QisModelAdmin(Section A.8.3)
add view(), change view(), changelist view(), delete view(), formfield for dbfield(),formfield for foreignkey(), get model perms(), get urls(), has add permission(),has change permission(), has delete permission(), has view permission(), no longer permitted(),queryset(), response add()
Inherited from qis.admin.options.ModelAdmin
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionmediaInherited from qis.admin.options.ModelAdminurlsInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionfieldsets Value: ((None, {’fields’:
(’subdepartment’, ’name’)}))search fields Value: [’name’]
list filter Value: [’subdepartment’]
list display Value: [’name’, ’subdepartment’]
continued on next page
53
Technische Universiteit EindhovenUniversity of Technology
Name Descriptionordering Value: [’name’]
Inherited from qis.app.modeladmins.QisAdministrativeModelAdmin (Section A.8.4)change form template, change list template, history viewInherited from qis.app.modeladmins.QisModelAdmin (Section A.8.3)msa extended edit enableInherited from qis.admin.options.ModelAdminactions, actions on bottom, actions on top, date hierarchy,delete confirmation template, inlines, list display links, list editable,list per page, list select related, object history template, save as,save on topInherited from qis.admin.options.BaseModelAdminexclude, fields, filter horizontal, filter vertical, formfield overrides,prepopulated fields, radio fields, raw id fields
A.8.15 Class TargetGroupForm
object
django.utils.encoding.StrAndUnicode
django.forms.forms.BaseForm
django.forms.models.BaseModelForm
django.forms.models.ModelForm
qis.app.modeladmins.QisModelForm
qis.app.modeladmins.TargetGroupForm
Methods
init (self, *args, **kwargs)
x. init (...) initializes x; see x. class . doc for signature
Overrides: object. init extit(inherited documentation)
Inherited from django.forms.models.BaseModelForm
clean(), date error message(), save(), unique error message(), validate unique()
Inherited from django.forms.forms.BaseForm
54
Technische Universiteit EindhovenUniversity of Technology
getitem (), iter (), unicode (), add initial prefix(), add prefix(), as p(),as table(), as ul(), full clean(), has changed(), hidden fields(), is multipart(),is valid(), non field errors(), visible fields()
Inherited from django.utils.encoding.StrAndUnicode
str ()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr ()
Properties
Name Descriptionmedia Provide a description of all media required to
render the widgets on this formInherited from django.forms.forms.BaseFormchanged data, errorsInherited from object
class
Class Variables
Name DescriptionInherited from qis.app.modeladmins.QisModelForm (Section A.8.2)base fields, declared fields
A.8.16 Class TargetGroupInline
object
qis.admin.options.BaseModelAdmin
qis.admin.options.InlineModelAdmin
qis.admin.options.StackedInline
qis.app.modeladmins.TargetGroupInline
55
Technische Universiteit EindhovenUniversity of Technology
Methods
Inherited from qis.admin.options.InlineModelAdmin
init (), get fieldsets(), get formset()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for dbfield(), formfield for foreignkey(), form-field for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from qis.admin.options.InlineModelAdminmediaInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionextra Value: 1
filter horizontal Value: [’course instances’]
Inherited from qis.admin.options.StackedInlinetemplateInherited from qis.admin.options.InlineModelAdminfk name, max num, verbose name, verbose name pluralInherited from qis.admin.options.BaseModelAdminexclude, fields, fieldsets, filter vertical, formfield overrides,prepopulated fields, radio fields, raw id fields
56
Technische Universiteit EindhovenUniversity of Technology
A.8.17 Class StudyProgramAdmin
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
qis.app.modeladmins.StudyProgramAdmin
Methods
Inherited from qis.app.modeladmins.QisModelAdmin(Section A.8.3)
add view(), change view(), changelist view(), delete view(), formfield for dbfield(),formfield for foreignkey(), get model perms(), get urls(), has add permission(),has change permission(), has delete permission(), has view permission(), no longer permitted(),queryset(), response add()
Inherited from qis.admin.options.ModelAdmin
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionmediaInherited from qis.admin.options.ModelAdminurlsInherited from qis.admin.options.BaseModelAdmin
continued on next page
57
Technische Universiteit EindhovenUniversity of Technology
Name Descriptiondeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionfieldsets Value: ((None, {’fields’:
(’name’)}))search fields Value: [’name’]
list display Value: [’name’]
ordering Value: [’name’]
inlines Value: [<class
’qis.app.modeladmins.TargetGroupInline’>]
actions Value: None
list per page Value: 20
change form template Value: ’qis/programs change form.html’
delete confirmation templ-ate
Value:’qis/programs delete confirmation.html’
change list template Value: ’qis/programs change list.html’
Inherited from qis.app.modeladmins.QisModelAdmin (Section A.8.3)history view, msa extended edit enableInherited from qis.admin.options.ModelAdminactions on bottom, actions on top, date hierarchy, list display links,list editable, list filter, list select related, object history template, save as,save on topInherited from qis.admin.options.BaseModelAdminexclude, fields, filter horizontal, filter vertical, formfield overrides,prepopulated fields, radio fields, raw id fields
A.8.18 Class TargetGroupAdmin
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
qis.app.modeladmins.TargetGroupAdmin
58
Technische Universiteit EindhovenUniversity of Technology
Methods
add view(request, *args, **kwargs)
Call super’s add view and make sure it redirects to studyprogram after saving
Overrides: qis.admin.options.ModelAdmin.add view
change view(request, *args, **kwargs)
Call super’s change view and make sure it redirects to studyprogram aftersaving
Overrides: qis.admin.options.ModelAdmin.change view
delete view(request, *args, **kwargs)
Call super’s delete view and make sure it redirects to studyprogram after it’sdone
Overrides: qis.admin.options.ModelAdmin.delete view
Inherited from qis.app.modeladmins.QisModelAdmin(Section A.8.3)
changelist view(), formfield for dbfield(), formfield for foreignkey(), get model perms(),get urls(), has add permission(), has change permission(), has delete permission(),has view permission(), no longer permitted(), queryset(), response add()
Inherited from qis.admin.options.ModelAdmin
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name Descriptionmedia
continued on next page
59
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionInherited from qis.admin.options.ModelAdminurlsInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionfieldsets Value: ((None, {’fields’: (’name’,
’study program’, ’course inst...
filter horizontal Value: [’course instances’]
search fields Value: [’name’]
list filter Value: [’study program’]
list display Value: [’name’, ’study program’]
ordering Value: [’name’]
change form template Value:’qis/targetgroup change form.html’
delete confirmation templ-ate
Value:’qis/targetgroup delete confirmation.html’
Inherited from qis.app.modeladmins.QisModelAdmin (Section A.8.3)history view, msa extended edit enableInherited from qis.admin.options.ModelAdminactions, actions on bottom, actions on top, change list template,date hierarchy, inlines, list display links, list editable, list per page,list select related, object history template, save as, save on topInherited from qis.admin.options.BaseModelAdminexclude, fields, filter vertical, formfield overrides, prepopulated fields,radio fields, raw id fields
60
Technische Universiteit EindhovenUniversity of Technology
A.8.19 Class TargetGroupNameAdmin
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
qis.app.modeladmins.QisAdministrativeModelAdmin
qis.app.modeladmins.TargetGroupNameAdmin
Methods
Inherited from qis.app.modeladmins.QisModelAdmin(Section A.8.3)
add view(), change view(), changelist view(), delete view(), formfield for dbfield(),formfield for foreignkey(), get model perms(), get urls(), has add permission(),has change permission(), has delete permission(), has view permission(), no longer permitted(),queryset(), response add()
Inherited from qis.admin.options.ModelAdmin
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionmediaInherited from qis.admin.options.ModelAdmin
continued on next page
61
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionurlsInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionfields Value: (’name’)
Inherited from qis.app.modeladmins.QisAdministrativeModelAdmin (Section A.8.4)change form template, change list template, history viewInherited from qis.app.modeladmins.QisModelAdmin (Section A.8.3)msa extended edit enableInherited from qis.admin.options.ModelAdminactions, actions on bottom, actions on top, date hierarchy,delete confirmation template, inlines, list display, list display links,list editable, list filter, list per page, list select related,object history template, ordering, save as, save on top, search fieldsInherited from qis.admin.options.BaseModelAdminexclude, fieldsets, filter horizontal, filter vertical, formfield overrides,prepopulated fields, radio fields, raw id fields
A.8.20 Class TaskTypeAdmin
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
qis.app.modeladmins.QisAdministrativeModelAdmin
qis.app.modeladmins.TaskTypeAdmin
Methods
Inherited from qis.app.modeladmins.QisModelAdmin(Section A.8.3)
62
Technische Universiteit EindhovenUniversity of Technology
add view(), change view(), changelist view(), delete view(), formfield for dbfield(),formfield for foreignkey(), get model perms(), get urls(), has add permission(),has change permission(), has delete permission(), has view permission(), no longer permitted(),queryset(), response add()
Inherited from qis.admin.options.ModelAdmin
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionmediaInherited from qis.admin.options.ModelAdminurlsInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionfieldsets Value: ((None, {’fields’: (’type’,
’name’)}))ordering Value: [’name’]
list display Value: [’name’]
Inherited from qis.app.modeladmins.QisAdministrativeModelAdmin (Section A.8.4)change form template, change list template, history viewInherited from qis.app.modeladmins.QisModelAdmin (Section A.8.3)msa extended edit enableInherited from qis.admin.options.ModelAdmin
continued on next page
63
Technische Universiteit EindhovenUniversity of Technology
Name Descriptionactions, actions on bottom, actions on top, date hierarchy,delete confirmation template, inlines, list display links, list editable,list filter, list per page, list select related, object history template,save as, save on top, search fieldsInherited from qis.admin.options.BaseModelAdminexclude, fields, filter horizontal, filter vertical, formfield overrides,prepopulated fields, radio fields, raw id fields
A.8.21 Class EducationTypeAdmin
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
qis.app.modeladmins.QisAdministrativeModelAdmin
qis.app.modeladmins.EducationTypeAdmin
Methods
Inherited from qis.app.modeladmins.QisModelAdmin(Section A.8.3)
add view(), change view(), changelist view(), delete view(), formfield for dbfield(),formfield for foreignkey(), get model perms(), get urls(), has add permission(),has change permission(), has delete permission(), has view permission(), no longer permitted(),queryset(), response add()
Inherited from qis.admin.options.ModelAdmin
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
64
Technische Universiteit EindhovenUniversity of Technology
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionmediaInherited from qis.admin.options.ModelAdminurlsInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionfieldsets Value: ((None, {’fields’:
(’subdepartment’, ’name’)}))search fields Value: [’name’]
list filter Value: [’subdepartment’]
list display Value: [’name’]
ordering Value: [’name’]
Inherited from qis.app.modeladmins.QisAdministrativeModelAdmin (Section A.8.4)change form template, change list template, history viewInherited from qis.app.modeladmins.QisModelAdmin (Section A.8.3)msa extended edit enableInherited from qis.admin.options.ModelAdminactions, actions on bottom, actions on top, date hierarchy,delete confirmation template, inlines, list display links, list editable,list per page, list select related, object history template, save as,save on topInherited from qis.admin.options.BaseModelAdminexclude, fields, filter horizontal, filter vertical, formfield overrides,prepopulated fields, radio fields, raw id fields
65
Technische Universiteit EindhovenUniversity of Technology
A.8.22 Class PositionAdmin
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
qis.app.modeladmins.QisAdministrativeModelAdmin
qis.app.modeladmins.PositionAdmin
Methods
Inherited from qis.app.modeladmins.QisModelAdmin(Section A.8.3)
add view(), change view(), changelist view(), delete view(), formfield for dbfield(),formfield for foreignkey(), get model perms(), get urls(), has add permission(),has change permission(), has delete permission(), has view permission(), no longer permitted(),queryset(), response add()
Inherited from qis.admin.options.ModelAdmin
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionmediaInherited from qis.admin.options.ModelAdmin
continued on next page
66
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionurlsInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionfieldsets Value: ((None, {’fields’:
(’name’)}))ordering Value: [’name’]
list display Value: [’name’]
Inherited from qis.app.modeladmins.QisAdministrativeModelAdmin (Section A.8.4)change form template, change list template, history viewInherited from qis.app.modeladmins.QisModelAdmin (Section A.8.3)msa extended edit enableInherited from qis.admin.options.ModelAdminactions, actions on bottom, actions on top, date hierarchy,delete confirmation template, inlines, list display links, list editable,list filter, list per page, list select related, object history template,save as, save on top, search fieldsInherited from qis.admin.options.BaseModelAdminexclude, fields, filter horizontal, filter vertical, formfield overrides,prepopulated fields, radio fields, raw id fields
A.8.23 Class StudyPhaseAdmin
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
qis.app.modeladmins.QisAdministrativeModelAdmin
qis.app.modeladmins.StudyPhaseAdmin
67
Technische Universiteit EindhovenUniversity of Technology
Methods
Inherited from qis.app.modeladmins.QisModelAdmin(Section A.8.3)
add view(), change view(), changelist view(), delete view(), formfield for dbfield(),formfield for foreignkey(), get model perms(), get urls(), has add permission(),has change permission(), has delete permission(), has view permission(), no longer permitted(),queryset(), response add()
Inherited from qis.admin.options.ModelAdmin
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionmediaInherited from qis.admin.options.ModelAdminurlsInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionfieldsets Value: ((None, {’fields’:
(’name’)}))ordering Value: [’name’]
list display Value: [’name’]
Inherited from qis.app.modeladmins.QisAdministrativeModelAdmin (Section A.8.4)continued on next page
68
Technische Universiteit EindhovenUniversity of Technology
Name Descriptionchange form template, change list template, history viewInherited from qis.app.modeladmins.QisModelAdmin (Section A.8.3)msa extended edit enableInherited from qis.admin.options.ModelAdminactions, actions on bottom, actions on top, date hierarchy,delete confirmation template, inlines, list display links, list editable,list filter, list per page, list select related, object history template,save as, save on top, search fieldsInherited from qis.admin.options.BaseModelAdminexclude, fields, filter horizontal, filter vertical, formfield overrides,prepopulated fields, radio fields, raw id fields
A.8.24 Class AlwaysAdministratorEditable
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
qis.app.modeladmins.QisAdministrativeModelAdmin
qis.app.modeladmins.AlwaysAdministratorEditable
Known Subclasses: qis.app.modeladmins.RightAdmin, qis.app.modeladmins.RightSetAdmin
Methods
has add permission(self, request)
Returns True if the given request has permission to add an object.
Overrides: qis.admin.options.ModelAdmin.has add permission
has delete permission(self, request, obj=None)
Returns True if the given request has permission to delete an object.
Overrides: qis.admin.options.ModelAdmin.has delete permission
69
Technische Universiteit EindhovenUniversity of Technology
has change permission(self, request, obj=None)
Returns True if the given request has permission to change an object.
Overrides: qis.admin.options.ModelAdmin.has change permission
has view permission(self, request, obj=None)
Returns True if the given request has permission to view an object.
Overrides: qis.app.modeladmins.QisModelAdmin.has view permission
Inherited from qis.app.modeladmins.QisModelAdmin(Section A.8.3)
add view(), change view(), changelist view(), delete view(), formfield for dbfield(),formfield for foreignkey(), get model perms(), get urls(), no longer permitted(),queryset(), response add()
Inherited from qis.admin.options.ModelAdmin
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionmediaInherited from qis.admin.options.ModelAdminurlsInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
70
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionInherited from qis.app.modeladmins.QisAdministrativeModelAdmin (Section A.8.4)change form template, change list template, history viewInherited from qis.app.modeladmins.QisModelAdmin (Section A.8.3)msa extended edit enableInherited from qis.admin.options.ModelAdminactions, actions on bottom, actions on top, date hierarchy,delete confirmation template, inlines, list display, list display links,list editable, list filter, list per page, list select related,object history template, ordering, save as, save on top, search fieldsInherited from qis.admin.options.BaseModelAdminexclude, fields, fieldsets, filter horizontal, filter vertical,formfield overrides, prepopulated fields, radio fields, raw id fields
A.8.25 Class RightForm
object
django.utils.encoding.StrAndUnicode
django.forms.forms.BaseForm
django.forms.models.BaseModelForm
django.forms.models.ModelForm
qis.app.modeladmins.QisModelForm
qis.app.modeladmins.RightForm
Methods
clean(self )
Validates whether all rights are set according to the user’s rightset, anddisplays an error message near the violating field, otherwise.
Overrides: django.forms.forms.BaseForm.clean
71
Technische Universiteit EindhovenUniversity of Technology
init (self, *args, **kwargs)
x. init (...) initializes x; see x. class . doc for signature
Overrides: object. init extit(inherited documentation)
Inherited from django.forms.models.BaseModelForm
date error message(), save(), unique error message(), validate unique()
Inherited from django.forms.forms.BaseForm
getitem (), iter (), unicode (), add initial prefix(), add prefix(), as p(),as table(), as ul(), full clean(), has changed(), hidden fields(), is multipart(),is valid(), non field errors(), visible fields()
Inherited from django.utils.encoding.StrAndUnicode
str ()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr ()
Properties
Name Descriptionmedia Provide a description of all media required to
render the widgets on this formInherited from django.forms.forms.BaseFormchanged data, errorsInherited from object
class
Class Variables
Name DescriptionInherited from qis.app.modeladmins.QisModelForm (Section A.8.2)base fields, declared fields
72
Technische Universiteit EindhovenUniversity of Technology
A.8.26 Class RightInline
object
qis.admin.options.BaseModelAdmin
qis.admin.options.InlineModelAdmin
qis.admin.options.TabularInline
qis.app.modeladmins.RightInline
Methods
Inherited from qis.admin.options.InlineModelAdmin
init (), get fieldsets(), get formset()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for dbfield(), formfield for foreignkey(), form-field for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from qis.admin.options.InlineModelAdminmediaInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionextra Value: 1
Inherited from qis.admin.options.TabularInlinecontinued on next page
73
Technische Universiteit EindhovenUniversity of Technology
Name DescriptiontemplateInherited from qis.admin.options.InlineModelAdminfk name, max num, verbose name, verbose name pluralInherited from qis.admin.options.BaseModelAdminexclude, fields, fieldsets, filter horizontal, filter vertical,formfield overrides, prepopulated fields, radio fields, raw id fields
A.8.27 Class RightSetAdmin
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
qis.app.modeladmins.QisAdministrativeModelAdmin
qis.app.modeladmins.AlwaysAdministratorEditable
qis.app.modeladmins.RightSetAdmin
Methods
member count(self, model)
Inherited from qis.app.modeladmins.AlwaysAdministratorEditable(Section A.8.24)
has add permission(), has change permission(), has delete permission(), has view permission()
Inherited from qis.app.modeladmins.QisModelAdmin(Section A.8.3)
add view(), change view(), changelist view(), delete view(), formfield for dbfield(),formfield for foreignkey(), get model perms(), get urls(), no longer permitted(),queryset(), response add()
Inherited from qis.admin.options.ModelAdmin
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),
74
Technische Universiteit EindhovenUniversity of Technology
message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionmediaInherited from qis.admin.options.ModelAdminurlsInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionlist display Value: [’ unicode ’, ’default’,
’member count’, ’view own work...
fieldsets Value: ((None, {’fields’: (’name’,
’default’)}), (’Permissions’,...
inlines Value: [<class
’qis.app.modeladmins.RightInline’>]
Inherited from qis.app.modeladmins.QisAdministrativeModelAdmin (Section A.8.4)change form template, change list template, history viewInherited from qis.app.modeladmins.QisModelAdmin (Section A.8.3)msa extended edit enableInherited from qis.admin.options.ModelAdminactions, actions on bottom, actions on top, date hierarchy,delete confirmation template, list display links, list editable, list filter,list per page, list select related, object history template, ordering,save as, save on top, search fieldsInherited from qis.admin.options.BaseModelAdminexclude, fields, filter horizontal, filter vertical, formfield overrides,prepopulated fields, radio fields, raw id fields
75
Technische Universiteit EindhovenUniversity of Technology
A.8.28 Class RightAdmin
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
qis.app.modeladmins.QisAdministrativeModelAdmin
qis.app.modeladmins.AlwaysAdministratorEditable
qis.app.modeladmins.RightAdmin
Methods
Inherited from qis.app.modeladmins.AlwaysAdministratorEditable(Section A.8.24)
has add permission(), has change permission(), has delete permission(), has view permission()
Inherited from qis.app.modeladmins.QisModelAdmin(Section A.8.3)
add view(), change view(), changelist view(), delete view(), formfield for dbfield(),formfield for foreignkey(), get model perms(), get urls(), no longer permitted(),queryset(), response add()
Inherited from qis.admin.options.ModelAdmin
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
76
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionmediaInherited from qis.admin.options.ModelAdminurlsInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionlist display Value: [’employee’, ’rightset’,
’view expertisegroup workload ob...
list filter Value: [’rightset’,
’view expertisegroup workload object’,
’view...
ordering Value: [’employee’]
fieldsets Value: ((None, {’fields’:(’rightset’, ’employee’)}), (’Right
ob...
Inherited from qis.app.modeladmins.QisAdministrativeModelAdmin (Section A.8.4)change form template, change list template, history viewInherited from qis.app.modeladmins.QisModelAdmin (Section A.8.3)msa extended edit enableInherited from qis.admin.options.ModelAdminactions, actions on bottom, actions on top, date hierarchy,delete confirmation template, inlines, list display links, list editable,list per page, list select related, object history template, save as,save on top, search fieldsInherited from qis.admin.options.BaseModelAdminexclude, fields, filter horizontal, filter vertical, formfield overrides,prepopulated fields, radio fields, raw id fields
77
Technische Universiteit EindhovenUniversity of Technology
A.8.29 Class CourseRelatedAdmin
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
qis.app.modeladmins.CourseRelatedAdmin
Known Subclasses: qis.app.modeladmins.CourseAdmin, qis.app.modeladmins.CourseInstanceAdmin,qis.app.modeladmins.EducationTaskAdmin
Class that handles add view/change view/delete view and form validation for AdminModelsthat are accessed from the Course changelist
Methods
form isvalid(self, request)
Determines if the form is valid
Mostly copied from parent class with view permission modifications.
add view(request, *args, **kwargs)
Determines the HttpResponse for the add view stage.
Mostly copied from parent class.
Overrides: qis.admin.options.ModelAdmin.add view
change view(request, *args, **kwargs)
Determines the HttpResponse for the change view stage.
Mostly copied from parent class.
Overrides: qis.admin.options.ModelAdmin.change view
delete view(request, *args, **kwargs)
Determines the HttpResponse for the delete view stage.
Overrides: qis.admin.options.ModelAdmin.delete view
Inherited from qis.app.modeladmins.QisModelAdmin(Section A.8.3)
78
Technische Universiteit EindhovenUniversity of Technology
changelist view(), formfield for dbfield(), formfield for foreignkey(), get model perms(),get urls(), has add permission(), has change permission(), has delete permission(),has view permission(), no longer permitted(), queryset(), response add()
Inherited from qis.admin.options.ModelAdmin
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionmediaInherited from qis.admin.options.ModelAdminurlsInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionchange form template Value:
’qis/courserelated change form.html’
delete confirmation templ-ate
Value:’qis/courserelated delete confirmation.html’
Inherited from qis.app.modeladmins.QisModelAdmin (Section A.8.3)history view, msa extended edit enableInherited from qis.admin.options.ModelAdmin
continued on next page
79
Technische Universiteit EindhovenUniversity of Technology
Name Descriptionactions, actions on bottom, actions on top, change list template,date hierarchy, inlines, list display, list display links, list editable,list filter, list per page, list select related, object history template,ordering, save as, save on top, search fieldsInherited from qis.admin.options.BaseModelAdminexclude, fields, fieldsets, filter horizontal, filter vertical,formfield overrides, prepopulated fields, radio fields, raw id fields
A.8.30 Class CourseAdmin
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
qis.app.modeladmins.CourseRelatedAdmin
qis.app.modeladmins.CourseAdmin
Methods
formfield for foreignkey(self, db field, request, **kwargs)
Limits changing related objects to those we are permitted to.
This is often not good enough. We may have view permissions for thingsthat we shouldn’t ever assign stuff to. To be overridden wherever this maybe the case.
Overrides: qis.admin.options.BaseModelAdmin.formfield for foreignkeyextit(inherited documentation)
Inherited from qis.app.modeladmins.CourseRelatedAdmin(Section A.8.29)
add view(), change view(), delete view(), form isvalid()
Inherited from qis.app.modeladmins.QisModelAdmin(Section A.8.3)
changelist view(), formfield for dbfield(), get model perms(), get urls(), has add permission(),has change permission(), has delete permission(), has view permission(), no longer permitted(),queryset(), response add()
80
Technische Universiteit EindhovenUniversity of Technology
Inherited from qis.admin.options.ModelAdmin
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionmediaInherited from qis.admin.options.ModelAdminurlsInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionfieldsets Value: ((None, {’fields’: (’code’,
’name’, ’given by’, ’descript...
list per page Value: 20
actions Value: None
ordering Value: [’code’]
list display Value: [’code’, ’name’, ’credits’]
search fields Value: [’code’, ’name’]
change list template Value: ’qis/course change list.html’
change list results Value:’qis/course change list results.html’
Inherited from qis.app.modeladmins.CourseRelatedAdmin (Section A.8.29)change form template, delete confirmation templateInherited from qis.app.modeladmins.QisModelAdmin (Section A.8.3)history view, msa extended edit enable
continued on next page
81
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionInherited from qis.admin.options.ModelAdminactions on bottom, actions on top, date hierarchy, inlines,list display links, list editable, list filter, list select related,object history template, save as, save on topInherited from qis.admin.options.BaseModelAdminexclude, fields, filter horizontal, filter vertical, formfield overrides,prepopulated fields, radio fields, raw id fields
A.8.31 Class CourseInstanceForm
object
django.utils.encoding.StrAndUnicode
django.forms.forms.BaseForm
django.forms.models.BaseModelForm
django.forms.models.ModelForm
qis.app.modeladmins.QisModelForm
qis.app.modeladmins.CourseInstanceForm
Methods
init (self, *args, **kwargs)
x. init (...) initializes x; see x. class . doc for signature
Overrides: object. init extit(inherited documentation)
Inherited from django.forms.models.BaseModelForm
clean(), date error message(), save(), unique error message(), validate unique()
Inherited from django.forms.forms.BaseForm
getitem (), iter (), unicode (), add initial prefix(), add prefix(), as p(),as table(), as ul(), full clean(), has changed(), hidden fields(), is multipart(),is valid(), non field errors(), visible fields()
Inherited from django.utils.encoding.StrAndUnicode
82
Technische Universiteit EindhovenUniversity of Technology
str ()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr ()
Properties
Name Descriptionmedia Provide a description of all media required to
render the widgets on this formInherited from django.forms.forms.BaseFormchanged data, errorsInherited from object
class
Class Variables
Name DescriptionInherited from qis.app.modeladmins.QisModelForm (Section A.8.2)base fields, declared fields
A.8.32 Class CourseInstanceAdmin
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
qis.app.modeladmins.CourseRelatedAdmin
qis.app.modeladmins.CourseInstanceAdmin
Methods
target groups(self )
83
Technische Universiteit EindhovenUniversity of Technology
Inherited from qis.app.modeladmins.CourseRelatedAdmin(Section A.8.29)
add view(), change view(), delete view(), form isvalid()
Inherited from qis.app.modeladmins.QisModelAdmin(Section A.8.3)
changelist view(), formfield for dbfield(), formfield for foreignkey(), get model perms(),get urls(), has add permission(), has change permission(), has delete permission(),has view permission(), no longer permitted(), queryset(), response add()
Inherited from qis.admin.options.ModelAdmin
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionmediaInherited from qis.admin.options.ModelAdminurlsInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionfieldsets Value: ((None, {’fields’: (’course’,
’responsibles’, ’subperiods...
list display Value: [’ unicode ’]
Inherited from qis.app.modeladmins.CourseRelatedAdmin (Section A.8.29)change form template, delete confirmation template
continued on next page
84
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionInherited from qis.app.modeladmins.QisModelAdmin (Section A.8.3)history view, msa extended edit enableInherited from qis.admin.options.ModelAdminactions, actions on bottom, actions on top, change list template,date hierarchy, inlines, list display links, list editable, list filter,list per page, list select related, object history template, ordering,save as, save on top, search fieldsInherited from qis.admin.options.BaseModelAdminexclude, fields, filter horizontal, filter vertical, formfield overrides,prepopulated fields, radio fields, raw id fields
A.8.33 Class TaskAdmin
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
qis.app.modeladmins.TaskAdmin
Methods
formfield for foreignkey(self, db field, request, **kwargs)
Limits changing related objects to those we are permitted to.
This is often not good enough. We may have view permissions for thingsthat we shouldn’t ever assign stuff to. To be overridden wherever this maybe the case.
Overrides: qis.admin.options.BaseModelAdmin.formfield for foreignkeyextit(inherited documentation)
Inherited from qis.app.modeladmins.QisModelAdmin(Section A.8.3)
add view(), change view(), changelist view(), delete view(), formfield for dbfield(),get model perms(), get urls(), has add permission(), has change permission(),has delete permission(), has view permission(), no longer permitted(), query-set(), response add()
85
Technische Universiteit EindhovenUniversity of Technology
Inherited from qis.admin.options.ModelAdmin
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionmediaInherited from qis.admin.options.ModelAdminurlsInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionfieldsets Value: ((None, {’fields’: (’name’,
’subdepartment’, ’type’, ’des...
list display Value: [’name’, ’type’,
’subdepartment’, ’hours’]
search fields Value: [’name’]
actions Value: None
ordering Value: [’name’]
list per page Value: 20
list filter Value: [’type’, ’subdepartment’]
change list template Value: ’qis/task change list.html’
change list results Value:’qis/task change list results.html’
Inherited from qis.app.modeladmins.QisModelAdmin (Section A.8.3)history view, msa extended edit enable
continued on next page
86
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionInherited from qis.admin.options.ModelAdminactions on bottom, actions on top, change form template,date hierarchy, delete confirmation template, inlines, list display links,list editable, list select related, object history template, save as,save on topInherited from qis.admin.options.BaseModelAdminexclude, fields, filter horizontal, filter vertical, formfield overrides,prepopulated fields, radio fields, raw id fields
A.8.34 Class EducationTaskAdmin
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
qis.app.modeladmins.CourseRelatedAdmin
qis.app.modeladmins.EducationTaskAdmin
Methods
formfield for foreignkey(self, db field, request, **kwargs)
Limits changing related objects to those we are permitted to.
This is often not good enough. We may have view permissions for thingsthat we shouldn’t ever assign stuff to. To be overridden wherever this maybe the case.
Overrides: qis.admin.options.BaseModelAdmin.formfield for foreignkeyextit(inherited documentation)
Inherited from qis.app.modeladmins.CourseRelatedAdmin(Section A.8.29)
add view(), change view(), delete view(), form isvalid()
Inherited from qis.app.modeladmins.QisModelAdmin(Section A.8.3)
changelist view(), formfield for dbfield(), get model perms(), get urls(), has add permission(),
87
Technische Universiteit EindhovenUniversity of Technology
has change permission(), has delete permission(), has view permission(), no longer permitted(),queryset(), response add()
Inherited from qis.admin.options.ModelAdmin
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionmediaInherited from qis.admin.options.ModelAdminurlsInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionfieldsets Value: ((None, {’fields’:
(’course instance provisional’,
’educa...
list display Value: [’course instance definitive’,
’course instance provision...
Inherited from qis.app.modeladmins.CourseRelatedAdmin (Section A.8.29)change form template, delete confirmation templateInherited from qis.app.modeladmins.QisModelAdmin (Section A.8.3)history view, msa extended edit enableInherited from qis.admin.options.ModelAdmin
continued on next page
88
Technische Universiteit EindhovenUniversity of Technology
Name Descriptionactions, actions on bottom, actions on top, change list template,date hierarchy, inlines, list display links, list editable, list filter,list per page, list select related, object history template, ordering,save as, save on top, search fieldsInherited from qis.admin.options.BaseModelAdminexclude, fields, filter horizontal, filter vertical, formfield overrides,prepopulated fields, radio fields, raw id fields
A.8.35 Class AssignmentForm
object
django.utils.encoding.StrAndUnicode
django.forms.forms.BaseForm
django.forms.models.BaseModelForm
django.forms.models.ModelForm
qis.app.modeladmins.QisModelForm
qis.app.modeladmins.AssignmentForm
Methods
init (self, *args, **kwargs)
x. init (...) initializes x; see x. class . doc for signature
Overrides: object. init extit(inherited documentation)
Inherited from django.forms.models.BaseModelForm
clean(), date error message(), save(), unique error message(), validate unique()
Inherited from django.forms.forms.BaseForm
getitem (), iter (), unicode (), add initial prefix(), add prefix(), as p(),as table(), as ul(), full clean(), has changed(), hidden fields(), is multipart(),is valid(), non field errors(), visible fields()
Inherited from django.utils.encoding.StrAndUnicode
89
Technische Universiteit EindhovenUniversity of Technology
str ()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr ()
Properties
Name Descriptionmedia Provide a description of all media required to
render the widgets on this formInherited from django.forms.forms.BaseFormchanged data, errorsInherited from object
class
Class Variables
Name DescriptionInherited from qis.app.modeladmins.QisModelForm (Section A.8.2)base fields, declared fields
A.8.36 Class AssignmentAdmin
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
qis.app.modeladmins.AssignmentAdmin
Class that handles add view/change view/delete view and form validation for assignments.Primarily exists to return to the page from which the add/change/delete request originated.
90
Technische Universiteit EindhovenUniversity of Technology
Methods
changelist view(self, request, extra context=None, system year=None)
The ’change list’ admin view for this model.
Copied from parent class with view permission modifications. Also addedsystem year in context.
Overrides: qis.admin.options.ModelAdmin.changelist view extit(inheriteddocumentation)
form isvalid(self, request)
Determines if the form is valid
Mostly copied from parent class with view permission modifications.
add view(request, *args, **kwargs)
Determines the HttpResponse for the add view stage. Takes the defaultresponse object and changes the URL according to GET-data.
Mostly copied from parent class.
Overrides: qis.admin.options.ModelAdmin.add view
change view(request, *args, **kwargs)
Determines the HttpResponse for the change view stage. Takes the defaultresponse object and changes the URL according to GET-data.
Calls parent class, only copied relevant sections we needed to override.
Overrides: qis.admin.options.ModelAdmin.change view
delete view(request, *args, **kwargs)
Determines the HttpResponse for the delete view stage. Takes the defaultresponse object and changes the URL according to GET-data.
Overrides: qis.admin.options.ModelAdmin.delete view
Inherited from qis.app.modeladmins.QisModelAdmin(Section A.8.3)
formfield for dbfield(), formfield for foreignkey(), get model perms(), get urls(),has add permission(), has change permission(), has delete permission(), has view permission(),no longer permitted(), queryset(), response add()
Inherited from qis.admin.options.ModelAdmin
91
Technische Universiteit EindhovenUniversity of Technology
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionmediaInherited from qis.admin.options.ModelAdminurlsInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionchange form template Value:
’qis/assignmentrelated change form.html’
delete confirmation templ-ate
Value:’qis/assignmentrelated delete confirmation.html’
ordering Value: (’task’)
fieldsets Value: ((None, {’fields’: (’task’,
’employment’, ’hours’, ’share...
list display Value: [’task’, ’employment’,
’hours’]
change list results Value:’qis/task change list result.html’
Inherited from qis.app.modeladmins.QisModelAdmin (Section A.8.3)history view, msa extended edit enableInherited from qis.admin.options.ModelAdmin
continued on next page
92
Technische Universiteit EindhovenUniversity of Technology
Name Descriptionactions, actions on bottom, actions on top, change list template,date hierarchy, inlines, list display links, list editable, list filter,list per page, list select related, object history template, save as,save on top, search fieldsInherited from qis.admin.options.BaseModelAdminexclude, fields, filter horizontal, filter vertical, formfield overrides,prepopulated fields, radio fields, raw id fields
A.8.37 Class NotificationAdmin
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
qis.app.modeladmins.NotificationAdmin
Methods
Inherited from qis.app.modeladmins.QisModelAdmin(Section A.8.3)
add view(), change view(), changelist view(), delete view(), formfield for dbfield(),formfield for foreignkey(), get model perms(), get urls(), has add permission(),has change permission(), has delete permission(), has view permission(), no longer permitted(),queryset(), response add()
Inherited from qis.admin.options.ModelAdmin
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
Inherited from object
93
Technische Universiteit EindhovenUniversity of Technology
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionmediaInherited from qis.admin.options.ModelAdminurlsInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionfieldsets Value: ((None, {’fields’: (’date’,
’object’)}))list display Value: [’date’, ’object’]
Inherited from qis.app.modeladmins.QisModelAdmin (Section A.8.3)history view, msa extended edit enableInherited from qis.admin.options.ModelAdminactions, actions on bottom, actions on top, change form template,change list template, date hierarchy, delete confirmation template,inlines, list display links, list editable, list filter, list per page,list select related, object history template, ordering, save as, save on top,search fieldsInherited from qis.admin.options.BaseModelAdminexclude, fields, filter horizontal, filter vertical, formfield overrides,prepopulated fields, radio fields, raw id fields
94
Technische Universiteit EindhovenUniversity of Technology
A.8.38 Class EmploymentInline
object
qis.admin.options.BaseModelAdmin
qis.admin.options.InlineModelAdmin
qis.admin.options.StackedInline
qis.app.modeladmins.EmploymentInline
Methods
formfield for foreignkey(self, db field, request, **kwargs)
Get a form Field for a ForeignKey.
Overrides: qis.admin.options.BaseModelAdmin.formfield for foreignkeyextit(inherited documentation)
get formset(self, request, obj=None, **kwargs)
Limits employments to those we may modify
Overrides: qis.admin.options.InlineModelAdmin.get formset
Inherited from qis.admin.options.InlineModelAdmin
init (), get fieldsets()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for dbfield(), formfield for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from qis.admin.options.InlineModelAdminmediaInherited from qis.admin.options.BaseModelAdmin
continued on next page
95
Technische Universiteit EindhovenUniversity of Technology
Name Descriptiondeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionextra Value: 1
Inherited from qis.admin.options.StackedInlinetemplateInherited from qis.admin.options.InlineModelAdminfk name, max num, verbose name, verbose name pluralInherited from qis.admin.options.BaseModelAdminexclude, fields, fieldsets, filter horizontal, filter vertical,formfield overrides, prepopulated fields, radio fields, raw id fields
A.8.39 Class EmployeeAdmin
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
qis.app.modeladmins.EmployeeAdmin
Methods
get urls(self )
Overrides: qis.admin.options.ModelAdmin.get urls
view view(request, *args, **kwargs)
Show the current user’s employee overview page
edit details view(*args, **kw)
Edit employee details view. Uses non-model forms for clarity.
96
Technische Universiteit EindhovenUniversity of Technology
Inherited from qis.app.modeladmins.QisModelAdmin(Section A.8.3)
add view(), change view(), changelist view(), delete view(), formfield for dbfield(),formfield for foreignkey(), get model perms(), has add permission(), has change permission(),has delete permission(), has view permission(), no longer permitted(), query-set(), response add()
Inherited from qis.admin.options.ModelAdmin
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name Descriptiondeclared editdetails fieldse-tsmediaInherited from qis.admin.options.ModelAdminurlsInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionlist display Value: (’ unicode ’)
search fields Value: [’user name’, ’first name’,
’last name’]
ordering Value: (’last name’)
list per page Value: 20
continued on next page
97
Technische Universiteit EindhovenUniversity of Technology
Name Descriptioninlines Value: [<class
’qis.app.modeladmins.EmploymentInline’>]
fieldsets Value: ((’Personal Information’,
{’fields’: (’first name’, ’last...
editdetails fields Value:(’receive notifications employee’,
’receive notifications...
change list template Value: ’qis/employee change list.html’
Inherited from qis.app.modeladmins.QisModelAdmin (Section A.8.3)history view, msa extended edit enableInherited from qis.admin.options.ModelAdminactions, actions on bottom, actions on top, change form template,date hierarchy, delete confirmation template, list display links,list editable, list filter, list select related, object history template, save as,save on topInherited from qis.admin.options.BaseModelAdminexclude, fields, filter horizontal, filter vertical, formfield overrides,prepopulated fields, radio fields, raw id fields
A.8.40 Class EmploymentAdmin
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
qis.app.modeladmins.EmploymentAdmin
Methods
change view(self, request, object id, extra context=None,system year=None)
Generic change view page with additional system year attribute
Overrides: qis.admin.options.ModelAdmin.change view extit(inheriteddocumentation)
98
Technische Universiteit EindhovenUniversity of Technology
changelist view(self, request, extra context=None, system year=None)
The ’change list’ admin view for this model.
Copied from parent class with view permission modifications. Also addedsystem year in context.
Overrides: qis.admin.options.ModelAdmin.changelist view extit(inheriteddocumentation)
get urls(self )
Overrides: qis.admin.options.ModelAdmin.get urls
fill research hours(self, request, object id, extra context=None,system year=None)
fill all research hours(self, request, extra context=None,system year=None)
Inherited from qis.app.modeladmins.QisModelAdmin(Section A.8.3)
add view(), delete view(), formfield for dbfield(), formfield for foreignkey(), get model perms(),has add permission(), has change permission(), has delete permission(), has view permission(),no longer permitted(), queryset(), response add()
Inherited from qis.admin.options.ModelAdmin
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name Descriptionmedia
continued on next page
99
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionInherited from qis.admin.options.ModelAdminurlsInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionfieldsets Value: ((None, {’fields’:
(’expertise group’, ’position’,
’fte’,...
list display Value: [’employee’,
’expertise group’]
change form template Value:’qis/employee sub change form.html’
Inherited from qis.app.modeladmins.QisModelAdmin (Section A.8.3)history view, msa extended edit enableInherited from qis.admin.options.ModelAdminactions, actions on bottom, actions on top, change list template,date hierarchy, delete confirmation template, inlines, list display links,list editable, list filter, list per page, list select related,object history template, ordering, save as, save on top, search fieldsInherited from qis.admin.options.BaseModelAdminexclude, fields, filter horizontal, filter vertical, formfield overrides,prepopulated fields, radio fields, raw id fields
A.8.41 Class ReportAdmin
object
qis.admin.options.BaseModelAdmin
qis.admin.options.ModelAdmin
qis.app.modeladmins.QisModelAdmin
qis.app.modeladmins.ReportAdmin
100
Technische Universiteit EindhovenUniversity of Technology
Methods
get urls(self )
Overrides: qis.admin.options.ModelAdmin.get urls
report context(self, report, request, system year)
Return context variables needed for rendering the given report
render view(self, request, context, add=False, change=False,form url=’’, obj=None, system year=None)
view csv(request, *args, **kwargs)
view view(request, *args, **kwargs)
The ’view’ admin view for this model.
Inherited from qis.app.modeladmins.QisModelAdmin(Section A.8.3)
add view(), change view(), changelist view(), delete view(), formfield for dbfield(),formfield for foreignkey(), get model perms(), has add permission(), has change permission(),has delete permission(), has view permission(), no longer permitted(), query-set(), response add()
Inherited from qis.admin.options.ModelAdmin
call (), init (), action checkbox(), construct change message(), get action(),get action choices(), get actions(), get changelist form(), get changelist formset(),get fieldsets(), get form(), get formsets(), log addition(), log change(), log deletion(),message user(), render change form(), response action(), response change(), save form(),save formset(), save model()
Inherited from qis.admin.options.BaseModelAdmin
formfield for choice field(), formfield for manytomany()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name Descriptionmedia
continued on next page
101
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionInherited from qis.admin.options.ModelAdminurlsInherited from qis.admin.options.BaseModelAdmindeclared fieldsetsInherited from object
class
Class Variables
Name Descriptionactions Value: None
title Value: ’’
fieldsets Value: ((None, {’fields’: (’name’,
’template’, ’targetmodel’, ’g...
view template Value: ’qis/report generator.html’
change list template Value: ’qis/report change list.html’
Inherited from qis.app.modeladmins.QisModelAdmin (Section A.8.3)history view, msa extended edit enableInherited from qis.admin.options.ModelAdminactions on bottom, actions on top, change form template,date hierarchy, delete confirmation template, inlines, list display,list display links, list editable, list filter, list per page, list select related,object history template, ordering, save as, save on top, search fieldsInherited from qis.admin.options.BaseModelAdminexclude, fields, filter horizontal, filter vertical, formfield overrides,prepopulated fields, radio fields, raw id fields
102
Technische Universiteit EindhovenUniversity of Technology
A.9 Module qis.app.models
A.9.1 Functions
superuser override(wrapped)
Decorator to grant superusers full object permissions
get m2m join queryset(qs or model, field)
Returns a join between Model and the related model via field.
qs or model is a base queryset or the model class. field is theManyToManyField’s attribute name.
Only the primary key fields of join models should be used, the rest is omittedfor performance concerns. Model’s primary key field is accessible via the ’pk’property, the related model’s primary key field is set via the M2M’s reversename (often singularfieldname id).
This offers performance improvements with M2M-fields. Before, you had todo a query for every object’s M2M-field you’d wish to resolve, this gets themall at once.
Idea from http://www.caktusgroup.com/blog/2009/09/28/custom-joins-with-djangos-queryjoin/
A.9.2 Variables
Name DescriptionTASK TYPES Value: ((’researchproject’, ’Research
project’), (’managementpro...
PERMISSIONS Value: ((’view own workload’, ’VOW’,
[]), (’view expertisegroup ...
DJANGO QISGROUP FO-RMAT
Value: ’[QIS Application Group] %s’
RIGHT OBJECTS Value:[(’view expertisegroup workload object’,
’VEGW object’, ’...
REPORT GROUPS Value: [(1, ’Workload’), (2,
’Employee reports’), (3, ’Course
In...
MAXYEAR Value: 9999
MINYEAR Value: 1
continued on next page
103
Technische Universiteit EindhovenUniversity of Technology
Name Descriptiondatetime CAPI Value: <PyCObject object at
0x8eba110>name Value: ’MSDCI object’
object Value:’modify subdepartment courseinf object’
perms Value: [’change system’,
’view employee’, ’change employee’,
’de...
related name Value: ’modify courseinf rights’
right Value: ’modify system administration’
A.9.3 Class QisManager
object
django.db.models.manager.Manager
qis.app.models.QisManager
Known Subclasses: qis.app.models.AbstractRightManager, qis.app.models.AbstractRightSetManager,qis.app.models.AssignmentManager, qis.app.models.CourseInstanceManager, qis.app.models.CourseManager,qis.app.models.DepartmentManager, qis.app.models.EducationTaskManager, qis.app.models.EducationTypeManager,qis.app.models.EmployeeManager, qis.app.models.EmploymentManager, qis.app.models.ExpertiseGroupManager,qis.app.models.PeriodManager, qis.app.models.PositionManager, qis.app.models.ReportManager,qis.app.models.StudyPhaseManager, qis.app.models.StudyProgramManager, qis.app.models.SubdepartmentManager,qis.app.models.SubperiodManager, qis.app.models.SystemYearManager, qis.app.models.TargetGroupManager,qis.app.models.TargetGroupNameManager, qis.app.models.TaskManager, qis.app.models.TaskTypeManager
Methods
get query set(self )
Returns a new QuerySet object. Subclasses can override this method toeasily customize the behavior of the Manager.
Overrides: django.db.models.manager.Manager.get query set extit(inheriteddocumentation)
permitted(self )
Returns the objects the current user has any permissions for.
Intended to be overridden, the default is very restrictive.
104
Technische Universiteit EindhovenUniversity of Technology
view permitted(self )
Returns the objects the current user has view permissions for.
Having modify permissions does not imply having view permissions.
Intended to be overridden, the default is very restrictive.
modify permitted(self )
Returns the objects the current user has modify permissions for.
Intended to be overridden, the default is very restrictive.
Inherited from django.db.models.manager.Manager
init (), aggregate(), all(), annotate(), complex filter(), contribute to class(),count(), create(), dates(), defer(), distinct(), exclude(), extra(), filter(), get(),get empty query set(), get or create(), in bulk(), iterator(), latest(), none(),only(), order by(), reverse(), select related(), update(), values(), values list()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
Class Variables
Name Descriptionslotnames Value: []
Inherited from django.db.models.manager.Managercreation counter
105
Technische Universiteit EindhovenUniversity of Technology
A.9.4 Class QisModel
object
django.db.models.base.Model
qis.app.models.QisModel
Known Subclasses: qis.app.models.AbstractRight, qis.app.models.AbstractRightSet, qis.app.models.Assignment,qis.app.models.AutoYearQisModel, qis.app.models.Course, qis.app.models.CourseInstance,qis.app.models.Task, qis.app.models.EducationType, qis.app.models.Employee, qis.app.models.Employment,qis.app.models.ExpertiseGroup, qis.app.models.Notification, qis.app.models.Report, qis.app.models.Subdepartment,qis.app.models.Subperiod, qis.app.models.System, qis.app.models.SystemYear, qis.app.models.TargetGroup,qis.app.models.TaskType
Methods
objects(...)
all objects(...)
get view permission(self )
Returns the name of the django view permission for this model
can view(self )
Returns True if this object can be viewed by the current user.
can modify(self )
Returns True if this object can be modified by the current user.
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
106
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionInherited from django.db.models.base.ModelpkInherited from object
class
A.9.5 Class AutoYearQisModel
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.AutoYearQisModel
Known Subclasses: qis.app.models.Department, qis.app.models.Period, qis.app.models.Position,qis.app.models.StudyPhase, qis.app.models.StudyProgram, qis.app.models.TargetGroupName
A QisModel that automatically fills the system year field when missing.
Subclasses must define a system year field of type ForeignKey to SystemYear.
Methods
save(self, force insert=False, force update=False)
Saves the current model to the database, filling SystemYear when not set
Overrides: django.db.models.base.Model.save
all objects(...)
Overrides: qis.app.models.QisModel.all objects
objects(...)
Overrides: qis.app.models.QisModel.objects
Inherited from qis.app.models.QisModel(Section A.9.4)
can modify(), can view(), get view permission()
Inherited from django.db.models.base.Model
107
Technische Universiteit EindhovenUniversity of Technology
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
Name DescriptionInherited from django.db.models.base.ModelpkInherited from object
class
A.9.6 Class System
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.System
System object - only one exists in the entire application.
Global runtime-configurable settings are fields of this object.
Methods
get()
Get is a guaranteed way to fetch the one System object we have
all objects(...)
Overrides: qis.app.models.QisModel.all objects
get id display(*moreargs, **morekwargs)
108
Technische Universiteit EindhovenUniversity of Technology
objects(...)
Overrides: qis.app.models.QisModel.objects
Inherited from qis.app.models.QisModel(Section A.9.4)
can modify(), can view(), get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
Name DescriptionInherited from django.db.models.base.ModelpkInherited from object
class
Class Variables
Name DescriptionID Value: 1
id Value: models.IntegerField(choices=
((ID, str(ID)),), default= I...
connector nt enabled Value: models.BooleanField(default=
False)
employees Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
notifications Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
reports Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
rightsets Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
system years Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
task types Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
109
Technische Universiteit EindhovenUniversity of Technology
A.9.7 Class Notification
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.Notification
Notification(id, system id, date, object)
Methods
all objects(...)
Overrides: qis.app.models.QisModel.all objects
get next by date(*moreargs, **morekwargs)
get previous by date(*moreargs, **morekwargs)
objects(...)
Overrides: qis.app.models.QisModel.objects
Inherited from qis.app.models.QisModel(Section A.9.4)
can modify(), can view(), get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
Name DescriptionInherited from django.db.models.base.ModelpkInherited from object
continued on next page
110
Technische Universiteit EindhovenUniversity of Technology
Name Descriptionclass
Class Variables
Name Descriptionsystem Value: models.ForeignKey(System,
related name= ’notifications’, ...
date Value: models.DateField()
object Value: models.CharField(max length=
255)
A.9.8 Class SystemYearManager
object
django.db.models.manager.Manager
qis.app.models.QisManager
qis.app.models.SystemYearManager
Methods
current(self )
permitted(self )
Returns the objects the current user has any permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.permitted extit(inheriteddocumentation)
111
Technische Universiteit EindhovenUniversity of Technology
modify permitted(self )
Returns the objects the current user has modify permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.modify permitted extit(inheriteddocumentation)
ordered(self )
Return a queryset of system years ordered by begins.
This list is cached.
Inherited from qis.app.models.QisManager(Section A.9.3)
get query set(), view permitted()
Inherited from django.db.models.manager.Manager
init (), aggregate(), all(), annotate(), complex filter(), contribute to class(),count(), create(), dates(), defer(), distinct(), exclude(), extra(), filter(), get(),get empty query set(), get or create(), in bulk(), iterator(), latest(), none(),only(), order by(), reverse(), select related(), update(), values(), values list()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
Class Variables
Name DescriptionInherited from qis.app.models.QisManager (Section A.9.3)
slotnamesInherited from django.db.models.manager.Managercreation counter
112
Technische Universiteit EindhovenUniversity of Technology
A.9.9 Class SystemYear
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.SystemYear
SystemYear(id, system id, copy from year id, name, begins, ends, fte amount)
Methods
objects(...)
Overrides: qis.app.models.QisModel.objects
is closed(self )
Returns a boolean with the closed status of the year
current closed for user()
Returns True if the current SystemYear doesn’t have any subdepartmentsopen on which the user has modify permissions.
all subdepartments closed(self )
Returns a string with the closed status of the year
copy year(self, other)
Copies all related data of another year to self
predecessor(self )
Returns the SystemYear directly preceeding the current year
successor(self )
Returns the SystemYear directly succeeding the current year
113
Technische Universiteit EindhovenUniversity of Technology
get default()
Returns the most recent open SystemYear, preferably not from the future.
This function always returns a valid year. If one doesn’t exist, create adefault one.
get current(request=None)
Returns the name of the currently selected SystemYear.
The name is not checked for validity. The request is inspected for this towork. If request is omitted, we will retrieve it from the thread-local store. Wecannot guarantee the return value to be None if no request is being handledor when no such year is applicable.
get(name)
Returns the SystemYear object matching the given name.
This value is cached for every request.
get current object()
Returns the current SystemYear object
get or 404(system year)
Returns the system year object if it exists, raises Http404 otherwise
unicode (self )
save(self, force insert=False, force update=False)
Custom save method used to keep the dummy copy unset and callcopy year() when needed
Overrides: django.db.models.base.Model.save
all objects(...)
Overrides: qis.app.models.QisModel.all objects
get next by begins(*moreargs, **morekwargs)
get next by ends(*moreargs, **morekwargs)
114
Technische Universiteit EindhovenUniversity of Technology
get previous by begins(*moreargs, **morekwargs)
get previous by ends(*moreargs, **morekwargs)
Inherited from qis.app.models.QisModel(Section A.9.4)
can modify(), can view(), get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
Name DescriptionInherited from django.db.models.base.ModelpkInherited from object
class
Class Variables
Name Descriptionsystem Value: models.ForeignKey(System,
related name= ’system years’, d...
copy from year Value: models.ForeignKey(’self’,
verbose name= "Copy from year",...
name Value: models.SlugField(unique= True,
help text= "Allowed charac...
begins Value: models.DateField(unique= True)
ends Value: models.DateField()
fte amount Value:models.IntegerField(verbose name=
’Hours per fte’)
re current Value: re.compile(r’^/([-\w]+)’)departments Value:
<django.db.models.fields.related.ForeignRelatedObjectsDes...
periods Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
continued on next page
115
Technische Universiteit EindhovenUniversity of Technology
Name Descriptionpositions Value:
<django.db.models.fields.related.ForeignRelatedObjectsDes...
study phase Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
study programs Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
systemyear set Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
target group names Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
A.9.10 Class PeriodManager
object
django.db.models.manager.Manager
qis.app.models.QisManager
qis.app.models.PeriodManager
Methods
get query set(self )
Returns a new QuerySet object. Subclasses can override this method toeasily customize the behavior of the Manager.
Overrides: django.db.models.manager.Manager.get query set extit(inheriteddocumentation)
permitted(self )
Returns the objects the current user has any permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.permitted extit(inheriteddocumentation)
116
Technische Universiteit EindhovenUniversity of Technology
modify permitted(self )
Returns the objects the current user has modify permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.modify permitted extit(inheriteddocumentation)
Inherited from qis.app.models.QisManager(Section A.9.3)
view permitted()
Inherited from django.db.models.manager.Manager
init (), aggregate(), all(), annotate(), complex filter(), contribute to class(),count(), create(), dates(), defer(), distinct(), exclude(), extra(), filter(), get(),get empty query set(), get or create(), in bulk(), iterator(), latest(), none(),only(), order by(), reverse(), select related(), update(), values(), values list()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
Class Variables
Name DescriptionInherited from qis.app.models.QisManager (Section A.9.3)
slotnamesInherited from django.db.models.manager.Managercreation counter
117
Technische Universiteit EindhovenUniversity of Technology
A.9.11 Class Period
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.AutoYearQisModel
qis.app.models.Period
Period(id, system year id, name)
Methods
objects(...)
Overrides: qis.app.models.QisModel.objects
unicode (self )
all objects(...)
Overrides: qis.app.models.QisModel.all objects
Inherited from qis.app.models.AutoYearQisModel(Section A.9.5)
save()
Inherited from qis.app.models.QisModel(Section A.9.4)
can modify(), can view(), get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
118
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionInherited from django.db.models.base.ModelpkInherited from object
class
Class Variables
Name Descriptionsystem year Value: models.ForeignKey(SystemYear,
related name= ’periods’)
name Value: models.CharField(max length=
255)
subperiods Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
A.9.12 Class SubperiodManager
object
django.db.models.manager.Manager
qis.app.models.QisManager
qis.app.models.SubperiodManager
Methods
get query set(self )
Returns a new QuerySet object. Subclasses can override this method toeasily customize the behavior of the Manager.
Overrides: django.db.models.manager.Manager.get query set extit(inheriteddocumentation)
119
Technische Universiteit EindhovenUniversity of Technology
permitted(self )
Returns the objects the current user has any permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.permitted extit(inheriteddocumentation)
modify permitted(self )
Returns the objects the current user has modify permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.modify permitted extit(inheriteddocumentation)
Inherited from qis.app.models.QisManager(Section A.9.3)
view permitted()
Inherited from django.db.models.manager.Manager
init (), aggregate(), all(), annotate(), complex filter(), contribute to class(),count(), create(), dates(), defer(), distinct(), exclude(), extra(), filter(), get(),get empty query set(), get or create(), in bulk(), iterator(), latest(), none(),only(), order by(), reverse(), select related(), update(), values(), values list()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
Class Variables
Name DescriptionInherited from qis.app.models.QisManager (Section A.9.3)
slotnamesInherited from django.db.models.manager.Manager
continued on next page
120
Technische Universiteit EindhovenUniversity of Technology
Name Descriptioncreation counter
A.9.13 Class Subperiod
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.Subperiod
Subperiod(id, period id, name, weeks)
Methods
objects(...)
Overrides: qis.app.models.QisModel.objects
unicode (self )
all objects(...)
Overrides: qis.app.models.QisModel.all objects
Inherited from qis.app.models.QisModel(Section A.9.4)
can modify(), can view(), get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
Name DescriptionInherited from django.db.models.base.Model
continued on next page
121
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionpkInherited from object
class
Class Variables
Name Descriptionperiod Value: models.ForeignKey(Period,
related name= ’subperiods’)
name Value: models.CharField(max length=
255)
weeks Value: models.IntegerField(blank=
True, null= True)
course instances Value:<django.db.models.fields.related.ManyRelatedObjectsDescri...
education tasks Value:<django.db.models.fields.related.ManyRelatedObjectsDescri...
A.9.14 Class DepartmentManager
object
django.db.models.manager.Manager
qis.app.models.QisManager
qis.app.models.DepartmentManager
Methods
get query set(self )
Returns a new QuerySet object. Subclasses can override this method toeasily customize the behavior of the Manager.
Overrides: django.db.models.manager.Manager.get query set extit(inheriteddocumentation)
122
Technische Universiteit EindhovenUniversity of Technology
permitted(self, *args, **kwargs)
Returns the objects the current user has any permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.permitted extit(inheriteddocumentation)
view permitted(self, *args, **kwargs)
Returns the objects the current user has view permissions for.
Having modify permissions does not imply having view permissions.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.view permitted extit(inheriteddocumentation)
administrative permitted(self, *args, **kwargs)
Inherited from qis.app.models.QisManager(Section A.9.3)
modify permitted()
Inherited from django.db.models.manager.Manager
init (), aggregate(), all(), annotate(), complex filter(), contribute to class(),count(), create(), dates(), defer(), distinct(), exclude(), extra(), filter(), get(),get empty query set(), get or create(), in bulk(), iterator(), latest(), none(),only(), order by(), reverse(), select related(), update(), values(), values list()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
Class Variables
123
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionInherited from qis.app.models.QisManager (Section A.9.3)
slotnamesInherited from django.db.models.manager.Managercreation counter
A.9.15 Class Department
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.AutoYearQisModel
qis.app.models.Department
Department(id, system year id, name)
Methods
objects(...)
Overrides: qis.app.models.QisModel.objects
can view(self )
Returns True if this object can be viewed by the current user.
Overrides: qis.app.models.QisModel.can view
can modify(self )
Returns True if this object can be modified by the current user.
Overrides: qis.app.models.QisModel.can modify
unicode (self )
all objects(...)
Overrides: qis.app.models.QisModel.all objects
Inherited from qis.app.models.AutoYearQisModel(Section A.9.5)
124
Technische Universiteit EindhovenUniversity of Technology
save()
Inherited from qis.app.models.QisModel(Section A.9.4)
get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
Name DescriptionInherited from django.db.models.base.ModelpkInherited from object
class
Class Variables
Name Descriptionsystem year Value: models.ForeignKey(SystemYear,
related name= ’departments’)
name Value: models.CharField(max length=
255)
subdepartments Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
view workload rights Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
125
Technische Universiteit EindhovenUniversity of Technology
A.9.16 Class SubdepartmentManager
object
django.db.models.manager.Manager
qis.app.models.QisManager
qis.app.models.SubdepartmentManager
Methods
get query set(self )
Returns a new QuerySet object. Subclasses can override this method toeasily customize the behavior of the Manager.
Overrides: django.db.models.manager.Manager.get query set extit(inheriteddocumentation)
permitted(self, *args, **kwargs)
Returns the objects the current user has any permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.permitted extit(inheriteddocumentation)
view permitted(self, *args, **kwargs)
All subdepartments we have view permissions for.
Also takes inheritance from Department into account.
Overrides: qis.app.models.QisManager.view permitted
view workload permitted(self, *args, **kwargs)
All subdepartments we can view the workload for.
Also takes inheritance from Department into account.
Introduced because view permitted does not guarantee you have workloadpermissions. Used in reports per subdepartment.
126
Technische Universiteit EindhovenUniversity of Technology
modify permitted(self, *args, **kwargs)
All subdepartments we can modify in some way.
If alsoclosed=True, we include subdepartments that are closed which wouldotherwise be modifyable.
Overrides: qis.app.models.QisManager.modify permitted
modify workload permitted(self, *args, **kwargs)
All subdepartments we can modify the workload for.
If alsoclosed=True, we include subdepartments that are closed which wouldotherwise be modifyable.
modify courseinf permitted(self, *args, **kwargs)
All subdepartments we can modify the course information for.
If alsoclosed=True, we include subdepartments that are closed which wouldotherwise be modifyable.
administrative permitted(self, *args, **kwargs)
Inherited from django.db.models.manager.Manager
init (), aggregate(), all(), annotate(), complex filter(), contribute to class(),count(), create(), dates(), defer(), distinct(), exclude(), extra(), filter(), get(),get empty query set(), get or create(), in bulk(), iterator(), latest(), none(),only(), order by(), reverse(), select related(), update(), values(), values list()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
Class Variablescontinued on next page
127
Technische Universiteit EindhovenUniversity of Technology
Name Description
Name DescriptionInherited from qis.app.models.QisManager (Section A.9.3)
slotnamesInherited from django.db.models.manager.Managercreation counter
A.9.17 Class Subdepartment
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.Subdepartment
Subdepartment(id, department id, name, formula, custom education type attributes, cus-tom course attributes, closed)
Methods
objects(...)
Overrides: qis.app.models.QisModel.objects
can view(self )
Returns True if this object can be viewed by the current user.
Overrides: qis.app.models.QisModel.can view
can modify(self )
Returns True if this object can be modified by the current user.
Overrides: qis.app.models.QisModel.can modify
128
Technische Universiteit EindhovenUniversity of Technology
send notifications courses(self, system year=None, send mail=True)
Sends a notification to all employees whose courseinstaces are about tochange. Supposed to be called just before make courses definitive destroysall provisional data.
Also sends an email to all persons with right ’edit subdepartment workload’
Latest version should also send mails to people with assignments related tothese courses, as well as the expertisegroupsleaders of related eg’s.
if send mail is false, no mails will actually be sent. The function will returnall mails it sends (or would send).
send notifications tasks(self, system year=None, send mail=True)
Sends a notification to all employees whose assignments are about to change.Also mail expertisegroup leaders. Supposed to be called just beforemake tasks definitive destroys all provisional data.
if send mail is false, no mails will actually be sent. The function will stillreturn all mails it creates.
changed courseinstances(self, system year=None)
Returns a list of courseinstaces which will have been changed since the lastdefinitive version.
changed assignments(self, system year=None)
Returns a list of assignments which will have been changed since the lastdefinitive version.
close year(self )
make assignments definitive(self )
make course instances definitive(self )
unicode (self )
all objects(...)
Overrides: qis.app.models.QisModel.all objects
Inherited from qis.app.models.QisModel(Section A.9.4)
129
Technische Universiteit EindhovenUniversity of Technology
get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
Name DescriptionInherited from django.db.models.base.ModelpkInherited from object
class
Class Variables
Name Descriptiondepartment Value: models.ForeignKey(Department,
related name= ’subdepartmen...
name Value: models.CharField(max length=
255)
formula Value: models.TextField(blank= True,
null= True)
custom education type at-tributes
Value: models.TextField(blank= True,
null= True)
custom course attributes Value: models.TextField(blank= True,
null= True)
closed Value: models.BooleanField(default=
False)
courses Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
education types Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
expertise groups Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
modify courseinf rights Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
modify workload rights Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
continued on next page
130
Technische Universiteit EindhovenUniversity of Technology
Name Descriptiontasks Value:
<django.db.models.fields.related.ForeignRelatedObjectsDes...
view workload rights Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
A.9.18 Class StudyProgramManager
object
django.db.models.manager.Manager
qis.app.models.QisManager
qis.app.models.StudyProgramManager
Methods
get query set(self )
Returns all Study Programs of the current year
Overrides: django.db.models.manager.Manager.get query set
permitted(self )
Returns the objects the current user has any permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.permitted extit(inheriteddocumentation)
modify permitted(self )
Returns the objects the current user has modify permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.modify permitted extit(inheriteddocumentation)
Inherited from qis.app.models.QisManager(Section A.9.3)
view permitted()
131
Technische Universiteit EindhovenUniversity of Technology
Inherited from django.db.models.manager.Manager
init (), aggregate(), all(), annotate(), complex filter(), contribute to class(),count(), create(), dates(), defer(), distinct(), exclude(), extra(), filter(), get(),get empty query set(), get or create(), in bulk(), iterator(), latest(), none(),only(), order by(), reverse(), select related(), update(), values(), values list()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
Class Variables
Name DescriptionInherited from qis.app.models.QisManager (Section A.9.3)
slotnamesInherited from django.db.models.manager.Managercreation counter
A.9.19 Class StudyProgram
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.AutoYearQisModel
qis.app.models.StudyProgram
StudyProgram(id, system year id, name)
132
Technische Universiteit EindhovenUniversity of Technology
Methods
objects(...)
Overrides: qis.app.models.QisModel.objects
unicode (self )
all objects(...)
Overrides: qis.app.models.QisModel.all objects
Inherited from qis.app.models.AutoYearQisModel(Section A.9.5)
save()
Inherited from qis.app.models.QisModel(Section A.9.4)
can modify(), can view(), get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
Name DescriptionInherited from django.db.models.base.ModelpkInherited from object
class
Class Variables
Name Descriptionsystem year Value: models.ForeignKey(SystemYear,
related name= ’study progra...
name Value: models.CharField(max length=
255)
target groups Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
133
Technische Universiteit EindhovenUniversity of Technology
A.9.20 Class TargetGroupNameManager
object
django.db.models.manager.Manager
qis.app.models.QisManager
qis.app.models.TargetGroupNameManager
Methods
get query set(self )
Returns all Target Group Names of the current year
Overrides: django.db.models.manager.Manager.get query set
permitted(self )
We can view them all
Overrides: qis.app.models.QisManager.permitted
modify permitted(self )
We can modify everything, so long as we have the model permission
Overrides: qis.app.models.QisManager.modify permitted
Inherited from qis.app.models.QisManager(Section A.9.3)
view permitted()
Inherited from django.db.models.manager.Manager
init (), aggregate(), all(), annotate(), complex filter(), contribute to class(),count(), create(), dates(), defer(), distinct(), exclude(), extra(), filter(), get(),get empty query set(), get or create(), in bulk(), iterator(), latest(), none(),only(), order by(), reverse(), select related(), update(), values(), values list()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
134
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionInherited from object
class
Class Variables
Name DescriptionInherited from qis.app.models.QisManager (Section A.9.3)
slotnamesInherited from django.db.models.manager.Managercreation counter
A.9.21 Class TargetGroupName
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.AutoYearQisModel
qis.app.models.TargetGroupName
TargetGroupName(id, system year id, name)
Methods
objects(...)
Overrides: qis.app.models.QisModel.objects
unicode (self )
all objects(...)
Overrides: qis.app.models.QisModel.all objects
Inherited from qis.app.models.AutoYearQisModel(Section A.9.5)
save()
Inherited from qis.app.models.QisModel(Section A.9.4)
135
Technische Universiteit EindhovenUniversity of Technology
can modify(), can view(), get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
Name DescriptionInherited from django.db.models.base.ModelpkInherited from object
class
Class Variables
Name Descriptionsystem year Value: models.ForeignKey(SystemYear,
related name= ’target group...
name Value: models.CharField(max length=
255)
target groups Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
A.9.22 Class TargetGroupManager
object
django.db.models.manager.Manager
qis.app.models.QisManager
qis.app.models.TargetGroupManager
136
Technische Universiteit EindhovenUniversity of Technology
Methods
get query set(self )
Returns all Target Groups of the current year
Overrides: django.db.models.manager.Manager.get query set
permitted(self )
We can view them all.
Overrides: qis.app.models.QisManager.permitted
modify permitted(self )
We can modify only those related to the studyprograms we can modify.
Overrides: qis.app.models.QisManager.modify permitted
Inherited from qis.app.models.QisManager(Section A.9.3)
view permitted()
Inherited from django.db.models.manager.Manager
init (), aggregate(), all(), annotate(), complex filter(), contribute to class(),count(), create(), dates(), defer(), distinct(), exclude(), extra(), filter(), get(),get empty query set(), get or create(), in bulk(), iterator(), latest(), none(),only(), order by(), reverse(), select related(), update(), values(), values list()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
Class Variables
Name DescriptionInherited from qis.app.models.QisManager (Section A.9.3)
slotnamescontinued on next page
137
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionInherited from django.db.models.manager.Managercreation counter
A.9.23 Class TargetGroup
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.TargetGroup
TargetGroup(id, study program id, name id)
Methods
objects(...)
Overrides: qis.app.models.QisModel.objects
getCourseInstances(self )
unicode (self )
all objects(...)
Overrides: qis.app.models.QisModel.all objects
Inherited from qis.app.models.QisModel(Section A.9.4)
can modify(), can view(), get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
138
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionInherited from django.db.models.base.ModelpkInherited from object
class
Class Variables
Name Descriptionstudy program Value:
models.ForeignKey(StudyProgram,
related name= ’target gro...
course instances Value:models.ManyToManyField(’CourseInstance’,
related name= ’t...
name Value:models.ForeignKey(TargetGroupName,
related name= ’target ...
A.9.24 Class CourseManager
object
django.db.models.manager.Manager
qis.app.models.QisManager
qis.app.models.CourseManager
Methods
get query set(self )
Returns all courses of the current year
Overrides: django.db.models.manager.Manager.get query set
139
Technische Universiteit EindhovenUniversity of Technology
permitted(self )
Returns the objects the current user has any permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.permitted extit(inheriteddocumentation)
view permitted(self )
Only return definitive versions of things we can view.
Can only have view permitted if we don’t have modify permitted.
Overrides: qis.app.models.QisManager.view permitted
modify permitted(self )
Only return provisional versions of things we can modify
Overrides: qis.app.models.QisManager.modify permitted
modify workload permitted(self )
Returns the courses we have modify subdepartment workload rights for.
Inherited from django.db.models.manager.Manager
init (), aggregate(), all(), annotate(), complex filter(), contribute to class(),count(), create(), dates(), defer(), distinct(), exclude(), extra(), filter(), get(),get empty query set(), get or create(), in bulk(), iterator(), latest(), none(),only(), order by(), reverse(), select related(), update(), values(), values list()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
Class Variables
140
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionInherited from qis.app.models.QisManager (Section A.9.3)
slotnamesInherited from django.db.models.manager.Managercreation counter
A.9.25 Class Course
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.Course
Course(id, given by id, code, name, description, custom attributes values, credits, given externally)
Methods
objects(...)
Overrides: qis.app.models.QisModel.objects
unicode (self )
can modify workload(self )
Returns True if this object’s workload can be modified by the current user.
get course instances(self )
all objects(...)
Overrides: qis.app.models.QisModel.all objects
Inherited from qis.app.models.QisModel(Section A.9.4)
can modify(), can view(), get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save(), save base(), serializable value()
141
Technische Universiteit EindhovenUniversity of Technology
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
Name DescriptionInherited from django.db.models.base.ModelpkInherited from object
class
Class Variables
Name Descriptiongiven by Value:
models.ForeignKey(Subdepartment,
related name= ’courses’)
predecessors Value: models.ManyToManyField(’self’,
symmetrical= False, relate...
code Value: models.CharField(max length=
255)
name Value: models.CharField(max length=
255)
description Value: models.TextField(blank= True)
custom attributes values Value: models.TextField(blank= True)
credits Value: models.FloatField()
given externally Value: models.BooleanField(default=
False)
course instances Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
successors Value:<django.db.models.fields.related.ManyRelatedObjectsDescri...
142
Technische Universiteit EindhovenUniversity of Technology
A.9.26 Class StudyPhaseManager
object
django.db.models.manager.Manager
qis.app.models.QisManager
qis.app.models.StudyPhaseManager
Methods
get query set(self )
Returns a new QuerySet object. Subclasses can override this method toeasily customize the behavior of the Manager.
Overrides: django.db.models.manager.Manager.get query set extit(inheriteddocumentation)
permitted(self )
Everyone can view the complete list of study phases
Overrides: qis.app.models.QisManager.permitted
modify permitted(self )
The entire list of study phases can be modified if we have model changepermissions
Overrides: qis.app.models.QisManager.modify permitted
Inherited from qis.app.models.QisManager(Section A.9.3)
view permitted()
Inherited from django.db.models.manager.Manager
init (), aggregate(), all(), annotate(), complex filter(), contribute to class(),count(), create(), dates(), defer(), distinct(), exclude(), extra(), filter(), get(),get empty query set(), get or create(), in bulk(), iterator(), latest(), none(),only(), order by(), reverse(), select related(), update(), values(), values list()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
143
Technische Universiteit EindhovenUniversity of Technology
Properties
Name DescriptionInherited from object
class
Class Variables
Name DescriptionInherited from qis.app.models.QisManager (Section A.9.3)
slotnamesInherited from django.db.models.manager.Managercreation counter
A.9.27 Class StudyPhase
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.AutoYearQisModel
qis.app.models.StudyPhase
StudyPhase(id, system year id, name)
Methods
objects(...)
Overrides: qis.app.models.QisModel.objects
unicode (self )
all objects(...)
Overrides: qis.app.models.QisModel.all objects
Inherited from qis.app.models.AutoYearQisModel(Section A.9.5)
save()
144
Technische Universiteit EindhovenUniversity of Technology
Inherited from qis.app.models.QisModel(Section A.9.4)
can modify(), can view(), get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
Name DescriptionInherited from django.db.models.base.ModelpkInherited from object
class
Class Variables
Name Descriptionsystem year Value: models.ForeignKey(SystemYear,
related name= ’study phase’)
name Value: models.CharField(max length=
255)
course instances Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
A.9.28 Class CourseInstanceManager
object
django.db.models.manager.Manager
qis.app.models.QisManager
qis.app.models.CourseInstanceManager
145
Technische Universiteit EindhovenUniversity of Technology
Methods
get query set(self )
Returns a new QuerySet object. Subclasses can override this method toeasily customize the behavior of the Manager.
Overrides: django.db.models.manager.Manager.get query set extit(inheriteddocumentation)
permitted(self )
Return a list with every permitted CourseInstance once, but either theprovisional or definitve version, never both.
Overrides: qis.app.models.QisManager.permitted
view permitted(self )
Only return definitive versions of things we can view.
We can view everything we can view EducationTasks for or if we areresponsible for the current course.
This method is tuned to be called from CourseManager.view permitted. It isnot neccessarily disjoint from modify permitted.
Overrides: qis.app.models.QisManager.view permitted
modify permitted(self )
Only return provisional versions of things we can modify
Overrides: qis.app.models.QisManager.modify permitted
provisional(self )
Return all provisional courseinstances associated with permitted courses.
Would recommend you do not use this without considering your design.
Useful for selecting courseinstances when editing education tasks without themodify subdepartment courseinf permissions.
definitive(self )
Return all definitive courseinstances associated with permitted courses.
Would recommend you do not use this without considering your design.
146
Technische Universiteit EindhovenUniversity of Technology
Inherited from django.db.models.manager.Manager
init (), aggregate(), all(), annotate(), complex filter(), contribute to class(),count(), create(), dates(), defer(), distinct(), exclude(), extra(), filter(), get(),get empty query set(), get or create(), in bulk(), iterator(), latest(), none(),only(), order by(), reverse(), select related(), update(), values(), values list()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
Class Variables
Name DescriptionInherited from qis.app.models.QisManager (Section A.9.3)
slotnamesInherited from django.db.models.manager.Managercreation counter
A.9.29 Class CourseInstance
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.CourseInstance
CourseInstance(id, course id, study phase id, definitive, private remark, public remark, given to externals)
147
Technische Universiteit EindhovenUniversity of Technology
Methods
objects(...)
Overrides: qis.app.models.QisModel.objects
unicode (self )
get subperiods(self )
Get all subperiods in which this course instance is given, return it as a list ofstrings.
get responsibles(self )
Get all responsible employees linked to this course instance, return it asstring.
get tasks(self )
Get all education tasks linked to this course instance, return it as a list witheducation tasks.
delete(self )
Overrides: django.db.models.base.Model.delete
all objects(...)
Overrides: qis.app.models.QisModel.all objects
Inherited from qis.app.models.QisModel(Section A.9.4)
can modify(), can view(), get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), pre-pare database save(), save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
Name DescriptionInherited from django.db.models.base.Model
continued on next page
148
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionpkInherited from object
class
Class Variables
Name Descriptioncourse Value: models.ForeignKey(Course,
related name= ’course instances’)
responsibles Value:models.ManyToManyField(’Employee’,
related name= ’respons...
subperiods Value:models.ManyToManyField(Subperiod,
related name= ’course i...
study phase Value: models.ForeignKey(StudyPhase,
related name= ’course insta...
definitive Value: models.BooleanField(default=
False)
private remark Value: models.TextField(blank= True)
public remark Value: models.TextField(blank= True)
given to externals Value: models.BooleanField(default=
False)
education tasks definitive Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
education tasks provision-al
Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
target groups Value:<django.db.models.fields.related.ManyRelatedObjectsDescri...
A.9.30 Class TaskTypeManager
object
django.db.models.manager.Manager
qis.app.models.QisManager
qis.app.models.TaskTypeManager
149
Technische Universiteit EindhovenUniversity of Technology
Methods
get query set(self )
Returns a new QuerySet object. Subclasses can override this method toeasily customize the behavior of the Manager.
Overrides: django.db.models.manager.Manager.get query set extit(inheriteddocumentation)
permitted(self )
Returns the objects the current user has any permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.permitted extit(inheriteddocumentation)
modify permitted(self )
Returns the objects the current user has modify permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.modify permitted extit(inheriteddocumentation)
Inherited from qis.app.models.QisManager(Section A.9.3)
view permitted()
Inherited from django.db.models.manager.Manager
init (), aggregate(), all(), annotate(), complex filter(), contribute to class(),count(), create(), dates(), defer(), distinct(), exclude(), extra(), filter(), get(),get empty query set(), get or create(), in bulk(), iterator(), latest(), none(),only(), order by(), reverse(), select related(), update(), values(), values list()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
continued on next page
150
Technische Universiteit EindhovenUniversity of Technology
Name Descriptionclass
Class Variables
Name DescriptionInherited from qis.app.models.QisManager (Section A.9.3)
slotnamesInherited from django.db.models.manager.Managercreation counter
A.9.31 Class TaskType
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.TaskType
TaskType(id, system id, type, name)
Methods
objects(...)
Overrides: qis.app.models.QisModel.objects
unicode (self )
all objects(...)
Overrides: qis.app.models.QisModel.all objects
Inherited from qis.app.models.QisModel(Section A.9.4)
can modify(), can view(), get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save(), save base(), serializable value()
151
Technische Universiteit EindhovenUniversity of Technology
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
Name DescriptionInherited from django.db.models.base.ModelpkInherited from object
class
Class Variables
Name Descriptionsystem Value: models.ForeignKey(System,
related name= ’task types’, def...
type Value: models.CharField(max length=
255, unique= True)
name Value: models.CharField(max length=
255)
tasks Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
A.9.32 Class TaskManager
object
django.db.models.manager.Manager
qis.app.models.QisManager
qis.app.models.TaskManager
152
Technische Universiteit EindhovenUniversity of Technology
Methods
get query set(self )
Returns a new QuerySet object. Subclasses can override this method toeasily customize the behavior of the Manager.
Overrides: django.db.models.manager.Manager.get query set extit(inheriteddocumentation)
permitted(self )
Returns the objects the current user has any permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.permitted extit(inheriteddocumentation)
view permitted(self )
Returns the objects the current user has view permissions for.
Having modify permissions does not imply having view permissions.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.view permitted extit(inheriteddocumentation)
modify permitted(self )
Returns the objects the current user has modify permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.modify permitted extit(inheriteddocumentation)
Inherited from django.db.models.manager.Manager
init (), aggregate(), all(), annotate(), complex filter(), contribute to class(),count(), create(), dates(), defer(), distinct(), exclude(), extra(), filter(), get(),get empty query set(), get or create(), in bulk(), iterator(), latest(), none(),only(), order by(), reverse(), select related(), update(), values(), values list()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),
153
Technische Universiteit EindhovenUniversity of Technology
repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
Class Variables
Name DescriptionInherited from qis.app.models.QisManager (Section A.9.3)
slotnamesInherited from django.db.models.manager.Managercreation counter
A.9.33 Class Task
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.Task
Known Subclasses: qis.app.models.EducationTask
Task(id, subdepartment id, type id, name, description, hours, public remark, private remark)
Methods
objects(...)
Overrides: qis.app.models.QisModel.objects
unicode (self )
all objects(...)
Overrides: qis.app.models.QisModel.all objects
154
Technische Universiteit EindhovenUniversity of Technology
Inherited from qis.app.models.QisModel(Section A.9.4)
can modify(), can view(), get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
Name DescriptionInherited from django.db.models.base.ModelpkInherited from object
class
Class Variables
Name Descriptionsubdepartment Value:
models.ForeignKey(Subdepartment,
related name= ’tasks’)
type Value: models.ForeignKey(TaskType,
related name= ’tasks’, blank=...
employments Value:models.ManyToManyField(’Employment’,
through= ’Assignment...
name Value: models.CharField(max length=
255)
description Value: models.TextField(blank= True)
hours Value: models.IntegerField(blank=
False, null= True, default= 0)
public remark Value: models.TextField(blank= True)
private remark Value: models.TextField(blank= True)
assignments Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
educationtask Value:<django.db.models.fields.related.SingleRelatedObjectDescr...
155
Technische Universiteit EindhovenUniversity of Technology
A.9.34 Class EducationTaskManager
object
django.db.models.manager.Manager
qis.app.models.QisManager
qis.app.models.EducationTaskManager
Methods
get query set(self )
Returns a new QuerySet object. Subclasses can override this method toeasily customize the behavior of the Manager.
Overrides: django.db.models.manager.Manager.get query set extit(inheriteddocumentation)
permitted(self )
Returns the objects the current user has any permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.permitted extit(inheriteddocumentation)
view permitted(self )
Returns the objects the current user has view permissions for.
Having modify permissions does not imply having view permissions.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.view permitted extit(inheriteddocumentation)
156
Technische Universiteit EindhovenUniversity of Technology
modify permitted(self )
Returns the objects the current user has modify permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.modify permitted extit(inheriteddocumentation)
modify workload permitted(self )
modify courseinf permitted(self )
add assignment permitted(self )
Return all education tasks to which we can add assignments
Inherited from django.db.models.manager.Manager
init (), aggregate(), all(), annotate(), complex filter(), contribute to class(),count(), create(), dates(), defer(), distinct(), exclude(), extra(), filter(), get(),get empty query set(), get or create(), in bulk(), iterator(), latest(), none(),only(), order by(), reverse(), select related(), update(), values(), values list()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
Class Variables
Name DescriptionInherited from qis.app.models.QisManager (Section A.9.3)
slotnamesInherited from django.db.models.manager.Managercreation counter
157
Technische Universiteit EindhovenUniversity of Technology
A.9.35 Class EducationTask
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.Task
qis.app.models.EducationTask
EducationTask(id, subdepartment id, type id, name, description, hours, public remark, pri-vate remark, task ptr id, course instance definitive id, course instance provisional id, edu-cation type id, number of employees, to be removed, weekly hours)
Methods
get course instance(self )
objects(...)
Overrides: qis.app.models.QisModel.objects
get number of assigned(self )
Get the number of employees that are assigned to a particular task troughassignments
get assigned employments(self )
get subperiods(self )
Get all subperiods in which this education task is given, return it as a list ofstrings.
can modify courseinf(self )
Returns True if we can modify course information of the current educationtask.
can add assignment(self )
Returns True if we can add assignments to the current education task.
158
Technische Universiteit EindhovenUniversity of Technology
save(self, force insert=False, force update=False)
Custom save method used to set the task type of an education task toeducationtask
Overrides: django.db.models.base.Model.save
all objects(...)
Overrides: qis.app.models.QisModel.all objects
Inherited from qis.app.models.Task(Section A.9.33)
unicode ()
Inherited from qis.app.models.QisModel(Section A.9.4)
can modify(), can view(), get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
Name Descriptioncourse instanceInherited from django.db.models.base.ModelpkInherited from object
class
Class Variables
Name Descriptioncourse instance definitive Value:
models.ForeignKey(CourseInstance,
blank= True, null= True...
course instance provisiona-l
Value:models.ForeignKey(CourseInstance,
blank= False, null= Fal...
continued on next page
159
Technische Universiteit EindhovenUniversity of Technology
Name Descriptioneducation type Value:
models.ForeignKey(’EducationType’,
related name= ’educati...
subperiods Value:models.ManyToManyField(Subperiod,
related name= ’educatio...
number of employees Value: models.IntegerField(blank=
True, null= True, verbose name...
to be removed Value: models.BooleanField(default=
False, verbose name= ’Remove...
weekly hours Value: models.FloatField(blank= True,
null= True)
task ptr Value:<django.db.models.fields.related.ReverseSingleRelatedObje...
Inherited from qis.app.models.Task (Section A.9.33)assignments, description, educationtask, employments, hours, name,private remark, public remark, subdepartment, type
A.9.36 Class EducationTypeManager
object
django.db.models.manager.Manager
qis.app.models.QisManager
qis.app.models.EducationTypeManager
Methods
get query set(self )
Returns a new QuerySet object. Subclasses can override this method toeasily customize the behavior of the Manager.
Overrides: django.db.models.manager.Manager.get query set extit(inheriteddocumentation)
160
Technische Universiteit EindhovenUniversity of Technology
permitted(self )
Returns the objects the current user has any permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.permitted extit(inheriteddocumentation)
view permitted(self )
Covers both view permitted and modify permitted
Overrides: qis.app.models.QisManager.view permitted
modify permitted(self )
Returns the objects the current user has modify permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.modify permitted extit(inheriteddocumentation)
Inherited from django.db.models.manager.Manager
init (), aggregate(), all(), annotate(), complex filter(), contribute to class(),count(), create(), dates(), defer(), distinct(), exclude(), extra(), filter(), get(),get empty query set(), get or create(), in bulk(), iterator(), latest(), none(),only(), order by(), reverse(), select related(), update(), values(), values list()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
Class Variables
Name DescriptionInherited from qis.app.models.QisManager (Section A.9.3)
slotnamescontinued on next page
161
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionInherited from django.db.models.manager.Managercreation counter
A.9.37 Class EducationType
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.EducationType
EducationType(id, subdepartment id, name)
Methods
objects(...)
Overrides: qis.app.models.QisModel.objects
unicode (self )
all objects(...)
Overrides: qis.app.models.QisModel.all objects
Inherited from qis.app.models.QisModel(Section A.9.4)
can modify(), can view(), get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
162
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionInherited from django.db.models.base.ModelpkInherited from object
class
Class Variables
Name Descriptionsubdepartment Value:
models.ForeignKey(Subdepartment,
related name= ’education...
name Value: models.CharField(max length=
255)
education tasks Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
A.9.38 Class AssignmentManager
object
django.db.models.manager.Manager
qis.app.models.QisManager
qis.app.models.AssignmentManager
Methods
get query set(self )
Returns a new QuerySet object. Subclasses can override this method toeasily customize the behavior of the Manager.
Overrides: django.db.models.manager.Manager.get query set extit(inheriteddocumentation)
163
Technische Universiteit EindhovenUniversity of Technology
all unique(self )
Returns a list of all assignments, but only one of definitive or provisional foreach.
Provisional assignments are returned only for the employments that thecurrent user may modify.
permitted(self )
Returns the objects the current user has any permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.permitted extit(inheriteddocumentation)
definitive permitted(self )
Definitive versions of all permitted assignments
view permitted(self )
Returns the objects the current user has view permissions for.
Having modify permissions does not imply having view permissions.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.view permitted extit(inheriteddocumentation)
modify permitted(self )
Returns the objects the current user has modify permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.modify permitted extit(inheriteddocumentation)
Inherited from django.db.models.manager.Manager
init (), aggregate(), all(), annotate(), complex filter(), contribute to class(),count(), create(), dates(), defer(), distinct(), exclude(), extra(), filter(), get(),get empty query set(), get or create(), in bulk(), iterator(), latest(), none(),only(), order by(), reverse(), select related(), update(), values(), values list()
Inherited from object
164
Technische Universiteit EindhovenUniversity of Technology
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
Class Variables
Name DescriptionInherited from qis.app.models.QisManager (Section A.9.3)
slotnamesInherited from django.db.models.manager.Managercreation counter
A.9.39 Class Assignment
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.Assignment
Assignment(id, task id, employment id, hours, share, externally funded, definitive)
Methods
objects(...)
Overrides: qis.app.models.QisModel.objects
unicode (self )
Assignment = Task for Employment
all objects(...)
Overrides: qis.app.models.QisModel.all objects
165
Technische Universiteit EindhovenUniversity of Technology
Inherited from qis.app.models.QisModel(Section A.9.4)
can modify(), can view(), get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
Name DescriptionInherited from django.db.models.base.ModelpkInherited from object
class
Class Variables
Name Descriptiontask Value: models.ForeignKey(Task,
related name= ’assignments’, help...
employment Value:models.ForeignKey(’Employment’,
related name= ’assignments’)
hours Value: models.IntegerField(blank=
True, null= True, default= 0)
share Value: models.FloatField(blank= True,
null= True, default= 0)
externally funded Value: models.BooleanField(default=
False)
definitive Value: models.BooleanField(default=
False)
166
Technische Universiteit EindhovenUniversity of Technology
A.9.40 Class EmployeeManager
object
django.db.models.manager.Manager
qis.app.models.QisManager
qis.app.models.EmployeeManager
Methods
permitted(self )
Returns the objects the current user has any permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.permitted extit(inheriteddocumentation)
view permitted(self )
Returns the objects the current user has view permissions for.
Having modify permissions does not imply having view permissions.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.view permitted extit(inheriteddocumentation)
modify permitted(self )
We can modify all employees if we have modify subdepartment workload
Overrides: qis.app.models.QisManager.modify permitted
Inherited from qis.app.models.QisManager(Section A.9.3)
get query set()
Inherited from django.db.models.manager.Manager
init (), aggregate(), all(), annotate(), complex filter(), contribute to class(),count(), create(), dates(), defer(), distinct(), exclude(), extra(), filter(), get(),get empty query set(), get or create(), in bulk(), iterator(), latest(), none(),only(), order by(), reverse(), select related(), update(), values(), values list()
167
Technische Universiteit EindhovenUniversity of Technology
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
Class Variables
Name DescriptionInherited from qis.app.models.QisManager (Section A.9.3)
slotnamesInherited from django.db.models.manager.Managercreation counter
A.9.41 Class Employee
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.Employee
Employee(id, system id, first name, last name, email, public remark, private remark, user name,receive notifications employee, receive notifications expertise group)
Methods
objects(...)
Overrides: qis.app.models.QisModel.objects
get self(user=None)
Returns the employee object associated with the current logged-in user.
168
Technische Universiteit EindhovenUniversity of Technology
get user(self )
Returns the django.contrib.auth User associated with this Employee, or Noneif it doesn’t exist yet.
An employee that has never logged in will not have a django User associated.This is intended. User objects are created only on an as-required basis andwill be configured from an Employee automatically by the authenticationbackend.
get rights(self )
has right(self, right)
update user(self )
Ensures that the related User object matches the Employee.
save(self, force insert=False, force update=False)
Saves the current instance. Override this in a subclass if you want to controlthe saving process.
The ’force insert’ and ’force update’ parameters can be used to insist thatthe ”save” must be an SQL insert or update (or equivalent for non-SQLbackends), respectively. Normally, they should not be set.
Overrides: django.db.models.base.Model.save extit(inherited documentation)
get related course instances(self )
Returns a list of courseinstances where this employee is responsible for, orwhere this employee is assigned to.
post delete(sender, **kwargs)
Removes the corresponding django User
unicode (self )
getEmployments(self )
total hours assigned(self )
is employed(self )
169
Technische Universiteit EindhovenUniversity of Technology
all objects(...)
Overrides: qis.app.models.QisModel.all objects
Inherited from qis.app.models.QisModel(Section A.9.4)
can modify(), can view(), get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
Name DescriptionInherited from django.db.models.base.ModelpkInherited from object
class
Class Variables
Name Descriptionsystem Value: models.ForeignKey(System,
related name= ’employees’, defa...
expertise groups Value:models.ManyToManyField(’ExpertiseGroup’,
through= ’Employ...
right sets Value:models.ManyToManyField(’RightSet’,
through= ’Right’, rela...
first name Value: models.CharField(max length=
255)
last name Value: models.CharField(max length=
255)
email Value: models.EmailField(blank= True)
public remark Value: models.TextField(blank= True)
private remark Value: models.TextField(blank= True)
user name Value: models.CharField(max length=
255, unique= True)
continued on next page
170
Technische Universiteit EindhovenUniversity of Technology
Name Descriptionreceive notifications empl-oyee
Value: models.BooleanField(default=
True, verbose name= "Receive...
receive notifications exper-tise group
Value: models.BooleanField(default=
False, verbose name= "Receiv...
employments Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
responsible for Value:<django.db.models.fields.related.ManyRelatedObjectsDescri...
rights Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
A.9.42 Class AbstractRightSetManager
object
django.db.models.manager.Manager
qis.app.models.QisManager
qis.app.models.AbstractRightSetManager
Methods
permitted(self )
Returns the objects the current user has any permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.permitted extit(inheriteddocumentation)
modify permitted(self )
Returns the objects the current user has modify permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.modify permitted extit(inheriteddocumentation)
Inherited from qis.app.models.QisManager(Section A.9.3)
get query set(), view permitted()
171
Technische Universiteit EindhovenUniversity of Technology
Inherited from django.db.models.manager.Manager
init (), aggregate(), all(), annotate(), complex filter(), contribute to class(),count(), create(), dates(), defer(), distinct(), exclude(), extra(), filter(), get(),get empty query set(), get or create(), in bulk(), iterator(), latest(), none(),only(), order by(), reverse(), select related(), update(), values(), values list()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
Class Variables
Name DescriptionInherited from qis.app.models.QisManager (Section A.9.3)
slotnamesInherited from django.db.models.manager.Managercreation counter
A.9.43 Class AbstractRightSet
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.AbstractRightSet
Known Subclasses: qis.app.models.RightSet
A configuration of permissions known under a certain name.
The boolean right fields are supposed to be added via subclassing.
172
Technische Universiteit EindhovenUniversity of Technology
Methods
objects(...)
Overrides: qis.app.models.QisModel.objects
save(self, force insert=False, force update=False)
Saves the current instance. Override this in a subclass if you want to controlthe saving process.
The ’force insert’ and ’force update’ parameters can be used to insist thatthe ”save” must be an SQL insert or update (or equivalent for non-SQLbackends), respectively. Normally, they should not be set.
Overrides: django.db.models.base.Model.save extit(inherited documentation)
post delete(sender, **kwargs)
Removes the corresponding django Group
unicode (self )
all objects(...)
Overrides: qis.app.models.QisModel.all objects
Inherited from qis.app.models.QisModel(Section A.9.4)
can modify(), can view(), get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
Name DescriptionInherited from django.db.models.base.ModelpkInherited from object
class
173
Technische Universiteit EindhovenUniversity of Technology
Class Variables
Name Descriptionsystem Value: models.ForeignKey(System,
related name= ’rightsets’, defa...
name Value: models.CharField(max length=
50, unique= True)
default Value: models.BooleanField(default=
False)
RIGHTS Value: [’view own workload’,
’view expertisegroup workload’,
’vi...
x Value:(’modify system administration’,
’MSA’, [’change system’,...
A.9.44 Class RightSet
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.AbstractRightSet
qis.app.models.RightSet
RightSet(id, system id, name, default, view own workload, view expertisegroup workload,view subdepartment workload, view department workload, modify subdepartment workload,modify subdepartment courseinf, modify system administration)
Methods
all objects(...)
Overrides: qis.app.models.QisModel.all objects
objects(...)
Overrides: qis.app.models.QisModel.objects
Inherited from qis.app.models.AbstractRightSet(Section A.9.43)
174
Technische Universiteit EindhovenUniversity of Technology
unicode (), post delete(), save()
Inherited from qis.app.models.QisModel(Section A.9.4)
can modify(), can view(), get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
Name DescriptionInherited from django.db.models.base.ModelpkInherited from object
class
Class Variables
Name Descriptionemployees Value:
<django.db.models.fields.related.ManyRelatedObjectsDescri...
rights Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
system Value:<django.db.models.fields.related.ReverseSingleRelatedObje...
Inherited from qis.app.models.AbstractRightSet (Section A.9.43)RIGHTS, default, name, x
175
Technische Universiteit EindhovenUniversity of Technology
A.9.45 Class AbstractRightManager
object
django.db.models.manager.Manager
qis.app.models.QisManager
qis.app.models.AbstractRightManager
Methods
get query set(self )
We won’t consider any Rights that have pointers to objects outside thecurrent year.
Rights that have no pointers to any objecs act as if they are global for allyears.
Overrides: django.db.models.manager.Manager.get query set
permitted(self )
Returns the objects the current user has any permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.permitted extit(inheriteddocumentation)
modify permitted(self )
Returns the objects the current user has modify permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.modify permitted extit(inheriteddocumentation)
Inherited from qis.app.models.QisManager(Section A.9.3)
view permitted()
Inherited from django.db.models.manager.Manager
init (), aggregate(), all(), annotate(), complex filter(), contribute to class(),count(), create(), dates(), defer(), distinct(), exclude(), extra(), filter(), get(),
176
Technische Universiteit EindhovenUniversity of Technology
get empty query set(), get or create(), in bulk(), iterator(), latest(), none(),only(), order by(), reverse(), select related(), update(), values(), values list()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
Class Variables
Name DescriptionInherited from qis.app.models.QisManager (Section A.9.3)
slotnamesInherited from django.db.models.manager.Managercreation counter
A.9.46 Class AbstractRight
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.AbstractRight
Known Subclasses: qis.app.models.Right
Associates an Employee with a RightSet and provides the specific objects a RightSet appliesto.
The boolean right object fields are supposed to be added via subclassing.
177
Technische Universiteit EindhovenUniversity of Technology
Methods
objects(...)
Overrides: qis.app.models.QisModel.objects
save(self, force insert=False, force update=False)
Saves the current instance. Override this in a subclass if you want to controlthe saving process.
The ’force insert’ and ’force update’ parameters can be used to insist thatthe ”save” must be an SQL insert or update (or equivalent for non-SQLbackends), respectively. Normally, they should not be set.
Overrides: django.db.models.base.Model.save extit(inherited documentation)
post delete(sender, **kwargs)
Updates the corresponding django Group association for a user
unicode (self )
all objects(...)
Overrides: qis.app.models.QisModel.all objects
Inherited from qis.app.models.QisModel(Section A.9.4)
can modify(), can view(), get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
Name DescriptionInherited from django.db.models.base.ModelpkInherited from object
class
178
Technische Universiteit EindhovenUniversity of Technology
Class Variables
Name Descriptionrightset Value: models.ForeignKey(RightSet,
related name= ’rights’)
employee Value: models.ForeignKey(Employee,
related name= ’rights’)
OBJECTS
def view workload object(self):
if self.rightset.view department workload:
return view department workload object
if self.rightset.view subdepartment workload:
return view subdepartment workload object
if self.rightset.view expertisegroup workload:
return view expertisegroup workload object
if self.rightset.view own workload:
return self.employee
return None
def modify workload object(self):
if self.rightset.modify subdepartment workload:
return modify subdepartment workload object
return None
def modify courseinformation object(self):
if self.rightset.modify subdepartment courseinf:
return modify subdepartment courseinf object
return None
Value:[’view expertisegroup workload object’,
’view subdepartme...
x Value:(’modify subdepartment courseinf object’,
’MSDCI object’,...
179
Technische Universiteit EindhovenUniversity of Technology
A.9.47 Class Right
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.AbstractRight
qis.app.models.Right
Right(id, rightset id, employee id, view expertisegroup workload object id, view subdepartment workload object id,view department workload object id, modify subdepartment workload object id, modify subdepartment courseinf object id)
Methods
all objects(...)
Overrides: qis.app.models.QisModel.all objects
objects(...)
Overrides: qis.app.models.QisModel.objects
Inherited from qis.app.models.AbstractRight(Section A.9.46)
unicode (), post delete(), save()
Inherited from qis.app.models.QisModel(Section A.9.4)
can modify(), can view(), get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
Name DescriptionInherited from django.db.models.base.Model
continued on next page
180
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionpkInherited from object
class
Class Variables
Name Descriptionemployee Value:
<django.db.models.fields.related.ReverseSingleRelatedObje...
modify subdepartment co-urseinf object
Value:<django.db.models.fields.related.ReverseSingleRelatedObje...
modify subdepartment wo-rkload object
Value:<django.db.models.fields.related.ReverseSingleRelatedObje...
rightset Value:<django.db.models.fields.related.ReverseSingleRelatedObje...
view department workloa-d object
Value:<django.db.models.fields.related.ReverseSingleRelatedObje...
view expertisegroup workl-oad object
Value:<django.db.models.fields.related.ReverseSingleRelatedObje...
view subdepartment workl-oad object
Value:<django.db.models.fields.related.ReverseSingleRelatedObje...
Inherited from qis.app.models.AbstractRight (Section A.9.46)OBJECTS, x
A.9.48 Class PositionManager
object
django.db.models.manager.Manager
qis.app.models.QisManager
qis.app.models.PositionManager
181
Technische Universiteit EindhovenUniversity of Technology
Methods
get query set(self )
Returns a new QuerySet object. Subclasses can override this method toeasily customize the behavior of the Manager.
Overrides: django.db.models.manager.Manager.get query set extit(inheriteddocumentation)
permitted(self )
Returns the objects the current user has any permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.permitted extit(inheriteddocumentation)
modify permitted(self )
Returns the objects the current user has modify permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.modify permitted extit(inheriteddocumentation)
Inherited from qis.app.models.QisManager(Section A.9.3)
view permitted()
Inherited from django.db.models.manager.Manager
init (), aggregate(), all(), annotate(), complex filter(), contribute to class(),count(), create(), dates(), defer(), distinct(), exclude(), extra(), filter(), get(),get empty query set(), get or create(), in bulk(), iterator(), latest(), none(),only(), order by(), reverse(), select related(), update(), values(), values list()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
continued on next page
182
Technische Universiteit EindhovenUniversity of Technology
Name Descriptionclass
Class Variables
Name DescriptionInherited from qis.app.models.QisManager (Section A.9.3)
slotnamesInherited from django.db.models.manager.Managercreation counter
A.9.49 Class Position
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.AutoYearQisModel
qis.app.models.Position
Position(id, system year id, name)
Methods
objects(...)
Overrides: qis.app.models.QisModel.objects
unicode (self )
all objects(...)
Overrides: qis.app.models.QisModel.all objects
Inherited from qis.app.models.AutoYearQisModel(Section A.9.5)
save()
Inherited from qis.app.models.QisModel(Section A.9.4)
183
Technische Universiteit EindhovenUniversity of Technology
can modify(), can view(), get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
Name DescriptionInherited from django.db.models.base.ModelpkInherited from object
class
Class Variables
Name Descriptionsystem year Value: models.ForeignKey(SystemYear,
related name= ’positions’)
name Value: models.CharField(max length=
255)
employments Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
A.9.50 Class EmploymentManager
object
django.db.models.manager.Manager
qis.app.models.QisManager
qis.app.models.EmploymentManager
184
Technische Universiteit EindhovenUniversity of Technology
Methods
get query set(self )
Returns a new QuerySet object. Subclasses can override this method toeasily customize the behavior of the Manager.
Overrides: django.db.models.manager.Manager.get query set extit(inheriteddocumentation)
permitted(self )
Returns the objects the current user has any permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.permitted extit(inheriteddocumentation)
view permitted(self )
Disjoint from modify permitted
Overrides: qis.app.models.QisManager.view permitted
modify permitted(self )
Returns the objects the current user has modify permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.modify permitted extit(inheriteddocumentation)
Inherited from django.db.models.manager.Manager
init (), aggregate(), all(), annotate(), complex filter(), contribute to class(),count(), create(), dates(), defer(), distinct(), exclude(), extra(), filter(), get(),get empty query set(), get or create(), in bulk(), iterator(), latest(), none(),only(), order by(), reverse(), select related(), update(), values(), values list()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
185
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionInherited from object
class
Class Variables
Name DescriptionInherited from qis.app.models.QisManager (Section A.9.3)
slotnamesInherited from django.db.models.manager.Managercreation counter
A.9.51 Class Employment
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.Employment
Employment(id, expertise group id, employee id, position id, fte, start, ends, education ratio,research ratio, management ratio)
Methods
objects(...)
Overrides: qis.app.models.QisModel.objects
unicode (self )
get other ratio(self )
total available hours(self, sy=None)
Returns the total available hours in a year considering start and end times ofan employment.
This does not consider any current assignments.
186
Technische Universiteit EindhovenUniversity of Technology
fill research hours(self )
Adjusts the research hours to fit available hours.
Returns whether the update was possible.
Not to be called in repetition.
fill all research hours()
Adjusts all research hours of all employments to fit available hours.
all objects(...)
Overrides: qis.app.models.QisModel.all objects
Inherited from qis.app.models.QisModel(Section A.9.4)
can modify(), can view(), get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
Name DescriptionInherited from django.db.models.base.ModelpkInherited from object
class
Class Variables
Name Descriptionexpertise group Value:
models.ForeignKey(’ExpertiseGroup’,
related name= ’employ...
employee Value: models.ForeignKey(Employee,
related name= ’employments’)
continued on next page
187
Technische Universiteit EindhovenUniversity of Technology
Name Descriptionposition Value: models.ForeignKey(Position,
related name= ’employments’, ...
fte Value: models.FloatField()
start Value: models.DateField(blank= True,
null= True)
ends Value: models.DateField(blank= True,
null= True)
education ratio Value: models.FloatField()
research ratio Value: models.FloatField()
management ratio Value: models.FloatField()
assignments Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
tasks Value:<django.db.models.fields.related.ManyRelatedObjectsDescri...
A.9.52 Class ExpertiseGroupManager
object
django.db.models.manager.Manager
qis.app.models.QisManager
qis.app.models.ExpertiseGroupManager
Methods
get query set(self )
Returns a new QuerySet object. Subclasses can override this method toeasily customize the behavior of the Manager.
Overrides: django.db.models.manager.Manager.get query set extit(inheriteddocumentation)
permitted(self )
Returns the objects the current user has any permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.permitted extit(inheriteddocumentation)
188
Technische Universiteit EindhovenUniversity of Technology
view permitted(self )
Returns the objects the current user has view permissions for.
Having modify permissions does not imply having view permissions.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.view permitted extit(inheriteddocumentation)
view workload permitted(self )
modify permitted(self )
Returns the objects the current user has modify permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.modify permitted extit(inheriteddocumentation)
modify workload permitted(self )
Inherited from django.db.models.manager.Manager
init (), aggregate(), all(), annotate(), complex filter(), contribute to class(),count(), create(), dates(), defer(), distinct(), exclude(), extra(), filter(), get(),get empty query set(), get or create(), in bulk(), iterator(), latest(), none(),only(), order by(), reverse(), select related(), update(), values(), values list()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
Class Variablescontinued on next page
189
Technische Universiteit EindhovenUniversity of Technology
Name Description
Name DescriptionInherited from qis.app.models.QisManager (Section A.9.3)
slotnamesInherited from django.db.models.manager.Managercreation counter
A.9.53 Class ExpertiseGroup
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.ExpertiseGroup
ExpertiseGroup(id, subdepartment id, name)
Methods
objects(...)
Overrides: qis.app.models.QisModel.objects
unicode (self )
all objects(...)
Overrides: qis.app.models.QisModel.all objects
Inherited from qis.app.models.QisModel(Section A.9.4)
can modify(), can view(), get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
190
Technische Universiteit EindhovenUniversity of Technology
Properties
Name DescriptionInherited from django.db.models.base.ModelpkInherited from object
class
Class Variables
Name Descriptionsubdepartment Value:
models.ForeignKey(Subdepartment,
related name= ’expertise...
name Value: models.CharField(max length=
255)
employees Value:<django.db.models.fields.related.ManyRelatedObjectsDescri...
employments Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
view workload rights Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
A.9.54 Class ReportManager
object
django.db.models.manager.Manager
qis.app.models.QisManager
qis.app.models.ReportManager
191
Technische Universiteit EindhovenUniversity of Technology
Methods
permitted(self )
Returns the objects the current user has any permissions for.
Intended to be overridden, the default is very restrictive.
Overrides: qis.app.models.QisManager.permitted extit(inheriteddocumentation)
modify permitted(self )
We need to return this, otherwise the ’changelist’ won’t show anything.
Overrides: qis.app.models.QisManager.modify permitted
Inherited from qis.app.models.QisManager(Section A.9.3)
get query set(), view permitted()
Inherited from django.db.models.manager.Manager
init (), aggregate(), all(), annotate(), complex filter(), contribute to class(),count(), create(), dates(), defer(), distinct(), exclude(), extra(), filter(), get(),get empty query set(), get or create(), in bulk(), iterator(), latest(), none(),only(), order by(), reverse(), select related(), update(), values(), values list()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
Class Variables
Name DescriptionInherited from qis.app.models.QisManager (Section A.9.3)
slotnamesInherited from django.db.models.manager.Managercreation counter
192
Technische Universiteit EindhovenUniversity of Technology
A.9.55 Class Report
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.Report
Report(id, system id, name, definition, targetmodel, template, extramodel, group)
Methods
objects(...)
Overrides: qis.app.models.QisModel.objects
get definition(self )
set definition(self, definition)
unicode (self )
all objects(...)
Overrides: qis.app.models.QisModel.all objects
get group display(*moreargs, **morekwargs)
Inherited from qis.app.models.QisModel(Section A.9.4)
can modify(), can view(), get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
193
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionInherited from django.db.models.base.ModelpkInherited from object
class
Class Variables
Name Descriptionsystem Value: models.ForeignKey(System,
related name= ’reports’, defaul...
name Value: models.CharField(max length=
255)
definition Value: models.TextField()
targetmodel Value: models.CharField(max length=
50)
template Value: models.CharField(max length=
100)
extramodel Value: models.CharField(max length=
50, blank= True)
group Value: models.IntegerField(choices=
REPORT GROUPS)
A.9.56 Class Subdepartment
object
django.db.models.base.Model
qis.app.models.QisModel
qis.app.models.Subdepartment
Subdepartment(id, department id, name, formula, custom education type attributes, cus-tom course attributes, closed)
Methods
objects(...)
Overrides: qis.app.models.QisModel.objects
194
Technische Universiteit EindhovenUniversity of Technology
can view(self )
Returns True if this object can be viewed by the current user.
Overrides: qis.app.models.QisModel.can view
can modify(self )
Returns True if this object can be modified by the current user.
Overrides: qis.app.models.QisModel.can modify
send notifications courses(self, system year=None, send mail=True)
Sends a notification to all employees whose courseinstaces are about tochange. Supposed to be called just before make courses definitive destroysall provisional data.
Also sends an email to all persons with right ’edit subdepartment workload’
Latest version should also send mails to people with assignments related tothese courses, as well as the expertisegroupsleaders of related eg’s.
if send mail is false, no mails will actually be sent. The function will returnall mails it sends (or would send).
send notifications tasks(self, system year=None, send mail=True)
Sends a notification to all employees whose assignments are about to change.Also mail expertisegroup leaders. Supposed to be called just beforemake tasks definitive destroys all provisional data.
if send mail is false, no mails will actually be sent. The function will stillreturn all mails it creates.
changed courseinstances(self, system year=None)
Returns a list of courseinstaces which will have been changed since the lastdefinitive version.
changed assignments(self, system year=None)
Returns a list of assignments which will have been changed since the lastdefinitive version.
close year(self )
make assignments definitive(self )
195
Technische Universiteit EindhovenUniversity of Technology
make course instances definitive(self )
unicode (self )
all objects(...)
Overrides: qis.app.models.QisModel.all objects
Inherited from qis.app.models.QisModel(Section A.9.4)
get view permission()
Inherited from django.db.models.base.Model
eq (), hash (), init (), ne (), reduce (), repr (), str (), delete(),prepare database save(), save(), save base(), serializable value()
Inherited from object
delattr (), getattribute (), new (), reduce ex (), setattr ()
Properties
Name DescriptionInherited from django.db.models.base.ModelpkInherited from object
class
Class Variables
Name Descriptiondepartment Value: models.ForeignKey(Department,
related name= ’subdepartmen...
name Value: models.CharField(max length=
255)
formula Value: models.TextField(blank= True,
null= True)
custom education type at-tributes
Value: models.TextField(blank= True,
null= True)
custom course attributes Value: models.TextField(blank= True,
null= True)
closed Value: models.BooleanField(default=
False)
continued on next page
196
Technische Universiteit EindhovenUniversity of Technology
Name Descriptioncourses Value:
<django.db.models.fields.related.ForeignRelatedObjectsDes...
education types Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
expertise groups Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
modify courseinf rights Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
modify workload rights Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
tasks Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
view workload rights Value:<django.db.models.fields.related.ForeignRelatedObjectsDes...
197
Technische Universiteit EindhovenUniversity of Technology
A.10 Module qis.app.request cache
Provides some useful caching functions that only live during single requests.
It essentially makes variables globally available, it doesn’t serialize anything.
This requires that the RequestAnywhere middleware is loaded.
A.10.1 Functions
is set(cache key)
set(cache key, cache value)
get or none(cache key)
get(cache key)
A.10.2 Variables
Name DescriptionDEBUG Value: False
A.10.3 Class NotCached
object
exceptions.BaseException
exceptions.Exception
qis.app.request cache.NotCached
Methods
Inherited from exceptions.Exception
init (), new ()
Inherited from exceptions.BaseException
198
Technische Universiteit EindhovenUniversity of Technology
delattr (), getattribute (), getitem (), getslice (), reduce (), repr (),setattr (), setstate (), str ()
Inherited from object
hash (), reduce ex ()
Properties
Name DescriptionInherited from exceptions.BaseExceptionargs, messageInherited from object
class
199
Technische Universiteit EindhovenUniversity of Technology
A.11 Module qis.app.sites
A.11.1 Variables
Name Descriptionsite Value: QisSite(name= ’qis’, app name=
’app’)
BLANK CHOICE DASH Value: [(’’, ’---------’)]
DJANGO QISGROUP FO-RMAT
Value: ’[QIS Application Group] %s’
ERROR MESSAGE Value:<django.utils.functional. proxy
object at 0x94903ec>FORMFIELD FOR DBFI-ELD DEFAULTS
Value: {<class
’django.db.models.fields.CharField’>:
{’widget’: ...
HORIZONTAL Value: 1
LOGIN FORM KEY Value: ’this is the login form’
MAXYEAR Value: 9999
MINYEAR Value: 1
PERMISSIONS Value: ((’view own workload’, ’VOW’,
[]), (’view expertisegroup ...
REPORT GROUPS Value: [(1, ’Workload’), (2,
’Employee reports’), (3, ’Course
In...
RIGHT OBJECTS Value:[(’view expertisegroup workload object’,
’VEGW object’, ’...
TASK TYPES Value: ((’researchproject’, ’Research
project’), (’managementpro...
VERTICAL Value: 2
datetime CAPI Value: <PyCObject object at
0x8eba110>name Value: ’MSDCI object’
object Value:’modify subdepartment courseinf object’
perms Value: [’change system’,
’view employee’, ’change employee’,
’de...
related name Value: ’modify courseinf rights’
right Value: ’modify system administration’
settings Value: <django.conf.LazySettings
object at 0x904ddec>
200
Technische Universiteit EindhovenUniversity of Technology
A.11.2 Class QisSite
object
qis.admin.sites.AdminSite
qis.app.sites.QisSite
Main class for the QIS application
Provides URL configuration and a registry of all configured models.p Also ensures thatauthentication is done.
Methods
init (self, name=None, app name=’admin’)
x. init (...) initializes x; see x. class . doc for signature
Overrides: object. init extit(inherited documentation)
get urls(self )
Returns the urlpatterns for this site. Redefined from AdminSite sincepractically nothing remains. Note that this one is static.
Overrides: qis.admin.sites.AdminSite.get urls
Inherited from qis.admin.sites.AdminSite
add action(), admin view(), app index(), check dependencies(), disable action(),display login form(), get action(), has permission(), i18n javascript(), index(),login(), logout(), model page(), password change(), password change done(),register(), root(), unregister()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from qis.admin.sites.AdminSiteactions, urlsInherited from object
continued on next page
201
Technische Universiteit EindhovenUniversity of Technology
Name Descriptionclass
Class Variables
Name DescriptionInherited from qis.admin.sites.AdminSiteapp index template, index template, login template
202
Technische Universiteit EindhovenUniversity of Technology
A.12 Package qis.app.templatetags
A.12.1 Modules
• app modify (Section A.13, p. 204)• context operations (Section A.14, p. 205)• course list (Section A.15, p. 206)• employee list (Section A.16, p. 207)• qis url helpers (Section A.17, p. 208)• report budget (Section A.18, p. 209)• report capacity (Section A.19, p. 211)• report course tasks (Section A.20, p. 212)• report course type (Section A.21, p. 213)• report csv (Section A.22, p. 215)• report education workload (Section A.23, p. 221)• report employee (Section A.24, p. 223)• report employee tasks (Section A.25, p. 225)• report employees (Section A.26, p. 226)• report filters (Section A.27, p. 228)• report hours (Section A.28, p. 229)• report list (Section A.29, p. 230)• report own (Section A.30, p. 231)• report own tasks (Section A.31, p. 233)• studyprogram list (Section A.32, p. 234)• task list (Section A.33, p. 235)
203
Technische Universiteit EindhovenUniversity of Technology
A.13 Module qis.app.templatetags.app modify
A.13.1 Functions
prepopulated fields js(context)
Creates a list of prepopulated fields that should render Javascript for theprepopulated fields for both the admin form and inlines.
submit row(context)
A.13.2 Variables
Name Descriptionregister Value: template.Library()
204
Technische Universiteit EindhovenUniversity of Technology
A.14 Module qis.app.templatetags.context operations
A.14.1 Functions
generic tag compiler(params, defaults, name, node class, parser, token)
Returns a template.Node subclass.
register context updater(register, func)
205
Technische Universiteit EindhovenUniversity of Technology
A.15 Module qis.app.templatetags.course list
A.15.1 Functions
course result list(cl, system year, qisperms, perms)
A.15.2 Variables
Name DescriptionDJANGO QISGROUP FO-RMAT
Value: ’[QIS Application Group] %s’
MAXYEAR Value: 9999
MINYEAR Value: 1
PERMISSIONS Value: ((’view own workload’, ’VOW’,
[]), (’view expertisegroup ...
REPORT GROUPS Value: [(1, ’Workload’), (2,
’Employee reports’), (3, ’Course
In...
RIGHT OBJECTS Value:[(’view expertisegroup workload object’,
’VEGW object’, ’...
TASK TYPES Value: ((’researchproject’, ’Research
project’), (’managementpro...
datetime CAPI Value: <PyCObject object at
0x8eba110>name Value: ’MSDCI object’
object Value:’modify subdepartment courseinf object’
perms Value: [’change system’,
’view employee’, ’change employee’,
’de...
related name Value: ’modify courseinf rights’
right Value: ’modify system administration’
206
Technische Universiteit EindhovenUniversity of Technology
A.16 Module qis.app.templatetags.employee list
A.16.1 Functions
employee result list(cl, system year)
A.16.2 Variables
Name DescriptionDJANGO QISGROUP FO-RMAT
Value: ’[QIS Application Group] %s’
MAXYEAR Value: 9999
MINYEAR Value: 1
PERMISSIONS Value: ((’view own workload’, ’VOW’,
[]), (’view expertisegroup ...
REPORT GROUPS Value: [(1, ’Workload’), (2,
’Employee reports’), (3, ’Course
In...
RIGHT OBJECTS Value:[(’view expertisegroup workload object’,
’VEGW object’, ’...
TASK TYPES Value: ((’researchproject’, ’Research
project’), (’managementpro...
datetime CAPI Value: <PyCObject object at
0x8eba110>name Value: ’MSDCI object’
object Value:’modify subdepartment courseinf object’
perms Value: [’change system’,
’view employee’, ’change employee’,
’de...
related name Value: ’modify courseinf rights’
right Value: ’modify system administration’
207
Technische Universiteit EindhovenUniversity of Technology
A.17 Module qis.app.templatetags.qis url helpers
A.17.1 Functions
querystring()
current url()
A.17.2 Variables
Name Descriptionregister Value: template.Library()
208
Technische Universiteit EindhovenUniversity of Technology
A.18 Module qis.app.templatetags.report budget
A.18.1 Functions
init report(subdepartment)
get positions(subdepartment)
get tasktypes(subdepartment)
get position tt(subdepartment, tasktype)
get hours position(subdepartment, position)
get hours tasktype(subdepartment, tasktype)
get hours(subdepartment)
get hours internal(subdepartment, giventoexternals)
get study phases(subdepartment)
get by studyphase(subdepartment, studyphase)
get hours studyphase(subdepartment, studyphase)
get hours external(subdepartment)
A.18.2 Variables
Name Descriptionregister Value: template.Library()
DJANGO QISGROUP FO-RMAT
Value: ’[QIS Application Group] %s’
MAXYEAR Value: 9999
MINYEAR Value: 1
PERMISSIONS Value: ((’view own workload’, ’VOW’,
[]), (’view expertisegroup ...
continued on next page
209
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionREPORT GROUPS Value: [(1, ’Workload’), (2,
’Employee reports’), (3, ’Course
In...
RIGHT OBJECTS Value:[(’view expertisegroup workload object’,
’VEGW object’, ’...
TASK TYPES Value: ((’researchproject’, ’Research
project’), (’managementpro...
datetime CAPI Value: <PyCObject object at
0x8eba110>name Value: ’MSDCI object’
object Value:’modify subdepartment courseinf object’
perms Value: [’change system’,
’view employee’, ’change employee’,
’de...
related name Value: ’modify courseinf rights’
right Value: ’modify system administration’
210
Technische Universiteit EindhovenUniversity of Technology
A.19 Module qis.app.templatetags.report capacity
A.19.1 Functions
init report(object, sy)
in subdepartment(object)
A.19.2 Variables
Name Descriptionregister Value: template.Library()
DJANGO QISGROUP FO-RMAT
Value: ’[QIS Application Group] %s’
MAXYEAR Value: 9999
MINYEAR Value: 1
PERMISSIONS Value: ((’view own workload’, ’VOW’,
[]), (’view expertisegroup ...
REPORT GROUPS Value: [(1, ’Workload’), (2,
’Employee reports’), (3, ’Course
In...
RIGHT OBJECTS Value:[(’view expertisegroup workload object’,
’VEGW object’, ’...
TASK TYPES Value: ((’researchproject’, ’Research
project’), (’managementpro...
datetime CAPI Value: <PyCObject object at
0x8eba110>name Value: ’MSDCI object’
object Value:’modify subdepartment courseinf object’
perms Value: [’change system’,
’view employee’, ’change employee’,
’de...
related name Value: ’modify courseinf rights’
right Value: ’modify system administration’
211
Technische Universiteit EindhovenUniversity of Technology
A.20 Module qis.app.templatetags.report course tasks
A.20.1 Functions
init report(object)
in subdepartment(object)
A.20.2 Variables
Name Descriptionregister Value: template.Library()
DJANGO QISGROUP FO-RMAT
Value: ’[QIS Application Group] %s’
MAXYEAR Value: 9999
MINYEAR Value: 1
PERMISSIONS Value: ((’view own workload’, ’VOW’,
[]), (’view expertisegroup ...
REPORT GROUPS Value: [(1, ’Workload’), (2,
’Employee reports’), (3, ’Course
In...
RIGHT OBJECTS Value:[(’view expertisegroup workload object’,
’VEGW object’, ’...
TASK TYPES Value: ((’researchproject’, ’Research
project’), (’managementpro...
datetime CAPI Value: <PyCObject object at
0x8eba110>name Value: ’MSDCI object’
object Value:’modify subdepartment courseinf object’
perms Value: [’change system’,
’view employee’, ’change employee’,
’de...
related name Value: ’modify courseinf rights’
right Value: ’modify system administration’
212
Technische Universiteit EindhovenUniversity of Technology
A.21 Module qis.app.templatetags.report course type
A.21.1 Functions
init report(system year, targetobject, extraobject)
get course instances(subdepartment, educationtype, tasks, courses)
get tasks(courseinstance, educationtype, tasks)
get subperiods(courseinstance)
get responsibles(courseinstance)
get assigned employees(task)
A.21.2 Variables
Name Descriptionregister Value: template.Library()
DJANGO QISGROUP FO-RMAT
Value: ’[QIS Application Group] %s’
MAXYEAR Value: 9999
MINYEAR Value: 1
PERMISSIONS Value: ((’view own workload’, ’VOW’,
[]), (’view expertisegroup ...
REPORT GROUPS Value: [(1, ’Workload’), (2,
’Employee reports’), (3, ’Course
In...
RIGHT OBJECTS Value:[(’view expertisegroup workload object’,
’VEGW object’, ’...
TASK TYPES Value: ((’researchproject’, ’Research
project’), (’managementpro...
datetime CAPI Value: <PyCObject object at
0x8eba110>name Value: ’MSDCI object’
object Value:’modify subdepartment courseinf object’
continued on next page
213
Technische Universiteit EindhovenUniversity of Technology
Name Descriptionperms Value: [’change system’,
’view employee’, ’change employee’,
’de...
related name Value: ’modify courseinf rights’
right Value: ’modify system administration’
214
Technische Universiteit EindhovenUniversity of Technology
A.22 Module qis.app.templatetags.report csv
A.22.1 Functions
init csv()
add to csv(*args)
start csv row()
add to csv row(*args)
add csv row()
add to csv row formatted(string, *args)
add to csv formatted(string, *args)
ungeneric tag compiler(params, defaults, name, node class, parser, token)
Returns a template.Node subclass.
csv export()
export csv()
A.22.2 Variables
Name Descriptionreport csv Value: CSVExport()
current row Value: []
csv writer Value: csv.writer(report csv)
defaults Value: None
params Value: [’string’]
xx Value: ’args’
xxx Value: None
215
Technische Universiteit EindhovenUniversity of Technology
A.22.3 Class CSVExport
object
qis.app.templatetags.report csv.CSVExport
Methods
erase(self )
write(self, value)
Inherited from object
delattr (), getattribute (), hash (), init (), new (), reduce (),reduce ex (), repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
Class Variables
Name Descriptioncontents Value: ’’
A.22.4 Class SimpleNode
object
django.template.Node
qis.app.templatetags.report csv.SimpleNode
216
Technische Universiteit EindhovenUniversity of Technology
Methods
init (self, vars to resolve)
x. init (...) initializes x; see x. class . doc for signature
Overrides: object. init extit(inherited documentation)
render(self, context)
Return the node rendered as a string
Overrides: django.template.Node.render extit(inherited documentation)
Inherited from django.template.Node
iter (), get nodes by type()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
Class Variables
Name DescriptionInherited from django.template.Nodemust be first
A.22.5 Class SimpleNode2
object
django.template.Node
qis.app.templatetags.report csv.SimpleNode2
217
Technische Universiteit EindhovenUniversity of Technology
Methods
init (self, vars to resolve)
x. init (...) initializes x; see x. class . doc for signature
Overrides: object. init extit(inherited documentation)
render(self, context)
Return the node rendered as a string
Overrides: django.template.Node.render extit(inherited documentation)
Inherited from django.template.Node
iter (), get nodes by type()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
Class Variables
Name DescriptionInherited from django.template.Nodemust be first
A.22.6 Class SimpleNode3
object
django.template.Node
qis.app.templatetags.report csv.SimpleNode3
218
Technische Universiteit EindhovenUniversity of Technology
Methods
init (self, vars to resolve)
x. init (...) initializes x; see x. class . doc for signature
Overrides: object. init extit(inherited documentation)
render(self, context)
Return the node rendered as a string
Overrides: django.template.Node.render extit(inherited documentation)
Inherited from django.template.Node
iter (), get nodes by type()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
Class Variables
Name DescriptionInherited from django.template.Nodemust be first
A.22.7 Class SimpleNode4
object
django.template.Node
qis.app.templatetags.report csv.SimpleNode4
219
Technische Universiteit EindhovenUniversity of Technology
Methods
init (self, vars to resolve)
x. init (...) initializes x; see x. class . doc for signature
Overrides: object. init extit(inherited documentation)
render(self, context)
Return the node rendered as a string
Overrides: django.template.Node.render extit(inherited documentation)
Inherited from django.template.Node
iter (), get nodes by type()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
Class Variables
Name DescriptionInherited from django.template.Nodemust be first
220
Technische Universiteit EindhovenUniversity of Technology
A.23 Module qis.app.templatetags.report education workload
A.23.1 Functions
init report(object, extra)
get course instance(all education tasks, course instance, all assignments)
in subdepartment(object)
total assigned hours(tasks)
has assignments(tasks)
get total targetgroup(course instances)
get total studyprogram(studyprogram)
get total studyprograms(subdepartment)
studyprograms(subdepartment)
A.23.2 Variables
Name Descriptionregister Value: template.Library()
DJANGO QISGROUP FO-RMAT
Value: ’[QIS Application Group] %s’
MAXYEAR Value: 9999
MINYEAR Value: 1
PERMISSIONS Value: ((’view own workload’, ’VOW’,
[]), (’view expertisegroup ...
REPORT GROUPS Value: [(1, ’Workload’), (2,
’Employee reports’), (3, ’Course
In...
RIGHT OBJECTS Value:[(’view expertisegroup workload object’,
’VEGW object’, ’...
TASK TYPES Value: ((’researchproject’, ’Research
project’), (’managementpro...
continued on next page
221
Technische Universiteit EindhovenUniversity of Technology
Name Descriptiondatetime CAPI Value: <PyCObject object at
0x8eba110>name Value: ’MSDCI object’
object Value:’modify subdepartment courseinf object’
perms Value: [’change system’,
’view employee’, ’change employee’,
’de...
related name Value: ’modify courseinf rights’
right Value: ’modify system administration’
222
Technische Universiteit EindhovenUniversity of Technology
A.24 Module qis.app.templatetags.report employee
A.24.1 Functions
init report(parser=None, token=None)
filter assignment task(assignments, tasktype)
total assignment hours(assignments, tasktype)
hours employ(employment, sy)
task available(employment, sy)
hours available employ(employment, sy)
total hours available(employee, sy)
unassigned(employment, sy)
tot unassigned(employee, sy)
get education task(task)
A.24.2 Variables
Name Descriptionregister Value: template.Library()
DJANGO QISGROUP FO-RMAT
Value: ’[QIS Application Group] %s’
MAXYEAR Value: 9999
MINYEAR Value: 1
PERMISSIONS Value: ((’view own workload’, ’VOW’,
[]), (’view expertisegroup ...
REPORT GROUPS Value: [(1, ’Workload’), (2,
’Employee reports’), (3, ’Course
In...
RIGHT OBJECTS Value:[(’view expertisegroup workload object’,
’VEGW object’, ’...
continued on next page
223
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionTASK TYPES Value: ((’researchproject’, ’Research
project’), (’managementpro...
datetime CAPI Value: <PyCObject object at
0x8eba110>name Value: ’MSDCI object’
object Value:’modify subdepartment courseinf object’
perms Value: [’change system’,
’view employee’, ’change employee’,
’de...
related name Value: ’modify courseinf rights’
right Value: ’modify system administration’
224
Technische Universiteit EindhovenUniversity of Technology
A.25 Module qis.app.templatetags.report employee tasks
A.25.1 Functions
init report(targetobject, employee)
ci list(employee)
A.25.2 Variables
Name Descriptionregister Value: template.Library()
DJANGO QISGROUP FO-RMAT
Value: ’[QIS Application Group] %s’
MAXYEAR Value: 9999
MINYEAR Value: 1
PERMISSIONS Value: ((’view own workload’, ’VOW’,
[]), (’view expertisegroup ...
REPORT GROUPS Value: [(1, ’Workload’), (2,
’Employee reports’), (3, ’Course
In...
RIGHT OBJECTS Value:[(’view expertisegroup workload object’,
’VEGW object’, ’...
TASK TYPES Value: ((’researchproject’, ’Research
project’), (’managementpro...
datetime CAPI Value: <PyCObject object at
0x8eba110>name Value: ’MSDCI object’
object Value:’modify subdepartment courseinf object’
perms Value: [’change system’,
’view employee’, ’change employee’,
’de...
related name Value: ’modify courseinf rights’
right Value: ’modify system administration’
225
Technische Universiteit EindhovenUniversity of Technology
A.26 Module qis.app.templatetags.report employees
A.26.1 Functions
filter list(lst, **args)
in subdepartment(object)
employees(object)
filter assignments(lst, task type, educationtask type, education tasks)
total available hours(empl, systemyear)
init report(system year, targetobject, extraobject=None)
A.26.2 Variables
Name Descriptionregister Value: template.Library()
DJANGO QISGROUP FO-RMAT
Value: ’[QIS Application Group] %s’
MAXYEAR Value: 9999
MINYEAR Value: 1
PERMISSIONS Value: ((’view own workload’, ’VOW’,
[]), (’view expertisegroup ...
REPORT GROUPS Value: [(1, ’Workload’), (2,
’Employee reports’), (3, ’Course
In...
RIGHT OBJECTS Value:[(’view expertisegroup workload object’,
’VEGW object’, ’...
TASK TYPES Value: ((’researchproject’, ’Research
project’), (’managementpro...
datetime CAPI Value: <PyCObject object at
0x8eba110>name Value: ’MSDCI object’
object Value:’modify subdepartment courseinf object’
continued on next page
226
Technische Universiteit EindhovenUniversity of Technology
Name Descriptionperms Value: [’change system’,
’view employee’, ’change employee’,
’de...
related name Value: ’modify courseinf rights’
right Value: ’modify system administration’
227
Technische Universiteit EindhovenUniversity of Technology
A.27 Module qis.app.templatetags.report filters
A.27.1 Functions
mult(value, arg)
Multiplies the arg and the value
sub(value, arg)
Subtracts the arg from the value
div(value, arg)
Divides the value by the arg
A.27.2 Variables
Name Descriptionregister Value: template.Library()
DJANGO QISGROUP FO-RMAT
Value: ’[QIS Application Group] %s’
MAXYEAR Value: 9999
MINYEAR Value: 1
PERMISSIONS Value: ((’view own workload’, ’VOW’,
[]), (’view expertisegroup ...
REPORT GROUPS Value: [(1, ’Workload’), (2,
’Employee reports’), (3, ’Course
In...
RIGHT OBJECTS Value:[(’view expertisegroup workload object’,
’VEGW object’, ’...
TASK TYPES Value: ((’researchproject’, ’Research
project’), (’managementpro...
datetime CAPI Value: <PyCObject object at
0x8eba110>name Value: ’MSDCI object’
object Value:’modify subdepartment courseinf object’
perms Value: [’change system’,
’view employee’, ’change employee’,
’de...
related name Value: ’modify courseinf rights’
right Value: ’modify system administration’
228
Technische Universiteit EindhovenUniversity of Technology
A.28 Module qis.app.templatetags.report hours
A.28.1 Functions
init report(object, report)
in subdepartment(object)
A.28.2 Variables
Name Descriptionregister Value: template.Library()
DJANGO QISGROUP FO-RMAT
Value: ’[QIS Application Group] %s’
MAXYEAR Value: 9999
MINYEAR Value: 1
PERMISSIONS Value: ((’view own workload’, ’VOW’,
[]), (’view expertisegroup ...
REPORT GROUPS Value: [(1, ’Workload’), (2,
’Employee reports’), (3, ’Course
In...
RIGHT OBJECTS Value:[(’view expertisegroup workload object’,
’VEGW object’, ’...
TASK TYPES Value: ((’researchproject’, ’Research
project’), (’managementpro...
datetime CAPI Value: <PyCObject object at
0x8eba110>name Value: ’MSDCI object’
object Value:’modify subdepartment courseinf object’
perms Value: [’change system’,
’view employee’, ’change employee’,
’de...
related name Value: ’modify courseinf rights’
right Value: ’modify system administration’
229
Technische Universiteit EindhovenUniversity of Technology
A.29 Module qis.app.templatetags.report list
A.29.1 Functions
dmodel(modelstring)
allreports(group)
supergroups()
report result list(cl, system year)
A.29.2 Variables
Name DescriptionDJANGO QISGROUP FO-RMAT
Value: ’[QIS Application Group] %s’
MAXYEAR Value: 9999
MINYEAR Value: 1
PERMISSIONS Value: ((’view own workload’, ’VOW’,
[]), (’view expertisegroup ...
REPORT GROUPS Value: [(1, ’Workload’), (2,
’Employee reports’), (3, ’Course
In...
RIGHT OBJECTS Value:[(’view expertisegroup workload object’,
’VEGW object’, ’...
TASK TYPES Value: ((’researchproject’, ’Research
project’), (’managementpro...
datetime CAPI Value: <PyCObject object at
0x8eba110>name Value: ’MSDCI object’
object Value:’modify subdepartment courseinf object’
perms Value: [’change system’,
’view employee’, ’change employee’,
’de...
related name Value: ’modify courseinf rights’
right Value: ’modify system administration’
230
Technische Universiteit EindhovenUniversity of Technology
A.30 Module qis.app.templatetags.report own
A.30.1 Functions
filter list(lst, **args)
in subdepartment(object)
employees(object)
filter assignments(lst, task type, educationtask type, education tasks)
total available hours(empl, systemyear)
init report(system year, targetobject)
A.30.2 Variables
Name Descriptionregister Value: template.Library()
DJANGO QISGROUP FO-RMAT
Value: ’[QIS Application Group] %s’
MAXYEAR Value: 9999
MINYEAR Value: 1
PERMISSIONS Value: ((’view own workload’, ’VOW’,
[]), (’view expertisegroup ...
REPORT GROUPS Value: [(1, ’Workload’), (2,
’Employee reports’), (3, ’Course
In...
RIGHT OBJECTS Value:[(’view expertisegroup workload object’,
’VEGW object’, ’...
TASK TYPES Value: ((’researchproject’, ’Research
project’), (’managementpro...
datetime CAPI Value: <PyCObject object at
0x8eba110>name Value: ’MSDCI object’
object Value:’modify subdepartment courseinf object’
continued on next page
231
Technische Universiteit EindhovenUniversity of Technology
Name Descriptionperms Value: [’change system’,
’view employee’, ’change employee’,
’de...
related name Value: ’modify courseinf rights’
right Value: ’modify system administration’
232
Technische Universiteit EindhovenUniversity of Technology
A.31 Module qis.app.templatetags.report own tasks
A.31.1 Functions
init report(subdepartment, employee)
ci list(employee)
A.31.2 Variables
Name Descriptionregister Value: template.Library()
DJANGO QISGROUP FO-RMAT
Value: ’[QIS Application Group] %s’
MAXYEAR Value: 9999
MINYEAR Value: 1
PERMISSIONS Value: ((’view own workload’, ’VOW’,
[]), (’view expertisegroup ...
REPORT GROUPS Value: [(1, ’Workload’), (2,
’Employee reports’), (3, ’Course
In...
RIGHT OBJECTS Value:[(’view expertisegroup workload object’,
’VEGW object’, ’...
TASK TYPES Value: ((’researchproject’, ’Research
project’), (’managementpro...
datetime CAPI Value: <PyCObject object at
0x8eba110>name Value: ’MSDCI object’
object Value:’modify subdepartment courseinf object’
perms Value: [’change system’,
’view employee’, ’change employee’,
’de...
related name Value: ’modify courseinf rights’
right Value: ’modify system administration’
233
Technische Universiteit EindhovenUniversity of Technology
A.32 Module qis.app.templatetags.studyprogram list
A.32.1 Functions
studyprogram result list(cl, system year)
A.32.2 Variables
Name DescriptionDJANGO QISGROUP FO-RMAT
Value: ’[QIS Application Group] %s’
MAXYEAR Value: 9999
MINYEAR Value: 1
PERMISSIONS Value: ((’view own workload’, ’VOW’,
[]), (’view expertisegroup ...
REPORT GROUPS Value: [(1, ’Workload’), (2,
’Employee reports’), (3, ’Course
In...
RIGHT OBJECTS Value:[(’view expertisegroup workload object’,
’VEGW object’, ’...
TASK TYPES Value: ((’researchproject’, ’Research
project’), (’managementpro...
datetime CAPI Value: <PyCObject object at
0x8eba110>name Value: ’MSDCI object’
object Value:’modify subdepartment courseinf object’
perms Value: [’change system’,
’view employee’, ’change employee’,
’de...
related name Value: ’modify courseinf rights’
right Value: ’modify system administration’
234
Technische Universiteit EindhovenUniversity of Technology
A.33 Module qis.app.templatetags.task list
A.33.1 Functions
task result list(cl, system year)
A.33.2 Variables
Name DescriptionDJANGO QISGROUP FO-RMAT
Value: ’[QIS Application Group] %s’
MAXYEAR Value: 9999
MINYEAR Value: 1
PERMISSIONS Value: ((’view own workload’, ’VOW’,
[]), (’view expertisegroup ...
REPORT GROUPS Value: [(1, ’Workload’), (2,
’Employee reports’), (3, ’Course
In...
RIGHT OBJECTS Value:[(’view expertisegroup workload object’,
’VEGW object’, ’...
TASK TYPES Value: ((’researchproject’, ’Research
project’), (’managementpro...
datetime CAPI Value: <PyCObject object at
0x8eba110>name Value: ’MSDCI object’
object Value:’modify subdepartment courseinf object’
perms Value: [’change system’,
’view employee’, ’change employee’,
’de...
related name Value: ’modify courseinf rights’
right Value: ’modify system administration’
235
Technische Universiteit EindhovenUniversity of Technology
A.34 Module qis.app.tests
Loads the legacy data from a set of CSV exports into the model.
A.34.1 Variables
Name DescriptionDJANGO QISGROUP FO-RMAT
Value: ’[QIS Application Group] %s’
MAXYEAR Value: 9999
MINYEAR Value: 1
PERMISSIONS Value: ((’view own workload’, ’VOW’,
[]), (’view expertisegroup ...
REPORT GROUPS Value: [(1, ’Workload’), (2,
’Employee reports’), (3, ’Course
In...
RIGHT OBJECTS Value:[(’view expertisegroup workload object’,
’VEGW object’, ’...
TASK TYPES Value: ((’researchproject’, ’Research
project’), (’managementpro...
datetime CAPI Value: <PyCObject object at
0x8eba110>debug Value: False
name Value: ’MSDCI object’
object Value:’modify subdepartment courseinf object’
perms Value: [’change system’,
’view employee’, ’change employee’,
’de...
related name Value: ’modify courseinf rights’
right Value: ’modify system administration’
username Value: ’sep’
userpass Value: ’roester’
236
Technische Universiteit EindhovenUniversity of Technology
A.34.2 Class TestViews
object
unittest.TestCase
django.test.testcases.TransactionTestCase
django.test.testcases.TestCase
qis.app.tests.TestViews
Methods
setUp(self )
Configures the test environment
Overrides: unittest.TestCase.setUp
test atr1(self )
ATR1 - UCR2, 3, 4, 5, 8, 160, 161, 162, 163
test atr2(self )
ATR1 - UCR3, 4, 8
test system(self )
test pages(self )
Tests all pages for existance
test index page(self )
Tests index page for existance
test administrative page(self )
Tests administrative page for existance
test home page(self )
Tests home page for existance
237
Technische Universiteit EindhovenUniversity of Technology
test logout(self )
Tests logs out
test employees login(self )
Test logs out and logs in as specific users
test login(self, user=’sep’, password=’roester’)
Tests login
test false login(self, user=’fake’, password=’fake’)
Tests login with false credentials
test add department(self )
Tests adding a department
test add subdepartment(self )
Tests adding a subdepartment
test add expertisegroup(self )
Tests adding a expertise group
test add studyprogram(self )
Tests adding a study program
get active system year(self )
Returns the active system year
add something(self, section, fields)
Helper function for adding an item
cleanUp(self )
Cleans the test environment
Inherited from django.test.testcases.TransactionTestCase
call (), assertContains(), assertFormError(), assertNotContains(), assertRedi-rects(), assertTemplateNotUsed(), assertTemplateUsed()
Inherited from unittest.TestCase
238
Technische Universiteit EindhovenUniversity of Technology
init (), repr (), str (), assertAlmostEqual(), assertAlmostEquals(), as-sertEqual(), assertEquals(), assertFalse(), assertNotAlmostEqual(), assertNo-tAlmostEquals(), assertNotEqual(), assertNotEquals(), assertRaises(), assert-True(), assert (), countTestCases(), defaultTestResult(), fail(), failIf(), failI-fAlmostEqual(), failIfEqual(), failUnless(), failUnlessAlmostEqual(), failUnlessE-qual(), failUnlessRaises(), id(), run(), shortDescription(), tearDown()
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),setattr ()
Properties
Name DescriptionInherited from object
class
Class Variables
Name Descriptiondebug Value: False
username Value: ’sep’
userpass Value: ’roester’
239
Technische Universiteit EindhovenUniversity of Technology
A.35 Module qis.app.views
Global and generic views for QIS
A.35.1 Functions
home redirect(request, *args, **kwargs)
home(request, *args, **kwargs)
Show the current user’s employee overview page
home edit details(request, *args, **kwargs)
Show the current user’s edit details page
administrative(request, *args, **kwargs)
The administrative object list
A.35.2 Variables
Name DescriptionDJANGO QISGROUP FO-RMAT
Value: ’[QIS Application Group] %s’
ERROR MESSAGE Value:<django.utils.functional. proxy
object at 0x94903ec>LOGIN FORM KEY Value: ’this is the login form’
MAXYEAR Value: 9999
MINYEAR Value: 1
PERMISSIONS Value: ((’view own workload’, ’VOW’,
[]), (’view expertisegroup ...
REPORT GROUPS Value: [(1, ’Workload’), (2,
’Employee reports’), (3, ’Course
In...
RIGHT OBJECTS Value:[(’view expertisegroup workload object’,
’VEGW object’, ’...
TASK TYPES Value: ((’researchproject’, ’Research
project’), (’managementpro...
datetime CAPI Value: <PyCObject object at
0x8eba110>continued on next page
240
Technische Universiteit EindhovenUniversity of Technology
Name Descriptionname Value: ’MSDCI object’
object Value:’modify subdepartment courseinf object’
perms Value: [’change system’,
’view employee’, ’change employee’,
’de...
related name Value: ’modify courseinf rights’
right Value: ’modify system administration’
settings Value: <django.conf.LazySettings
object at 0x904ddec>
241
Technische Universiteit EindhovenUniversity of Technology
A.36 Module qis.manage
242
Technische Universiteit EindhovenUniversity of Technology
A.37 Module qis.manage prod
243
Technische Universiteit EindhovenUniversity of Technology
A.38 Module qis.runserver
A.38.1 Variables
Name Descriptioncmd prefix Value: ’./manage.py ’
244
Technische Universiteit EindhovenUniversity of Technology
A.39 Module qis.settings
Django DEBUG settings for QIS project, extends settings prod
A.39.1 Variables
Name DescriptionDEBUG Value: True
TEMPLATE DEBUG Value: True
DATABASE NAME Value: ’qis trunk’
DATABASE HOST Value: ’sep.tnode.net’
SECRET KEY Value:’k384nwb947epd$tcjtsp)!4(xa&b%7j#avxbsk*ql&=+9z&n04’
QIS URL Value: ’http://localhost:8000/’
AUTHENTICATION BA-CKENDS
Value:[’qis.app.auth.backends.EmergencySuperuserBackend’,
’qis....
AD DC Value: ’tuedc1.tue.nl’
INTERNAL IPS Value: [’127.0.0.1’]
EMAIL SUBJECT PREFI-X
Value: ’[QIS Admin - DEBUG Mode] ’
EMAIL HOST Value: ’localhost’
EMAIL PORT Value: 1025
ADMINS Value: ((’SEP’, ’[email protected]’))
ADMIN MEDIA PREFIX Value: ’/media/’
AD DOMAIN Value: ’TUE’
AD SITE Value: ’tue.nl’
DATABASE ENGINE Value: ’mysql’
DATABASE PASSWOR-D
Value: ’roester’
DATABASE PORT Value: ’’
DATABASE USER Value: ’qis prod’
EMERGENCY SUPERUS-ER LOGIN
Value: ’sep’
EMERGENCY SUPERUS-ER PASSHASH
Value:’sha1$7116e$3dfdc05d10568a2996b76d63cc547ebd001f7004’
INSTALLED APPS Value: (’django.contrib.auth’,
’django.contrib.contenttypes’, ’d...
LANGUAGE CODE Value: ’en-us’
MANAGERS Value: ((’SEP’, ’[email protected]’))
MEDIA ROOT Value:’/home/roy/files/tue/2ip35/SEP2010-1/trunk/src/qis/media/’
MEDIA URL Value: ’/media/’
continued on next page
245
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionMIDDLEWARE CLASSE-S
Value:(’django.middleware.gzip.GZipMiddleware’,
’qis.app.middle...
ROOT URLCONF Value: ’qis.urls’
SEND BROKEN LINK E-MAILS
Value: False
SITE ID Value: 1
SITE ROOT Value:’/home/roy/files/tue/2ip35/SEP2010-1/trunk/src/qis’
TEMPLATE CONTEXT -PROCESSORS
Value:(’django.core.context processors.auth’,
’django.core.cont...
TEMPLATE DIRS Value:(’/home/roy/files/tue/2ip35/SEP2010-1/trunk/src/qis/templ...
TEMPLATE LOADERS Value:(’django.template.loaders.filesystem.load template source...
TIME ZONE Value: ’Europe/Amsterdam’
USE I18N Value: False
246
Technische Universiteit EindhovenUniversity of Technology
A.40 Module qis.settings prod
Django settings for QIS project.
These settings are specific to the production environment only.
Override these in module settings if you intend to debug.
Note: There are many more settings possible than are listed here.
Please see django.conf.global settings for details. Even though most
will be for internal functionality, you might find what you need there.
This file is Python code; it must be syntactically correct.
After editing this file, make sure the configuration works by running it
in test using:
manage prod.py runserver
and visiting the front page on the URL that is output.
Do not run the server in production this way, run it through a real
webserver using the WSGI server wsgi/qis prod.wsgi.
A.40.1 Variables
Name DescriptionSITE ROOT Value:
’/home/roy/files/tue/2ip35/SEP2010-1/trunk/src/qis’
DEBUG Value: False
TEMPLATE DEBUG Value: False
ADMINS Value: ((’SEP’, ’[email protected]’))
MANAGERS Value: ((’SEP’, ’[email protected]’))
SEND BROKEN LINK E-MAILS
Value: False
EMAIL SUBJECT PREFI-X
Value: ’[QIS Admin] ’
DATABASE ENGINE Value: ’mysql’
DATABASE NAME Value: ’qis prod’
DATABASE USER Value: ’qis prod’
DATABASE PASSWOR-D
Value: ’roester’
DATABASE HOST Value: ’’
DATABASE PORT Value: ’’
TIME ZONE Value: ’Europe/Amsterdam’
SECRET KEY Value:’=683 y17ahz8xo4=qc!7j4-w6^)prl3!akyz2j^#s^(@l^4ec^’
continued on next page
247
Technische Universiteit EindhovenUniversity of Technology
Name DescriptionEMERGENCY SUPERUS-ER LOGIN
Value: ’sep’
EMERGENCY SUPERUS-ER PASSHASH
Value:’sha1$7116e$3dfdc05d10568a2996b76d63cc547ebd001f7004’
AD SITE Value: ’tue.nl’
AD DOMAIN Value: ’TUE’
QIS URL Value: ’http://qistest.win.tue.nl/’
LANGUAGE CODE Value: ’en-us’
SITE ID Value: 1
USE I18N Value: False
MEDIA ROOT Value:’/home/roy/files/tue/2ip35/SEP2010-1/trunk/src/qis/media/’
ADMIN MEDIA PREFIX Value: ’/media/’
MEDIA URL Value: ’/media/’
TEMPLATE LOADERS Value:(’django.template.loaders.filesystem.load template source...
TEMPLATE CONTEXT -PROCESSORS
Value:(’django.core.context processors.auth’,
’django.core.cont...
MIDDLEWARE CLASSE-S
Value:(’django.middleware.gzip.GZipMiddleware’,
’qis.app.middle...
AUTHENTICATION BA-CKENDS
Value:[’qis.app.auth.backends.EmergencySuperuserBackend’,
’qis....
ROOT URLCONF Value: ’qis.urls’
TEMPLATE DIRS Value:(’/home/roy/files/tue/2ip35/SEP2010-1/trunk/src/qis/templ...
INSTALLED APPS Value: (’django.contrib.auth’,
’django.contrib.contenttypes’, ’d...
248
Technische Universiteit EindhovenUniversity of Technology
A.41 Package qis.tools
A.41.1 Modules
• compile tree (Section A.42, p. 250)• djangoproject: Enables importing qis.*, django.* and gives you project settings
(Section A.43, p. 251)• generate passhash: Generates salted password hashes.
(Section A.44, p. 252)• import legacy: Loads the legacy data from a set of CSV exports into the model.
(Section A.45, p. 253)• mailserver (Section A.46, p. 254)• setup (Section A.47, p. 255)
249
Technische Universiteit EindhovenUniversity of Technology
A.42 Module qis.tools.compile tree
250
Technische Universiteit EindhovenUniversity of Technology
A.43 Module qis.tools.djangoproject
Enables importing qis.*, django.* and gives you project settings
A.43.1 Variables
Name DescriptionPROJECT ROOT Value:
’/home/roy/files/tue/2ip35/SEP2010-1/trunk/src/qis’
251
Technische Universiteit EindhovenUniversity of Technology
A.44 Module qis.tools.generate passhash
Generates salted password hashes. Can be run interactively.
A.44.1 Functions
get passhash(password)
Returns a salted password hash for the given password
askpass()
252
Technische Universiteit EindhovenUniversity of Technology
A.45 Module qis.tools.import legacy
Loads the legacy data from a set of CSV exports into the model.
A.45.1 Functions
do import()
A.45.2 Variables
Name DescriptionPROJECT ROOT Value:
’/home/roy/files/tue/2ip35/SEP2010-1/trunk/src/qis’
A.45.3 Class obj
object
qis.tools.import legacy.obj
Recursively converts any dict to object for easy attribute access
Methods
init (self, d)
x. init (...) initializes x; see x. class . doc for signature
Overrides: object. init extit(inherited documentation)
Inherited from object
delattr (), getattribute (), hash (), new (), reduce (), reduce ex (),repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
253
Technische Universiteit EindhovenUniversity of Technology
A.46 Module qis.tools.mailserver
254
Technische Universiteit EindhovenUniversity of Technology
A.47 Module qis.tools.setup
A.47.1 Functions
q choice(ans, vargs)
q asciistring(ans, vargs)
q integer(ans, vargs)
ask(*args)
main()
interact main()
A.47.2 Variables
Name DescriptionQUESTIONS Value: {’adduser’: (’QIS requires an
Administrator to set up rig...
config Value: QisSettings()
PROJECT ROOT Value:’/home/roy/files/tue/2ip35/SEP2010-1/trunk/src/qis’
A.47.3 Class ValidationException
object
exceptions.BaseException
exceptions.Exception
qis.tools.setup.ValidationException
Methods
Inherited from exceptions.Exception
255
Technische Universiteit EindhovenUniversity of Technology
init (), new ()
Inherited from exceptions.BaseException
delattr (), getattribute (), getitem (), getslice (), reduce (), repr (),setattr (), setstate (), str ()
Inherited from object
hash (), reduce ex ()
Properties
Name DescriptionInherited from exceptions.BaseExceptionargs, messageInherited from object
class
A.47.4 Class QisSettings
object
qis.tools.setup.QisSettings
Methods
apply(self )
Write configuration to settings prod.py
Inherited from object
delattr (), getattribute (), hash (), init (), new (), reduce (),reduce ex (), repr (), setattr (), str ()
Properties
Name DescriptionInherited from object
class
256
Technische Universiteit EindhovenUniversity of Technology
Class Variables
Name Descriptionuse nt Value: False
import legacy Value: False
add user Value: False
257
Technische Universiteit EindhovenUniversity of Technology
A.48 Module qis.urls
A.48.1 Variables
Name Descriptionurlpatterns Value: [<RegexURLResolver
[<RegexURLPattern courses definitive
^...
258
Technische Universiteit EindhovenUniversity of Technology
Index
qis (package), 15–16qis.app (package), 17–18
qis.app.auth (package), 19qis.app.context processors (module), 26qis.app.create groups (function), 18qis.app.create permissions (function), 18qis.app.create system instance (function),
18qis.app.create task types (function), 18qis.app.initialize report data (function),
18qis.app.initialize right data (function),
18qis.app.mail (module), 27qis.app.middleware (module), 28–29qis.app.modeladmins (module), 30–102qis.app.models (module), 103–197qis.app.request cache (module), 198–
199qis.app.sites (module), 200–202qis.app.templatetags (package), 203qis.app.tests (module), 236–239qis.app.views (module), 240–241
qis.manage (module), 242qis.manage prod (module), 243qis.runserver (module), 244qis.settings (module), 245–246qis.settings prod (module), 247–248qis.tools (package), 249
qis.tools.compile tree (module), 250qis.tools.djangoproject (module), 251qis.tools.generate passhash (module), 252qis.tools.import legacy (module), 253–
254qis.tools.mailserver (module), 254qis.tools.setup (module), 255–257
qis.urls (module), 258
259
Technische Universiteit EindhovenUniversity of Technology
Appendix B
Requirements traceability matrix
260