Moodle Quizes - How to Limit the number of questions per quiz attempt? - moodle

Let's say we have a published Quiz in Moodle and a learner attempts the said Quiz, all the Quiz questions are being asked.
Is there an way to limit the number of questions displayed to students?
Here are the example requirements:
The questions need to come from a question bank that contains 20 items
The Quiz needs to be 10 questions long
The Quiz questions need to be fed randomly from the question bank
Different users can answer different questions
No users can see all the 20 questions from the question bank

To recap:
You need a quiz that contains 10 random questions from a question bank that has 20 questions in total.
The following are based on Moodle 3.5
Here are the steps:
Create your question bank, any questions you would like
Create your quiz, you should now see the following once you're in
No questions have been added yet
Click on the "action" gear and "Edit quiz"
Click the "Add" dropdown and choose "+ a random question"
From the pop-up, choose the tab "Existing category"
Select your question bank from the category field
Apply filters if needed
Number of questions, choose 10 (assuming you want 10 questions)
you will see the list of questions from your question bank at the bottom of the pop-up
Click the button "Add random question"
You should now be back to you quiz edit page with your 10 random questions.
You can select the "Shuffle" option if you want the questions to be shuffled.
Now you're ready to test your quiz. You will have a total number of 10 random shuffled questions based on a 20 questions bank.

Related

Go to a record from a portal

I'm making an app for authors using Filemaker. I posted this question on their forum but still haven't gotten an answer.
My app is basically a place where people can keep track of all the details that go into creating characters and locations. In each book (record) I have a tab control with 4 tabs: Book Details, Character List, Location List and Group List. Within the character list tab I have a portal which shows a list of the characters for that book.
I'm trying to create a button for each row in the portal which takes me to that records details page (the one with the red box around it). Right now, it's set to go to the character details layout. However, whichever row I click on, it takes me to the last visited record. Is there a way to go to each row's record from the portal? If not, do you know of a way to do the same thing through another method? I have a list layout which I used before, however, it doesn't hide the records for different books. For example, if I select book 1, it still shows characters for book 2. Thanks in advance for any help you can give me!
Create a button, attach a script or single command that uses the Go To Related Record script step using the same relationship as the portal.
Make sure the button fits within the row.

Create a Google Form (or similar) that verifies Student ID before submission

