Plugin types

Moodle is a powerful, and very extensible, Learning Management System. One of its core tenets is its extensibility, and this is primarily achieved through the development of plugins.

A wider range of plugin types are available and these should be selected depending on your needs.

Things you can find in all plugins ​

Although there are many different types of plugin, there are some things that work the same way in all plugin types. Please see the Plugin files documentation that describes common files which are found in many plugin types.

Naming conventions ​

Plugins typically have at least two names:

  • The friendly name, shown to users, and
  • A machine name used internally.

The machine name must meet the following rules:

  • It must start with a lowercase latin letter
  • It may contain only lowercase latin letters, numbers, and underscores
  • It must end with a lowercase latin letter, or a number
  • The hyphen, and minus character - are not allowed

If a plugin does not meet these requirements then it will be silently ignored.

Plugin name validation takes place in core_component::is_valid_plugin_name() and the following regular expression is used:

The underscore character is not supported in activity modules for legacy reasons.

Plugin typeComponent name ( )Moodle pathDescriptionMoodle versions
mod/modActivity modules are essential types of plugins in Moodle as they provide activities in courses. For example: Forum, Quiz and Assignment.1.0+
antivirus/lib/antivirusAntivirus scanner plugins provide functionality for virus scanning user uploaded files using third-party virus scanning tools in Moodle. For example: ClamAV.3.1+
assignsubmission/mod/assign/submissionDifferent forms of assignment submissions2.3+
assignfeedback/mod/assign/feedbackDifferent forms of assignment feedbacks2.3+
booktool/mod/book/toolSmall information-displays or tools that can be moved around pages2.1+
customfield/customfield/fieldCustom field types, used in Custom course fields3.7+
datafield/mod/data/fieldDifferent types of data that may be added to the Database activity module1.6+
datapreset/mod/data/presetPre-defined templates for the Database activity module1.6+
ltisource/mod/lti/sourceLTI providers can be added to external tools easily through the external tools interface see . This type of plugin is specific to LTI providers that need a plugin that can register custom handlers to process LTI messages2.7+
fileconverter/files/converterAllow conversion between different types of user-submitted file. For example from .doc to PDF.3.2+
ltiservice/mod/lti/serviceAllows the implementation of LTI services as described by the IMS LTI specification2.8+
mlbackend/lib/mlbackendPrediction processors for analytics API3.4+
forumreport/mod/forum/reportDisplay various reports in the forum activity3.8+
quiz/mod/quiz/reportDisplay and analyse the results of quizzes, or just plug miscellaneous behaviour into the quiz module1.1+
quizaccess/mod/quiz/accessruleAdd conditions to when or where quizzes can be attempted, for example only from some IP addresses, or student must enter a password first2.2+
scormreport/mod/scorm/reportAnalysis of SCORM attempts2.2+
workshopform/mod/workshop/formDefine the type of the grading form and implement the calculation of the grade for submission in the module2.0+
workshopallocation/mod/workshop/allocationDefine ways how submissions are assigned for assessment in the module2.0+
workshopeval/mod/workshop/evalImplement the calculation of the grade for assessment (grading grade) in the module2.0+
block/blocksSmall information-displays or tools that can be moved around pages2.0+
qtype/question/typeDifferent types of question (for example multiple-choice, drag-and-drop) that can be used in quizzes and other activities1.6+
qbehaviour/question/behaviourControl how student interact with questions during an attempt2.1+
qformat/question/formatImport and export question definitions to/from the question bank1.6+
filter/filterAutomatically convert, highlight, and transmogrify text posted into Moodle.1.4+
editor/lib/editorAlternative text editors for editing content2.0+
atto/lib/editor/atto/pluginsExtra functionality for the Atto text editor2.7+
enrol/enrolWays to control who is enrolled in courses2.0+
auth/authAllows connection to external sources of authentication2.0+
tool/admin/toolProvides utility scripts useful for various site administration and maintenance tasks2.2+
logstore/admin/tool/log/storeEvent logs storage back-ends2.7+
availability/availability/conditionConditions to restrict user access to activities and sections.2.7+
calendartype/calendar/typeDefines how dates are displayed throughout Moodle2.6+
message/message/outputRepresent various targets where messages and notifications can be sent to (email, sms, jabber, ...)2.0+
format/course/formatDifferent ways of laying out the activities and blocks in a course1.3+
dataformat/dataformatFormats for data exporting and downloading3.1+
profilefield/user/profile/fieldAdd new types of data to user profiles1.9+
report/reportProvides useful views of data in a Moodle site for admins and teachers2.2+
coursereport/course/reportReports of activity within the courseUp to 2.1 (for 2.2+ see )
gradeexport/grade/exportExport grades in various formats1.9+
gradeimport/grade/importImport grades in various formats1.9+
gradereport/grade/reportDisplay/edit grades in various layouts and reports1.9+
gradingform/grade/grading/formInterfaces for actually performing grading in activity modules (for example Rubrics)2.2+
mnetservice/mnet/serviceAllows to implement remote services for the environment (deprecated, use web services instead)2.0+
webservice/webserviceDefine new protocols for web service communication (such as SOAP, XML-RPC, JSON, REST ...)2.0+
repository/repositoryConnect to external sources of files to use in Moodle2.0+
portfolio/portfolioConnect external portfolio services as destinations for users to store Moodle content1.9+
search/search/engineSearch engine backends to index Moodle's contents.3.1+
media/media/playerPluggable media players3.2+
plagiarism/plagiarismDefine external services to process submitted files and content2.0+
cachestore/cache/storesCache storage back-ends.2.4+
cachelock/cache/locksCache lock implementations.2.4+
theme/themeChange the look of Moodle by changing the the HTML and the CSS.2.0+
local/localGeneric plugins for local customisations2.0+
contenttype/contentbank/contenttypeContent types to upload, create or edit in the content bank and use all over the Moodle site3.9+
h5plib/h5p/h5plibPlugin type for the particular versions of the H5P integration library.3.9+
qbank/question/bankPlugin type for extending question bank functionality.4.0+

You can get an exact list of valid plugin types for your Moodle version using the following example:

  • Guidelines for contributing code
  • Frankenstyle
  • Moodle Plugins directory
  • Tutorial to help you learn how to write plugins for Moodle from start to finish, while showing you how to navigate the most important developer documentation along the way.
  • Things you can find in all plugins
  • Naming conventions
  • Main Page
  • Related Pages
Files
file  
 Capability definitions for this module.
 
file  
 Search area for activities.
 
file  
 Activity base class.
 
file  
 This file contains the classes for the admin settings of the assign module.
 
file  
 The all submissions downloaded event.
 
file  
 The assessable submitted event.
 
file  
 This file contains the assign_plugin_request_data class.
 
file  
 Assign feedback subplugin info class.
 
file  
 This file contains the assignfeedback_provider interface.
 
file  
 This file contains the assignfeedback_user_provider interface.
 
file  
 This file contains the functions for abstract class.
 
file  
 Assign submission subplugin info class.
 
file  
 This file contains the assignsubmission_provider interface.
 
file  
 This file contains the assignsubmission_user_provider interface.
 
file  
 This file contains the backup activity for the assign module.
 
file  
 Define all the backup steps that will be used by the .
 
file  
 The abstract base event.
 
file  
 The batch set marker allocation viewed event.
 
file  
 The assignment batch set workflow stated viewed event.
 
