Exemplo n.º 1
0
/**
 * Returns general link or file embedding html.
 *
 * @param string $fullurl
 * @param string $clicktoopen
 * @param string $mimetype
 * @return string html
 */
function equella_select_dialog($args)
{
    global $CFG, $PAGE;
    $equrl = equella_build_integration_url($args);
    if ($CFG->equella_enable_lti) {
        $args->action = 'select';
        $launchurl = new moodle_url('/mod/equella/ltilaunch.php', (array) $args);
        $objecturl = $launchurl->out(false);
    } else {
        if ($CFG->equella_action == EQUELLA_ACTION_STRUCTURED) {
            $redirecturl = new moodle_url('/mod/equella/redirectselection.php', array('equellaurl' => $equrl->out(false), 'courseid' => $args->course, 'sectionid' => $args->section));
            $objecturl = $redirecturl->out(false);
        } else {
            $objecturl = $equrl->out(false);
        }
    }
    $equellatitle = get_string('chooseeqeullaresources', 'mod_equella');
    $equellacontainer = 'equellacontainer';
    $cancel = get_string('cancel');
    $cancelurl = new moodle_url('/course/view.php', array('id' => $args->course));
    $link = html_writer::link($cancelurl, $cancel);
    $html = <<<EOF
<div>
    <button id="openequellachooser">{$equellatitle}</button>
    {$link}
</div>
EOF;
    $PAGE->requires->js_init_call('M.mod_equella.display_equella', array($equellacontainer, 880, 600, $equellatitle, $objecturl), true);
    return $html;
}
Exemplo n.º 2
0
    }
    // Update 'viewed' state if required by completion system
    $completion = new completion_info($course);
    $completion->set_module_viewed($cm);
    echo '<html><body>';
    echo equella_lti_launch_form($equella->url, $params);
    echo '</body></html>';
} elseif ($action == 'select') {
    $args = new stdClass();
    $args->course = required_param('course', PARAM_INT);
    $args->section = required_param('section', PARAM_INT);
    $course = $DB->get_record('course', array('id' => $args->course), '*', MUST_EXIST);
    $context = context_course::instance($args->course);
    $PAGE->set_context($context);
    require_capability('moodle/course:manageactivities', $context);
    $url = equella_build_integration_url($args, false);
    $extraparams = $url->params();
    if ($CFG->equella_action == EQUELLA_ACTION_STRUCTURED) {
        $contents = equella_get_course_contents($course->id, $args->section);
        $json = json_encode($contents);
        $extraparams['structure'] = $json;
    }
    $equella = new stdClass();
    $equella->id = 0;
    $equella->course = $args->course;
    $equella->url = $CFG->equella_url;
    $params = equella_lti_params($equella, $course, $extraparams);
    echo '<html><body>';
    echo equella_lti_launch_form($equella->url, $params);
    echo '</body></html>';
}