Course formats: Multitopic format

format_multitopic
Maintained by Picture of James CalderJames Calder
Shows multiple topics per page, with tabbed navigation between pages. Topics are collapsible, and can optionally be timed.
765 sites
822 downloads
38 fans
Current versions available: 1

Shows multiple topics per page, with tabbed navigation between pages. Topics are collapsible, and can optionally be timed.

Developed at Otago Polytechnic

Features

  • Tabbed pages (like Onetopic format)
  • Multiple topics per page (a bit like Flexible Sections format)
  • Collapsible topics (like Collapsed Topics format)
  • Optionally timed topics (like Weekly format)
  • Course banner image (like Snap theme)
  • Section images (a bit like Grid format)

Install

  1. Copy files to moodle/course/format/multitopic
  2. Log in as an admin, and visit moodle/admin/index.php, to update plugin data
  3. Site administration > Appearance > Additional HTML > Within HEAD (or other location appropriate for CSS): Copy and paste styles from README_styles.css (customising appropriately)
  4. Site administration > Appearance > Themes > Theme settings > Allow category themes: Yes (if you want categories to have custom CSS)

Video walkthrough

(You will probably need to open the video full screen to see it properly.)

Screenshots

Screenshot #0
Screenshot #1
Screenshot #2

Contributors

Picture of James Calder
James Calder (Lead maintainer)
Please login to view contributors details and/or to contact them

Comments RSS

Show comments
  • Picture of Plugins bot
    Thu, Nov 28, 2019, 11:50 AM
    Approval issue created: CONTRIB-7920
  • Picture of Matt Pickard
    Sat, Jan 11, 2020, 1:29 AM
    Hi,
    Thanks for making this plugin.

    I'm using it in conjunction with activity completion requirements so students have to complete a quiz before the next video and quiz is made available to them. The problem is that unless they pass the quiz, the "next page" navigation at the bottom of the page is not correct. It's some page "further down stream" that is already available, not the next page in the sequence. Not sure if this is related to MultiTopics. Any thoughts?

    Any ideas on how to get the "next page" to show the actual next page even though it's not accessible until the current page is completed?
  • Picture of James Calder
    Sat, Jan 11, 2020, 12:03 PM
    Hi Matt,

    I guess you're talking about the activity navigation links at the bottom of activity pages, with a link to the previous activity on the left, a drop down "Jump to..." box in the middle, and a link to the next activity on the right? I don't know of a way to change them, but I did try to hide them, so I don't know why they're showing up. Could you tell me what version of Moodle you're using, and what theme?

    Thanks,
    James
  • Picture of Steve Radford
    Wed, May 6, 2020, 11:49 PM
    I am very interested in using this plugin to combine 10 courses into 1, however I'm not sure if the resulting course would be so large that it could cause performance issues (slow load times) for users. Before I go ahead and test this, is anyone able to give me any guidance as to whether the following would work OK:

    In total the combined course would have 10 tabs, with 5 topics beneath each tab.

    The new course would contain approx 1,000 learning objects / links from the course home page (spread across all tabs / topics), consisting of approx:
    - 400 pages
    - 200 assignments
    - 400 labels (short text only, no images or videos etc embedded within them)

    The total disk size of the new course would be approx 475 MB

    For into, our site is running V3.8 and our Moodle benchmark report (https://moodle.org/plugins/report_benchmark) shows our site is currently 'perfect' in all categories (average score 142 over multiple tests). So the site is currently working well.
  • Picture of Steve Radford
    Tue, Jun 2, 2020, 9:20 PM
    Hi - as per my above comment, I am concerned about the potential impact on the site performance if I created a large course using this plugin. If you are unable to shed any light on my question above, could you let me know whether this plugin makes use of lazy loading / asynchronous loading so that course elements are only loaded at the point when they are needed?
  • Picture of James Calder
    Wed, Jun 3, 2020, 10:56 AM
    Hi Steve. Sorry, no, course elements are all loaded up front. I don't have the knowledge of Moodle AJAX to do lazy loading.
  • Picture of Gary Newport
    Tue, Jun 23, 2020, 3:09 AM
    Hi.
    Just upgraded to Moodle 3.9+ and when I switch to editing a course using this plugin I get an error box with the message...

    Class 'core_course\output\modchooser_item' not found

    The activities that are part of the root topic/tab are visible but any sub-topic/tab does not show; just this large error box.
  • Picture of James Calder
    Wed, Jun 24, 2020, 2:50 PM
    Hi Gary,
    I hope I've fixed this issue now, could you check? (I installed a Moodle 3.9 sandbox for testing, and I got an error with the modchooser, but not the same error you did, so I'm not completely sure.)
  • Picture of Jochen Kinsinger
    Tue, Jun 30, 2020, 2:32 AM
    Hi James,

    is it possible to change the order of breadcrumb and header-image.

    So it looks like:

    1. Header image of the course
    2. Breadcrumb
    3. Sections

    Kindly Regards
    Jochen
  • Picture of James Calder
    Tue, Jun 30, 2020, 4:00 PM
    Hello Jochen,

    There's no proper way to do this, but you might be able to do a hack with CSS grid layout, depending on your theme. For Boost on Moodle 3.5, adding the following CSS into Site administration / Appearance / Additional HTML / Within HEAD, in a style tag, seemed to work for me:

    body.format-multitopic header#page-header div div.card div.card-body div.d-flex.flex-wrap {
    display: grid !important;
    grid-template-columns: max-content 1fr;
    }

    body.format-multitopic header#page-header div div.card div.card-body div.d-flex.flex-wrap #course-header {
    grid-row: 1;
    grid-column: 1 / 3;
    }

    body.format-multitopic header#page-header div div.card div.card-body div.d-flex.flex-wrap #page-navbar {
    grid-row: 2;
    grid-column: 1;
    }

    body.format-multitopic header#page-header div div.card div.card-body div.d-flex.flex-wrap .ml-auto.d-flex {
    grid-row: 2;
    grid-column: 2;
    }
  • Picture of Ammar Elhassan ElMerhbi
    Wed, Jul 1, 2020, 4:24 AM
    I am not sure how this will look like in Moodle Mobile App. Has anyone tried it ? Will it show them tabbed or all topics on one pages?
  • Picture of James Calder
    Wed, Jul 1, 2020, 8:56 AM
    Hello Ammar,
    The tabs don't show in the Moodle Mobile App. The course just shows as the app normally shows it, all topics in a list, or one selected topic. I don't know of a way to change that.
  • Picture of Jens Groteloh
    Fri, Aug 14, 2020, 8:49 PM
    Hi James,

    great work. Will the plugin be compatible with Moodle 3.9 and future Versions?

    Kind regards
    Jens
  • Picture of James Calder
    Sat, Aug 15, 2020, 7:51 AM
    Hello Jens,
    Thanks. smile There should be a release for Moodle 3.9 within the next couple of months. Longer term, it depends on it continuing to be a priority for my employer. I think signs are positive, although there's restructuring under way in the tertiary sector in New Zealand, and financial pressure from loss of international students due to Covid-19, so it's not guaranteed.
Please login to post comments