<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>http://wiki.mipt.ru/index.php?action=history&amp;feed=atom&amp;title=Development%3APlan_to_Convert_question_bank_to_activity_module</id>
	<title>Development:Plan to Convert question bank to activity module - История изменений</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.mipt.ru/index.php?action=history&amp;feed=atom&amp;title=Development%3APlan_to_Convert_question_bank_to_activity_module"/>
	<link rel="alternate" type="text/html" href="http://wiki.mipt.ru/index.php?title=Development:Plan_to_Convert_question_bank_to_activity_module&amp;action=history"/>
	<updated>2026-05-06T21:59:53Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>http://wiki.mipt.ru/index.php?title=Development:Plan_to_Convert_question_bank_to_activity_module&amp;diff=11564&amp;oldid=prev</id>
		<title>Олег Давидович: 1 версия импортирована</title>
		<link rel="alternate" type="text/html" href="http://wiki.mipt.ru/index.php?title=Development:Plan_to_Convert_question_bank_to_activity_module&amp;diff=11564&amp;oldid=prev"/>
		<updated>2024-10-21T08:52:55Z</updated>

		<summary type="html">&lt;p&gt;1 версия импортирована&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Предыдущая версия&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Версия от 08:52, 21 октября 2024&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Олег Давидович</name></author>
	</entry>
	<entry>
		<id>http://wiki.mipt.ru/index.php?title=Development:Plan_to_Convert_question_bank_to_activity_module&amp;diff=11563&amp;oldid=prev</id>
		<title>1&gt;Jamiesensei: /* This plan was scrapped */ spello</title>
		<link rel="alternate" type="text/html" href="http://wiki.mipt.ru/index.php?title=Development:Plan_to_Convert_question_bank_to_activity_module&amp;diff=11563&amp;oldid=prev"/>
		<updated>2007-04-04T07:52:14Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;This plan was scrapped: &lt;/span&gt; spello&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Convert question bank}}&lt;br /&gt;