file  
 This file contains the forms to set the allocated marker for selected submissions.
 
file  
 This file contains the forms to set the marking workflow for selected submissions.
 
file  
 Cognitive depth indicator - assign.
 
file  
 The instance list viewed event.
 
file  
 The course module viewed event.
 
file  
 A schedule task for assignment cron.
 
file  
 Add event handlers for the assign.
 
file  
 The extension granted event.
 
file  
 This file contains the forms to create and edit an instance of this module.
 
file  
 External assign API.
 
file  
 This file contains the polyfill to allow a plugin to operate with Moodle 3.3 up.
 
file  
 The feedback viewed event.
 
file  
 This file contains the function for feedback_plugin abstract class.
 
file  
 Base class for unit tests for .
 
file  
 This file contains the forms to create and edit an instance of this module.
 
file  
 Grade item mappings for the activity.
 
file  
 Renderable that initialises the grading "app".
 
file  
 The grading form viewed event.
 
file  
 The grading table viewed event.
 
file  
 This file contains the forms to create and edit an instance of this module.
 
file  
 This file contains the forms to create and edit an instance of this module.
 
file  
 This file contains the definition for the grading table which subclassses easy_table.
 
file  
 Group observers.
 
file  
 The group override created event.
 
file  
 The group override deleted event.
 
file  
 The group override updated event.
 
file  
 The identities revealed event.
 
file  
 assign module data generator class
 
file  
 This file contains the moodle hooks for the assign module.
 
file  
 This file contains the definition for the class assignment.
 
file  
 Definition of log events.
 
file  
 The marker updated event.
 
file  
 Defines message providers (types of messages being sent)
 
file  
 This file contains the forms to create and edit an instance of this module.
 
file  
 Settings form for overrides in the assign module.
 
file  
 Privacy class for requesting user data.
 
file  
 This file contains the forms to create and edit an instance of this module.
 
file  
 The remove submission form viewed event.
 
file  
 This file contains the definition for the renderable classes for the assignment.
 
file  
 This file contains a renderer for the assignment class.
 
file  
 Define all the backup steps that will be used by the .
 
file  
 Define all the restore steps that will be used by the .
 
file  
 The reveal identities confirmation page viewed event.
 
file  
 Web service for mod assign.
 
file  
 This file adds the settings pages to the navigation menu.
 
file  
 Social breadth indicator - assign.
 
file  
 The statement accepted event.
 
file  
 The submission form viewed event.
 
file  
 The submission_created abstract event.
 
file  
 The submission duplicated event.
 
file  
 This file contains the submission form used by the assign module.
 
file  
 The submission form viewed event.
 
file  
 The submission graded event.
 
file  
 This file contains the polyfill to allow a plugin to operate with Moodle 3.3 up.
 
file  
 The submission locked event.
 
file  
 The submission status updated event.
 
file  
 The submission status viewed event.
 
file  
 The submission unlocked event.
 
file  
 The submission updated event.
 
file  
 The submission viewed event.
 
file  
 This file contains the submission confirmation form.
 
file  
 This file contains the definition for the abstract class for submission_plugin.
 
file  
 Definition of assignment scheduled tasks.
 
file  
 Upgrade code for install.
 
file  
 This file contains the upgrade code to upgrade from mod_assignment to .
 
file  
 The user override created event.
 
file  
 The user override deleted event.
 
file  
 The user override updated event.
 
file  
 This file contains the useridlist.
 
file  
 Version information.
 
file  
  workflow state updated event.
 
Namespaces
 
  
 
 
  
 
 
  
 
 
  
 
 
  
 
 
  
 
 
  
 
 
  
 
 
  
 
Classes
class  
 Standard base class for (assignment types).
 
class  
 Admin external page that displays a list of the installed submission plugins.
 
class  
 Used to output the attempt history for a particular assignment.
 
class  
 Used to output the attempt history chooser for a particular assignment.
 
class  
 Renderable course index summary.
 
class  
 Abstract class for feedback_plugin inherited from abstract class.
 
class  
 Implements a renderable feedback plugin feedback.
 
class  
 Renderable feedback status.
 
class  
 An assign file class that extends rendererable class and is used by the assign module.
 
class  
 Implements a renderable grading options form.
 
class  
 Renderable grading summary.
 
class  
 Extends to provide a table of assignment submissions.
 
class  
 Implements a renderable message notification.
 
class  
 Renderable header.
 
class  
 Form for editing settings overrides.
 
class  
 Abstract class for (submission/feedback).
 
class  
 Renderable header related to an individual subplugin.
 
class  
 Class that handles the display and configuration of the list of submission plugins.
 
class  
 Portfolio caller class for .
 
class  
 Abstract base class for submission plugin types.
 
class  
 Implements a renderable submission plugin submission.
 
class  
 Renderable submission status.
 
class  
 Renderable submission status.
 
class  
 This class wraps the submit for grading confirmation page.
 
class  
 Class to manage upgrades from mod_assignment to .
 
class  
 Implements a renderable user summary.
 
class  
 Define the complete choice structure for backup, with file and id annotations.
 
class  
 assign backup task that provides all the settings and steps to perform one complete backup of the activity
 
class  
 Activity base class.
 
class  
 Cognitive depth indicator - assign.
 
class  
 Social breadth indicator - assign.
 
class  
 The all submissions downloaded event class.
 
class  
 
class  
 The abstract base event class.
 
class  
 
class  
 
class  
 The instance list viewed event class.
 
class  
 The course module viewed event class.
 
class  
 The extension granted event class.
 
class  
 
class  
 
class  
 
class  
 
class  
 
class  
 
class  
 The identities revealed event class.
 
class  
 
class  
 The remove submission form viewed event class.
 
class  
 
class  
 The statement accepted event class.
 
class  
 
class  
 
class  
 The submission duplicated event class.
 
class  
 
class  
 The submission graded event class.
 
class  
 The submission locked event class.
 
class  
 
class  
 
class  
 The submission unlocked event class.
 
class  
 
class  
 
class  
 
class  
 
class  
 
class  
 
class  
 Grade item mappings for the activity.
 
class  
 Group observers class.
 
class  
 Grading app renderable.
 
class  
 
class  
 
class  
 An object for fulfilling an assign plugin data request.
 
interface  
 
interface  
 
interface  
 
interface  
 
class  
 Privacy class for requesting user data.
 
class  
 An object for collecting user IDs related to a teacher.
 
class  
 Search area for activities.
 
class  
 
class  
 Set allocated marker form.
 
class  
 Set marking workflow form.
 
class  
 Assignment submission confirmation form.
 
class  
 Assignment extension dates form.
 
class  
 Assign functions.
 
class  
 
class  
 Assignment grade form.
 
class  
 Assignment grading options form.
 
class  
 Assignment grading options form.
 
class  
 Assignment settings form.
 
class  
 Assignment quick grading form.
 
class  
 A custom renderer class that extends the and is used by the assign module.
 
class  
 Assign submission form.
 
class  
 Define the complete assignment structure for restore, with file and id annotations.
 
class  
 assign restore task that provides all the settings and steps to perform one complete restore of the activity
 
