本文整理汇总了PHP中resource_get_final_display_type函数的典型用法代码示例。如果您正苦于以下问题:PHP resource_get_final_display_type函数的具体用法?PHP resource_get_final_display_type怎么用?PHP resource_get_final_display_type使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了resource_get_final_display_type函数的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: resource_print_workaround
/**
* Print resource info and workaround link when JS not available.
* @param object $resource
* @param object $cm
* @param object $course
* @param stored_file $file main file
* @return does not return
*/
function resource_print_workaround($resource, $cm, $course, $file)
{
global $CFG, $OUTPUT;
resource_print_header($resource, $cm, $course);
resource_print_heading($resource, $cm, $course, true);
resource_print_intro($resource, $cm, $course, true);
$resource->mainfile = $file->get_filename();
echo '<div class="resourceworkaround">';
switch (resource_get_final_display_type($resource)) {
case RESOURCELIB_DISPLAY_POPUP:
$path = '/' . $file->get_contextid() . '/mod_resource/content/' . $resource->revision . $file->get_filepath() . $file->get_filename();
$fullurl = file_encode_url($CFG->wwwroot . '/pluginfile.php', $path, false);
$options = empty($resource->displayoptions) ? array() : unserialize($resource->displayoptions);
$width = empty($options['popupwidth']) ? 620 : $options['popupwidth'];
$height = empty($options['popupheight']) ? 450 : $options['popupheight'];
$wh = "width={$width},height={$height},toolbar=no,location=no,menubar=no,copyhistory=no,status=no,directories=no,scrollbars=yes,resizable=yes";
$extra = "onclick=\"window.open('{$fullurl}', '', '{$wh}'); return false;\"";
echo resource_get_clicktoopen($file, $resource->revision, $extra);
break;
case RESOURCELIB_DISPLAY_NEW:
$extra = 'onclick="this.target=\'_blank\'"';
echo resource_get_clicktoopen($file, $resource->revision, $extra);
break;
case RESOURCELIB_DISPLAY_DOWNLOAD:
echo resource_get_clicktodownload($file, $resource->revision);
break;
case RESOURCELIB_DISPLAY_OPEN:
default:
echo resource_get_clicktoopen($file, $resource->revision);
break;
}
echo '</div>';
echo $OUTPUT->footer();
die;
}
示例2: resource_get_coursemodule_info
/**
* Given a course_module object, this function returns any
* "extra" information that may be needed when printing
* this activity in a course listing.
*
* See {@link get_array_of_activities()} in course/lib.php
*
* @param object $coursemodule
* @return object info
*/
function resource_get_coursemodule_info($coursemodule) {
global $CFG, $DB;
require_once("$CFG->libdir/filelib.php");
require_once("$CFG->dirroot/mod/resource/locallib.php");
require_once($CFG->libdir.'/completionlib.php');
$context = get_context_instance(CONTEXT_MODULE, $coursemodule->id);
if (!$resource = $DB->get_record('resource', array('id'=>$coursemodule->instance), 'id, name, display, displayoptions, tobemigrated, revision')) {
return NULL;
}
$info = new stdClass();
$info->name = $resource->name;
if ($resource->tobemigrated) {
$info->icon ='i/cross_red_big';
return $info;
}
$fs = get_file_storage();
$files = $fs->get_area_files($context->id, 'mod_resource', 'content', 0, 'sortorder DESC, id ASC', false); // TODO: this is not very efficient!!
if (count($files) >= 1) {
$mainfile = array_pop($files);
$info->icon = file_extension_icon($mainfile->get_filename());
$resource->mainfile = $mainfile->get_filename();
}
$display = resource_get_final_display_type($resource);
if ($display == RESOURCELIB_DISPLAY_POPUP) {
$fullurl = "$CFG->wwwroot/mod/resource/view.php?id=$coursemodule->id&redirect=1";
$options = empty($resource->displayoptions) ? array() : unserialize($resource->displayoptions);
$width = empty($options['popupwidth']) ? 620 : $options['popupwidth'];
$height = empty($options['popupheight']) ? 450 : $options['popupheight'];
$wh = "width=$width,height=$height,toolbar=no,location=no,menubar=no,copyhistory=no,status=no,directories=no,scrollbars=yes,resizable=yes";
$info->extra = "onclick=\"window.open('$fullurl', '', '$wh'); return false;\"";
} else if ($display == RESOURCELIB_DISPLAY_NEW) {
$fullurl = "$CFG->wwwroot/mod/resource/view.php?id=$coursemodule->id&redirect=1";
$info->extra = "onclick=\"window.open('$fullurl'); return false;\"";
} else if ($display == RESOURCELIB_DISPLAY_OPEN) {
$fullurl = "$CFG->wwwroot/mod/resource/view.php?id=$coursemodule->id&redirect=1";
$info->extra = "onclick=\"window.location.href ='$fullurl';return false;\"";
} else if ($display == RESOURCELIB_DISPLAY_DOWNLOAD) {
if (empty($mainfile)) {
return NULL;
}
// do not open any window because it would be left there after download
$path = '/'.$context->id.'/mod_resource/content/'.$resource->revision.$mainfile->get_filepath().$mainfile->get_filename();
$fullurl = addslashes_js(file_encode_url($CFG->wwwroot.'/pluginfile.php', $path, true));
// When completion information is enabled for download files, make
// the JavaScript version go to the view page with redirect set,
// instead of directly to the file, otherwise we can't make it tick
// the box for them
if (!$course = $DB->get_record('course', array('id'=>$coursemodule->course), 'id, enablecompletion')) {
return NULL;
}
$completion = new completion_info($course);
if ($completion->is_enabled($coursemodule) == COMPLETION_TRACKING_AUTOMATIC) {
$fullurl = "$CFG->wwwroot/mod/resource/view.php?id=$coursemodule->id&redirect=1";
}
$info->extra = "onclick=\"window.open('$fullurl'); return false;\"";
}
return $info;
}
示例3: get_file_storage
die;
}
$fs = get_file_storage();
$files = $fs->get_area_files($context->id, 'mod_resource', 'content', 0, 'sortorder DESC, id ASC', false);
// TODO: this is not very efficient!!
if (count($files) < 1) {
resource_print_filenotfound($resource, $cm, $course);
die;
} else {
$file = reset($files);
unset($files);
}
if ($redirect) {
// coming from course page or url index page
// this redirect trick solves caching problems when tracking views ;-)
$path = '/' . $context->id . '/mod_resource/content/' . $resource->revision . $file->get_filepath() . $file->get_filename();
$fullurl = file_encode_url($CFG->wwwroot . '/pluginfile.php', $path, false);
redirect($fullurl);
}
$resource->mainfile = $file->get_filename();
switch (resource_get_final_display_type($resource)) {
case RESOURCELIB_DISPLAY_EMBED:
resource_display_embed($resource, $cm, $course, $file);
break;
case RESOURCELIB_DISPLAY_FRAME:
resource_display_frame($resource, $cm, $course, $file);
break;
default:
resource_print_workaround($resource, $cm, $course, $file);
break;
}
示例4: resource_print_tobemigrated
if ($resource->tobemigrated) {
resource_print_tobemigrated($resource, $cm, $course);
die;
}
$fs = get_file_storage();
$files = $fs->get_area_files($context->id, 'mod_resource', 'content', 0, 'sortorder DESC, id ASC', false);
// TODO: this is not very efficient!!
if (count($files) < 1) {
resource_print_filenotfound($resource, $cm, $course);
die;
} else {
$file = reset($files);
unset($files);
}
$resource->mainfile = $file->get_filename();
$displaytype = resource_get_final_display_type($resource);
if ($displaytype == RESOURCELIB_DISPLAY_OPEN || $displaytype == RESOURCELIB_DISPLAY_DOWNLOAD) {
// For 'open' and 'download' links, we always redirect to the content - except
// if the user just chose 'save and display' from the form then that would be
// confusing
if (!isset($_SERVER['HTTP_REFERER']) || strpos($_SERVER['HTTP_REFERER'], 'modedit.php') === false) {
$redirect = true;
}
}
if ($redirect) {
// coming from course page or url index page
// this redirect trick solves caching problems when tracking views ;-)
$path = '/' . $context->id . '/mod_resource/content/' . $resource->revision . $file->get_filepath() . $file->get_filename();
$fullurl = moodle_url::make_file_url('/pluginfile.php', $path, $displaytype == RESOURCELIB_DISPLAY_DOWNLOAD);
redirect($fullurl);
}
示例5: resource_get_coursemodule_info
/**
* Given a course_module object, this function returns any
* "extra" information that may be needed when printing
* this activity in a course listing.
*
* See {@link get_array_of_activities()} in course/lib.php
*
* @param stdClass $coursemodule
* @return cached_cm_info info
*/
function resource_get_coursemodule_info($coursemodule) {
global $CFG, $DB;
require_once("$CFG->libdir/filelib.php");
require_once("$CFG->dirroot/mod/resource/locallib.php");
require_once($CFG->libdir.'/completionlib.php');
$context = context_module::instance($coursemodule->id);
if (!$resource = $DB->get_record('resource', array('id'=>$coursemodule->instance),
'id, name, display, displayoptions, tobemigrated, revision, intro, introformat')) {
return NULL;
}
$info = new cached_cm_info();
$info->name = $resource->name;
if ($coursemodule->showdescription) {
// Convert intro to html. Do not filter cached version, filters run at display time.
$info->content = format_module_intro('resource', $resource, $coursemodule->id, false);
}
if ($resource->tobemigrated) {
$info->icon ='i/invalid';
return $info;
}
$fs = get_file_storage();
$files = $fs->get_area_files($context->id, 'mod_resource', 'content', 0, 'sortorder DESC, id ASC', false); // TODO: this is not very efficient!!
if (count($files) >= 1) {
$mainfile = reset($files);
$info->icon = file_file_icon($mainfile, 24);
$resource->mainfile = $mainfile->get_filename();
}
$display = resource_get_final_display_type($resource);
if ($display == RESOURCELIB_DISPLAY_POPUP) {
$fullurl = "$CFG->wwwroot/mod/resource/view.php?id=$coursemodule->id&redirect=1";
$options = empty($resource->displayoptions) ? array() : unserialize($resource->displayoptions);
$width = empty($options['popupwidth']) ? 620 : $options['popupwidth'];
$height = empty($options['popupheight']) ? 450 : $options['popupheight'];
$wh = "width=$width,height=$height,toolbar=no,location=no,menubar=no,copyhistory=no,status=no,directories=no,scrollbars=yes,resizable=yes";
$info->onclick = "window.open('$fullurl', '', '$wh'); return false;";
} else if ($display == RESOURCELIB_DISPLAY_NEW) {
$fullurl = "$CFG->wwwroot/mod/resource/view.php?id=$coursemodule->id&redirect=1";
$info->onclick = "window.open('$fullurl'); return false;";
}
// If any optional extra details are turned on, store in custom data
$info->customdata = $resource->displayoptions;
return $info;
}
示例6: resource_get_coursemodule_info
/**
* Given a course_module object, this function returns any
* "extra" information that may be needed when printing
* this activity in a course listing.
*
* See {@link get_array_of_activities()} in course/lib.php
*
* @param object $coursemodule
* @return object info
*/
function resource_get_coursemodule_info($coursemodule)
{
global $CFG, $DB;
require_once "{$CFG->libdir}/filelib.php";
require_once "{$CFG->dirroot}/mod/resource/locallib.php";
if (!($resource = $DB->get_record('resource', array('id' => $coursemodule->instance), 'id, name, display, displayoptions, tobemigrated, mainfile, revision'))) {
return NULL;
}
$info = new object();
$info->name = $resource->name;
if ($resource->tobemigrated) {
$info->icon = 'i/cross_red_big';
return $info;
}
$info->icon = str_replace(array('.gif', '.png'), '', file_extension_icon($resource->mainfile));
$display = resource_get_final_display_type($resource);
if ($display == RESOURCELIB_DISPLAY_POPUP) {
$fullurl = "{$CFG->wwwroot}/mod/resource/view.php?id={$coursemodule->id}&redirect=1";
$options = empty($resource->displayoptions) ? array() : unserialize($resource->displayoptions);
$width = empty($options['popupwidth']) ? 620 : $options['popupwidth'];
$height = empty($options['popupheight']) ? 450 : $options['popupheight'];
$wh = "width={$width},height={$height},toolbar=no,location=no,menubar=no,copyhistory=no,status=no,directories=no,scrollbars=yes,resizable=yes";
$info->extra = urlencode("onclick=\"window.open('{$fullurl}', '', '{$wh}'); return false;\"");
} else {
if ($display == RESOURCELIB_DISPLAY_NEW) {
$fullurl = "{$CFG->wwwroot}/mod/resource/view.php?id={$coursemodule->id}&redirect=1";
$info->extra = urlencode("onclick=\"window.open('{$fullurl}'); return false;\"");
} else {
if ($display == RESOURCELIB_DISPLAY_OPEN) {
$fullurl = "{$CFG->wwwroot}/mod/resource/view.php?id={$coursemodule->id}&redirect=1";
$info->extra = urlencode("onclick=\"window.location.href ='{$fullurl}';return false;\"");
} else {
if ($display == RESOURCELIB_DISPLAY_DOWNLOAD) {
// do not open any window because it would be left there after download
$context = get_context_instance(CONTEXT_MODULE, $coursemodule->id);
$path = '/' . $context->id . '/resource_content/' . $resource->revision . $resource->mainfile;
$fullurl = addslashes_js(file_encode_url($CFG->wwwroot . '/pluginfile.php', $path, true));
$info->extra = urlencode("onclick=\"window.open('{$fullurl}'); return false;\"");
}
}
}
}
return $info;
}
示例7: resource_get_coursemodule_info
/**
* Given a course_module object, this function returns any
* "extra" information that may be needed when printing
* this activity in a course listing.
*
* See {@link get_array_of_activities()} in course/lib.php
*
* @param stdClass $coursemodule
* @return cached_cm_info info
*/
function resource_get_coursemodule_info($coursemodule)
{
global $CFG, $DB;
require_once "{$CFG->libdir}/filelib.php";
require_once "{$CFG->dirroot}/mod/resource/locallib.php";
require_once $CFG->libdir . '/completionlib.php';
$context = context_module::instance($coursemodule->id);
if (!($resource = $DB->get_record('resource', array('id' => $coursemodule->instance), 'id, name, display, displayoptions, tobemigrated, revision, intro, introformat'))) {
return NULL;
}
$info = new cached_cm_info();
$info->name = $resource->name;
if ($coursemodule->showdescription) {
// Convert intro to html. Do not filter cached version, filters run at display time.
$info->content = format_module_intro('resource', $resource, $coursemodule->id, false);
}
if ($resource->tobemigrated) {
$info->icon = 'i/invalid';
return $info;
}
$fs = get_file_storage();
$files = $fs->get_area_files($context->id, 'mod_resource', 'content', 0, 'sortorder DESC, id ASC', false);
// TODO: this is not very efficient!!
if (count($files) >= 1) {
$mainfile = reset($files);
$info->icon = file_file_icon($mainfile, 24);
$resource->mainfile = $mainfile->get_filename();
}
$display = resource_get_final_display_type($resource);
if ($display == RESOURCELIB_DISPLAY_POPUP) {
$fullurl = "{$CFG->wwwroot}/mod/resource/view.php?id={$coursemodule->id}&redirect=1";
$options = empty($resource->displayoptions) ? array() : unserialize($resource->displayoptions);
$width = empty($options['popupwidth']) ? 620 : $options['popupwidth'];
$height = empty($options['popupheight']) ? 450 : $options['popupheight'];
$wh = "width={$width},height={$height},toolbar=no,location=no,menubar=no,copyhistory=no,status=no,directories=no,scrollbars=yes,resizable=yes";
$info->onclick = "window.open('{$fullurl}', '', '{$wh}'); return false;";
} else {
if ($display == RESOURCELIB_DISPLAY_NEW) {
$fullurl = "{$CFG->wwwroot}/mod/resource/view.php?id={$coursemodule->id}&redirect=1";
$info->onclick = "window.open('{$fullurl}'); return false;";
}
}
// If any optional extra details are turned on, store in custom data,
// add some file details as well to be used later by resource_get_optional_details() without retriving.
// Do not store filedetails if this is a reference - they will still need to be retrieved every time.
if (($filedetails = resource_get_file_details($resource, $coursemodule)) && empty($filedetails['isref'])) {
$displayoptions = @unserialize($resource->displayoptions);
$displayoptions['filedetails'] = $filedetails;
$info->customdata = serialize($displayoptions);
} else {
$info->customdata = $resource->displayoptions;
}
return $info;
}