Context:
I teach at a university with mostly monolingual, English-speaking teachers, and students with mostly Russian and Kazakh names.
I want to create a simple form (like this https://docs.google.com/forms/d/1zo0vSfrH-xIosENy1wVjOd_VvPL5LL6UX6g4VqIPFn0/viewform ) that would keep track of reports of plagiarism on a Google Sheet (like this https://docs.google.com/spreadsheets/d/1h2nAvCq31xumi4SvjMvWWp8RR7ppJ_NtLCiuvrLqVkc/edit?usp=sharing )
Having the English speaking teachers type in Russian and Kazakh names would likely lead to mistakes. There are too many students at the university to choose them from a drop-down menu, and would be too many teachers and courses to create separate Google Forms for all of them, or to use Google's branching page choices (it would require creating hundreds of pages). So I would like instructors to be able to type in the Student ID # and their own Instructor ID #, and then have some way to verify that they have typed that information in correctly (so we don't have the wrong students being penalized, or penalties that don't get assigned to any student at all).
Questions:
1. Is there any possible way (via scripting, an add-on, etc.) to have Google Forms take the Student ID from Page 1, then look up the student's name on the Student Info tab of the Google Sheet and insert it into the text field on the second page of the Google form, so the instructor can verify it's the correct student? (Or any other technique anyone can think of that would allow a Google Form user to verify that they had entered the correct data, or help manage the massive number of choices of students in a university of several thousand students.)
If (as I'm afraid), there is no way to do it with Google Forms, can anyone suggest a Form creation platform that would do something like this, and that would integrate with Google Sheets or something similar?
Any help would be appreciated. Thanks in advance.
If you are open to doing it differently I'd go this route...
1) Use a short answer box and allow edits to answers.
2) Put the onSubmit() trigger into the sheet. When a submission comes in, send a follow up email to the person with the ID that they typed and the student name that it corresponds to. Let them know that no action is required if that is correct. If it isn't correct, they should edit their response with the edit response link which you can get using getEditResponseUrl(). I'd call it done right here and only worry about additional features if they are needed. It isn't as ideal as verifying at the time but would get the same thing done for people that can't keep their IDs straight. :-)
3) But... if you have people that keep messing up and they don't fix their issues or whatever, add a link in the email to confirm that the entry is accurate. If it isn't then a weekly/daily task runs that deletes any entries that haven't been confirmed and are older than Y days.
4) Alternately, instead of verifying what they type, give them drop down lists made up of a combination of student ID and name. I'd have multiple lists, depending on the number of active students. One or many though, make a script in the sheet that updates the dropdowns in the form either on edit or by manually running the script, either from a menu item or by attaching it to an icon on the page where the IDs/names are at. They should see 12345 - Joe Smith as the option and can find the right one if that student name doesn't match the ID they thought they should use.
I have a script like #4 that I use to populate a form with updated products whenever the list changes. I tied it to a big red button JPG to help the end users remember to run it when they change something, as a menu option didn't work and running every time there was an edit was too much.
If you list of students/IDs also includes the teachers/classes/etc you could even do custom forms for each staff member that uses the form that only populates their students. Not sure how many staff you have so that might not be practical. Though again, once you have the script and the data is accurate, updates are a single click.

count correct / incorrect answers after every verification

In moodle is it is possible to count correct/incorrect answers in Immediate feedback Test and show them in the quiz navigation panel?
at the end of the test there is a summary which count the correct answers, but how to show this in the quiz navigation panel after every question is verified?
The "quiz navigation panel" is a special fake block that is displayed as part of the quiz attempt page, it is not an addon or a plugin, it's part of Moodle's core. so, any solution for your question has to involve core changes. if you are willing to do so, you can either use mod/quiz internal questions status display mechanism:
https://github.com/moodle/moodle/blob/master/mod/quiz/attemptlib.php#L1580-L1597
mod/quiz marks with green all the questions that the student has submitted correct answer to. so you can use that mechanism to display the count yourself.
Pick up parts of the following code snipets:
Loop through the questions (slots):
https://github.com/moodle/moodle/blob/master/mod/quiz/attemptlib.php#L2114
And count the correct answers:
https://github.com/moodle/moodle/blob/master/mod/quiz/attemptlib.php#L2125
Make a new function from the above snipets or just add the above snipets after the following line:
https://github.com/moodle/moodle/blob/master/mod/quiz/renderer.php#L336
Hope it helps.