Functions
  (stdClass $data, $form=null)
 Adds an assignment instance.
 
  ( $cm, $from, $filter=array())
 Check if the module has any update that affects the current user since a given time.
 
  ($id)
 delete an assignment instance
 
  ( $settings, $navref)
 extend an assigment navigation settings
 
  ($course, $cm, $userid, $type)
 Obtains the automatic completion state for this module based on any conditions in assign settings.
 
  ($coursemodule)
 Add a get_coursemodule_info function in case any assignment type wants to add 'extra' information for the course (see resource).
 
  ()
 Returns all other capabilities used by this module.
 
  ($course, $cm, $ )
 List the file areas that can be browsed.
 
  ($browser, $areas, $course, $cm, $ , $filearea, $itemid, $filepath, $filename)
 File browsing support for assign module.
 
  ()
 
  ()
 
  ()
 List the actions that correspond to a post of this module.
 
  (&$activities, &$index, $timestart, $courseid, $cmid, $userid=0, $groupid=0)
 Returns all assignments since a given time.
 
  ($ , $userid=0)
 Return grade for given user or all users.
 
  ()
 List the actions that correspond to a view of this module.
 
  ($ , $grades=null)
 Create grade item for given assignment.
 
  ($pagetype, $parentcontext, $currentcontext)
 Return a list of page types.
 
  ($course, $cm, $ , $filearea, $args, $forcedownload, array $options=array())
 Serves intro attachment files.
 
  ($ , $course=null, $cm=null)
 This actually updates the normal and completion calendar events.
 
  ()
 
  ($course, $viewfullnames, $timestart)
 Print recent activity from all assignments in a given course.
 
  ($activity, $courseid, $detail, $modnames)
 Print recent activity from all assignments in a given course.
 
  ($courseid, $groupid=null)
 Logic to happen when a/some group(s) has/have been deleted in a course.
 
  ($courseid=0, $instance=null, $cm=null)
 This standard function will check all instances of this module and make sure there are up-to-date events created for each of them.
 
  ($course, $cm, $oldmin, $oldmax, $newmin, $newmax)
 Rescale all grades for this activity and push the new grades to the gradebook.
 
  ($course)
 Course reset form defaults.
 
  (&$mform)
 Implementation of the function for printing the form elements that control whether the course reset functionality affects the assignment.
 
  ($courseid, $type='')
 Removes all grades from gradebook.
 
  ($data)
 This function is used by the reset_course_userdata function in moodlelib.
 
  ()
 
  ($scaleid)
 Checks if scale is being used by any instance of assignment.
 
  ($feature)
 Return the list if Moodle features this module supports.
 
  ($ , $override=null)
 This function updates the events associated to the assign.
 
  ($ , $userid=0, $nullifnone=true)
 Update activity grades.
 
  (stdClass $data, $form)
 Update an assignment instance.
 
  ($course, $user, $coursemodule, $ )
 Prints the complete info about a user's interaction with an assignment.
 
  ($course, $user, $coursemodule, $assignment)
 Print the grade information for the assignment for this user.
 
  ()
 Determines if the assignment as any null grades that were rescaled.
 
  ( $event, $itemcount=0)
 Callback function that determines whether an action event should be showing its item count based on the event type and the item count.
 
  (\ $event, stdClass $instance)
 This function will update the assign module according to the event that has been modified.
 
  (\ $event, stdClass $instance)
 This function calculates the minimum and maximum cutoff values for the timestart of the given event.
 
  ( $event, $userid=0)
 Is the event visible?
 
  ( $event, $factory, $userid=0)
 This function receives a calendar event and returns the action associated with it, or null if there is none.
 
  ($cm)
 Callback which returns human-readable strings describing the active completion custom rules for the module instance.
 
  (string $filearea, array $args)
 Given an array with a file path, it returns the itemid and the filepath for the defined filearea.
 
  ($args)
 Serve the grading panel as a fragment.
 
  ()
 Return a list of all the user preferences used by .
 
  ($id, $move, $assignid)
 Change the sort order of an override.
 
  ($assignid)
 Reorder the overrides starting at the override at the given startorder.
 
  ($oldversion)
 upgrade this assignment instance - this function could be skipped but it will be needed later
 
Variables
 
 
global 
 
global 
 
 
 
 
 
 
 
 
 
  = new ($section, get_string('settings', 'mod_assign'), 'moodle/site:config', $module->is_enabled() === false)
 
 
 
const  'manual'
 
const  'none'
 
const  'untilpass'
 
const  'close'
 
const  'due'
 
const  'gradingdue'
 
const  'open'
 
const  'grantedextension'
 
const  'none'
 
const  'notsubmitted'
 
const  'requiregrading'
 
const  'singleuser'
 
const  'submitted'
 
const  -1
 
const  'graded'
 
const  'notgraded'
 
const  'introattachment'
 
const  -1
 
const  'inmarking'
 
const  'inreview'
 
const  'notmarked'
 
const  'readyforrelease'
 
const  'readyforreview'
 
const  'released'
 
const  "432000"
 ASSIGN_MAX_EVENT_LENGTH = 432000 ; 5 days maximum.
 
const  300
 
const  'draft'
 
const  'new'
 
const  'reopened'
 
const  'submitted'
 
const  -1
 
$plugin  = 'mod_assign'
 
$plugin  = 2019111200
 
$plugin  = 2019111800
 

Detailed Description

Function documentation, ◆  assign_add_instance().

assign_add_instance ( stdClass  ,
  =  
)

Adds an assignment instance.

This is done by calling the add_instance() method of the assignment type class

stdClass$data
$form
intThe instance id of the new assignment

◆  assign_check_updates_since()

assign_check_updates_since (   ,
  ,
  =  
)

Check if the module has any update that affects the current user since a given time.

$cmcourse module data
int$fromthe time to check updates from
array$filterif we need to check only specific updates
stdClassan object with the different type of areas indicating if they were updated or not

◆  assign_delete_instance()

assign_delete_instance (   )

delete an assignment instance

int$id
bool

◆  assign_extend_settings_navigation()

assign_extend_settings_navigation (   ,
   
)

extend an assigment navigation settings

$settings
$navref
void

◆  assign_get_completion_state()

assign_get_completion_state (   ,
  ,
  ,
   
)

Obtains the automatic completion state for this module based on any conditions in assign settings.

object$courseCourse
object$cmCourse-module
int$useridUser ID
bool$typeType of comparison (or/and; can be used as return value if no conditions)
boolTrue if completed, false if not, $type if conditions not set.

◆  assign_get_coursemodule_info()

assign_get_coursemodule_info (   )

Add a get_coursemodule_info function in case any assignment type wants to add 'extra' information for the course (see resource).

Given a course_module object, this function returns any "extra" information that may be needed when printing this activity in a course listing. See get_array_of_activities() in course/lib.php .

stdClass$coursemoduleThe coursemodule object (record).
An object on information that the courses will know about (most noticeably, an icon).

◆  assign_get_extra_capabilities()

assign_get_extra_capabilities ( )

Returns all other capabilities used by this module.

arrayArray of capability strings

◆  assign_get_file_areas()

assign_get_file_areas (   ,
  ,
   
)

List the file areas that can be browsed.

stdClass$course
stdClass$cm
stdClass$context
array

◆  assign_get_file_info()

assign_get_file_info (   ,
  ,
  ,
  ,
  ,
  ,
  ,
  ,
   
)

File browsing support for assign module.

$browser
object$areas
object$course
object$cm
object$context
string$filearea
int$itemid
string$filepath
string$filename
object instance or null if not found

◆  assign_get_grade_details_for_print_overview()

assign_get_grade_details_for_print_overview ( )

◆  assign_get_mysubmission_details_for_print_overview()

