Activities: Interactive Content – H5P

mod_hvp
Maintained by Picture of Frode PettersonFrode Petterson, Picture of Thomas MarstranderThomas Marstrander, Picture of Pål JørgensenPål Jørgensen, Picture of Svein-Tore Griff WithSvein-Tore Griff With
Create and add rich content inside your LMS for free. Some examples of what you get with H5P are Interactive Video, Quizzes, Collage and Timeline.
22468 sites
11k downloads
415 fans
Current versions available: 1

One of the great benefits with using H5P is that it gives you access to lots of different interactive content types.

Another great benefit with H5P is that it allows you to easily share and reuse content. To reuse content, you just download the H5P you would like to edit and make your changes – e.g. translate to a new language or adjust it to a new situation.

H5P is:

  • Open Source
  • Free to Use
  • HTML5
  • Responsive

Note that it is currently possible for people with programming skills to cheat in H5P interactions and obtain the full score without knowing the correct answers. H5Ps must not be used for exams or similar.

The H5P community is actively contributing to improve H5P. Updates and new features are continuously made available on the community portal H5P.org.

View our setup for Moodle to get information on how to get started with H5P.

GDPR Compliance

Information useful to help you achieve GDPR compliance while using this plugin can be found at H5P.org's GDPR Compliance page.

Sets

This plugin is part of set Gamification.

Potential privacy issues

The plugin is set up to automatically download content types and provide anonymous usage data which can be disabled through settings.

Screenshots

Screenshot #0
Screenshot #1
Screenshot #2

Contributors

Picture of Frode Petterson
Frode Petterson (Lead maintainer)
Picture of Thomas Marstrander
Thomas Marstrander: Developer
Picture of Pål Jørgensen
Pål Jørgensen: Developer
Picture of Svein-Tore Griff With
Svein-Tore Griff With: Developer
Please login to view contributors details and/or to contact them

Comments RSS

