예제 #1
0
$domain = $_SESSION['_basic_lti_context']['custom_domain_url'];
$api = new CanvasAPI($access_key, $domain);
if (get_val($_GET, 'endpoint')) {
    $endpoint = str_replace('https://' . $domain, '', $_GET['endpoint']);
    //echo $endpoint;
    $queueStatus = $api->get_canvas($endpoint, false);
    echo '<p>status: ' . $queueStatus['workflow_state'];
    echo '</p><p>percent completed: ' . $queueStatus['completion'] . '</p>';
    if ($queueStatus['completion'] * 1 < 100) {
        echo '<a href="#" onclick="$(\'#success\').load(\'putgrades-beta.php?endpoint=' . $endpoint . '\')">Check again</a>';
    }
    exit;
}
$endpoint = '/api/v1/courses/' . $_SESSION['_basic_lti_context']['custom_canvas_course_id'] . '/assignments/' . $_POST['aid'] . '/submissions/update_grades?as_user_id=' . $_SESSION['_basic_lti_context']['custom_canvas_user_id'];
$args = array();
foreach ($_POST['grades'] as $grade) {
    //grade
    //echo "Student,ID,SIS User ID,SIS Login ID,Section,peer" . $projectid . "\r\n";
    //echo ",,,,," . $_GET['maxscore'] . "\r\n";
    $args['grade_data'][$grade[0]]['posted_grade'] = $grade[1];
    $args['grade_data'][$grade[0]]['text_comment'] = $grade[2];
    //$args .= '&grade_data['.$grade[0].'][text_comment]='.urlencode($grade[2]);
}
$result = $api->post_canvas($endpoint, "POST", $args);
//put_canvas("/api/v1/courses/301991/assignments/4612095/submissions/1273346?submission[posted_grade]=8&comment[text_comment]=a: 5 b: 3 :");
if ($result) {
    echo 'Your grades have been queued for posting. If you have a large student roster, it may take a few minutes to complete. You can safely close your browser without interrupting the update.  <a href="#" onclick="$(\'#success\').load(\'putgrades-beta.php?endpoint=' . $result['url'] . '\')">Check status</a>';
} else {
    //close if result
    echo mysqli_error($link);
}
예제 #2
0
파일: logout.php 프로젝트: udcanvas/canvas
<html><head></head><body><blockquote>
<?php 
if ($_SESSION['token']['temp']) {
    include "canvasapi.php";
    $api = new CanvasAPI($_SESSION['token']['temp'], $_COOKIE['domain']);
    $response = $api->post_canvas("/login/oauth2/token", "DELETE");
    //print_r($response);
    echo 'Your Canvas access token has been deleted. ';
}
//no, this won't work. Have to get _parent to reload with javascript
echo 'You have logged out. Please refresh your browser no reload';
session_start();
session_unset();
session_destroy();
session_write_close();
setcookie(session_name(), '', 0, '/');
session_regenerate_id(true);
?>
</blockquote></body></html>