assign_get_mysubmission_details_for_print_overview ( )

◆  assign_get_post_actions()

assign_get_post_actions ( )

List the actions that correspond to a post of this module.

This is used by the participation report.

Note: This is not used by new logging system. Event with crud = ('c' || 'u' || 'd') and edulevel = LEVEL_PARTICIPATING will be considered as post action.

◆  assign_get_recent_mod_activity()

assign_get_recent_mod_activity ( ,
,
  ,
  ,
  ,
  = ,
  =  
)

Returns all assignments since a given time.

array$activitiesThe activity information is returned in this array
int$indexThe current index in the activities array
int$timestartThe earliest activity to show
int$courseidLimit the search to this course
int$cmidThe course module id
int$useridOptional user id
int$groupidOptional group id

◆  assign_get_user_grades()

assign_get_user_grades (   ,
  =  
)

Return grade for given user or all users.

stdClass$assignrecord of assign with an additional cmidnumber
int$useridoptional user id, 0 means all users
arrayarray of grades, false if none

◆  assign_get_view_actions()

assign_get_view_actions ( )

List the actions that correspond to a view of this module.

Note: This is not used by new logging system. Event with crud = 'r' and edulevel = LEVEL_PARTICIPATING will be considered as view action.

◆  assign_grade_item_update()

assign_grade_item_update (   ,
  =  
)

Create grade item for given assignment.

stdClass$assignrecord with extra cmidnumber
array$gradesoptional array/object of grade(s); 'reset' means reset grades in gradebook
int0 if ok, error code otherwise

◆  assign_page_type_list()

assign_page_type_list (   ,
  ,
   
)

Return a list of page types.

string$pagetypecurrent page type
stdClass$parentcontextBlock's parent context
stdClass$currentcontextCurrent context of block

◆  assign_pluginfile()

assign_pluginfile (   ,
  ,
  ,
  ,
  ,
  ,
array  =  
)

Serves intro attachment files.

mixed$coursecourse or id of the course
mixed$cmcourse module or id of the course module
context$context
string$filearea
array$args
bool$forcedownload
array$optionsadditional options affecting the file serving
boolfalse if file not found, does not return if found - just send the file

◆  assign_prepare_update_events()

assign_prepare_update_events (   ,
  = ,
  =  
)

This actually updates the normal and completion calendar events.

stdClass$assignAssignment object (from DB).
stdClass$courseCourse object.
stdClass$cmCourse module object.

◆  assign_print_overview()

assign_print_overview ( )

◆  assign_print_recent_activity()

assign_print_recent_activity (   ,
  ,
   
)

Print recent activity from all assignments in a given course.

This is used by the recent activity block

mixed$coursethe course to print activity for
bool$viewfullnamesboolean to determine whether to show full names or not
int$timestartthe time the rendering started
booltrue if activity was printed, false otherwise.

◆  assign_print_recent_mod_activity()

assign_print_recent_mod_activity (   ,
  ,
  ,
   
)

This is used by course/recent.php

stdClass$activity
int$courseid
bool$detail
array$modnames

◆  assign_process_group_deleted_in_course()

assign_process_group_deleted_in_course (   ,
  =  
)

Logic to happen when a/some group(s) has/have been deleted in a course.

int$courseidThe course ID.
int$groupidThe group id if it is known

◆  assign_refresh_events()

assign_refresh_events (   = ,
  = ,
  =  
)

This standard function will check all instances of this module and make sure there are up-to-date events created for each of them.

If courseid = 0, then every assignment event in the site is checked, else only assignment events belonging to the course specified are checked.

int$courseid
int | stdClass$instanceAssign module instance or ID.
int | stdClass$cmCourse module object or ID (not used in this module).

◆  assign_rescale_activity_grades()

assign_rescale_activity_grades (   ,
  ,
  ,
  ,
  ,
   
)

Rescale all grades for this activity and push the new grades to the gradebook.

stdClass$courseCourse db record
stdClass$cmCourse module db record
float$oldmin
float$oldmax
float$newmin
float$newmax

◆  assign_reset_course_form_defaults()

assign_reset_course_form_defaults (   )

Course reset form defaults.

object$course

◆  assign_reset_course_form_definition()

assign_reset_course_form_definition ( )

Implementation of the function for printing the form elements that control whether the course reset functionality affects the assignment.

moodleform$mformform passed by reference

◆  assign_reset_gradebook()

assign_reset_gradebook (   ,
  =  
)

Removes all grades from gradebook.

int$courseidThe ID of the course to reset
string$typeOptional type of assignment to limit the reset to a particular assignment type

◆  assign_reset_userdata()

assign_reset_userdata (   )

This function is used by the reset_course_userdata function in moodlelib.

This function will remove all assignment submissions and feedbacks in the database and clean up any related data.

stdClass$datathe data submitted from the reset course.

◆  assign_scale_used()

assign_scale_used ( )

◆  assign_scale_used_anywhere()

assign_scale_used_anywhere (   )

Checks if scale is being used by any instance of assignment.

This is used to find out if scale used anywhere

int$scaleid
booleanTrue if the scale is used by any assignment

◆  assign_supports()

assign_supports (   )

Return the list if Moodle features this module supports.

string$featureFEATURE_xx constant for requested feature
mixedTrue if module supports feature, null if doesn't know

◆  assign_update_events()

assign_update_events (   ,
  =  
)

This function updates the events associated to the assign.

If $override is non-zero, then it updates only the events associated with the specified override.

assign$assignthe assign object.
object$override(optional) limit to a specific override

◆  assign_update_grades()

assign_update_grades (   ,
  = ,
  =  
)

Update activity grades.

stdClass$assigndatabase record
int$useridspecific user only, 0 means all
bool$nullifnone- not used

◆  assign_update_instance()

assign_update_instance ( stdClass  ,
   
)

Update an assignment instance.

This is done by calling the update_instance() method of the assignment type class

stdClass$data
stdClass$form- unused
object

◆  assign_user_complete()

assign_user_complete (   ,
  ,
  ,
   
)

Prints the complete info about a user's interaction with an assignment.

stdClass$course
stdClass$user
stdClass$coursemodule
stdClass$assignthe database assign record

This prints the submission summary and feedback summary for this student.

◆  assign_user_outline()

assign_user_outline (   ,
  ,
  ,
   
)

Print the grade information for the assignment for this user.

stdClass$course
stdClass$user
stdClass$coursemodule
stdClass$assignment

◆  get_assignments_with_rescaled_null_grades()

get_assignments_with_rescaled_null_grades ( )

Determines if the assignment as any null grades that were rescaled.

Null grades are stored as -1 but should never be rescaled.

int[]Array of the ids of all the assignments with rescaled null grades.

◆  mod_assign_core_calendar_event_action_shows_item_count()

mod_assign_core_calendar_event_action_shows_item_count (   ,
  =  
)

Callback function that determines whether an action event should be showing its item count based on the event type and the item count.

$eventThe calendar event.
int$itemcountThe item count associated with the action event.

◆  mod_assign_core_calendar_event_timestart_updated()

mod_assign_core_calendar_event_timestart_updated ( \   ,
stdClass   
)

This function will update the assign module according to the event that has been modified.

$event
stdClass$instanceThe module instance to get the range from

◆  mod_assign_core_calendar_get_valid_event_timestart_range()

mod_assign_core_calendar_get_valid_event_timestart_range ( \   ,
stdClass   
)

