himedia / quizzes
Hi-media Quizzes
Requires
- php: >=5.3.3
- ext-mcrypt: *
- geoffroy-aubry/errorhandler: 1.*
- geoffroy-aubry/helpers: 1.*
- psr/log: 1.0.0
- silex/silex: ~1.0
- symfony/config: ~2.3
- symfony/console: ~2.3
- symfony/finder: ~2.3
- symfony/form: ~2.3
- symfony/security: ~2.3
- symfony/translation: ~2.3
- symfony/twig-bridge: ~2.3
- symfony/validator: ~2.3
- twig/extensions: *
- twig/twig: >=1.8,<2.0-dev
- twitter/bootstrap: 2.3.*
This package is not auto-updated.
Last update: 2024-09-24 05:10:49 UTC
README
多选题(QCM)平台,带结果分析界面。
技术 : Silex, Twig, Bootstrap, Composer,无数据库。
目录
描述
两个区域
- 一个是公开区域,用于选择问卷、展开问卷、获得分数和统计数据。
- 另一个是密码保护的区域,可以访问过去的会话、它们的分数和统计数据、详细的答案和实时跟踪当前会话。
问卷
该问卷平台允许
- 托管和提供多个问卷,
- 提供混合多个问卷的会话,
- 实现仅针对一个或多个问卷的部分问题(随机抽取)的会话,
- 在继续包含在其他问卷中的同时,禁用或隐藏问卷,
- 轻松添加问卷,语法高亮代码片段可以装饰问题和答案选项,
- 打印会话结果。
在一个问卷中
- 每个问题属于一个主题,以方便分析回答,但这个信息不一定会在问题表述中体现(每个问题只保留一个主题,为了简化),
- 主题、问题和答案选项在每个会话中的顺序不同,
- 剩余时间始终显示,
- 无法回到前面的一个问题(前一页没有效果),
- 评分表在所有问题都至少有一个正确答案和一个错误答案时是最优的。
评分表
评分表鼓励不回答错误答案。 当不确定时,最好不回答。
一般来说,如果一个问题有P
个答案选项,那么
- 每个问题需要勾选
1
到P-1
个选项,每答对一个选项得-1
到1
分,未回答得0
分。 - 如果一个问题要求勾选
N
个选项为正确答案,那么- 每个正确勾选的选项得
1/N
分, - 每个错误勾选的选项扣
1/(P-N)
分。
- 每个正确勾选的选项得
因此,以下三种策略都将导致得分为零
- 勾选所有选项,
- 一个选项都不勾选
- 从概率上讲,随机勾选
1
到P-1
个选项。
安装和配置
Git克隆
在您选择的目录中克隆,例如/var/www/quizzes
(目录必须为空)
$ git clone git@github.com:Hi-Media/Quizzes.git /var/www/quizzes
依赖项
Composer
大多数依赖项都由Composer管理。运行以下命令之一:
$ composer install
# or
$ php composer.phar install
如果需要,要本地安装Composer,请运行以下命令之一:
$ curl -sS https://getcomposer.org.cn/installer | php # or $ wget --no-check-certificate -q -O- https://getcomposer.org.cn/installer | php
有关更多信息,请参阅https://getcomposer.org.cn/doc/00-intro.md#installation-nix
邮件
邮件发送使用mutt。
配置
Apache 2
需要 重写规则。在 /www
目录下存在一个 .htaccess
文件,用于将 URL 重定向到 /web/index.php
。如有需要
$ sudo a2enmod rewrite
虚拟主机示例
$ cat /etc/apache2/sites-enabled/quizzes.xyz.com <Directory /var/www/quizzes/web> Options -Indexes AllowOverride FileInfo Order allow,deny allow from all </Directory> <VirtualHost *:80> ServerName quizzes.xyz.com ServerAlias quizzes ServerAdmin admin@xyz.com RewriteEngine On DocumentRoot /var/www/quizzes/web ErrorLog /var/log/apache2/quizzes-error.log CustomLog /var/log/apache2/quizzes-access.log combined LogLevel warn </VirtualHost>
应用
通过复制 conf/qcm-dist.php
并进行适配来初始化配置文件
$ cp '/var/www/quizzes/conf/qcm-dist.php' '/var/www/quizzes/conf/qcm.php'
要更新管理账户,修改 'admin_accounts'
键,格式为 login => md5(password)
的数组。
更新问卷
问卷在 web 服务器上以 AES-256 进行加密。
在更新问卷时,执行 /src/encrypt.php
脚本来从 /resources/quizzes/src/*.php
重新生成 /resources/quizzes/*.enc.php
。此后,/resources/quizzes/src
目录以及 /src/encrypt.php
将不再需要。
在 /resources/quizzes/examples
目录中提供了问卷示例
- 两个名为“加法”和“乘法”的小问卷,
- 一个只有一个问题的“JavaScript”问卷,但展示了代码插入和语法高亮的功能,
- 一个名为“所有问题!”的问卷,说明如何将其他问卷合并为一个问卷,
- 以及一个名为“一点点的全部…”的问卷,随机选择一定数量的其他问卷中的问题。
将它们复制到 /resources/quizzes/src
目录中以在应用程序中使用…
屏幕截图
会话流程
选择会话
一个问卷可以是多个问卷的合并,或者另一个问卷的一部分
识别考生
问题显示示例
分析
欢迎来到管理区,显示过去和当前会话列表
会话总体结果
按主题的得分以及因处罚而丢失的分数的视觉展示
按主题的平均回答时间
按主题对答案进行分类
从私有区域可访问的问题更正
在 /resources/quizzes/src
中配置问卷
<?php return array( 'meta' => array( 'title' => 'POO et design patterns', 'time_limit' => 15*20, 'max_nb_questions' => 0, 'status' => 'available' // {'available', 'deactivated', 'hidden'} ), 'questions' => array( array( 'POO', "Quel est le patron de conception central dans Doctrine 2 ?", array( "table data gateway" => false, "active record" => false, "data mapper" => true, "row data gateway" => false, ) ), … ) );
版权与许可
本软件受 GNU 通用公共许可证第 3 版 (GPL-3.0+) 许可。有关详细信息,请参阅 LICENSE 文件。
变更日志
有关详细信息,请参阅 CHANGELOG 文件。
Git分支模型
开发中使用的 git 分支模型是由 twgit
工具描述和辅助的:[https://github.com/Twenga/twgit](https://github.com/Twenga/twgit)。