smtech/reflexive-canvas-lti

此包已被弃用且不再维护。未建议替代包。

LTI工具提供者类,通过API实现“反射”方式回显Canvas

v1.0.8 2017-06-05 17:05 UTC

This package is auto-updated.

Last update: 2023-05-25 12:48:54 UTC


README

Latest Version Scrutinizer Code Quality

弃用

该项目自2017年春季以来没有活跃维护,当时Seth Battis角色改变,不再在Canvas(或其他LTI兼容)环境中工作。有兴趣的开发者欢迎接棒。

与此同时,我注意到Steven Vickers发布了他更新的PHP LTI工具提供者版本,可以作为进一步使用PHP进行LTI开发的起点。

关于

LTI工具提供者类,通过API实现“反射”方式回显Canvas。

完整文档在存储库中。

这是两个旨在促进和加速PHP中LTI开发的包之一,允许LTI工具提供者从内部直接访问Canvas API。

  1. 此包smtech/reflexive-canvas-lti是“纯朴”版本。也就是说:它纯粹是面向对象的优秀之作,没有GUI来添加任何独特风味。这使得它在某种程度上更加有限,但也希望在这方面更具可重用性。
  2. 另一个包smtech/stmarks-reflexive-canvas-lti提供了一系列方便的GUI附加组件,包括Smarty模板(通过smtech/stmarkssmarty,这是我的通用battis/bootstrapsmarty包的St. Mark's风格扩展,它提供了在Smarty模板中访问Bootstrap的便捷方式)。此外,由于该包本身提供GUI,因此还提供了一些实用的交互式控制面板

如何选择?

这取决于你是否喜欢以我的方式构建网页(追求真正的模型-视图-控制器分离,使我的代码更容易阅读/理解),或者你是否更喜欢其他范式。如果你喜欢我的方式,我建议扩展smtech/stmarks-reflexive-canvas-lti,包括适合你自己的机构的品牌,并使用它。如果不这样做,或者如果你试图避免GUI的纠缠,这个“纯朴”包正合适。

示例代码

examples目录中,你可以找到两个示例工具提供者

  1. tool-provider 展示了使用“纯原味”包(这个)构建的 LTI 工具提供者的示例。
  2. stmarks-tool-provider 展示了相同的示例,但进行了调整,使用的是 smtech/stmarks-reflexive-canvas-lti -- 我认为这更简洁、更简单。但我是有偏见的。

Composer 的细节

注意:由于 Stephen Vickers 尚未通过 Composer 发布他的 LTI_Tool_Provider,我认为将他的代码集成到您的 composer.json 文件中的最佳方式是复制以下内容。(这样,当 smtech/reflexive-canvas-lti 依赖于 spvsoftwareproducts/LTI_Tool_Provider 时,Composer 将知道我们在谈论什么。)

另外:要从其中央存储库下载 spvsoftwareproducts/LTI_Tool_Provider 包,您必须允许非 HTTPS 下载,这有点安全漏洞。不是世界末日,但也不是最佳实践。

"config": {
    "secure-http": false
},
"repositories": [
    {
        "type": "package",
        "package": {
            "name": "spvsoftwareproducts/LTI_Tool_Provider",
            "version": "2.5.01",
            "dist": {
                "url": "http://projects.oscelot.org/gf/download/frsrelease/956/6025/LTI_Tool_Provider-2.5.01.zip",
                "type": "zip"
            },
            "license": "LGPL-3.0",
            "authors": [
                {
                    "name": "Stephen Vickers"
                }
            ],
            "homepage": "http://spvsoftwareproducts.com/php/lti_tool_provider/",
            "autoload": {
                "classmap": [""]
            }
        }
    }
]

还有其他

"require": {
    "smtech/reflexive-canvas-lti": "~1.0"
}