Moodle APIs  3.8
Moodle 3.8.6 (Build: 20201109)
Public Member Functions | Static Public Member Functions | Public Attributes | Protected Attributes | List of all members
ltiservice_memberships\local\service\memberships Class Reference

A service implementing Memberships. More...

Inheritance diagram for ltiservice_memberships\local\service\memberships:
mod_lti\local\ltiservice\service_base

Public Member Functions

 __construct ()
 Class constructor.
 
 check_tool ($typeid, $body=null, $scopes=null)
 Check that the request has been properly signed and is permitted. More...
 
 check_tool_proxy ($toolproxyguid, $body=null)
 Check that the request has been properly signed. More...
 
 check_type ($typeid, $courseid, $body=null)
 Check that the request has been properly signed. More...
 
 get_component_id ()
 Get the service compoent ID. More...
 
 get_configuration_options (&$mform)
 Adds form elements for membership add/edit page. More...
 
 get_configuration_parameter_names ()
 Return an array with the names of the parameters that the service will be saving in the configuration. More...
 
 get_id ()
 Get the service ID. More...
 
 get_launch_parameters ($messagetype, $courseid, $user, $typeid, $modlti=null)
 Return an array of key/values to add to the launch parameters. More...
 
 get_members_json ($resource, $context, $course, $role, $limitfrom, $limitnum, $lti, $info, $response)
 Get the JSON for members. More...
 
 get_name ()
 Get the service name. More...
 
 get_permitted_scopes ()
 Get the scope(s) permitted for the tool relevant to this service. More...
 
 get_resources ()
 Get the resources for this service. More...
 
 get_tool_proxy ()
 Get the tool proxy object. More...
 
 get_type ()
 Get the type object. More...
 
 get_typeconfig ()
 Get the type config array. More...
 
 is_allowed_in_context ($typeid, $courseid)
 Checks if there is a site tool or a course tool for this site. More...
 
 is_unsigned ()
 Get whether the service requests need to be signed. More...
 
 is_used_in_context ($typeid, $courseid)
 Default implementation will check for the existence of at least one mod_lti entry for that tool and context. More...
 
 parse_value ($value)
 Parse a string for custom substitution parameter variables supported by this service's resources. More...
 
stdClass set_tool_proxy ($toolproxy)
 Set the tool proxy object. More...
 
stdClass set_type ($type)
 Set the LTI type object. More...
 
array set_typeconfig ($typeconfig)
 Set the LTI type config object. More...
 

Static Public Member Functions

static get_service_path ()
 Get the path for service requests. More...
 
static get_users_json ($resource, $context, $contextid, $tool, $role, $limitfrom, $limitnum, $lti, $info)
 Get the JSON for members. More...
 

Public Attributes

const ALWAYS_INCLUDE_FIELD = 1
 Always include field.
 
const CONTEXT_ROLE_INSTRUCTOR = 'http://purl.imsglobal.org/vocab/lis/v2/membership#Instructor'
 Context-level role for Instructor.
 
const CONTEXT_ROLE_LEARNER = 'http://purl.imsglobal.org/vocab/lis/v2/membership#Learner'
 Context-level role for Learner.
 
const CONTEXT_ROLE_PREFIX = 'http://purl.imsglobal.org/vocab/lis/v2/membership#'
 Default prefix for context-level roles.
 
const DELEGATE_TO_INSTRUCTOR = 2
 Allow the instructor to decide if included.
 
const INSTRUCTOR_CAPABILITY = 'moodle/course:manageactivities'
 Capability used to identify Instructors.
 
const INSTRUCTOR_DELEGATE_INCLUDED = array(self::DELEGATE_TO_INSTRUCTOR && self::INSTRUCTOR_INCLUDED)
 Instructor delegated and approved for include.
 
const INSTRUCTOR_INCLUDED = 1
 Instructor chose to include field.
 
const LTI_VERSION2P0 = 'LTI-2p0'
 Label representing an LTI 2 message type.
 