This function calculates the minimum and maximum cutoff values for the timestart of the given event.

It will return an array with two values, the first being the minimum cutoff value and the second being the maximum cutoff value. Either or both values can be null, which indicates there is no minimum or maximum, respectively.

If a cutoff is required then the function must return an array containing the cutoff timestamp and error string to display to the user if the cutoff value is violated.

A minimum and maximum cutoff return value will look like: [ [1505704373, 'The due date must be after the sbumission start date'], [1506741172, 'The due date must be before the cutoff date'] ]

If the event does not have a valid timestart range then [false, false] will be returned.

$eventThe calendar event to get the time range for
stdClass$instanceThe module instance to get the range from

◆  mod_assign_core_calendar_is_event_visible()

mod_assign_core_calendar_is_event_visible (   ,
  =  
)

Is the event visible?

This is used to determine global visibility of an event in all places throughout Moodle. For example, the ASSIGN_EVENT_TYPE_GRADINGDUE event will not be shown to students on their calendar.

$event
int$useridUser id to use for all capability checks, etc. Set to 0 for current user (default).
boolReturns true if the event is visible to the current user, false otherwise.

◆  mod_assign_core_calendar_provide_event_action()

mod_assign_core_calendar_provide_event_action (   ,
  ,
  =  
)

This function receives a calendar event and returns the action associated with it, or null if there is none.

This is used by block_myoverview in order to display the event appropriately. If null is returned then the event is not displayed on the block.

$event
core_calendar\action_factory$factory
int$useridUser id to use for all capability checks, etc. Set to 0 for current user (default).

◆  mod_assign_get_completion_active_rule_descriptions()

mod_assign_get_completion_active_rule_descriptions (   )

Callback which returns human-readable strings describing the active completion custom rules for the module instance.

 | stdClass$cmobject with fields ->completion and ->customdata['customcompletionrules']
array::$descriptionsthe array of descriptions for the custom rules.

◆  mod_assign_get_path_from_pluginfile()

mod_assign_get_path_from_pluginfile ( string  ,
array   
)

Given an array with a file path, it returns the itemid and the filepath for the defined filearea.

string$fileareaThe filearea.
array$argsThe path (the part after the filearea and before the filename).
arrayThe itemid and the filepath inside the $args path, for the defined filearea.

◆  mod_assign_output_fragment_gradingpanel()

mod_assign_output_fragment_gradingpanel (   )

Serve the grading panel as a fragment.

array$argsList of named arguments for the fragment loader.
string

◆  mod_assign_user_preferences()

mod_assign_user_preferences ( )

Return a list of all the user preferences used by mod_assign .

◆  move_group_override()

move_group_override (   ,
  ,
   
)

Change the sort order of an override.

int$idof the override
string$movedirection of move
int$assignidof the assignment
boolsuccess of operation

◆  reorder_group_overrides()

reorder_group_overrides (   )

Reorder the overrides starting at the override at the given startorder.

int$assignidof the assigment

◆  xmldb_assign_upgrade()

xmldb_assign_upgrade (   )

upgrade this assignment instance - this function could be skipped but it will be needed later

int$oldversionThe old version of the assign module

Variable Documentation

◆  $logs.

$logs

◆  $messageproviders

$messageproviders

◆  $observers

$observers

◆  $tasks

$tasks

Navigation Menu

Search code, repositories, users, issues, pull requests..., provide feedback.

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly.

To see all available qualifiers, see our documentation .

  • Notifications You must be signed in to change notification settings

netspotau/moodle-mod_assign

Folders and files.

NameName
56,250 Commits

Repository files navigation

Contributors 125.

  • JavaScript 21.8%
  • Stack Overflow for Teams Where developers & technologists share private knowledge with coworkers
  • Advertising & Talent Reach devs & technologists worldwide about your product, service or employer brand
  • OverflowAI GenAI features for Teams
  • OverflowAPI Train & fine-tune LLMs
  • Labs The future of collective knowledge sharing
  • About the company Visit the blog

Collectives™ on Stack Overflow

Find centralized, trusted content and collaborate around the technologies you use most.

Q&A for work

Connect and share knowledge within a single location that is structured and easy to search.

Get early access and see previews of new features.

Check if student submitted assignment via Moodle web services

