Пример #1
0
 /**
  * Prepare file reference information
  *
  * @param string $source
  * @return string file referece
  */
 public function get_file_reference($source)
 {
     global $USER, $CFG;
     debugging("---> Calling 'get_file_reference: {$source}' <---");
     $reference = new stdClass();
     $reference->path = "/omero-image-repository/{$source}";
     $reference->userid = $USER->id;
     $reference->username = fullname($USER);
     //        $reference->access_key = get_user_preferences($this->setting . '_access_key', '');
     //        $reference->access_secret = get_user_preferences($this->setting . '_access_secret', '');
     // by API we don't know if we need this reference to just download a file from omero
     // into moodle filepool or create a reference. Since we need to create a shared link
     // only in case of reference we analyze the script parameter
     $usefilereference = optional_param('usefilereference', false, PARAM_BOOL);
     if ($usefilereference) {
         debugging("Computing reference: {$usefilereference}");
         $this->omero->set_access_token($reference->access_key, $reference->access_secret);
         $url = $this->omero->get_file_share_link($source, $CFG->repositorygetfiletimeout);
         if ($url) {
             unset($reference->access_key);
             unset($reference->access_secret);
             $reference->url = PathUtils::build_image_detail_url($source);
             debugging("Computed reference: " . $reference->url);
         }
     }
     return serialize($reference);
 }
Пример #2
0
// set the Moodle root directory
$MOODLEROOT = dirname(dirname(dirname(dirname(dirname(__FILE__)))));
// load dependencies
require_once "{$MOODLEROOT}/config.php";
require_once "{$MOODLEROOT}/repository/omero/lib.php";
require_once "{$MOODLEROOT}/repository/omero/locallib.php";
// check whether Moodle Env exists
defined('MOODLE_INTERNAL') || die;
// check whether the user is logged
if (!isloggedin()) {
    $moodle_url = "http://" . $_SERVER['SERVER_NAME'] . ":" . $_SERVER['SERVER_PORT'] . "/moodle";
    header('Location: ' . $moodle_url);
}
// omero server
$omero_server = new omero();
// get method
$method = required_param("m", PARAM_TEXT);
// get the Image ID
$image_id = required_param("id", PARAM_INT);
// set the response header
header('Content-Type: application/json');
if ($method == "img_details") {
    echo $omero_server->process_request(PathUtils::build_image_detail_url($image_id), false);
} else {
    if ($method == "dzi") {
        echo $omero_server->process_request(PathUtils::build_image_dzi_url($image_id), false);
    } else {
        echo json_encode(array("error" => "Not supported method!!!"));
    }
}
exit;