==This plan was scrapped==&lt;br /&gt;
&lt;br /&gt;
This plan was scrapped (see [http://moodle.org/mod/forum/discuss.php?d=67006 &amp;#039;Plan for the conversion of the question bank into an activity module&amp;#039;] discussion on General Developer Forums for reasons)! And I&amp;#039;m now working on a new plan [[Development:Plan to Improve Flexibility of Question Category Sharing and Permissions]] also discussed in the same forum discussion here [http://moodle.org/mod/forum/discuss.php?d=67006#p302753 with new heading &amp;#039;Plan to Improve Flexibility of Question Category Sharing and Permissions&amp;#039;].&lt;br /&gt;
&lt;br /&gt;
==Convert question bank==&lt;br /&gt;
&lt;br /&gt;
Making the question bank an activity module allows us :&lt;br /&gt;
&lt;br /&gt;
* to have more than one question bank in a course and &lt;br /&gt;
* to use activity module roles and permissions and restore and backup framework for question banks rather than special case code.&lt;br /&gt;
&lt;br /&gt;
===Code changes===&lt;br /&gt;
&lt;br /&gt;
* move files in /question to mod/qb directory&lt;br /&gt;
** rename edit.php to mod/qb/view.php&lt;br /&gt;
** mod/qb/index.php will list available question banks.&lt;br /&gt;
* implement mod/ hooks to question bank and remove special case code for question roles&lt;br /&gt;
** activity visibility.&lt;br /&gt;
*** activity will be visible or invisible as normal in course view. (chosen when setting up new question bank)&lt;br /&gt;
*** But need to check that mod is visible if students are allowed to edit / create questions.&lt;br /&gt;
* new {prefix}qb table for question bank&lt;br /&gt;
* prefix qb_ to all tables of question bank. To comply to the convention that all module tables are prefixed with the module name&lt;br /&gt;
* new field in {prefix}qb_question_categories table to point to {prefix}qb table&lt;br /&gt;
* When more than one question banks is available add available question bank names as a replacement for TOP in parent drop down box when creating a category and add it to drop down box when creating a question.&lt;br /&gt;
** Available question banks depend on the permissions of the current user.&lt;br /&gt;
&lt;br /&gt;
===Testing===&lt;br /&gt;
&lt;br /&gt;
Test operation of question bank adding questions.&lt;br /&gt;
&lt;br /&gt;
==Make Question Bank Work with Quizzes==&lt;br /&gt;
&lt;br /&gt;
* fix urls and include paths and anything else that has been broken in quiz module&lt;br /&gt;
&lt;br /&gt;
===Testing===&lt;br /&gt;
&lt;br /&gt;
* Test quiz set up to see it works as normal.&lt;br /&gt;
&lt;br /&gt;
==Conversion of Existing Question Data in db==&lt;br /&gt;
&lt;br /&gt;
* On conversion questions default invisible question bank in first topic of course created with permissions the same as old question bank (only if there are existing questions - no default qb created otherwise).&lt;br /&gt;
* All existing questions added to this question bank.&lt;br /&gt;
* modify roles in db to use new mod/qb roles.&lt;br /&gt;
&lt;br /&gt;
===Testing===&lt;br /&gt;
&lt;br /&gt;
Test update of existing questions in database to work with mod/qb banks.&lt;br /&gt;
&lt;br /&gt;
==Check for Breakage in Log Messages==&lt;br /&gt;
&lt;br /&gt;
Check existing log messages. See that they&amp;#039;re not affected by db changes and question bank API changes.&lt;br /&gt;
&lt;br /&gt;
==Backup and Restore==&lt;br /&gt;
&lt;br /&gt;
===Implement Restore of Old Question Bank Backup to New db structure===&lt;br /&gt;
&lt;br /&gt;
Implement restore of existing question banks backups to new db structure. User will be asked to se&lt;br /&gt;
&lt;br /&gt;
===Implement Backup of New db structure to New Question Bank Backup Format===&lt;br /&gt;
&lt;br /&gt;
Implement Backup of db structure after conversion to new question bank backup format. Format same as other activity modules new top level xml tag &amp;lt;qb&amp;gt; with module name &amp;lt;questions&amp;gt; nested within &amp;lt;qb&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Implement Restore of New db structure from New Question Bank Backup Format===&lt;br /&gt;
&lt;br /&gt;
Will be able to restore new and old question bank backup format.&lt;br /&gt;
&lt;br /&gt;
==Backup Dependencies==&lt;br /&gt;
&lt;br /&gt;
* Add hook in mod/qb/backuplib.php for modules to tell moodle what other module instances are necessary.&lt;br /&gt;
* Call it so that we can make sure that when a quiz is selected that all question banks required are also selected.&lt;br /&gt;
* Throw a warning if somehow a user selects a module but has not selected the module dependencies, and then go ahead and backup the dependencies anyway.&lt;br /&gt;
* Make sure that the code works as expected for shared questions from other courses. See : http://moodle.org/mod/forum/discuss.php?d=66825#p300865&lt;br /&gt;
&lt;br /&gt;
==More sophisticated Permissions for Question Bank==&lt;br /&gt;
&lt;br /&gt;
This needs more thinking about but I&amp;#039;d like to see more sophisticated permissions for each question bank. Something along these lines.&lt;br /&gt;
&lt;br /&gt;
Seperate permissions for :&lt;br /&gt;
&lt;br /&gt;
* read all questions&lt;br /&gt;
* create own question permission&lt;br /&gt;
* edit own question permission&lt;br /&gt;
* delete own question permission.&lt;br /&gt;
* edit others question permission&lt;br /&gt;
* delete others question permission.&lt;br /&gt;
&lt;br /&gt;
Need to add a user id to question record for question creator and last editor.&lt;br /&gt;
&lt;br /&gt;
Need a follow of the different authors to limit somewhat plagiarism like this wiki page.&lt;br /&gt;
A comma separated list of id could be useful.&lt;br /&gt;
However if we allow import and export (and the import/export is working for this question_type...) the identification list is less useful against plagiarism.&lt;br /&gt;
&lt;br /&gt;
User id defaults to NULL or 0 when updating old database.&lt;br /&gt;
&lt;br /&gt;
==Further Work Needed==&lt;br /&gt;
&lt;br /&gt;
Hopefully the conversion of question banks into activity modules will then make the problem of access to media from shared questions easier to handle. Petr&amp;#039;s modfile.php patch might help with this see http://moodle.org/mod/forum/discuss.php?d=51143&lt;/div&gt;</summary>
		<author><name>1&gt;Jamiesensei</name></author>
	</entry>
</feed>