Note:

If you want to create a new page for developers, you should create it on the Moodle Developer Resource site.

Score lock

From MoodleDocs


by John Gschnaidner

Introduction

This is an advanced version of Activity Locking v2.4. Since there are many different version of this hack, I decided to give this new branch a new name:

Score Lock

Score Lock will allow you to give students access on activities, resources and complete sections within a course, only after having completed other tasks before that. For example: To get a certificate, the test has to be taken with a minimum result.

Features

Already included as in ActivityLocking v2.4:

  • Supports module and section locks
  • Parallel locking and completing modules and sections
  • CSS style and checkbox for locking and completing
  • Hide when locked
  • Language support and help
  • Readme for features and installation
  • SQL commands for DB update
  • Info on how to update the CSS style sheets

New features:

  • Separate data base table instead of the log
  • Block for deleting students log
    • Delete all logs from course
    • Delete selected (students) logs
    • Allow students to delete their own logs
  • Install and de-install function
  • Source code stored and published for further development

Major Changes

In previous versions of Activity Locking the result, whether a student has accessed a resource has been pulled from the normal log. Because of that, the log files could never have been deleted. Score Lock has its own table, where the accessing of students on resources is saved immediately. With the optional block, teacher can allow the students to delete their own record and/or the teacher may delete all or selected students entries of the course. Score Lock includes a block, that is used for log control and installation.

Open Issues

There is still a problem, that I have not figured yet:

Since Score Lock is part a hack, you can not update your system without destroying Score Lock and on re-installation upgraded features (of moodle) will be lost. I will try to make up for this with updated versions or even a durable solution, but it may take me a while.

How to use Score Lock

Score Lock is based on ActivityLocking v2.4 and uses therefore tabs as teacher interface.

  • To lock an activity, a resource or a section simply click the edit icon behind it or behind the section topic.

EditSectionModule.gif

  • Aside of the normal edit function you will find two additional tabs

File:ModuleResourceEdit.gif SumTopicEdit.gif

  • The tab 'Lock by Score' gives you a selection of modules, that you may use as requirements.

File:ModuleResourceLock.gif SumTopicLock.gif

  • In 'Settings' you may adjust, at what condition the module / section is completed plus some settings for visualization of completiton and/or locking.

File:ModuleResourceSettings.gif SumTopicSetting.gif

Installation

Score Lock includes a block, that is used for the first part of the installation: Installing its own tables. Since a part of Score Lock is still a hack, it requires for a modification of other tables and files. This is done in a second step, which is done with a switch in the global settings of the block. This will add to existing tables, backup your existing files and install the modified Score Lock files. Even if the installation (de-installation) should fail, you will be able to recover to your original moodle files. The remaining table adds will cause no problem, but will have to be deleted previous to a new installation.

Download and Forum

You can download the actual version of Score Lock from here: [[]] If you need assistance or found a problem or a bug please post it here: [[]]

Step by step

Part 1: Block Installation
  • Unpack the ScoreLock file
  • Copy the content of the moodle folder into your moodle folder.
  • Optional you may copy moodledata to your moodle data folder (contains german language files)
  • Log in to your moodle site as administrator and access administration
  • You should get a message of two tables to be installed
  • If you access now the page for block setup you will notice a new block called ScoreLock

You may place this block into a course, but it wont do much, but remind you, that the installation is not finished yet.

Part 2: Hack Installation
  • In global block setup open settings of ScoreLock

>> Administration >> Configuration >> Blocks

  • Check install

GlobalInstall.gif

  • Open any page, where you have added the ScoreLock block or add it right now.
  • The installation is triggered and you receive a success message (or, hopefully not, an error message in the block).

ScoreLockIsInstalled.gif

  • ScoreLock is now functional.

If anything went wrong

I tested installation and de-installation by now about 50 times and it worked, but you never know ...

  • Don't panic! All files are still on your server!
  • All original files in /moodle/course/ and in /moodle/course/format/weeks and /topics, as well as the moodlelib in /moodle/lib have only get renamed with the extension .org.
  • To change back simply delete this four characters from the end of the file name.
  • Do not forget to check global settings of the block ScoreLock to avoid another unwanted installation attempt.

De-installation

  • Go to the block settings in admin and check de-install from the ScoreLock block.
  • Access again any page with the ScoreLock block to trigger the de-installation of the hack.

ScoreLockIsDeInstalled.gif

  • Once the hack is removed (see message on the block) you may delete the ScoreLock block at the global block settings.
  • Do not forget to delete the folder scorelock from /moodle/blocks and the .scl files from /moodle/course and /moodle/lib

Once finished, there is no more part of ScoreLock on your system

The future of Score Lock

  • Once the beta has been successfully tested an most bugs are fixed I will release the code of Score Lock on sourceforge.
  • I have started on version 1.1, where backing up and restoring of locks and settings is included.