Skip to documentation
    Block · block_studentactivity

    Student Activity & Participation Evidence

    Per-unit and per-attempt participation evidence for any course, exportable to CSV — built for VET/RTO audits. Reads durable activity tables so evidence is complete even with short log retention. See the plugin archive for release-specific requirements and feature availability.

    Requirements in plugin archive
    v1.0.7
    No AI credits required

    What it does

    Summary View

    Rolls activity up per unit of competency — one row per unit showing total attempts, time on task, completion status and score.

    Detail View

    Lists every quiz attempt, assignment submission, SCORM session and activity completion with an exact Start and Finish timestamp, engaged Duration, status and score.

    Engaged Time-on-Task

    Reconstructed from interaction timestamps with idle gaps capped at 30 minutes — avoids inflated multi-day durations from naive finish-minus-start on untimed quizzes.

    Search, Sort & Filter

    Both views are searchable, sortable, and filterable by student, unit, activity type and date range.

    CSV Export

    One-click CSV export of either view — ready for ASQA audits, RTO compliance reports, or supervisor review.

    Full-Width & Fullscreen

    A full-width breakout and a Fullscreen button give a perfect all-columns display regardless of the site theme width.

    Where the evidence comes from

    Evidence is read from the durable Moodle activity tables — not from the standard log. This means the report is complete across a learner's entire enrolment even on sites with a short log-retention window (e.g. 30 days), because these tables are never purged on that cycle.

    Quiz attempts (mdl_quiz_attempts)
    Assignment submissions (mdl_assign_submission)
    SCORM tracking (mdl_scorm_scoes_track)
    Activity completion (mdl_course_modules_completion)
    Forum posts (mdl_forum_posts)

    Permissions

    RoleAccess
    Editing teacherCan view report for all students in their courses
    Manager / Course creatorCan view across the full category tree they are assigned to
    StudentNo access to the report (view own completion via standard Moodle)
    Site administratorFull access to all courses

    Capability: block/studentactivity:viewreport. No AI credits are used; the plugin makes no portal API calls.

    Installation

      1

      Download the ZIP from lms-labs.com → Plugins → Student Activity & Participation Evidence.

      2

      In Moodle: Site administration → Plugins → Install plugins. Upload the ZIP and click Install.

      3

      Complete the plugin installation confirmation page.

      4

      Turn editing on in any course (or the Dashboard) and add the "Student Activity & Participation Evidence" block.

      5

      Click Open activity report, choose a course and student, and switch between Summary and Detail views.

      6

      Admins can also open /blocks/studentactivity/report.php directly.

    Security & Privacy

    • Entry point report.php uses require_login() + require_capability()

    • All input via optional_param(), all output via s() / html_writer

    • No raw curl_init(), no hardcoded secrets, no external API calls

    • No AMD modules (inline scoped JS only) — no anonymous define() risk

    • Marketplace-ready: valid version.php, db/access.php, lang file with pluginname

    Support & Questions

    For installation help, bug reports, or feature requests, visit lms-labs.com or open a support ticket via your LMS Labs account portal.

    Moodle Marketplace

    Student Activity & Participation Evidence
    block_studentactivity
    Every field below matches a Marketplace edit screen, in the exact order the submission flow asks for it. Work top to bottom, copy field by field.
    marketplace.moodle.com

    Use this plugin on its own — or make the whole suite simpler

    Student Activity & Participation Evidence works by itself. Where it asks for LMS Labs credentials, enter the Site ID and API key assigned to your Moodle site. See LMS Labs pricing and AI credits for current plans.

    Using more than one LMS Labs plugin? These companions are free on LMS Labs:

    • AI Grader Central Config — enter the Site ID and API key once; compatible plugins can read the same values, so you do not need to enter them again in every plugin.
    • AI Dashboard Quick Links — one Moodle dashboard for installed plugins, settings, documentation, release checks and controlled updates.

    Both are optional, free companion plugins and require no LMS Labs credit unlock. Any AI credits used by connected plugins remain separate metered usage.

    1

    Overview

    Appears on your plugin page and in search results — name, icon, short description, screenshots.

    Plugin name*

    Icon*

    Upload this PNG as the plugin icon. Minimum dimensions 200×200 px — this file is 1024×1024.

    Student Activity & Participation Evidence Marketplace icon

    1024×1024 PNG, under 200 KB — comfortably above the 200×200 px minimum and under the 10 MB upload limit.

    Short description*

    Search cards show only the first 119 characters — the opening line has to sell on its own.

    241/256 characters

    Screenshots

    Show meaningful features in use — the main UI, an important workflow, a finished report or dashboard. Must be at least 128 px wide and no more than 480 px wide. Avoid empty states, unreadable detail, and near-duplicate shots.

    2

    Description

    The main sales pitch on your plugin page — paste into the rich-text editor, then bold the headings.

    Description*

    Starts with the standalone-or-connected-suite setup, then gives the product pitch, requirements, external services and pricing.

    2,597/7,000 characters

    Marketplace page HTML

    The complete listing page — the standalone/connected-suite setup appears first, followed by the product description. In the Marketplace description editor, switch to HTML source view (</> button) and paste it in one go. The Marketplace may strip style attributes, so the paste block uses semantic headings, paragraphs, lists, links, and one root element; confirm the saved listing after submission.

    Preview

    Use this plugin on its own — or make the whole suite simpler

    This plugin works by itself. Where it asks for LMS Labs credentials, enter the Site ID and API key assigned to your Moodle site. See LMS Labs pricing and AI credits for current plans.

    Highly recommended when you use more than one LMS Labs plugin:

    • AI Grader Central Config (free) — enter the Site ID and API key once. Compatible plugins can read the same values, so you do not need to enter them again in every plugin.
    • AI Dashboard Quick Links (free) — one Moodle dashboard for installed plugins, settings, documentation, release checks and controlled updates.

    Both companion plugins are optional. You can keep using this plugin on its own and retain its own settings where available. Full help: Student Activity & Participation Evidence documentation.

    Participation Evidence That Survives Log Purges

    Per-unit and per-attempt participation evidence for any Moodle course, exportable to CSV. Real start and finish timestamps and engaged time-on-task, read from durable tables so records stay complete under short log retention. For RTO audits.

    Block · v1.0.7 · Moodle™ 4.0 - 5.x · Paid — 50 Credits ($5 USD) (one-off)

    Student Activity and Participation Evidence gives you per-unit and per-attempt participation evidence for any Moodle course, ready to export to CSV. It records real start and finish timestamps and engaged time-on-task, and it reads durable activity tables rather than the standard log - so the record is complete across a learner's whole enrolment, even on sites with a short log-retention window. Built for VET and RTO audits.

    Why This Beats The Standard Logs

    Moodle's standard logs are typically purged on a short cycle, so by audit time the participation history is gone. This block reads the durable activity tables that are never purged on that cycle, so your evidence stays complete no matter how old the enrolment is. No AI, no external calls, no credits - just reliable evidence.

    Key Features

    • Summary and Detail views — see participation per unit and drill into per-attempt records.
    • Real timestamps — genuine start and finish times plus engaged time-on-task, not just a last-access date.
    • Durable data source — reads activity tables that survive short log retention, so evidence is complete.
    • Search and sort — search records and sort by any column header.
    • Filters — narrow the view to the learners, units or periods you need.
    • CSV export — export the evidence for audit files in one click.
    • Role-aware access — controlled by the block/studentactivity:viewreport capability.

    Who It Is For

    • RTOs and TAFEs that must evidence learner participation for ASQA audit.
    • Compliance staff and trainers verifying engagement and time-on-task.

    Requirements And Compatibility

    • Moodle 4.0 to 5.x.
    • No AI account or credits required. The plugin makes no external API calls.

    Getting Started

    Install via Site administration > Plugins > Install plugins, then add the block to a course via Add a block > Student Activity and open the report.

    Documentation And Support

    Full documentation is at lms-labs.com/docs/student-activity. Support is at support@lmshostingservices.com.

    Pricing

    This plugin is available on the Moodle Marketplace for 50 Credits ($5 USD) (one-off). An LMS Labs account (free) is required to use AI features.

    3

    Support

    Links that help customers find help, report issues, and get the most from the plugin.

    Issue/bug tracker URL*

    Documentation

    Website

    Discussion

    Privacy information

    What data (if any) leaves the customer's Moodle site — Moodle requires external services disclosed before purchase.

    4

    Pricing and billing

    Use the canonical one-time acquisition price or free status shown below. AI usage credits, where applicable, remain separate metered usage.

    Price name*

    Amount (USD)*

    Billing type*

    Price description

    Shown on the pricing card — what the customer gets, stated plainly.

    Terms of Sale URL*

    Appears on your plugin page — must be consistent with the price description.

    Optional. Turn on 'Enable invoice-based purchasing' only if you want to issue and manage invoices through Stripe Connect — otherwise leave it off.

    5

    Versions

    Add new version → upload the ZIP. The main download link always points to your latest version.

    Release manifest is loading.

    Release version

    Released Jul 31, 2026.

    Maturity

    Repository branch

    The branch in the source repository that holds this release's code. All our plugin repos publish releases to main.

    Repository tag

    The git tag pinning this exact release — the release pipeline creates it automatically on every publish.

    Supported Moodle versions

    Raw compatibility statement: Moodle™ 4.0 - 5.x. version.php uses the standard 10-digit Moodle format YYYYMMDDXX (e.g. 2026081400). The Marketplace reads the version from version.php inside the uploaded ZIP.

    Version notes (latest changelog)

    6

    Contributors

    Who maintains the plugin. Only the lead maintainer can publish.

    Lead maintainer

    The lead maintainer edits the plugin page, uploads versions, and manages contributors. Add teammates as Maintainer (can edit and upload versions) or Contributor (credited on the page only).

    Technical reference

    Component (frankenstyle)

    Must match version.php $plugin->component and the ZIP root folder.

    Plugin type

    Install directory

    Licence

    Source control URL

    Support email

    Tags

    Machine-readable JSON

    Complete field set as JSON — an automated browser agent can read this block directly to populate the Marketplace edit screens.

    {
      "pluginName": "Student Activity & Participation Evidence",
      "frankenstyle": "block_studentactivity",
      "pluginTypePrefix": "block",
      "pluginTypeLabel": "Block",
      "installDirectory": "/blocks/studentactivity/",
      "shortDescription": "Per-unit and per-attempt participation evidence for any Moodle course, exportable to CSV. Real start and finish timestamps and engaged time-on-task, read from durable tables so records stay complete under short log retention. For RTO audits.",
      "fullDescription": "Standalone or connected setup\n\nThis plugin works by itself. If it asks for LMS Labs credentials, enter your site's Site ID and API key; see https://lms-labs.com/pricing.\n\nUsing several plugins? Install the free AI Grader Central Config plugin to enter credentials once for compatible plugins, and the free AI Dashboard Quick Links block for one dashboard with settings, docs and updates.\n\nParticipation Evidence That Survives Log Purges\n\nStudent Activity and Participation Evidence gives you per-unit and per-attempt participation evidence for any Moodle course, ready to export to CSV. It records real start and finish timestamps and engaged time-on-task, and it reads durable activity tables rather than the standard log - so the record is complete across a learner's whole enrolment, even on sites with a short log-retention window. Built for VET and RTO audits.\n\nWhy This Beats The Standard Logs\n\nMoodle's standard logs are typically purged on a short cycle, so by audit time the participation history is gone. This block reads the durable activity tables that are never purged on that cycle, so your evidence stays complete no matter how old the enrolment is. No AI, no external calls, no credits - just reliable evidence.\n\nKey Features\n\n- Summary and Detail views - see participation per unit and drill into per-attempt records.\n- Real timestamps - genuine start and finish times plus engaged time-on-task, not just a last-access date.\n- Durable data source - reads activity tables that survive short log retention, so evidence is complete.\n- Search and sort - search records and sort by any column header.\n- Filters - narrow the view to the learners, units or periods you need.\n- CSV export - export the evidence for audit files in one click.\n- Role-aware access - controlled by the block/studentactivity:viewreport capability.\n\nWho It Is For\n\n- RTOs and TAFEs that must evidence learner participation for ASQA audit.\n- Compliance staff and trainers verifying engagement and time-on-task.\n\nRequirements And Compatibility\n\n- Moodle 4.0 to 5.x.\n- No AI account or credits required. The plugin makes no external API calls.\n\nGetting Started\n\nInstall via Site administration > Plugins > Install plugins, then add the block to a course via Add a block > Student Activity and open the report.\n\nDocumentation And Support\n\nFull documentation is at https://lms-labs.com/docs/student-activity. Support is at support@lmshostingservices.com.\n\n## Pricing\n\nThis plugin is available on the Moodle Marketplace for **50 Credits ($5 USD)** (one-off). An LMS Labs account (free) is required to use AI features.",
      "descriptionHtml": "<div><p><strong>Participation Evidence That Survives Log Purges</strong></p><p><em>Per-unit and per-attempt participation evidence for any Moodle course, exportable to CSV. Real start and finish timestamps and engaged time-on-task, read from durable tables so records stay complete under short log retention. For RTO audits.</em></p><p>Block &middot; v1.0.7 &middot; Moodle™ 4.0 - 5.x &middot; Paid — 50 Credits ($5 USD) (one-off)</p><p>Student Activity and Participation Evidence gives you per-unit and per-attempt participation evidence for any Moodle course, ready to export to CSV. It records real start and finish timestamps and engaged time-on-task, and it reads durable activity tables rather than the standard log - so the record is complete across a learner's whole enrolment, even on sites with a short log-retention window. Built for VET and RTO audits.</p><p><strong>Why This Beats The Standard Logs</strong></p><p>Moodle's standard logs are typically purged on a short cycle, so by audit time the participation history is gone. This block reads the durable activity tables that are never purged on that cycle, so your evidence stays complete no matter how old the enrolment is. No AI, no external calls, no credits - just reliable evidence.</p><p><strong>Key Features</strong></p><ul><li><strong>Summary and Detail views</strong> — see participation per unit and drill into per-attempt records.</li><li><strong>Real timestamps</strong> — genuine start and finish times plus engaged time-on-task, not just a last-access date.</li><li><strong>Durable data source</strong> — reads activity tables that survive short log retention, so evidence is complete.</li><li><strong>Search and sort</strong> — search records and sort by any column header.</li><li><strong>Filters</strong> — narrow the view to the learners, units or periods you need.</li><li><strong>CSV export</strong> — export the evidence for audit files in one click.</li><li><strong>Role-aware access</strong> — controlled by the block/studentactivity:viewreport capability.</li></ul><p><strong>Who It Is For</strong></p><ul><li>RTOs and TAFEs that must evidence learner participation for ASQA audit.</li><li>Compliance staff and trainers verifying engagement and time-on-task.</li></ul><p><strong>Requirements And Compatibility</strong></p><ul><li>Moodle 4.0 to 5.x.</li><li>No AI account or credits required. The plugin makes no external API calls.</li></ul><p><strong>Getting Started</strong></p><p>Install via Site administration &gt; Plugins &gt; Install plugins, then add the block to a course via Add a block &gt; Student Activity and open the report.</p><p><strong>Documentation And Support</strong></p><p>Full documentation is at <a href=\"https://lms-labs.com/docs/student-activity\" target=\"_blank\" rel=\"noopener\">lms-labs.com/docs/student-activity</a>. Support is at <a href=\"mailto:support@lmshostingservices.com\">support@lmshostingservices.com</a>.</p><p><strong>Pricing</strong></p><p>This plugin is available on the Moodle Marketplace for <strong>50 Credits ($5 USD)</strong> (one-off). An LMS Labs account (free) is required to use AI features.</p></div>",
      "releaseVersion": "1.0.7",
      "releaseDate": "Jul 31, 2026",
      "versionNumberNote": "version.php uses the standard 10-digit Moodle format YYYYMMDDXX (e.g. 2026081400). The Marketplace reads the version from version.php inside the uploaded ZIP.",
      "maturity": "Stable",
      "supportedMoodleVersions": [
        "4.0",
        "4.1",
        "4.2",
        "4.3",
        "4.4",
        "4.5",
        "5.0",
        "5.1",
        "5.2",
        "5.3"
      ],
      "compatibleRaw": "Moodle™ 4.0 - 5.x",
      "repositoryName": "moodle-block_studentactivity",
      "repositoryBranch": "main",
      "repositoryTag": "v1.0.7",
      "sourceControlUrl": "https://github.com/lmshostingservices/moodle-block_studentactivity",
      "bugTrackerUrl": "https://github.com/lmshostingservices/moodle-block_studentactivity/issues",
      "documentationUrl": "https://lms-labs.com/docs/student-activity",
      "homepageUrl": "https://lms-labs.com/docs/student-activity",
      "discussionUrl": "https://lms-labs.com/docs/student-activity?tab=discussion",
      "zipDownloadUrl": "",
      "license": "GNU GPL v3 or later",
      "licenseUrl": "https://www.gnu.org/licenses/gpl-3.0.html",
      "maintainer": "LMS Hosting Services (LMS Labs)",
      "supportEmail": "support@lmshostingservices.com",
      "tags": [
        "block",
        "dashboard",
        "moodle",
        "lms-labs"
      ],
      "pricingModel": "Paid — 50 Credits ($5 USD) (one-off)",
      "priceUsd": 5,
      "marketplacePricingStatus": "priced",
      "marketplacePricingReason": null,
      "creditNote": null,
      "externalServices": "This plugin does not communicate with any external service. All processing occurs within your Moodle installation.",
      "gettingStartedHtml": "<div>\n  <p><strong>Use this plugin on its own — or make the whole suite simpler</strong></p>\n  <p>This plugin works by itself. Where it asks for LMS Labs credentials, enter the Site ID and API key assigned to your Moodle site. See <a href=\"https://lms-labs.com/pricing\">LMS Labs pricing and AI credits</a> for current plans.</p>\n  <p><strong>Highly recommended when you use more than one LMS Labs plugin:</strong></p>\n  <ul>\n    <li><strong><a href=\"https://lms-labs.com/docs/ai-central-config\">AI Grader Central Config</a> (free)</strong> — enter the Site ID and API key once. Compatible plugins can read the same values, so you do not need to enter them again in every plugin.</li>\n    <li><strong><a href=\"https://lms-labs.com/docs/ai-dashboard-quick-links\">AI Dashboard Quick Links</a> (free)</strong> — one Moodle dashboard for installed plugins, settings, documentation, release checks and controlled updates.</li>\n  </ul>\n  <p>Both companion plugins are optional. You can keep using this plugin on its own and retain its own settings where available. Full help: <a href=\"https://lms-labs.com/docs/student-activity\">Student Activity &amp; Participation Evidence documentation</a>.</p>\n</div>",
      "marketplacePageHtml": "<div><div><p><strong>Use this plugin on its own — or make the whole suite simpler</strong></p><p>This plugin works by itself. Where it asks for LMS Labs credentials, enter the Site ID and API key assigned to your Moodle site. See <a href=\"https://lms-labs.com/pricing\">LMS Labs pricing and AI credits</a> for current plans.</p><p><strong>Highly recommended when you use more than one LMS Labs plugin:</strong></p><ul><li><strong><a href=\"https://lms-labs.com/docs/ai-central-config\">AI Grader Central Config</a> (free)</strong> — enter the Site ID and API key once. Compatible plugins can read the same values, so you do not need to enter them again in every plugin.</li><li><strong><a href=\"https://lms-labs.com/docs/ai-dashboard-quick-links\">AI Dashboard Quick Links</a> (free)</strong> — one Moodle dashboard for installed plugins, settings, documentation, release checks and controlled updates.</li></ul><p>Both companion plugins are optional. You can keep using this plugin on its own and retain its own settings where available. Full help: <a href=\"https://lms-labs.com/docs/student-activity\">Student Activity &amp; Participation Evidence documentation</a>.</p></div><div><p><strong>Participation Evidence That Survives Log Purges</strong></p><p><em>Per-unit and per-attempt participation evidence for any Moodle course, exportable to CSV. Real start and finish timestamps and engaged time-on-task, read from durable tables so records stay complete under short log retention. For RTO audits.</em></p><p>Block &middot; v1.0.7 &middot; Moodle™ 4.0 - 5.x &middot; Paid — 50 Credits ($5 USD) (one-off)</p><p>Student Activity and Participation Evidence gives you per-unit and per-attempt participation evidence for any Moodle course, ready to export to CSV. It records real start and finish timestamps and engaged time-on-task, and it reads durable activity tables rather than the standard log - so the record is complete across a learner's whole enrolment, even on sites with a short log-retention window. Built for VET and RTO audits.</p><p><strong>Why This Beats The Standard Logs</strong></p><p>Moodle's standard logs are typically purged on a short cycle, so by audit time the participation history is gone. This block reads the durable activity tables that are never purged on that cycle, so your evidence stays complete no matter how old the enrolment is. No AI, no external calls, no credits - just reliable evidence.</p><p><strong>Key Features</strong></p><ul><li><strong>Summary and Detail views</strong> — see participation per unit and drill into per-attempt records.</li><li><strong>Real timestamps</strong> — genuine start and finish times plus engaged time-on-task, not just a last-access date.</li><li><strong>Durable data source</strong> — reads activity tables that survive short log retention, so evidence is complete.</li><li><strong>Search and sort</strong> — search records and sort by any column header.</li><li><strong>Filters</strong> — narrow the view to the learners, units or periods you need.</li><li><strong>CSV export</strong> — export the evidence for audit files in one click.</li><li><strong>Role-aware access</strong> — controlled by the block/studentactivity:viewreport capability.</li></ul><p><strong>Who It Is For</strong></p><ul><li>RTOs and TAFEs that must evidence learner participation for ASQA audit.</li><li>Compliance staff and trainers verifying engagement and time-on-task.</li></ul><p><strong>Requirements And Compatibility</strong></p><ul><li>Moodle 4.0 to 5.x.</li><li>No AI account or credits required. The plugin makes no external API calls.</li></ul><p><strong>Getting Started</strong></p><p>Install via Site administration &gt; Plugins &gt; Install plugins, then add the block to a course via Add a block &gt; Student Activity and open the report.</p><p><strong>Documentation And Support</strong></p><p>Full documentation is at <a href=\"https://lms-labs.com/docs/student-activity\" target=\"_blank\" rel=\"noopener\">lms-labs.com/docs/student-activity</a>. Support is at <a href=\"mailto:support@lmshostingservices.com\">support@lmshostingservices.com</a>.</p><p><strong>Pricing</strong></p><p>This plugin is available on the Moodle Marketplace for <strong>50 Credits ($5 USD)</strong> (one-off). An LMS Labs account (free) is required to use AI features.</p></div></div>",
      "versionNotes": "New features\n\n- JS ancestor walker added — walks up from #sarep setting inline styles (background/border/shadow/padding) on every ancestor element, guaranteeing the white content card is gone on iOS Safari and any theme where the...",
      "screenshotsNote": "Show meaningful features in use — the main UI, an important workflow, a finished report or dashboard. Must be at least 128 px wide and no more than 480 px wide. Avoid empty states, unreadable detail, and near-duplicate shots.",
      "logoUrl": "/marketplace-logos/studentactivity.png",
      "logoNote": "1024×1024 PNG, under 200 KB — comfortably above the 200×200 px minimum and under the 10 MB upload limit.",
      "iconNote": "Upload this PNG as the plugin icon. Minimum dimensions 200×200 px — this file is 1024×1024.",
      "websiteUrl": "https://lms-labs.com",
      "priceName": "Standard",
      "priceDescription": "One-off purchase — no subscription. Includes the complete feature set and every future plugin update.",
      "billingType": "One-off purchase",
      "termsOfSaleUrl": "https://lms-labs.com/terms",
      "invoiceNote": "Optional. Turn on 'Enable invoice-based purchasing' only if you want to issue and manage invoices through Stripe Connect — otherwise leave it off.",
      "leadMaintainer": "LMS Hosting Services (support@lmshostingservices.com) — Lead maintainer",
      "contributorsNote": "The lead maintainer edits the plugin page, uploads versions, and manages contributors. Add teammates as Maintainer (can edit and upload versions) or Contributor (credited on the page only)."
    }