Creating an Access Form [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 7 years ago.
Improve this question
I am not going to pretend to know anything about creating forms in Access, it is an entirely new concept to me. I have a DB in access that contains a number of tables and queries. I would like to create an access form that I can use as a search form, to look up any particular fields i need. I would simply type in what I was looking for and a list of the tables/queries that relate to it would appear. Is this doable?
The short answer to your question "is this doable" is: yes this is absolutely doable.
A good place to start would be to use the Form Wizard. Then get some training (plenty online) on how to design forms. Dlookup will likely be your friend.
Alternatively, a Report is another way to show a specific record based on some specified criteria (show me address for person A).
Short answer: Yes.
Longer Answer: I dont know what your background is. If this is your first Database project then you have a lot of reading to do and I would go and get myself a good ACCESS book and read it or spend a lot of time on the Microsoft Technet. Thats about as specific as I can get from the question itself.
Perhaps a solution for you:
Step A: Create a form
There are many ways to create forms. You may try this one:
1) In the Access Objects Window (far left on your screen) mark the table or query you want your form be based on. That means: the form shall display all the fields that are in that specific table or query.
2) With your table or query marked, in the "Create" pane of the Ribbon, click the button "Form". This creates a rudimentary form with all the fields from your table or query arranged in a more or less sensible way. (If you do not like the way the fields are arranged, you can re-arrange them, resize them or remove some of them, etc.)
3) Close this form. On closing, you will be asked to enter a name for it so that you can identify it later.
Step B: Use the form for filtering
1) Open that form (now in "form" view, not "design" view, of course)
2) In Home section of the Ribbon, in the Sort&Filter Area, click on the tiny button "Advanced", and from the dropdown select "Filter by form". Having this done, you then can enter various criteria in the fields on your form. Some of them may display dropdowns to choose from existing content. In some fields you may want to enter stuff like
Like "*liv*"
which will search for content containing any of live, lively, oblivious, olive, etc.
3) To apply the filtering, in the Ribbon, Home Section, Sort&Filter Area, click "Toggle filter". This will make your form display only records that comply with your criteria.
4) To wipe out your filter criteria, use the button Advanced --> Clear all filters.
This was a very basic introduction into core functionality of Access. Generally, I would support the other contributors here in saying: go to your local library and take any of the various Access introductory books they have there, read it, and try out what you read. You will make quick progress. (You may as well read any tutorial in the internet, but I personally would recommend a book: you just will have the fun to stroll through the pages, perhaps sitting in your garden, and bump into interesting stuff you probably would not have expected. That will help your progress considerably.)

building a quiz game in c#

Forgive me, as I am new to c sharp, and programming in general. I am trying to make a quiz game, and am hoping that someone might point me in the right direction.
So here's the program would do...
When the user starts the program, he/she has two options:
to create a category, such as history, family, football,...and so on.
To Play the Game, at which point the user would select a previously created category from which the questions would arise.
So if I am the user, and I click on "Create a new category", I am taken to a screen where I can do just that. I enter "Family". And now I have the option of creating subcategories of family. For instance the subcategories might be my family members, so I can have Bobby, Mike, Suzy, mom, and dad.
Once I have created these subcategories, I can click on any one of them, and enter questions about that specific one. If I click on dad, I make a list of questions like, "What year was dad born?", what is Dad's favorite food?", " Where does dad work?", etc.
And for each of these questions, I enter the answer.
So after making the category and subcategories I go back to the main page and click "play Game", and then choose the Family" category. When the game starts, it will pick randomly from the subcategories, and questions about them randomly.
For instance, the program picks Dad, displays "Dad" in a large text box. Under the large text box is the question that the program has selected from the subcategory "Dad". If it asks, "What is dad's favorite food", then the user must type in, "Beef Stew". after answering, and being right or wrong, the program then randomly selects another subcategory, and so forth, and so on
I am using visual studio for this project, and I know how to set up the user interface, but I seem to be confusing myself concerning the user data. Do I need to store the user input in a database? If so what process do I use to recall the information so the program access it and implement it in the game? Do I store it as lists, arrays, collections? If so, what do I need to do to re-implement those lists, arrays, or collections back into the programs code?
I'm really hoping to get an explanation, in words, of what steps I need to take to create this program. Like I said, I'm a newb. So if you can just give me a list of steps, I'll gather the relevant instructions for those steps from my c# books. Any help is much appreciated. Thanks in advance
You will have to store the questions somewhere (except in memorry) if you still want to have them wenn you restart the program.
Create a Question-Class wich stores the question and the possible answers, ...
When the user creates a new question you create a new Object from that class with the information that the user typed in. Then you will have to store this question somewhere. The best solution would propably be a database.
Create a database in wich you insert all the questions the user created.
When the user then wants to play the quiz you query all the questions from the seleced category and store them in memory(use something like a DataTable).
You can then choose a random question out of the table.
And that should be it.
Google the following topics for more information: database, sql, C# database, DataTable, ...