Julio Montoya bdd6eb1b9e Partial merge with 1.11.x see BT#15952 5 vuotta sitten
..
Entity bdd6eb1b9e Partial merge with 1.11.x see BT#15952 5 vuotta sitten
assets 779efaacd3 Add IMS/LTI plugin - refs #5333 8 vuotta sitten
gradebook a86b233445 Partial merge with 1.11.x adding new files see BT#15952 5 vuotta sitten
lang bdd6eb1b9e Partial merge with 1.11.x see BT#15952 5 vuotta sitten
src a86b233445 Partial merge with 1.11.x adding new files see BT#15952 5 vuotta sitten
view bdd6eb1b9e Partial merge with 1.11.x see BT#15952 5 vuotta sitten
ImsLtiPlugin.php a86b233445 Partial merge with 1.11.x adding new files see BT#15952 5 vuotta sitten
OAuthSimple.php 779efaacd3 Add IMS/LTI plugin - refs #5333 8 vuotta sitten
README.md bdd6eb1b9e Partial merge with 1.11.x see BT#15952 5 vuotta sitten
add.php 6743e9719e Fix LTI plugin - refs BT#13469 6 vuotta sitten
admin.php bdd6eb1b9e Partial merge with 1.11.x see BT#15952 5 vuotta sitten
configure.php a86b233445 Partial merge with 1.11.x adding new files see BT#15952 5 vuotta sitten
create.php bdd6eb1b9e Partial merge with 1.11.x see BT#15952 5 vuotta sitten
delete.php 002b907867 Fix and improve Ims/LIT plugin - refs BT#13469 6 vuotta sitten
edit.php bdd6eb1b9e Partial merge with 1.11.x see BT#15952 5 vuotta sitten
form.php bdd6eb1b9e Partial merge with 1.11.x see BT#15952 5 vuotta sitten
install.php b711b72977 Minor - format code 6 vuotta sitten
item_return.php a86b233445 Partial merge with 1.11.x adding new files see BT#15952 5 vuotta sitten
outcome_service.php a86b233445 Partial merge with 1.11.x adding new files see BT#15952 5 vuotta sitten
plugin.php 779efaacd3 Add IMS/LTI plugin - refs #5333 8 vuotta sitten
start.php bdd6eb1b9e Partial merge with 1.11.x see BT#15952 5 vuotta sitten
uninstall.php b711b72977 Minor - format code 6 vuotta sitten

README.md

IMS/LTI plugin

Version 1.5.1 (beta)

This plugin is meant to be later integrated into Chamilo (in a major version release).

IMS/LTI defines the possibility to integrate tools or content into Chamilo. This plugin allows the integration of a new tool into courses, obtaining data back from those tools and recording them as gradebook "external" activities.

As a platform admin, you can register external tools available for all courses. You need set the tools settings in the IMS/LTI administration page. Then the registered tools should be added in each course individually.

As a teacher, you can register external tools available only for the current course. You need follow the link in the IMS/LTI block located in the Course Settings tool. Then select a previously tool registered or register a new external tool.

Changelog

v1.1

  • Support for Deep-Linking added.
  • Support for outcomes services. And register score on course gradebook.

v1.2

  • Register course in which the tool was added.
  • Register parent tool from which the new tool comes from.

v1.3

  • Privacy settings added. Allow to indicate id the launcher's data should be sent in request.

v1.4

  • Allow create external tools when there is no key/secret available for launch

v1.5

  • Plugin has passed the tests from the LTI Certification suite.
  • Add support for substitution of variable. See ImsLti::getSubstitutableParams().
  • Outcome services has a unique URL and sourced ID.

Installation

  1. Install the plugin from the Plugins page
  2. Enable the plugin from the IMS/LTI Plugin Settings page
  3. Assign to the Administrator region (in the regions management page)

Upgrading

Run this changes on database:

To v1.1

ALTER TABLE plugin_ims_lti_tool
    ADD active_deep_linking TINYINT(1) DEFAULT '0' NOT NULL,
    CHANGE id id INT AUTO_INCREMENT NOT NULL,
    CHANGE launch_url launch_url VARCHAR(255) NOT NULL;
    
ALTER TABLE plugin_ims_lti_tool ADD gradebook_eval_id INT DEFAULT NULL;
ALTER TABLE plugin_ims_lti_tool ADD CONSTRAINT FK_C5E47F7C82F80D8B
    FOREIGN KEY (gradebook_eval_id) REFERENCES gradebook_evaluation (id)
    ON DELETE SET NULL;
CREATE INDEX IDX_C5E47F7C82F80D8B ON plugin_ims_lti_tool (gradebook_eval_id);

To v1.2

ALTER TABLE plugin_ims_lti_tool ADD c_id INT DEFAULT NULL;
ALTER TABLE plugin_ims_lti_tool ADD CONSTRAINT FK_C5E47F7C91D79BD3
    FOREIGN KEY (c_id) REFERENCES course (id);
CREATE INDEX IDX_C5E47F7C91D79BD3 ON plugin_ims_lti_tool (c_id);

ALTER TABLE plugin_ims_lti_tool ADD parent_id INT DEFAULT NULL, DROP is_global;
ALTER TABLE plugin_ims_lti_tool ADD CONSTRAINT FK_C5E47F7C727ACA70
    FOREIGN KEY (parent_id) REFERENCES plugin_ims_lti_tool (id);
CREATE INDEX IDX_C5E47F7C727ACA70 ON plugin_ims_lti_tool (parent_id);

To v1.3

ALTER TABLE plugin_ims_lti_tool ADD privacy LONGTEXT DEFAULT NULL;

To v1.4

ALTER TABLE plugin_ims_lti_tool
    CHANGE consumer_key consumer_key VARCHAR(255) DEFAULT NULL,
    CHANGE shared_secret shared_secret VARCHAR(255) DEFAULT NULL;

To v1.5.1

ALTER TABLE plugin_ims_lti_tool
    DROP FOREIGN KEY FK_C5E47F7C727ACA70,
    ADD FOREIGN KEY (parent_id) REFERENCES plugin_ims_lti_tool (id) ON DELETE CASCADE ON UPDATE RESTRICT;