const SCOPE_MEMBERSHIPS_READ = 'https://purl.imsglobal.org/spec/lti-nrps/scope/contextmembership.readonly'
 Scope for reading membership data.
 
const SERVICE_ENABLED = 1
 Service enabled.
 

Protected Attributes

string $id
 ID for the service.
 
string $name
 Human readable name for the service.
 
array $resources
 Instances of the resources associated with this service.
 
boolean $unsigned
 true if requests for this service do not need to be signed.
 

Detailed Description

A service implementing Memberships.

Since
Moodle 3.0
License
http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later

Member Function Documentation

◆ check_tool()

mod_lti\local\ltiservice\service_base::check_tool (   $typeid,
  $body = null,
  $scopes = null 
)
inherited

Check that the request has been properly signed and is permitted.

Parameters
string$typeidLTI type ID
string$bodyRequest body (null if none)
string[]$scopesArray of required scope(s) for incoming request
Return values
boolean

◆ check_tool_proxy()

mod_lti\local\ltiservice\service_base::check_tool_proxy (   $toolproxyguid,
  $body = null 
)
inherited

Check that the request has been properly signed.

Parameters
string$toolproxyguidTool Proxy GUID
string$bodyRequest body (null if none)
Return values
boolean
Deprecated:
since Moodle 3.7 MDL-62599 - please do not use this function any more.
See also
service_base::check_tool()

◆ check_type()

mod_lti\local\ltiservice\service_base::check_type (   $typeid,
  $courseid,
  $body = null 
)
inherited

Check that the request has been properly signed.

Parameters
int$typeidThe tool id
int$courseidThe course we are at
string$bodyRequest body (null if none)
Return values
bool
Deprecated:
since Moodle 3.7 MDL-62599 - please do not use this function any more.
See also
service_base::check_tool()

◆ get_component_id()

mod_lti\local\ltiservice\service_base::get_component_id ( )
inherited

Get the service compoent ID.

Return values
string

◆ get_configuration_options()

ltiservice_memberships\local\service\memberships::get_configuration_options ( $mform)

Adds form elements for membership add/edit page.

Parameters
MoodleQuickForm$mform

Reimplemented from mod_lti\local\ltiservice\service_base.

◆ get_configuration_parameter_names()

mod_lti\local\ltiservice\service_base::get_configuration_parameter_names ( )
inherited

Return an array with the names of the parameters that the service will be saving in the configuration.

Return values
arrayNames list of the parameters that the service will be saving in the configuration
Deprecated:
since Moodle 3.7 - please do not use this function any more.

◆ get_id()

mod_lti\local\ltiservice\service_base::get_id ( )
inherited

Get the service ID.

Return values
string

◆ get_launch_parameters()

ltiservice_memberships\local\service\memberships::get_launch_parameters (   $messagetype,
  $courseid,
  $user,
  $typeid,
  $modlti = null 
)

Return an array of key/values to add to the launch parameters.

Parameters
string$messagetype'basic-lti-launch-request' or 'ContentItemSelectionRequest'.
string$courseidThe course id.
string$userThe user id.
string$typeidThe tool lti type id.
string$modltiThe id of the lti activity.

The type is passed to check the configuration and not return parameters for services not used.

Return values
arrayof key/value pairs to add as launch parameters.

Reimplemented from mod_lti\local\ltiservice\service_base.

◆ get_members_json()

ltiservice_memberships\local\service\memberships::get_members_json (   $resource,
  $context,
  $course,
  $role,
  $limitfrom,
  $limitnum,
  $lti,
  $info,
  $response 
)

Get the JSON for members.

Parameters
mod_lti\local\ltiservice\resource_base$resourceResource handling the request
context_course$contextCourse context
course$courseCourse
string$roleUser role requested (empty if none)
int$limitfromPosition of first record to be returned
int$limitnumMaximum number of records to be returned
object$ltiLTI instance record
core_availability\info_module$infoConditional availability information for LTI instance (null if context-level request)
mod_lti\local\ltiservice\response$responseResponse object for the request
Return values
string

◆ get_name()