Comments

  • Picture of Frode Petterson
    Fri, Mar 8, 2019, 8:22 PM
    Hi Hartmut,
    Could you try opening the browser console(Ctrl+Shift+J in Chrome) and then reload the page? Do you see any error messages?
  • Picture of Hartmut Karrasch
    Fri, Mar 8, 2019, 8:35 PM
    I found the following:
    Ajax request failed h5peditor.js:236:13
    Object { readyState: 4, getResponseHeader: getResponseHeader(), getAllResponseHeaders: getAllResponseHeaders(), setRequestHeader: setRequestHeader(), overrideMimeType: overrideMimeType(), statusCode: statusCode(), abort: abort(), state: state(), always: always(), then: then(), … }
    h5peditor.js:237:13
    parsererror h5peditor.js:238:13
    SyntaxError: "JSON.parse: unexpected character at line 1 column 1 of the JSON data"

    parseJSON4jQuery
    Maybe this helps?
    Hartmut
  • Picture of Frode Petterson
    Fri, Mar 8, 2019, 10:06 PM
    @Hartmut Are you able to open the Network tab in the debugger and then view the response of the failing request? It should be highlighted in red. This should give us a pretty good idea of what's going on.
    Also, you could check your web server's error_log file for any messages.
  • Picture of Hartmut Karrasch
    Mon, Mar 11, 2019, 4:00 PM
    @Frode
    Highlighted in red are:
    jquery.dataTables.css 404 modedit.php?=27625&return=0&se=0
    codemirror.css 404 modedit.php?=27625&return=0&se=0
    fullscreen.css 404 modedit.php?=27625&return=0&se=0

    Regards
    Hartmut
  • Picture of Hartmut Karrasch
    Mon, Mar 11, 2019, 6:15 PM
    @Frode
    Failed to load resource: the server responded with a status of 404 (not found)
    codemirror.css:1 Failed to load resource: the server responded with a status of 404 (not found)
    fullscreen.css:1 Failed to load resource: the server responded with a status of 404 (not found)
    jquery.js?ver=2019030700:2 Allow attribute will take precedence over 'allowfullscreen'.
    attr @ jquery.js?ver=2019030700:2
    h5peditor.js?ver=2019030700:236 Ajax request failed
    error @ h5peditor.js?ver=2019030700:236
    h5peditor.js?ver=2019030700:237 Object
    error @ h5peditor.js?ver=2019030700:237
    h5peditor.js?ver=2019030700:238 parsererror
    error @ h5peditor.js?ver=2019030700:238
    h5peditor.js?ver=2019030700:239 SyntaxError: Unexpected token < in JSON at position 0
    at JSON.parse ()
    at parseJSON (jquery.js?ver=2019030700:2)
    at Fn (jquery.js?ver=2019030700:4)
    at k (jquery.js?ver=2019030700:4)
    at XMLHttpRequest.r (jquery.js?ver=2019030700:4)
    error @ h5peditor.js?ver=2019030700:239
    jquery.dataTables.css:1 Failed to load resource: the server responded with a status of 404 (not found)
    codemirror.css:1 Failed to load resource: the server responded with a status of 404 (not found)
    fullscreen.css:1 Failed to load resource: the server responded with a status of 404 (not found)
    Regards
    Hartmut
  • Picture of Frode Petterson
    Mon, Mar 11, 2019, 9:45 PM
    @Hartmut Could you open the Network tab inside the debugger and click the request that is failing? Selecting the XHR filter first will make it easier to see.
    To be able to tell why the request is failing we need to know what's inside the response for the request inside the Network tab.
  • Picture of Hartmut Karrasch
    Mon, Mar 11, 2019, 9:52 PM
    QFrode
    https://moodle.xxxx.xx/theme/styles.php/essential/blocks/configurable_reports/js/datatables/media/css/jquery.dataTables.css net::ERR_ABORTED 404 (not found)
    jquery.js?ver=2019030700:2 Allow attribute will take precedence over 'allowfullscreen'.
    attr @ jquery.js?ver=2019030700:2
    access @ jquery.js?ver=2019030700:2
    attr @ jquery.js?ver=2019030700:2
    init @ jquery.js?ver=2019030700:2
    b @ jquery.js?ver=2019030700:2
    ns.Editor @ h5peditor-editor.js?ver=2019030700:20
    (anonymous) @ h5peditor-init.js?ver=2019030700:36
    dispatch @ jquery.js?ver=2019030700:2
    v.handle @ jquery.js?ver=2019030700:2
    trigger @ jquery.js?ver=2019030700:2
    (anonymous) @ jquery.js?ver=2019030700:3
    each @ jquery.js?ver=2019030700:2
    each @ jquery.js?ver=2019030700:2
    trigger @ jquery.js?ver=2019030700:3
    b.fn.(anonymous function) @ jquery.js?ver=2019030700:4
    H5PEditor.init @ h5peditor-init.js?ver=2019030700:46
    init @ editor.js?ver=2019030700:26
    c @ jquery.js?ver=2019030700:2
    fireWith @ jquery.js?ver=2019030700:2
    ready @ jquery.js?ver=2019030700:2
    H @ jquery.js?ver=2019030700:2
    h5peditor.js?ver=2019030700:236 Ajax request failed
    error @ h5peditor.js?ver=2019030700:236
    c @ jquery.js?ver=2019030700:2
    fireWith @ jquery.js?ver=2019030700:2
    k @ jquery.js?ver=2019030700:4
    r @ jquery.js?ver=2019030700:4
    XMLHttpRequest.send (async)
    send @ jquery.js?ver=2019030700:4
    ajax @ jquery.js?ver=2019030700:4
    ns.loadLibrary @ h5peditor.js?ver=2019030700:203
    ns.LibrarySelector.loadSemantics @ h5peditor-library-selector.js?ver=2019030700:309
    librarySelectHandler @ h5peditor-library-selector.js?ver=2019030700:56
    ns.SelectorHub.getSelectedLibrary @ h5peditor-selector-hub.js?ver=2019030700:192
    loadLibrary @ h5peditor-library-selector.js?ver=2019030700:68
    call @ h5p-event-dispatcher.js?ver=2019030700:209
    EventDispatcher.trigger @ h5p-event-dispatcher.js?ver=2019030700:240
    ns.LibrarySelector.setLibrary @ h5peditor-library-selector.js?ver=2019030700:164
    (anonymous) @ h5peditor-editor.js?ver=2019030700:179
    c @ jquery.js?ver=2019030700:2
    fireWith @ jquery.js?ver=2019030700:2
    k @ jquery.js?ver=2019030700:4
    r @ jquery.js?ver=2019030700:4
    XMLHttpRequest.send (async)
    send @ jquery.js?ver=2019030700:4
    ajax @ jquery.js?ver=2019030700:4
    load @ h5peditor-editor.js?ver=2019030700:148
    dispatch @ jquery.js?ver=2019030700:2
    v.handle @ jquery.js?ver=2019030700:2
    load (async)
    add @ jquery.js?ver=2019030700:2
    (anonymous) @ jquery.js?ver=2019030700:3
    each @ jquery.js?ver=2019030700:2
    each @ jquery.js?ver=2019030700:2
    on @ jquery.js?ver=2019030700:3
    b.fn.(anonymous function) @ jquery.js?ver=2019030700:4
    b.fn.load @ jquery.js?ver=2019030700:4
    ns.Editor @ h5peditor-editor.js?ver=2019030700:233
    (anonymous) @ h5peditor-init.js?ver=2019030700:36
    dispatch @ jquery.js?ver=2019030700:2
    v.handle @ jquery.js?ver=2019030700:2
    trigger @ jquery.js?ver=2019030700:2
    (anonymous) @ jquery.js?ver=2019030700:3
    each @ jquery.js?ver=2019030700:2
    each @ jquery.js?ver=2019030700:2
    trigger @ jquery.js?ver=2019030700:3
    b.fn.(anonymous function) @ jquery.js?ver=2019030700:4
    H5PEditor.init @ h5peditor-init.js?ver=2019030700:46
    init @ editor.js?ver=2019030700:26
    c @ jquery.js?ver=2019030700:2
    fireWith @ jquery.js?ver=2019030700:2
    ready @ jquery.js?ver=2019030700:2
    H @ jquery.js?ver=2019030700:2
    h5peditor.js?ver=2019030700:237 {readyState: 4, getResponseHeader: ƒ, getAllResponseHeaders: ƒ, setRequestHeader: ƒ, overrideMimeType: ƒ, …}
    error @ h5peditor.js?ver=2019030700:237
    c @ jquery.js?ver=2019030700:2
    fireWith @ jquery.js?ver=2019030700:2
    k @ jquery.js?ver=2019030700:4
    r @ jquery.js?ver=2019030700:4
    XMLHttpRequest.send (async)
    send @ jquery.js?ver=2019030700:4
    ajax @ jquery.js?ver=2019030700:4
    ns.loadLibrary @ h5peditor.js?ver=2019030700:203
    ns.LibrarySelector.loadSemantics @ h5peditor-library-selector.js?ver=2019030700:309
    librarySelectHandler @ h5peditor-library-selector.js?ver=2019030700:56
    ns.SelectorHub.getSelectedLibrary @ h5peditor-selector-hub.js?ver=2019030700:192
    loadLibrary @ h5peditor-library-selector.js?ver=2019030700:68
    call @ h5p-event-dispatcher.js?ver=2019030700:209
    EventDispatcher.trigger @ h5p-event-dispatcher.js?ver=2019030700:240
    ns.LibrarySelector.setLibrary @ h5peditor-library-selector.js?ver=2019030700:164
    (anonymous) @ h5peditor-editor.js?ver=2019030700:179
    c @ jquery.js?ver=2019030700:2
    fireWith @ jquery.js?ver=2019030700:2
    k @ jquery.js?ver=2019030700:4
    r @ jquery.js?ver=2019030700:4
    XMLHttpRequest.send (async)
    send @ jquery.js?ver=2019030700:4
    ajax @ jquery.js?ver=2019030700:4
    load @ h5peditor-editor.js?ver=2019030700:148
    dispatch @ jquery.js?ver=2019030700:2
    v.handle @ jquery.js?ver=2019030700:2
    load (async)
    add @ jquery.js?ver=2019030700:2
    (anonymous) @ jquery.js?ver=2019030700:3
    each @ jquery.js?ver=2019030700:2
    each @ jquery.js?ver=2019030700:2
    on @ jquery.js?ver=2019030700:3
    b.fn.(anonymous function) @ jquery.js?ver=2019030700:4
    b.fn.load @ jquery.js?ver=2019030700:4
    ns.Editor @ h5peditor-editor.js?ver=2019030700:233
    (anonymous) @ h5peditor-init.js?ver=2019030700:36
    dispatch @ jquery.js?ver=2019030700:2
    v.handle @ jquery.js?ver=2019030700:2
    trigger @ jquery.js?ver=2019030700:2
    (anonymous) @ jquery.js?ver=2019030700:3
    each @ jquery.js?ver=2019030700:2
    each @ jquery.js?ver=2019030700:2
    trigger @ jquery.js?ver=2019030700:3
    b.fn.(anonymous function) @ jquery.js?ver=2019030700:4
    H5PEditor.init @ h5peditor-init.js?ver=2019030700:46
    init @ editor.js?ver=2019030700:26
    c @ jquery.js?ver=2019030700:2
    fireWith @ jquery.js?ver=2019030700:2
    ready @ jquery.js?ver=2019030700:2
    H @ jquery.js?ver=2019030700:2
    h5peditor.js?ver=2019030700:238 parsererror
    error @ h5peditor.js?ver=2019030700:238
    c @ jquery.js?ver=2019030700:2
    fireWith @ jquery.js?ver=2019030700:2
    k @ jquery.js?ver=2019030700:4
    r @ jquery.js?ver=2019030700:4
    XMLHttpRequest.send (async)
    send @ jquery.js?ver=2019030700:4
    ajax @ jquery.js?ver=2019030700:4
    ns.loadLibrary @ h5peditor.js?ver=2019030700:203
    ns.LibrarySelector.loadSemantics @ h5peditor-library-selector.js?ver=2019030700:309
    librarySelectHandler @ h5peditor-library-selector.js?ver=2019030700:56
    ns.SelectorHub.getSelectedLibrary @ h5peditor-selector-hub.js?ver=2019030700:192
    loadLibrary @ h5peditor-library-selector.js?ver=2019030700:68
    call @ h5p-event-dispatcher.js?ver=2019030700:209
    EventDispatcher.trigger @ h5p-event-dispatcher.js?ver=2019030700:240
    ns.LibrarySelector.setLibrary @ h5peditor-library-selector.js?ver=2019030700:164
    (anonymous) @ h5peditor-editor.js?ver=2019030700:179
    c @ jquery.js?ver=2019030700:2
    fireWith @ jquery.js?ver=2019030700:2
    k @ jquery.js?ver=2019030700:4
    r @ jquery.js?ver=2019030700:4
    XMLHttpRequest.send (async)
    send @ jquery.js?ver=2019030700:4
    ajax @ jquery.js?ver=2019030700:4
    load @ h5peditor-editor.js?ver=2019030700:148
    dispatch @ jquery.js?ver=2019030700:2
    v.handle @ jquery.js?ver=2019030700:2
    load (async)
    add @ jquery.js?ver=2019030700:2
    (anonymous) @ jquery.js?ver=2019030700:3
    each @ jquery.js?ver=2019030700:2
    each @ jquery.js?ver=2019030700:2
    on @ jquery.js?ver=2019030700:3
    b.fn.(anonymous function) @ jquery.js?ver=2019030700:4
    b.fn.load @ jquery.js?ver=2019030700:4
    ns.Editor @ h5peditor-editor.js?ver=2019030700:233
    (anonymous) @ h5peditor-init.js?ver=2019030700:36
    dispatch @ jquery.js?ver=2019030700:2
    v.handle @ jquery.js?ver=2019030700:2
    trigger @ jquery.js?ver=2019030700:2
    (anonymous) @ jquery.js?ver=2019030700:3
    each @ jquery.js?ver=2019030700:2
    each @ jquery.js?ver=2019030700:2
    trigger @ jquery.js?ver=2019030700:3
    b.fn.(anonymous function) @ jquery.js?ver=2019030700:4
    H5PEditor.init @ h5peditor-init.js?ver=2019030700:46
    init @ editor.js?ver=2019030700:26
    c @ jquery.js?ver=2019030700:2
    fireWith @ jquery.js?ver=2019030700:2
    ready @ jquery.js?ver=2019030700:2
    H @ jquery.js?ver=2019030700:2
    h5peditor.js?ver=2019030700:239 SyntaxError: Unexpected token < in JSON at position 0
    at JSON.parse ()
    at parseJSON (jquery.js?ver=2019030700:2)
    at Fn (jquery.js?ver=2019030700:4)
    at k (jquery.js?ver=2019030700:4)
    at XMLHttpRequest.r (jquery.js?ver=2019030700:4)
    error @ h5peditor.js?ver=2019030700:239
    c @ jquery.js?ver=2019030700:2
    fireWith @ jquery.js?ver=2019030700:2
    k @ jquery.js?ver=2019030700:4
    r @ jquery.js?ver=2019030700:4
    XMLHttpRequest.send (async)
    send @ jquery.js?ver=2019030700:4
    ajax @ jquery.js?ver=2019030700:4
    ns.loadLibrary @ h5peditor.js?ver=2019030700:203
    ns.LibrarySelector.loadSemantics @ h5peditor-library-selector.js?ver=2019030700:309
    librarySelectHandler @ h5peditor-library-selector.js?ver=2019030700:56
    ns.SelectorHub.getSelectedLibrary @ h5peditor-selector-hub.js?ver=2019030700:192
    loadLibrary @ h5peditor-library-selector.js?ver=2019030700:68
    call @ h5p-event-dispatcher.js?ver=2019030700:209
    EventDispatcher.trigger @ h5p-event-dispatcher.js?ver=2019030700:240
    ns.LibrarySelector.setLibrary @ h5peditor-library-selector.js?ver=2019030700:164
    (anonymous) @ h5peditor-editor.js?ver=2019030700:179
    c @ jquery.js?ver=2019030700:2
    fireWith @ jquery.js?ver=2019030700:2
    k @ jquery.js?ver=2019030700:4
    r @ jquery.js?ver=2019030700:4
    XMLHttpRequest.send (async)
    send @ jquery.js?ver=2019030700:4
    ajax @ jquery.js?ver=2019030700:4
    load @ h5peditor-editor.js?ver=2019030700:148
    dispatch @ jquery.js?ver=2019030700:2
    v.handle @ jquery.js?ver=2019030700:2
    load (async)
    add @ jquery.js?ver=2019030700:2
    (anonymous) @ jquery.js?ver=2019030700:3
    each @ jquery.js?ver=2019030700:2
    each @ jquery.js?ver=2019030700:2
    on @ jquery.js?ver=2019030700:3
    b.fn.(anonymous function) @ jquery.js?ver=2019030700:4
    b.fn.load @ jquery.js?ver=2019030700:4
    ns.Editor @ h5peditor-editor.js?ver=2019030700:233
    (anonymous) @ h5peditor-init.js?ver=2019030700:36
    dispatch @ jquery.js?ver=2019030700:2
    v.handle @ jquery.js?ver=2019030700:2
    trigger @ jquery.js?ver=2019030700:2
    (anonymous) @ jquery.js?ver=2019030700:3
    each @ jquery.js?ver=2019030700:2
    each @ jquery.js?ver=2019030700:2
    trigger @ jquery.js?ver=2019030700:3
    b.fn.(anonymous function) @ jquery.js?ver=2019030700:4
    H5PEditor.init @ h5peditor-init.js?ver=2019030700:46
    init @ editor.js?ver=2019030700:26
    c @ jquery.js?ver=2019030700:2
    fireWith @ jquery.js?ver=2019030700:2
    ready @ jquery.js?ver=2019030700:2
    H @ jquery.js?ver=2019030700:2
  • Picture of Frode Petterson
    Mon, Mar 11, 2019, 10:02 PM
    @Hartmut The error you're pasting says that there's something wrong with the request, next you need to open the request in the Network tab to find out what that is.
    There's a good guide here if you're unable to locate the Network tab: https://developers.google.com/web/tools/chrome-devtools/network/#open
  • Picture of Juan Ezeiza
    Mon, Mar 11, 2019, 11:27 PM
    Hi,
    I'm having the same issue reported by Harmut Karrasch. I updated the Moodle-Plugin to 1.16 on our Moodle 3.3 Server, exactly the same versions as Harmut's. Now, old content can be viewed but not edited and new content can't be added.
    Any help would be greatly appreciated.
  • Picture of Kees Koopman
    Tue, Mar 12, 2019, 2:25 AM
    Hi,
    Updated tot 1.16 on Moodle 3.6.1. The content of the timeline has disappeard. It is one white block. Help.
  • Picture of Juan Ezeiza
    Tue, Mar 12, 2019, 3:38 AM
    Hi again,
    I didn't realise, but I also have the issue reported by Kees Koopman. Timeline shows no content.
    Is there any way to downgrade the module to 1.15?
  • Picture of Thomas Marstrander
    Wed, Mar 13, 2019, 6:23 PM
    Hi, the errors you were seeing connected to Timeline was a bug in version 1.16 of the plugin. We've released version 1.17, please upgrade and it should fix the problems you've been seeing. Sorry for the inconvenience.
  • Picture of Juan Ezeiza
    Wed, Mar 13, 2019, 7:13 PM
    Hi, with the new version everything is working fine. Thank you for your quick answer and, of course, for this wonderful module.
  • Picture of Hartmut Karrasch
    Wed, Mar 13, 2019, 7:37 PM
    I agree with Juan Ezeiza,
    everything is working fine now!
    Thank you very much!
    Regards
    Hartmut
  • Picture of Marcus Bienengräber
    Wed, Mar 13, 2019, 10:41 PM
    Have Moodle 3.5.+ (Build: 20180621) and H5P 1.17 2019031200 with Microsoft SQL Server.
    Get now error message after saving a new course activity.
    Debug info: SQLState: 42000
    Error Code: 102
    Message: [Microsoft][ODBC Driver 13 for SQL Server][SQL Server]Falsche Syntax in der Nähe von "LIMIT".

    SELECT id
    FROM mdl_hvp_libraries
    WHERE machine_name = N'H5P.CoursePresentation'
    AND (major_version > '1'
    OR (major_version = '1' AND minor_version > '20'))
    LIMIT 1
    [array (
    0 => 'H5P.CoursePresentation',
    1 => '1',
    2 => '1',
    3 => '20',
    )] Have Mood
    Error code: dmlreadexception
Please login to post comments