本文整理汇总了PHP中moodle_url::set_scheme方法的典型用法代码示例。如果您正苦于以下问题:PHP moodle_url::set_scheme方法的具体用法?PHP moodle_url::set_scheme怎么用?PHP moodle_url::set_scheme使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类moodle_url
的用法示例。
在下文中一共展示了moodle_url::set_scheme方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: lti_build_content_item_selection_request
/**
* Builds a standard LTI Content-Item selection request.
*
* @param int $id The tool type ID.
* @param stdClass $course The course object.
* @param moodle_url $returnurl The return URL in the tool consumer (TC) that the tool provider (TP)
* will use to return the Content-Item message.
* @param string $title The tool's title, if available.
* @param string $text The text to display to represent the content item. This value may be a long description of the content item.
* @param array $mediatypes Array of MIME types types supported by the TC. If empty, the TC will support ltilink by default.
* @param array $presentationtargets Array of ways in which the selected content item(s) can be requested to be opened
* (via the presentationDocumentTarget element for a returned content item).
* If empty, "frame", "iframe", and "window" will be supported by default.
* @param bool $autocreate Indicates whether any content items returned by the TP would be automatically persisted without
* @param bool $multiple Indicates whether the user should be permitted to select more than one item. False by default.
* any option for the user to cancel the operation. False by default.
* @param bool $unsigned Indicates whether the TC is willing to accept an unsigned return message, or not.
* A signed message should always be required when the content item is being created automatically in the
* TC without further interaction from the user. False by default.
* @param bool $canconfirm Flag for can_confirm parameter. False by default.
* @param bool $copyadvice Indicates whether the TC is able and willing to make a local copy of a content item. False by default.
* @return stdClass The object containing the signed request parameters and the URL to the TP's Content-Item selection interface.
* @throws moodle_exception When the LTI tool type does not exist.`
* @throws coding_exception For invalid media type and presentation target parameters.
*/
function lti_build_content_item_selection_request($id, $course, moodle_url $returnurl, $title = '', $text = '', $mediatypes = [], $presentationtargets = [], $autocreate = false, $multiple = false, $unsigned = false, $canconfirm = false, $copyadvice = false)
{
$tool = lti_get_type($id);
// Validate parameters.
if (!$tool) {
throw new moodle_exception('errortooltypenotfound', 'mod_lti');
}
if (!is_array($mediatypes)) {
throw new coding_exception('The list of accepted media types should be in an array');
}
if (!is_array($presentationtargets)) {
throw new coding_exception('The list of accepted presentation targets should be in an array');
}
// Check title. If empty, use the tool's name.
if (empty($title)) {
$title = $tool->name;
}
$typeconfig = lti_get_type_config($id);
$key = '';
$secret = '';
$islti2 = false;
if (isset($tool->toolproxyid)) {
$islti2 = true;
$toolproxy = lti_get_tool_proxy($tool->toolproxyid);
$key = $toolproxy->guid;
$secret = $toolproxy->secret;
} else {
$toolproxy = null;
if (!empty($typeconfig['resourcekey'])) {
$key = $typeconfig['resourcekey'];
}
if (!empty($typeconfig['password'])) {
$secret = $typeconfig['password'];
}
}
$tool->enabledcapability = '';
if (!empty($typeconfig['enabledcapability_ContentItemSelectionRequest'])) {
$tool->enabledcapability = $typeconfig['enabledcapability_ContentItemSelectionRequest'];
}
$tool->parameter = '';
if (!empty($typeconfig['parameter_ContentItemSelectionRequest'])) {
$tool->parameter = $typeconfig['parameter_ContentItemSelectionRequest'];
}
// Set the tool URL.
if (!empty($typeconfig['toolurl_ContentItemSelectionRequest'])) {
$toolurl = new moodle_url($typeconfig['toolurl_ContentItemSelectionRequest']);
} else {
$toolurl = new moodle_url($typeconfig['toolurl']);
}
// Check if SSL is forced.
if (!empty($typeconfig['forcessl'])) {
// Make sure the tool URL is set to https.
if (strtolower($toolurl->get_scheme()) === 'http') {
$toolurl->set_scheme('https');
}
// Make sure the return URL is set to https.
if (strtolower($returnurl->get_scheme()) === 'http') {
$returnurl->set_scheme('https');
}
}
$toolurlout = $toolurl->out(false);
// Get base request parameters.
$instance = new stdClass();
$instance->course = $course->id;
$requestparams = lti_build_request($instance, $typeconfig, $course, $id, $islti2);
// Get LTI2-specific request parameters and merge to the request parameters if applicable.
if ($islti2) {
$lti2params = lti_build_request_lti2($tool, $requestparams);
$requestparams = array_merge($requestparams, $lti2params);
}
// Get standard request parameters and merge to the request parameters.
$orgid = !empty($typeconfig['organizationid']) ? $typeconfig['organizationid'] : '';
$standardparams = lti_build_standard_request(null, $orgid, $islti2, 'ContentItemSelectionRequest');
$requestparams = array_merge($requestparams, $standardparams);
// Get custom request parameters and merge to the request parameters.
//.........这里部分代码省略.........
示例2: test_moodle_url_set_bad_scheme
/**
* Test set bad scheme on Moodle URL objects.
*/
public function test_moodle_url_set_bad_scheme()
{
$url = new moodle_url('http://moodle.org/foo/bar');
$this->setExpectedException('coding_exception');
$url->set_scheme('not a valid $ scheme');
}
示例3: test_moodle_url_set_bad_scheme
/**
* Test set bad scheme on Moodle URL objects.
*
* @expectedException coding_exception
*/
public function test_moodle_url_set_bad_scheme()
{
$url = new moodle_url('http://moodle.org/foo/bar');
$url->set_scheme('not a valid $ scheme');
}