mod_lti\local\ltiservice\service_base::get_name ( )
inherited

Get the service name.

Return values
string

◆ get_permitted_scopes()

ltiservice_memberships\local\service\memberships::get_permitted_scopes ( )

Get the scope(s) permitted for the tool relevant to this service.

Return values
array

Reimplemented from mod_lti\local\ltiservice\service_base.

◆ get_resources()

ltiservice_memberships\local\service\memberships::get_resources ( )

Get the resources for this service.

Return values
array

Reimplemented from mod_lti\local\ltiservice\service_base.

◆ get_service_path()

static mod_lti\local\ltiservice\service_base::get_service_path ( )
staticinherited

Get the path for service requests.

Return values
string

◆ get_tool_proxy()

mod_lti\local\ltiservice\service_base::get_tool_proxy ( )
inherited

Get the tool proxy object.

Return values
stdClass

◆ get_type()

mod_lti\local\ltiservice\service_base::get_type ( )
inherited

Get the type object.

Return values
stdClass

◆ get_typeconfig()

mod_lti\local\ltiservice\service_base::get_typeconfig ( )
inherited

Get the type config array.

Return values
array|null

◆ get_users_json()

static ltiservice_memberships\local\service\memberships::get_users_json (   $resource,
  $context,
  $contextid,
  $tool,
  $role,
  $limitfrom,
  $limitnum,
  $lti,
  $info 
)
static

Get the JSON for members.

Parameters
mod_lti\local\ltiservice\resource_base$resourceResource handling the request
context_course$contextCourse context
string$contextidCourse ID
object$toolTool instance object
string$roleUser role requested (empty if none)
int$limitfromPosition of first record to be returned
int$limitnumMaximum number of records to be returned
object$ltiLTI instance record
core_availability\info_module$infoConditional availability information for LTI instance (null if context-level request)
Return values
string
Deprecated:
since Moodle 3.7 MDL-62599 - please do not use this function any more.
See also
memberships::get_members_json($resource, $context, $course, $role, $limitfrom, $limitnum, $lti, $info, $response)

◆ is_allowed_in_context()

mod_lti\local\ltiservice\service_base::is_allowed_in_context (   $typeid,
  $courseid 
)
inherited

Checks if there is a site tool or a course tool for this site.

Parameters
int$typeidThe tool lti type id.
int$courseidThe course id.
Return values
boolreturns True if tool is allowed in context, false otherwise.

◆ is_unsigned()

mod_lti\local\ltiservice\service_base::is_unsigned ( )
inherited

Get whether the service requests need to be signed.

Return values
boolean

◆ is_used_in_context()

mod_lti\local\ltiservice\service_base::is_used_in_context (   $typeid,
  $courseid 
)
inherited

Default implementation will check for the existence of at least one mod_lti entry for that tool and context.

It may be overridden if other inferences can be done.

Ideally a Site Tool should be explicitly engaged with a course, the check on the presence of a link is a proxy to infer a Site Tool engagement until an explicit Site Tool - Course relationship exists.

Parameters
int$typeidThe tool lti type id.
int$courseidThe course id.
Return values
boolreturns True if tool is used in context, false otherwise.

◆ parse_value()

mod_lti\local\ltiservice\service_base::parse_value (   $value)
inherited

Parse a string for custom substitution parameter variables supported by this service's resources.

Parameters
string$valueValue to be parsed
Return values
string

◆ set_tool_proxy()

stdClass mod_lti\local\ltiservice\service_base::set_tool_proxy (   $toolproxy)
inherited

Set the tool proxy object.

Parameters
object$toolproxyThe tool proxy for this service request

◆ set_type()

stdClass mod_lti\local\ltiservice\service_base::set_type (   $type)
inherited

Set the LTI type object.

Parameters
object$typeThe LTI type for this service request

◆ set_typeconfig()

array mod_lti\local\ltiservice\service_base::set_typeconfig (   $typeconfig)
inherited

Set the LTI type config object.

Parameters
array$typeconfigThe LTI type config for this service request

The documentation for this class was generated from the following file: