学生在线信息和注册门户
项目描述
什么是WAeUP.Kofa?
Kofa在豪萨语中意味着“入口”或“门户”。
WAeUP.Kofa是一个多功能、开源、基于Web的学生管理系统,旨在提供关于申请和研究进展的透明和全面的信息。该系统控制尼日利亚大型大学和学校中的各种申请和学生注册流程。这是一个通用的系统,可以由世界各地的大多数大学、学院或学校部署并使用。
WAeUP.Kofa是西非电子大学项目(WAeUP)的旗舰产品。有关WAeUP的更多信息,请参阅http://www.waeup.org。
WAeUP.Kofa 真的是一个全能型软件。简要描述其功能最好的方法,是解释软件无法为您做什么,而不是试图用几句话描述所有功能。Kofa 主要不是一个电子学习系统,尽管它有一些基本的内容管理功能,教师可以使用这些功能来分发课程材料。Kofa 也不是一个调度器,不能为教师或学生生成课程计划或时间表。虽然学生可以在 Kofa 中注册课程,并可以看到或打印每个学期的课程列表,但到目前为止,课程列表中不包含课程的时间和地点信息。然而,由于 Kofa 的模块化设计,可以轻松地添加调度器或房间规划器。
WAeUP.Kofa 被分为几个部分。每个部分在 Kofa 的 对象数据库 中都有自己的文件夹。当以调试模式启动 Kofa 时
$ ./bin/kofactl debug
我们可以使用简单的 Python 表达式来查看数据库结构的头两级
>>> list(root.keys()) [u'app'] >>> list(root['app'].keys()) [u'accesscodes', u'applicants', u'configuration', u'datacenter', u'documents', u'faculties', u'hostels', u'mandates', u'reports', u'students', u'users']
部分/文件夹结构可以表示如下
root (Database Root) | +---> app (University) | +---> faculties (Academic Section) | +---> students (Students Section) | +---> applicants (Aplicants Section) | +---> documents (Documents Section) | +---> hostels (Accommodation Section) | +---> accesscodes (Access Codes Section) | +---> configuration (Configuration Section) | +---> users (Officers) | +---> datacenter (Data Center) | +---> mandates (Mandates) | +---> reports (Reports)
用户手册遵循这种组织结构,并在需要的地方添加了额外的章节。也可以在那里找到安装说明和有关定制的简要信息。
您还可以在 https://kofa-doc.waeup.org/ 找到最新文档
变更
1.8.1 (2023-01-16)
升级 dolmen.beaker 依赖项。删除其他过时的加密依赖项。需要新的 buildout 运行。将 cookie 配置从代码移动到 site.zcml 会话配置。
美化 INSTALL.txt。
1.8 (2023-01-11)
在登录后显示闪存消息中的角色。
添加 AccommodationViewer 角色。
即使学生在先前的会话中,也允许学生预订住宿(基础包中未激活)。
添加自动在选项更改时提交表单的 JavaScript(在基础包中未使用,但在 lpng 自定义包中使用)。
添加可用于自定义包的 MonthSource。
添加只能由经理打开的 BalancePaymentAddFormPage。基础包中没有提供按钮。
应用程序支付不需要会话配置对象。
添加社交媒体元数据。
在申请表最终提交后发送电子邮件。
允许自定义申请表最终提交消息。
在创建学生记录时,如果申请人的 reg_number 未设置,则将 applicant_id 复制到 reg_number 字段。
在 StudentsContainerPage 上显示最后一个学生 ID。
在成绩单中隐藏空等级。
在 addStudentStudyLevel` 方法中考虑 course_category。
向 StudentStudyCourseProcessor、StudentStudyLevelProcessor 和 CourseTicketProcessor 添加 previous 字段,以确保先前学习课程数据被导入正确的学习课程容器。
添加先前学习课程数据的导出器。
启用学生历史记录的导入。
在导入值转换时不要抱怨,但要删除前后空白。
添加“模块等级”。
简化肖像上传条件的定制。
OutstandingCoursesExporter:从未完成课程列表中删除已通过的课程。
使学生和官员以与护照照片相同的方式上传扫描签名。一些标签和标题必须重命名。占位符文件(仍然是肖像占位符)不再在基础页面上显示。
在创建单个记录后向学生发送电子邮件。
在密码重置请求后将凭据转发到登录页面。
允许申请者上传额外的 jpg 文件。
在申请者注册后预先填充登录表单。
在学院、系、课程和证书页面上显示本地角色,并提供“联系”按钮,以便认证用户可以通过 Kofa 与官员联系。
扩展 IPayer 适配器。
调整 ApplicantOnlinePaymentProcessor.getMapping(第二个修复程序)。
在 certcode 之前,按学院和系对 attendance.pdf 进行排序。
向 coursetickets.pdf 添加序列号。
1.7.1 (2021-04-20)
向 ApplicantOnlinePaymentProcessor.location_fields 添加 p_id(修复程序)。
允许经理编辑/删除部门中所有学生的所有闪存通知。
1.7 (2021-04-13)
向 CertificateExporter 添加 key 字段。
将支付选项(p_option)字段添加到支付票据中,并在在线支付添加表单页面上添加下拉框。在基本包中禁用此功能。
允许讲师导出所有课程票据,而不仅仅是当前学期的票据。
如果不在“清关开始”状态,则禁用放行请求按钮。
使《ApplicantsContainerManageFormPage》上的申请人数量最大值可自定义。
实现批量电子邮件。
使登录困难链接更加显眼。
添加《ApplicantEmailSource》(在基本包中未使用和测试)。
票据创建后重定向到支付票据页面。
使用Uli的标记替换黑客技术将签名图像注入PDF文件。
实现《ExportPDFPersonalDataSlip》(在基本包中没有按钮)。重命名《ExportPDFBaseDataPlusSlip》和《ExportPDFStudyCourseBaseDataSlip》。
当创建推荐报告时,保存由授权人提供的电子邮件地址。添加《RefereeReportManageFormPage》(无按钮)。
在《TranscriptOfficerLandingPage》上显示提交的转学申请记录(在基本包中未使用)。
实现《ContactApplicantFormPage》。
使用《Applicant.createStudent》方法也从转学申请数据中创建已毕业的学生(在基本包中未使用)。
实现《RefereesRemindPage》。
删除联系电子邮件标题并添加页脚。
实现webservice《get_payment》。
创建申请人容器时,《year》(入学年份)不再需要。
实现临时清关。
《IApplicantBaseData》中不再需要《reg_number》字段。
将《entry_session》添加到学生数据导出器中。
添加《DownloadTranscript》权限。
实现webservice《get_unpaid_payments》。
准备《renderPDFAdmissionLetter》以与另一个PDF文档合并。
将《picture_editable》属性添加到《ApplicantsContainer》中。
添加用于检查毕业学生是否存在的webservice。
实现《ExportPDFBaseDataPlusSlip》(在基本包中没有按钮)。
实现《ApplicantRefereeReportExporter》。
改进推荐报告。
对CGPA使用一致的流值格式。
错误修复:如果学习级别的对象中的level_session已更改,则必须通知coursetickets_catalog。否则,讲师看不到他们的学生。
主要为了保护毕业生的课程结果列表,实现《BatchProcessor.checkCreateRequirements》和《BatchProcessor.checkUpdateRequirements》方法。
如果没有输入分数,则不允许课程验证。
将《unlock_score》字段添加到《CourseTicketProcessor》中。
添加《UpdateCourseTicketsView》。
如果没有后续表单字段,则在条形上不显示“基本数据”标题。
添加课程票据时,检查课程是否已在先前级别通过。
添加《StudentTrimmedPaymentExporter》(由Uniben请求)。
添加《AccommodationDisplayFormPage》。
不允许学生在课程列表中添加以前的课程。
在学术部分分配本地角色时,使用kofa-filterbox进行用户过滤。
添加《waeup.local.ReportsOfficer》角色。
添加《TrimmedDataExporter》。
使《getUsers》可定制。
向《releaseBedIfMaintenanceNotPaid》添加日志消息。
在申请人部分提供文件上传组件。
也将文件从申请人复制到学生部分。
如果无法创建学生,则重置_current_stud_id。
添加《TranscriptDataExporter》并重新组织导出器名称。
将`session_level`过滤器添加到《StudentStudyLevelExporter`。
添加《LetterPDFCreator`实用程序,并使用此PDF创建器用于录取通知书。letterhead_admission.jpg文件必须存在于students/static中。
添加应用程序工作流转换《reset6`。
添加《StudentOutstandingCoursesExporter`。
在成绩条上对讲师进行排序。
在PDF条上不显示提示。
使最大护照图片大小可定制。
成功添加官员后重定向到《ChangePasswordRequestPage`。
添加get_bursary_data webservice。
实现床位选择器。
实现组合支付。
使最大文件大小可定制。
在课程级别添加 score_editing_disabled 开关。
在更新密码时考虑 DELETION_MARKER。
实现家长对学生数据的访问。
如果申请表中没有护照照片,则不要打印照片。
创建申请人后,不要将 applicant_id 复制到 reg_number 字段。
只有在申请人是“已开始”状态并且 p_category 是“申请”或申请人特殊时,成功申请人的支付才会触发“批准”转换。
允许通过容器代码中的编号而不是入学年份来添加申请人容器。
向 CourseTicketExporter 添加学期过滤器。
添加 FacultiesExportJobContainerSelectStudents 视图,允许奖学金官员通过输入学生 ID 列表或学号列表来导出学生数据的小子集。
向申请人容器添加护照照片开关。
使用 decimal.Decimal 来对抗 Python 浮点限制。
向课程级别添加级别 0 (None)。
简化可选择的支付类别的定制。
使 finished 子文件夹中列出的最大文件数可定制。
添加 attendance_sheet.pdf 视图。
实现讲师的课程结果验证工作流程。
添加毕业生过滤器。
将删除的毕业生数据备份到其他位置,以简化毕业生数据迁移。
向学习级别添加 transcript_remark 字段。添加页面以允许成绩单官员在成绩单处理期间编辑字段。
增加密码强度。现在,官员必须设置至少包含 8 个字符,并且至少包含一个大写字母、一个小写字母和一个数字的密码。不再接受存储不安全的密码。拥有不安全密码的官员无法登录,并会被重定向到 ChangePasswordRequestPage 以请求新密码。
添加 AccommodationPaymentsExporter,该工具可供住宿官员使用。
添加之前仅由 Uniben 使用的 ReleaseExpiredAllocationsActionButton。
修复 get_student_payment_stats。系部代码不是唯一的。使用其路径代替。
实现存储孤立课程券(未分配级别或信息的券)的新学习级别 0 (Level Zero) 选项。向 ICourseTicket 添加 ticket_session 字段。
实现新的成绩单处理工作流程。
如果存在,始终显示申请人支付。
允许 ApplicationsManager 查看统计信息。
向支付导出器添加支付会话过滤器。
添加 SessionPaymentsOverviewExporter。
重命名 StudentPaymentsOverviewExporter。
修复 CourseTicketExporter。票级别和会话过滤器不起作用。
向支付导出器添加支付类别过滤器。
从 ordereddSelectionList 中移除“hidden”属性,这已在 Internet Explorer 中引起故障。
在 buildout.cfg 中设置 ssl index URL。
使用“新”的 recaptcha v2。
允许在系部级别分配讲师角色。
1.6 (2018-04-05)
向 CourseTicketExporter 添加票级别和会话过滤器。
添加“学生记录创建”报告页面。
添加 CreateStudents 权限和 StudentsCreator 角色。
不允许上传带有尾随空格的数据。
不再隐藏“创建学生”按钮,而是将门户切换到维护模式,以确保在记录创建期间除用户“admin”外没有人可以进入门户。这保证了记录创建只启动一次。
将 gpa_boundaries 工具属性替换为 GPABoundaries 方法,该方法可能根据学院、系或证书代码(由 AAU Ekpoma 请求)在自定义软件包中返回不同的值。
允许 ApplicantOnlinePaymentProcessor 在创建模式下导入没有 p_id 列的记录。
向 ExportManager 角色添加 waeup.showStudents 权限。
修复 CertificateProcessor.checkHeaders。创建模式下,处理器需要 faculty_code 和 department_code。
向 StudyLevelEditFormPage 添加“更新所有票”按钮。
不允许单次请求创建超过10名学生,以避免Nginx/Apache超时。
编辑证书课程后重定向到管理页面。
将course_category属性添加到课程票务中。在基本包中,此属性在显示和管理页面中省略。
将course_category属性添加到证书课程中。
简化最大或最小总学分的配置。
将outstanding属性添加到课程票务中。
在LevelReport、SessionResultsPresentation和RawScoreReport中排除已毕业的学生。
允许处于admitted、not admitted或created状态的应用者下载付款单。
如果通过导入清除了必填字段,则捕获跟踪回溯(RequiredMissing)。
添加针对通过XMLRPC访问门户的指纹读取设备的角色FingerprintReaderDeviceRole。
1.5 (2017-02-14)
祝大家情人节快乐!
对ReportsContainerPage的表格中的参数进行排序。
将entry_session和p_session过滤器添加到学生付款统计生成器中。调整报告:更改页脚和文件名格式。
将官员姓名字段添加到IDepartment和IFaculty中。插件必须更新!
将序列号列添加到会话结果展示中。
将原始分数报告添加到基本包中。
只有用户‘admin’可以访问DatacenterSettings页面。
在级别报告和会话结果展示中显示正确的级别标题。
从学号列表中也获取所选学生的集合。
将级别报告和会话结果展示限制在证书范围内。
在报告PDF条上显示报告编号(job_id)。
级别报告:计算并显示已注册但未参加的课程数量。
添加创建毕业生的控制按钮。
添加选项以在没有护照照片和二维码的情况下渲染成绩单。
捕获Reportlab LayoutError。
将course_registration_allowed替换为course_registration_forbidden方法。
添加导出清除按钮。
添加报告清除按钮。
添加属性属性total_score,以便为自定义包中的附加分数(如持续评估)提供支持。
防止在申请人容器中存储除申请人付款以外的其他对象。
在配置页面上计算命令,并提供“清除”按钮。
在调用ExportJobContainerJobStart时同时启动ApplicantExporter和ApplicantPaymentExporter。
添加ApplicantPaymentExporter。
将文件上传功能添加到EditScoresPage。
添加LecturerLandingPage和LecturerCourses ManageLink视图。
添加ExportPDFScoresSlip。
添加仅针对讲师的DownloadScoresView。从Lecturer角色中移除waeup.showStudents。调整DataForLecturerExporter。只导出可编辑的课程票务。
移除申请费回退选项。申请费只能通过申请人容器设置。如果未设置费用,则隐藏申请页面上的付款票务部分。
添加ApplicantOnlinePaymentProcessor。
改进AddStudyLevelFormPage。
为讲师创建新的导出器,并进一步限制课程级别的导出器使用。讲师只能导出当前学术会议的数据。
在付款页面上显示特定于证书的p_level值。确保在添加余额付款时只能选择允许的付款级别。
添加flash_notice字段。
更新文档。
更新固定版本:六个
1.4.1 (2016-02-14)
添加新的应用程序工作流状态(processed)和转换(process)。
将DegreeSource和degree字段添加到ICertificate中。插件必须更新!
升级bootstrap.py脚本并更新一些依赖项。对于已运行的实例,可能需要新的初始化,即您可能需要创建新的虚拟环境,并从中运行bootstap.py和buildout,以从运行时环境中消除旧包版本。
将versions.cfg升级以包含我们依赖的包的错误修复版本。
1.4 (2016-01-14)
添加按钮和视图,允许学生在课程未经过验证的情况下取消当前课程列表的注册。
配置转账支付,并允许学生输入他们希望学习的课程。将输入的文本保存到
p_item属性。
向本地ApplicationsManager角色添加更多权限,并在申请人容器级别使其可分配。
禁用全名中HTML标签的渲染。
添加床位数统计组件。
添加选项,允许学生在预订住宿前选择希望入住的宿舍。
添加BedProcessor。
添加门户维护模式。
允许在公开页面上也使用reg_number检查申请状态,而无需密码。
从宿舍中删除beds_reserved属性。宿舍不再包含关于已预订床位的任何信息。
添加方法和页面以释放过期的床位分配。
对于首次密码请求,使用姓氏而不是名字。
在构建文档时,忽略名字中带有点的成员。
1.3.3 (2015-10-06)
在文档部分显示PDF文档的文件大小。
添加MANIFEST.in。
1.3.2 (2015-09-14)
添加公开页面以检查申请状态,而无需密码。
修复学生统计部门分解问题。
启用申请人容器清理。
启用在申请人容器中预填充空申请记录的功能,这些记录在自我注册期间使用,以避免Data.fs过度增长。
仅允许运行一个导出作业。
添加开关以禁用所有导出。
启用导入选择字段列表。
在给定期间搜索付款时包括“结束日期”。
不要创建金额为零的特殊申请付款票据。
删除手动清理锁定。用属性属性替换clearance_locked字段。
使学生电子邮件字段成为必填项。
重命名应用程序工作流程转换,并删除禁止的转换。
为了保持一致性,重命名“申请部分”。
重命名那些不具备布局感知能力的、因此不是页面的学生视图。
为可迭代源注册KofaSourceOrderedMultiSelectWidget,为IVocabularyTokenized注册KofaSourceOrderedMultiSelectWidget。
实现特定会话的课程注册截止日期和迟到注册付款。
修复doImport中的相当旧的错误:在更新和创建模式下,用忽略标记替换空字符串和列表。
添加StudentUnpaidPaymentExporter以仅导出未付款的票据。此导出器旨在查找并最终清除过时的付款票据。
删除过时的xml导入器和导出器组件。
重新排列数据中心上传页面。提供模态窗口以查看所有处理器、源和词汇表。
重新组织doctests。删除过时的doctests。
启用官员账户的临时停用。必须在重启后更新插件。
重命名“门户用户”为“官员”。
在内容框末尾添加“此页面的Kofa Docs”链接,该链接指向Kofa文档中相应的部分。
在报告中按当前级别筛选学生。
添加允许在计算学号时使用各种学号计数器的StudentsUtils.increaseMatricInteger方法。
如果学生被允许进入下一个会话,则绕过学校费用支付激活代码的创建。
将level转换为与文档保持一致的模式字段。
将类StudentPaymentsExporter和BedTicketsExporter重命名,以与其他导出器名称保持一致。
添加具有相应权限的ReportsOfficer和ReportsManager角色。
不允许导入经理导入用户数据。
跳过由电子表格软件产生的空行。
向学院添加配置学生导出作业的组件。
StudentOnlinePaymentProcessor:如果存在状态为已支付且具有相同
p_session和p_category的付款(存在重复),则引发DuplicationError。
添加新的支付状态 免除。此状态只能通过导入设置,并且仅用于支付概览导出器标记免除费用的会话。
添加导出方法和导出页面,通过输入学生ID列表来过滤学生数据导出。
学生统计现在可以按学院或系进行细分。
在创建模式下导入支付票时,检查 p_id 是否存在于支付目录中。
1.3.1 (2015-01-14)
1.3 是一个棕色纸袋发布。修复上传的文件。
1.3 (2015-01-13)
添加文档包。
不要比较 ResultEntry 对象,而是比较它们的属性。
修改 getWidgetsData,以便我们始终获得相同的错误格式。
验证大学中的所有代码。
在创建包含损坏图像文件的申请单时捕获跟踪。
移除已弃用的 HTML 和 REST 小部件,并使用 html2dict 和 rest2dict 代替。
UserProcessor:检查导入的角色是否存在于门户中。
启用批量处理模块的本地化。
隐藏“创建学生”按钮。只有管理员用户可以看到此按钮。
向 ApplicantsContainer 添加 application_slip_notice 字段。
从日志文件表中删除“大小”列。
添加权限、页面和按钮,以便批量清除系中的所有学生。
文件生成后 24 小时隐藏导出下载按钮。
添加辅助程序,允许对缓存的内存等执行 meminfo 检查。
在执行昂贵操作之前允许外部检查系统负载。
添加新依赖项:psutil(用于检查系统状态)。
在学术部分的一般搜索页面上显示闪存消息。
修复 CertificateCourseProcessor。必需的不是必填字段,并且可能在导入文件中缺失。改进日志记录。扩展并修复 CertCourseProcessorTests。
提供可定制的禁用清算官清算的方法。
将 JavaScript 函数合并到一个文件中。添加 JavaScript 函数来自动计算版权声明年份。
使用姓氏(姓)而不是名字来验证在 ApplicantRegistrationPage 上找到的申请记录。
将哈希“#”也附加到日期时间上,以避免 Excel 自动执行。
添加(可定制的)申请护照上传要求的方法。
通过指定支付日期范围来过滤支付票数据导出。
添加(可定制的)申请支付收据下载要求的方法。
添加(可定制的)申请支付票上传要求的方法。
删除未使用的 rowadd JavaScript 函数。
将 certcode 和 reg_number 添加到 DataForBursaryExporter。
纠正一些批量处理器名称。
修复 setup.py 长描述中的 ReST 标记。
1.2 (2014-06-16)
使用密码指令后重定向到登录页面。
记录添加学生支付票的操作。
提供 XMLRPC 服务以存储和检索指纹扫描。
按字典值而不是按键对 ContextualDictSource 进行排序。
在导出支付概览时添加相同的学费和余额支付。
向 StudentsUtils 添加 samePaymentMade 方法。
启用指纹文件上传。
向 Student 类添加 is_fresh 属性方法。
修改特殊申请程序。特殊申请者必须在下载支付收据之前提交他们的表格。因此,现在应用常规工作流程,但与常规申请不同,特殊申请者可以创建和支付多个支付票。此外,申请单也已隐藏。
向 StudentsUtils 添加 setMatricNumber 和 constructMatricNumber 方法。
在发送邮件时,始终将发件人地址设置为 ‘no-reply@waeup.org’。实际的发件人地址现在在 Cc 和 Reply-To 字段中设置。这是为了解决与雅虎(不允许从非雅虎服务器发送 yahoo.com 邮件)的问题。
在特殊申请容器中启用多次支付。特殊支付申请者在支付后保持已启动状态。
使用 Bootstrap 3 改善文件输入字段。
调整成绩单和访问代码页面的模板。
在所有学生条上打印二维码。
允许在所有学生条上的基本数据部分添加 current_level(由Uniben提出)。
不再支持Windows。安装手册已删除。
添加了JS助手,用于在添加/删除项目后滚动到 sequencelists。
1.1 (2014-03-13)
向 CourseTicketExporter 添加 display_fullname 列(由Uniben提出)。
也导出试读生的学生和课程券数据。
从“应用程序转换”选择字段中删除了“创建学生”选项。
添加了API文档。
将回退链接替换为动画jQuery插件。
更新了默认主页文本。
在数据中心页面上使用绝对URL。
提供可定制的禁用学生支付的方法。
登录和登出后,普通用户(官员)被重定向到门户的索引页面,而不是门户的根。现在可以由Nginx或Apache重写根URL,以便在直接输入根URL或点击缩写时将用户重定向到大学网站。
在更新插件之前显示工具提示警报和警告窗口。
JSAction已被弃用。可以使用KofaAction代替。可以在@action装饰器中使用附加参数来启用工具提示和/或警告窗口。旧的@jsaction装饰器仍然会触发默认警告消息。
也使用jquery-ui.min.js进行工具提示。
在更新插件时不要创建TSC AC批次。所有TSC批次都将创建。
使申请人root页上的表格响应式。
更改输入、选择和textarea字段的宽度。
在theme.html中仅使用https。
更新并集成到Sphinx文档中的INSTALL.txt。
删除文档中的冗余。
1.0 (2014-02-22)
对整个包进行了氮化。
0.2.1 (2014-02-21)
如果站点范围配置管理员与from-address不同,则从地址发送邮件。
更改成功申请者的闪光信息。
使用具有付款对象的申请者的更多属性。
更新版权信息(年份)。
本地化更新。
0.2 (2014-01-09)
许多更改。
0.1(从未发布)
初始版本。从waeup.sirp复制。
下载
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于 安装软件包 的信息。
源分发
构建分发
waeup.kofa-1.8.1.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | e3340b49b3ac4aeaf89e6c931f75c173ef35b00c48e5398353ce45ea84c477a9 |
|
MD5 | e40818d9fe11da6cde18aa656ba720af |
|
BLAKE2b-256 | f2da61f19d6b6a8086a82a68b49997f770715042e8bc20b8044782a6be074bf6 |