Activities ::: mod_evoting
Maintained by Christophe Hadorn, Centre e-learning HES-SO Cyberlearn
The E-Voting activity module enables students to vote via their smartphone or their laptop and to have the results displayed on a graph in real time.
Latest release:
1552 sites
93 fans
Current versions available: 6

The E-Voting activity module enables students to vote via their smartphone or their laptop and to have the results displayed on a graph in real time.

The E-Voting activity is ideal to capture the attention of wide groups. It increases interactions between "Professors-Students". Therefore, it supports a flipped class type of activity.

E-voting can be used in class to check knowledge at the end of a course or to animate theoretical presentations.


  1. As a teacher, on your course, turn editing on
  2. Add an activity or resource
  3. Select E-Voting
  4. Fill the form to create a new E-Voting poll
  5. On the E-Voting page, Click on the QR Code to show it bigger
  6. Your students in class shall have the option for seeing the vote panel to:
    • scan this QR Code with a QR Code reader installed on their Smartphone
    • access with URL above the QR Code
    • click on the activity in the course page
  7. Click "Start button" to start the e-voting poll (you can select if you want time for voting or not)
  8. Only at this moment, your student can vote with Smartphone, laptop, ...
  9. When you want to stop the poll, click the "Stop button"


Screenshot #0
Screenshot #1
Screenshot #2
Screenshot #3
Screenshot #4
Screenshot #5


Christophe Hadorn (Lead maintainer)
Centre e-learning HES-SO Cyberlearn
Please login to view contributors details and/or to contact them

Comments RSS


  • Mon, Oct 3, 2016, 3:00 PM
    Hi, principally we add more security :
    - use session key, check ajax call, use require_parameter / opional_parameter method. with ajax call for anonymous user and too require_login / isLoggin() for authenticate user.
  • Fri, Nov 4, 2016, 11:21 PM

    Thanks for uploading a new version. However I don't think it is much closer to being accepted for now, to be honest. I reported more details into separate issues in your bug tracker. There are some significant bugs - like a lack of authorisation for certain operations where one would expect it (sesskey confirmation protects from cross site request forgery, it is important to understand what it does and does not). Other things like hard-coded prefix of database tables in SQL queries may make the plugin unusable on many sites. I must mark this as needing more again, thanks for understanding.

  • Wed, Nov 30, 2016, 7:02 PM
    New version fix some bugs / best practices :
    - choice limit settings at site level
    - improve authorisation with ajax
    - rename prefix functions and prefix tables
    - some minor improvement (access session variables, lang detection, etc.)
    - bug fix jquery
  • Fri, Dec 16, 2016, 6:29 AM

    Thanks Christophe.

  • Thu, Dec 22, 2016, 6:32 PM

    I'm having some problems creating the QR Code. The QR Code does not appearing... If I try to see only the QR Code image (mouse right key), I receive this message:

    "en: malformed 'create-qr-code' API request. Please consider the API
    documentation at http://goqr.me/api/doc/create-qr-code/

    de: ungültige 'create-qr-code'-API-Anfrage. Bitte beachten Sie die
    API-Dokumenation unter http://goqr.me/de/api/doc/create-qr-code/"

    Can you help me?

  • Thu, Dec 22, 2016, 7:55 PM
    If the QR Code doesn't appear :

    You can try this :


    line 59 (replace content by) :
    define('QRCODE_URL', $protocol . $path ."/". QRCODE_URL_LINK);

    Line 93 (replace content by) :
    $qrCodeS = "https://api.qrserver.com/v1/create-qr-code/?color=000000&bgcolor=FFFFFF&data=" . urlencode(QRCODE_URL) ."&qzone=1&margin=0&size=60x60&ecc=L";

    Line 108 (replace content by) :
    $qrCode = "https://api.qrserver.com/v1/create-qr-code/?color=000000&bgcolor=FFFFFF&data=" . urlencode(QRCODE_URL) ."&qzone=1&margin=0&size=400x400&ecc=L";

    Keep me in touch,

  • Thu, Dec 22, 2016, 11:22 PM
    The version v3.1.1-r6 fix this issue
  • Sun, Jan 8, 2017, 2:49 AM
    Hi Christophe,

    I experience a problem with the QR-code-link en the link itself.
    They links me to http://mysite.etc instead of httpS://mysite.etc.

    What do I wrong? Can you fix it?

  • Wed, Jan 11, 2017, 5:28 PM
    The version v3.1.1-r7 fix this issue
  • Fri, Jan 20, 2017, 9:52 AM
    I didn't have much success with this plug-in on the adaptable theme, install when well, then added to the frontpage and a course. The configuration fields were all over the place, gray box at top of page pushed fields into the footer, and fields overlayed with other fields. Uninstalling the plug-in at least worked. I am on 3.1
  • Fri, Jan 20, 2017, 11:07 PM
    Hi David,

    To fix the issue on the adaptable theme, you can comment these lines on file style.css on evoting folder and clear cache in Moodle.

    body.path-mod-evoting .container {
    display: table;
    width: 100%;
    height: 33.3%;
    padding: 0px;

    body.path-mod-evoting .container div {
    display: table-cell;
    text-align: center;
    height: 100%;
    margin: 0;
    padding: 0;
    vertical-align: middle;
    width: 50%

    When I have more time, I will upload a new version with some improvement.
  • Sat, Jan 28, 2017, 11:29 PM
    This is really good, ive played about with this on moodle 3.2 with the adaptable theme but seems to hang and timeout my site but the actual voting functionality is brilliant. This is something i would definitely use in the classroom. Just a bit of feedback though, it would be nice for the option to automatically move to the next question after the time runs out rather than clicking on each question and maybe a report at the end on how the voting went.

    I look forward to using this later once this has been more stable. Great work though and great idea. Im sure alot of people would enjoy using this feature.
  • Fri, Feb 10, 2017, 3:41 AM
    Hi this is great plugin, but can you add option for add image for each option....
  • Mon, Feb 20, 2017, 4:57 PM
    I notice yours suggestions but the next step is that e-voting will be compatible with Moodle 3.2
  • Fri, Feb 24, 2017, 4:03 PM
    Hi Christophe,

    I like your plugin very much! It can be very helpful in teaching for many teachers in my university. However, since I am in China and your plugin refers to code from Google from js/google-jsapi.js. I cannot user your plugin in the classroom since Google is blocked in China. I wondered whether you could add the code to your plugin so that it does not need to depend on Google. I am looking forward to hearing back from you.
Please login to post comments