I am trying to use the Moodle API (web services) to get information about (my) assignment submissions. I want to know whether I submitted an attempt for the assignment already or not. I am using the mod_assign_get_assignments function (which doesn't have too much documentation) and the results I get (when looking at the assignments portion of each course) are:

The above result is for an assignment I have already submitted.

An example of an assignment I did not submit is:

The only apparent difference between these (that might point to a way to check if I submitted it or not) is the completionsubmit property, but that cannot be the solution because a different assignment that I have submitted has it set to 0 (just like the one I didn't submit).

Does someone have an idea how I can solve this issue?

Thanks in Advance!

EDIT: mod_assign_get_submissions denies my access

{"assignments":[],"warnings":[{"item":"assignment","itemid":myitemname,"warningcode":"1","message":"No access rights in module context"}]}

I looked now into mod_assign_get_submission_status but it seems like it is only able to parse one assignment at a time, does anyone have a way to make this more efficient?

N. Rak's user avatar

You could try using mod_assign_get_submissions instead to retrieve submissions to assignments. Available since Moodle 2.5

  • Emulated Data For Get Submissions from Moodle

Sample Response

ggordon's user avatar

  • Thanks for the response, I tried your method, see my edited question for further details :) –  N. Rak Commented Apr 4, 2021 at 18:24

Your Answer

Reminder: Answers generated by artificial intelligence tools are not allowed on Stack Overflow. Learn more

Sign up or log in

Post as a guest.

Required, but never shown

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy .

Not the answer you're looking for? Browse other questions tagged moodle moodle-api or ask your own question .

  • The Overflow Blog
  • Community Products Roadmap Update, July 2024
  • Featured on Meta
  • We spent a sprint addressing your requests — here’s how it went
  • Upcoming initiatives on Stack Overflow and across the Stack Exchange network...
  • Policy: Generative AI (e.g., ChatGPT) is banned
  • The [lib] tag is being burninated
  • What makes a homepage useful for logged-in users

Hot Network Questions

  • Do you always experience the gravitational influence of other mass as you see them in your frame?
  • Using Arithmetic with Dates in SearchKit
  • Why do Electric Aircraft Seem to Eschew Photovoltaics?
  • Air magic only used to decrease humidity and improve living conditions?
  • 11 trees in 6 rows with 4 trees in each row
  • When selling a machine with proprietary software that links against an LGPLv3 library, do I need to give the customer root access?
  • Why was this a draw?
  • Does installing Ubuntu Deskto on Xubuntu LTS adopt the longer Ubuntu support period
  • Why is there not a test for diagonalizability of a matrix
  • Uniqueness of proofs for inductively defined predicates
  • How did I obtain a wildcard SSL certificate without port 80 opened for a challenge?
  • What makes Python better suited to quant finance than Matlab / Octave, Julia, R and others?
  • Bitcoin regtest CPUminer not even starting
  • Were there any stone vessels (including mortars) made in Paleolithic?
  • Can the differential be unitless while the variable have an unit in integration?
  • Seeing perfectly camouflaged objects
  • Why was this a draw? What move I supposed to play to win?
  • How do I drill a 60cm hole in a tree stump, 4.4 cm wide?
  • 130 TIF DEM file (total size 3 GB) become 7.4 GB TIF file after merging. Why?
  • Why screenshots are being saved in moved folder?
  • Who is the distant man in the final frames?
  • Confusion on defining uniform distribution on hypersphere and its sampling problem
  • How to photograph the lettering on a bronze plaque?
  • String Decryption in C (BIO 2022 Q1)

moodle mod_assign

Documentation

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

Assign submission plugins

This content of this page has been updated and migrated to the new . The information contained on the page should no longer be seen up-to-date.

Why not and !

  • 1.1 Overview of an assignment submission plugin
  • 4.1 version.php
  • 4.2 settings.php
  • 4.3 lang/en/submission_pluginname.php
  • 4.4 db/access.php
  • 4.5 db/upgrade.php
  • 4.6 db/install.xml
  • 4.7 db/install.php
  • 4.8.1 get_name()
  • 4.8.2 get_settings()
  • 4.8.3 save_settings()
  • 4.8.4 get_form_elements()
  • 4.8.5 save()
  • 4.8.6 get_files()
  • 4.8.7 view_summary()
  • 4.8.8 view()
  • 4.8.9 can_upgrade()
  • 4.8.10 upgrade_settings()
  • 4.8.11 upgrade()
  • 4.8.12 get_editor_fields()
  • 4.8.13 get_editor_text()
  • 4.8.14 get_editor_format()
  • 4.8.15 is_empty()
  • 4.8.16 submission_is_empty()
  • 4.8.17 get_file_areas()
  • 4.8.18 copy_submission()
  • 4.8.19 format_for_log()
  • 4.8.20 delete_instance()
  • 4.9 lib.php
  • 5.1 assign_plugin
  • 5.2 assign_submission_plugin
  • 6.1 Add calendar events

Introduction

This page gives an overview of assignment submission plugins within the assignment module.

Overview of an assignment submission plugin

An assignment submission plugin is used to display custom form fields to a student when they are editing their assignment submission. It also has full control over the display the submitted assignment to graders and students. Plugins participate in all assignment features including backup/restore, upgrades from 2.2, offline grading, group assignments and blind marking.

An assignment submission plugin can add settings to the module settings page.

An assignment submission plugin can add settings to the module settings page.

An assignment submission plugin can show a summary of the submission to students and graders.

An assignment submission plugin can show a summary of the submission to students and graders.

An assignment submission plugin can add form fields to the student submission page.

An assignment submission plugin can add form fields to the student submission page.

Assignment submission plugins were added with the assignment module rewrite for Moodle 2.3.

A great example is the "onlinetext" submission plugin included with Moodle core.

File structure

The files for a custom submission plugin sit under "mod/assign/submission/<pluginname>". A plugin should not include any custom files outside of its own plugin folder.

Note: The plugin name should be no longer than 11 characters - this is because the database tables for a submission plugin must be prefixed with "assignsubmission_" + pluginname (17 chars + X) and the table names can be no longer than 28 chars (thanks oracle). If a plugin requires multiple database tables, the plugin name will need to be shorter to allow different table names to fit under the 28 character limit.

All examples in this document exclude the required copyright and license information from source files for brevity.

version.php

To start with we need to tell Moodle the version information for our new plugin so that it can be installed and upgraded correctly. This information is added to version.php as with any other type of Moodle plugin. The component name must begin with "assignsubmission_" to identify this as a submission plugin.

See version.php for more information.

settings.php

The settings file allows us to add custom settings to the system wide configuration page for our plugin.

All submission settings should be named 'assignsubmission_pluginname/settingname' in order for the setting to be associated with the plugin.

All submission plugins should include one setting named 'default' to indicate if the plugin should be enabled by default when creating a new assignment.

This example from the submission_file plugin also checks to see if there is a maxbytes setting for this moodle installation and if found, it adds a new admin setting to the settings page. The name of the setting should begin with the plugin component name ("assignsubmission_file") in this case. The strings are specified in this plugins language file.

lang/en/submission_pluginname.php

The language file for this plugin must have the same name as the component name (e.g. "submission_file.php"). It should at least define a string for "pluginname". For example:

db/access.php

This is where any additional capabilities are defined if required. This file can be omitted if there are no capabilities added by the plugin.

See Activity_modules#access.php for more information.

db/upgrade.php

This is where any upgrade code is defined.

See Activity_modules#upgrade.php for more information.

db/install.xml

This is where any database tables required to save this plugins data are defined. File submissions define a table that links to submission and contains a column to record the number of files.

db/install.php

This example is from the submission_comments plugin. It shows how to run custom code on installation of the plugin. In this case it makes the comments plugin the last of the three submission plugins installed by default.

locallib.php

This is where all the functionality for this plugin is defined. We will step through this file and describe each part as we go.

All submission plugins MUST define a class with the component name of the plugin that extends assign_submission_plugin.

Get name is abstract in submission_plugin and must be defined in your new plugin. Use the language strings to make your plugin translatable.

get_settings()

The "get_settings" function is called when building the settings page for the assignment. It allows this plugin to add a list of settings to the form. Notice that the settings are prefixed by the plugin name which is good practice to avoid conflicts with other plugins.

save_settings()

The "save_settings" function is called when the assignment settings page is submitted, either for a new assignment or when editing an existing one. For settings specific to a single instance of the assignment you can use the assign_plugin::set_config function shown here to save key/value pairs against this assignment instance for this plugin.

get_form_elements()

The get_form_elements function is called when building the submission form. It functions identically to the get_settings function except that the submission object is available (if there is a submission) to associate the settings with a single submission. This example also shows how to use a filemanager within a submission plugin. The function must return true if it has modified the form otherwise the assignment will not include a header for this plugin.

The "save" function is called to save a user submission. The parameters are the submission object and the data from the submission form. This example calls file_postupdate_standard_filemanager to copy the files from the draft file area to the filearea for this submission, it then uses the event api to trigger an assessable_file_uploaded event for the plagiarism api. It then records the number of files in the plugin specific "assignsubmission_file" table.

get_files()

If this submission plugin produces one or more files, it should implement "get_files" so that the portfolio API can export a list of all the files from all of the plugins for this assignment submission. This is also used by the offline grading feature in the assignment.

view_summary()

The view_summary function is called to display a summary of the submission to both markers and students. It counts the number of files submitted and if it is more that a set number, it only displays a count of how many files are in the submission - otherwise it uses a helper function to write the entire list of files. This is because we want to keep the summaries really short so they can be displayed in a table. There will be a link to view the full submission on the submission status page.

The view function is called to display the entire submission to both markers and students. In this case it uses the helper function in the assignment class to write the list of files.

can_upgrade()

The can_upgrade function is used to identify old "Assignment 2.2" subtypes that can be upgraded by this plugin. This plugin supports upgrades from the old "upload" and "uploadsingle" assignment subtypes.

upgrade_settings()

This function is called once per assignment instance to upgrade the settings from the old assignment to the new mod_assign. In this case it sets the maxbytes, maxfiles and alwaysshowdescription configuration settings.

The "upgrade" function upgrades a single submission from the old assignment type to the new one. In this case it involves copying all the files from the old filearea to the new one. There is a helper function available in the assignment class for this (Note: the copy will be fast as it is just adding rows to the files table). If this function returns false, the upgrade will be aborted and rolled back.

get_editor_fields()

This example is from assignsubmission_onlinetext. If the plugin uses a text-editor it is ideal if the plugin implements "get_editor_fields". This allows the portfolio to retrieve the text from the plugin when exporting the list of files for a submission. This is required because the text is stored in the plugin specific table that is only known to the plugin itself. If a plugin supports multiple text areas it can return the name of each of them here.

get_editor_text()

This example is from assignsubmission_onlinetext. If the plugin uses a text-editor it is ideal if the plugin implements "get_editor_text". This allows the portfolio to retrieve the text from the plugin when exporting the list of files for a submission. This is required because the text is stored in the plugin specific table that is only known to the plugin itself. The name is used to distinguish between multiple text areas in the one plugin.

get_editor_format()

This example is from assignsubmission_onlinetext. For the same reason as the previous function, if the plugin uses a text editor, it is ideal if the plugin implements "get_editor_format". This allows the portfolio to retrieve the text from the plugin when exporting the list of files for a submission. This is required because the text is stored in the plugin specific table that is only known to the plugin itself. The name is used to distinguish between multiple text areas in the one plugin.

If a plugin has no submission data to show - it can return true from the is_empty function. This prevents a table row being added to the submission summary for this plugin. It is also used to check if a student has tried to save an assignment with no data.

submission_is_empty()

Determine if a submission is empty. This is distinct from is_empty() in that it is intended to be used to determine if a submission made before saving is empty.

get_file_areas()

A plugin should implement get_file_areas if it supports saving of any files to moodle - this allows the file areas to be browsed by the moodle file manager.

copy_submission()

Since Moodle 2.5 - a students submission can be copied to create a new submission attempt. Plugins should implement this function if they store data associated with the submission (most plugins).

format_for_log()

The format_for_log function lets a plugin produce a really short summary of a submission suitable for adding to a log message.

delete_instance()

The delete_instance function is called when a plugin is deleted. Note only database records need to be cleaned up - files belonging to fileareas for this assignment will be automatically cleaned up.

This file is the entry point to many standard Moodle APIs for plugins. An example is that in order for a plugin to allow users to download files contained within a filearea belonging to the plugin, they must implement the componentname_pluginfile function in order to perform their own security checks.

See File_API for more information. Example:

Useful classes

A submission plugin has access to a number of useful classes in the assignment module. See the phpdocs (or the code) for more information on these classes.

assign_plugin

This abstract class is the base class for all assignment plugins (feedback or submission plugins).

It provides access to the assign class which represents the current assignment instance through "$this->assignment".

assign_submission_plugin

This is the base class all assignment submission plugins must extend. It contains a small number of additional function that only apply to submission plugins.

This is the main class for interacting with the assignment module.

It contains public functions that are useful for listing users, loading and updating submissions, loading and updating grades, displaying users etc.

Other features

Add calendar events.

From Moodle 3.1 onwards, submission plugins can add events to the Moodle calendar without side effects. These will be hidden and deleted in line with the assignment module. For example:

This code should be placed in the "save_settings()" method of your assign_submission_plugin class.

  • DevDocs Migration

Powered by MediaWiki

Log in to Moodle using your account

moodle mod_assign

[ Forgot your Viterbo username or password? ]

Log in for Guests

For additional help, contact the help desk at [email protected] .

2024SU Intro to Prog & Logic (CIS-115-OA1)

Enrollment options.

  • Instructor (ILP): Constance Humphries

Uploaded image for project: 'Moodle'

  • MDL-29934 Web service API Roadmap

mod_assign_get_submissions

Icon: Sub-task

  • Resolution: Fixed
  • Fix Version/s: 2.5
  • Affects Version/s: Future Dev
  • Component/s: Assignment , Web Services
  • Fixed Branches: MOODLE_25_STABLE
  • Pull from Repository: git://github.com/Lightwork-Marking/moodle.git
  • Pull Main Branch: MDL-31682
  • Pull Main Diff URL: https://github.com/Lightwork-Marking/moodle/compare/master...MDL-31682
  • Documentation link: http://docs.moodle.org/dev/Lightwork#The_new_Lightwork_web_services

Take the PHP-REST demo client: https://github.com/moodlehq/sample-ws-clients/tree/master/PHP-REST (or another one)

For each test, you will need to change the code between /// PARAMETERs as specified

Test 1) - Specify 1 or more assignment ids for which the user has 'mod/assign:grade' capability /// PARAMETERS $assignmentids[] = 3; // user has 'mod/assign:grade' capability for this assignment $assignmentids[] = 4; // user has 'mod/assign:grade' capability for this assignment $params = array('assignmentids'=>$assignmentids); /// PARAMETERS The web service should return the submissions for the specified assignments

