LTI Integration Library 5.0.0-rc2
PHP class library for building LTI integrations
 
Loading...
Searching...
No Matches
Item Class Reference

Class to represent a content-item object. More...

Inheritance diagram for Item:
FileItem LtiLinkItem ContentItem LtiAssignmentItem

Public Member Functions

 __construct ($type, $placementAdvices=null, $id=null)
 Class constructor.
 
 setUrl ($url)
 Set a URL value for the content-item.
 
 setMediaType ($mediaType)
 Set a media type value for the content-item.
 
 setTitle ($title)
 Set a title value for the content-item.
 
 setText ($text)
 Set a link text value for the content-item.
 
 setHtml ($html)
 Set an HTML embed value for the content-item.
 
 addPlacementAdvice ($placementAdvice)
 Add a placement for the content-item.
 
 setIcon ($icon)
 Set an icon image for the content-item.
 
 setThumbnail ($thumbnail)
 Set a thumbnail image for the content-item.
 
 setHideOnCreate ($hideOnCreate)
 Set whether the content-item should be hidden from learners by default.
 

Static Public Member Functions

static string toJson ($items, $ltiVersion=Util::LTI_VERSION1)
 Wrap the content items to form a complete application/vnd.ims.lti.v1.contentitems+json media type instance.
 
static array fromJson ($items)
 Generate an array of Item objects from their JSON representation.
 
static Item LtiLinkItem FileItem fromJsonItem ($item)
 Generate an Item object from its JSON or JSON-LD representation.
 

Public Attributes

const TYPE_LINK = 'link'
 Type for link content-item.
 
const TYPE_LTI_LINK = 'ltiResourceLink'
 Type for LTI link content-item.
 
const TYPE_LTI_ASSIGNMENT = 'ltiAssignment'
 Type for LTI assignment content-item.
 
const TYPE_FILE = 'file'
 Type for file content-item.
 
const TYPE_HTML = 'html'
 Type for HTML content-item.
 
const TYPE_IMAGE = 'image'
 Type for image content-item.
 
const LTI_LINK_MEDIA_TYPE = 'application/vnd.ims.lti.v1.ltilink'
 Media type for LTI launch links.
 
const LTI_ASSIGNMENT_MEDIA_TYPE = 'application/vnd.ims.lti.v1.ltiassignment'
 Media type for LTI assignment links.
 

Protected Member Functions

object toJsonldObject ()
 Wrap the content item to form an item complying with the application/vnd.ims.lti.v1.contentitems+json media type.
 
object toJsonObject ()
 Wrap the content items to form a complete value for the https://purl.imsglobal.org/spec/lti-dl/claim/content_items claim.
 
 fromJsonObject ($item)
 Extract content-item details from its JSON representation.
 

Detailed Description

Class to represent a content-item object.

Author
Stephen P Vickers steph.nosp@m.en@s.nosp@m.pvsof.nosp@m.twar.nosp@m.eprod.nosp@m.ucts.nosp@m..com
Licence: http://www.gnu.org/licenses/lgpl.html GNU Lesser General Public License, version 3

Constructor & Destructor Documentation

◆ __construct()

__construct (   $type,
  $placementAdvices = null,
  $id = null 
)

Class constructor.

Parameters
string$typeClass type of content-item
Placement[] | Placement$placementAdvicesArray of Placement objects (or single placement object) for item (optional)
string$idURL of content-item (optional)

Reimplemented in ContentItem.

Referenced by LtiAssignmentItem\__construct().

Member Function Documentation

◆ addPlacementAdvice()

addPlacementAdvice (   $placementAdvice)

Add a placement for the content-item.

Parameters
Placement$placementAdvicePlacement advice object

◆ fromJson()

static array fromJson (   $items)
static

Generate an array of Item objects from their JSON representation.

Parameters
object$itemsA JSON object representing Content-Items
Returns
array Array of Item objects

◆ fromJsonItem()

static Item LtiLinkItem FileItem fromJsonItem (   $item)
static

Generate an Item object from its JSON or JSON-LD representation.

Parameters
object$itemA JSON or JSON-LD object representing a content-item
Returns
Item|LtiLinkItem|FileItem The content-item object

◆ fromJsonObject()

fromJsonObject (   $item)
protected

Extract content-item details from its JSON representation.

Parameters
object$itemA JSON object representing a content-item

Reimplemented in FileItem, and LtiLinkItem.

◆ setHideOnCreate()

setHideOnCreate (   $hideOnCreate)

Set whether the content-item should be hidden from learners by default.

Parameters
bool | null$hideOnCreateTrue if the item should be hidden from learners

◆ setHtml()

setHtml (   $html)

Set an HTML embed value for the content-item.

Parameters
string$htmlHTML text value

◆ setIcon()

setIcon (   $icon)

Set an icon image for the content-item.

Parameters
Image$iconIcon image object

◆ setMediaType()

setMediaType (   $mediaType)

Set a media type value for the content-item.

Parameters
string$mediaTypeMedia type value

Referenced by LtiAssignmentItem\__construct().

◆ setText()

setText (   $text)

Set a link text value for the content-item.

Parameters
string$textLink text value

◆ setThumbnail()

setThumbnail (   $thumbnail)

Set a thumbnail image for the content-item.

Parameters
Image$thumbnailThumbnail image object

◆ setTitle()

setTitle (   $title)

Set a title value for the content-item.

Parameters
string$titleTitle value

◆ setUrl()

setUrl (   $url)

Set a URL value for the content-item.

Parameters
string$urlURL value

◆ toJson()

static string toJson (   $items,
  $ltiVersion = Util::LTI_VERSION1 
)
static

Wrap the content items to form a complete application/vnd.ims.lti.v1.contentitems+json media type instance.

Parameters
mixed$itemsAn array of content items or a single item
string$ltiVersionLTI version in use
Returns
string

◆ toJsonldObject()

object toJsonldObject ( )
protected

Wrap the content item to form an item complying with the application/vnd.ims.lti.v1.contentitems+json media type.

Returns
object

Reimplemented in FileItem, and LtiLinkItem.

◆ toJsonObject()

object toJsonObject ( )
protected

Wrap the content items to form a complete value for the https://purl.imsglobal.org/spec/lti-dl/claim/content_items claim.

Returns
object

Reimplemented in FileItem, and LtiLinkItem.


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