Test 2) - Specify the status of the submissions /// PARAMETERS $assignmentids[] = 3; // user has 'mod/assign:grade' capability for this assignment $assignmentids[] = 4; // user has 'mod/assign:grade' capability for this assignment $params = array('assignmentids'=>$assignmentids, 'status'=>'submitted'); /// PARAMETERS The web services shoudld return all submissions for the specified assignments where the status is submitted

Test 3) - Specify a range of timemodified values /// PARAMETERS $assignmentids[] = 3; // user has 'mod/assign:grade' capability for this assignment $assignmentids[] = 4; // user has 'mod/assign:grade' capability for this assignment $params = array('assignmentids'=>$assignmentids, 'since'=>1331862337, 'before'=>1331862900); /// PARAMETERS The web services shoudld return all submissions for the specified assignments where the timemodified value is between the specified range

Test 4) - An assignment is specified for which the user does not have the mod/assign:grade capability /// PARAMETERS $assignmentids[] = 20; //user does not have 'mod/assign:grade' capability for this assignment $params = array('assignmentids'=>$assignmentids); /// PARAMETERS The web service returns a warning message

Description

Create web service mod_assignment_get_assignment_submissions. This web service will return data from the assignment_submissions table. It will have 2 parameters:

  • A list of assignment ids (required)
  • A status parameter that allows the status of requested submissions to be specified (optional)
  • A since parameter so that only submissions with a timemodified value >= since are returned (optional)
  • A before parameter so that only submissions with a timemodified value <= before are returned (optional)

Attachments

  • Sort By Name
  • Sort By Date
  • Download All
  • patch.txt 2 kB 17/Jan/13 11:47 AM

Issue Links

Improvement - An enhancement to an existing Moodle feature.

Error rendering 'clockify-timesheets-time-tracking-reports:timer-sidebar'. Please contact your Jira administrators.

Forgotten your username or password?

Log in using your account on:

moodle mod_assign

Some courses may allow guest access

Student Help Portal

Student help portal   phone:  252-638-7212, course availability, moodle courses will be available to students on the first day of class each semester., moodle username and password reset, find username, reset password.

IMAGES

  1. GitHub

    moodle mod_assign

  2. Moodle customization and creation of custom Moodle™ pages in minutes

    moodle mod_assign

  3. Capabilities/mod/assign:viewblinddetails

    moodle mod_assign

  4. GitHub

    moodle mod_assign

  5. Assign roles

    moodle mod_assign

  6. Assign roles

    moodle mod_assign

VIDEO

  1. System Roles

  2. Moodle System

  3. moodle basic for beginner

  4. How to submit an assignment on Moodle

  5. Moodle Assignments

  6. How to SUBMIT an ASSIGNMENT in MOODLE as a STUDENT 📥

COMMENTS

  1. Assignment module

    Two assignment modules. in Moodle 2.3! Moodle 2.3 includes two assignment modules - the new assignment module (a rewrite of the old assignment module) under /mod/assign/ and the old assignment module under /mod/assignment/ with four subtypes, renamed 'Assignments (2.2)'. For new Moodle 2.3 installs, Assignments (2.2) is disabled/hidden.

  2. Assign submission plugins

    The plugin name should be no longer than 36 (11 before Moodle 4.3) characters - this is because the database tables for a submission plugin must be prefixed with assignsubmission_[pluginname] ... This function is called once per assignment instance to upgrade the settings from the old assignment to the new mod_assign.

  3. Assignment sub-plugins

    The mod_assign activity can be extended using two sub-plugin types, namely: submission plugins, used to provide different ways for students to submit their content. feedback plugins, used to extend the ways in which feedback may be provided to students on their submissions. Tags: Assign. Assignment. Subplugin.

  4. mod/assign/view

    For documentation about Assignments (2.2), see Assignment module in the 2.2 docs. The assignment module allows teachers to collect work from students, review it and provide feedback including grades. Students can submit any digital content (files), including, for example, word-processed documents, spreadsheets, images, audio and video clips.

  5. Using Assignment

    Click on the assignment name on the Moodle course homepage to access the summary page and click View/grade all submissions. From the Grading action drop-down menu choose Upload grading worksheet. Click Choose a file... and upload the grading worksheet to Moodle, or drag the csv file to the arrow and wait for the file name to appear in the box.

  6. Moodle in English: overriding the mod_assign creation form

    Learn about Moodle's products, like Moodle LMS or Moodle Worplace, or find a Moodle Certified Service Provider. MoodleNet Our social network to share and curate open educational resources. ... The form is \mod\assign\mod_form.php form And I want to do this without modifying core code. ...

  7. Plugin types

    Moodle is a powerful, and very extensible, Learning Management System. One of its core tenets is its extensibility, and this is primarily achieved through the development of plugins. ... /mod/assign/feedback: Different forms of assignment feedbacks: 2.3+ Book tools: booktool /mod/book/tool: Small information-displays or tools that can be moved ...

  8. Moodle APIs: mod_assign

    The mod_assign all submissions downloaded event. The mod_assign assessable submitted event. This file contains the mod_assign assign_plugin_request_data class. Assign feedback subplugin info class. This file contains the assignfeedback_provider interface. This file contains the assignfeedback_user_provider interface.

  9. GitHub

    a few minutes: 1) Move the Moodle files into your web directory. 2) Create a single database for Moodle to store all. it's tables in (or choose an existing database). 3) Visit your Moodle site with a browser, you should. be taken to the install.php script, which will lead. you through creating a config.php file and then.

  10. Moodle in English: 'mod_assign_renderer' error when upgrading from 3.11

    Although this theme and some other themes would be compatible with Moodle they don't really make full use of the enhanced UI and layouts that Moodle 4.0 offers and have the same three column layout, but they do work. I believe by the time Moodle 4.1 is released the themes should be updated make use of the enhanced UI offered by Moodle 4.0

  11. Moodle in English: Moodle 4 upgrade error: EXCEPTION- class'mod_assign

    Re: Moodle 4 upgrade error: EXCEPTION- class'mod_assign_renderer' not found by Gareth J Barnard - Tuesday, 10 January 2023, 7:29 PM The theme is also set in the database, 'config' table for the 'name' column with the value 'theme', therefore set the name of the theme without any quotes, i.e. its folder name as the value of the respective 'value ...

  12. Check if student submitted assignment via Moodle web services

    1. I am trying to use the Moodle API (web services) to get information about (my) assignment submissions. I want to know whether I submitted an attempt for the assignment already or not. I am using the mod_assign_get_assignments function (which doesn't have too much documentation) and the results I get (when looking at the assignments portion ...

  13. Moodle in English: Mod/assign not deleting submission status

    Mod/assign not deleting submission status. Hi all, After upgrading to Moodle 3.9.6 we found that student users who use the "remove submission" option in the mod/assign plugin get a confusing situation. The file gets removed, but the submission status stays the same (assignment submitted). This creates the situation of "ghost" assignments where ...

  14. Moodle in English: Moodle Upgrading Error

    Verify that there is a subdirectory 'assign' under your 'mod' directory and that it contains PHP files. If there isn't, something went wrong when you installed the Moodle 3 codebase, as this is a core plugin. If you uninstall it per the other advice, and you previously used that module, you will lose all data associated with that module.

  15. Assign submission plugins

    Plugin naming. The plugin name should be no longer than 36 (11 before Moodle 4.3) characters - this is because the database tables for a submission plugin must be prefixed with assignsubmission_[pluginname] (17 chars + X) and the table names can be no longer than 53 (28 before Moodle 4.3) chars due to a limitation with PostgreSQL.

  16. Trouble to insert mod_assign to a course

    Learn about Moodle's products, like Moodle LMS or Moodle Worplace, or find a Moodle Certified Service Provider. MoodleNet Our social network to share and curate open educational resources.

  17. Moodle plugins directory: iAssign

    iAssign (Interactive Assignment) package aims to enhance activities in Moodle, allowing the incorporation of "Interactive Learning Modules" (iLM) to Moodle. iAssign also provides: an area to teachers cooperate (Block); a filter to incorporate any iLM in any Moodle text (Filter); and a TinyMCE editor button (TinyMCE Plugin). Attention: in order to proper work, iAssign needs its associated ...

  18. Moodle @ Viterbo University: Log in to the site

    For additional help, contact the help desk at [email protected].

  19. [MDL-31683] mod_assign_get_assignments

    Create web service mod_assign_get_course_assignments Parameter: Capability Returned value: list of courses and assignments that this user has a particular capability in. Attachments

  20. [MDL-31873] mod_assign_get_grades

    Description. Create web service mod_assign_get_grades. Parameters: list of assignment ids (required) since (optional) used to return only records with timemodified field >= since) Return: Array of records from the new Moodle 2.3 assign_grades table. Attachments.

  21. [MDL-69159] mod_assign_get_submissions returns user ...

    When using mod_assign_get_submission to query all submissions for an assignment an empty submission is returned for each user. This seems to always be empty and share the state (e.g. status, gradingstatus) of the submission of the users group. ... Powered by a free Atlassian Jira open source license for Moodle Pty Ltd. Try Jira - bug tracking ...

  22. moodle.abtech.edu

    This page should automatically redirect. If nothing is happening please use the continue link below. Continue

  23. ASL102-B01-202460

    Moodle Help Tech Support Academic Support Student Services and Resources Distance Learning Librarian Accessibility. My Books; My Grades; ASL102-B01-202460 American Sign Language II. Home; Courses; Summer 2024; Communicative Disorders; ASL102-B01-202460; Enrollment options;

  24. [MDL-31682] mod_assign_get_submissions

    Test 1) - Specify 1 or more assignment ids for which the user has 'mod/assign: ... MDL-31409 Incorporate Lightwork into the Moodle core. Closed; is blocked by. MDL-31683 mod_assign_get_assignments. Closed; MDL-31270 New assignment module to replace all existing subtypes . Closed; Activity. People.

  25. 2024SU_ACA_122_NWL2

    Hybrid and Online Teacher Training-HOTT Resources Center for Teaching and Learning - Moodle Support Page Distance Learning Faculty Handbook. Need Help? Student Help Desk Faculty/Staff - send email to [email protected]. You are currently using guest access . 2024SUACA-122-NWL2. Home;