version 1.69, 2019/05/02 02:12:31
|
version 1.71, 2020/01/14 16:48:06
|
Line 167 sub wrapper {
|
Line 167 sub wrapper {
|
$output .= <<"ENDLINK"; |
$output .= <<"ENDLINK"; |
<script type="text/javascript"> |
<script type="text/javascript"> |
// <![CDATA[ |
// <![CDATA[ |
var windowObjectReference = null; |
var windowObjectReference = null; |
var PreviousUrl; |
var PreviousUrl; |
|
|
function openSinglePopup(strUrl) { |
function openSinglePopup(strUrl) { |
if (windowObjectReference == null || windowObjectReference.closed) { |
if (windowObjectReference == null || windowObjectReference.closed) { |
windowObjectReference = window.open(strUrl, "LCExternalToolPopUp", |
windowObjectReference = window.open(strUrl, "LCExternalToolPopUp", |
Line 294 sub handler {
|
Line 294 sub handler {
|
s|^/adm/wrapper||; |
s|^/adm/wrapper||; |
$is_ext = $_ =~ s|^/ext/|http://|; |
$is_ext = $_ =~ s|^/ext/|http://|; |
s|http://https://|https://|; |
s|http://https://|https://|; |
s|:|:|g; |
s|:|:|g; |
} |
} |
|
|
if ($url =~ /\.pdf$/i) { |
if ($url =~ /\.pdf$/i) { |
Line 318 sub handler {
|
Line 318 sub handler {
|
$width = $toolhash{'width'}; |
$width = $toolhash{'width'}; |
$height = $toolhash{'height'}; |
$height = $toolhash{'height'}; |
} elsif ($toolhash{'target'} eq 'tab') { |
} elsif ($toolhash{'target'} eq 'tab') { |
$exttool = 'tab'; |
$exttool = 'tab'; |
} |
} |
if (($exttool eq 'window') || ($exttool eq 'tab')) { |
if (($exttool eq 'window') || ($exttool eq 'tab')) { |
$linktext = $toolhash{'linktext'}; |
$linktext = $toolhash{'linktext'}; |
$explanation = $toolhash{'explanation'}; |
$explanation = $toolhash{'explanation'}; |
} elsif (($exttoolremote =~ /^http:/) && ($ENV{'SERVER_PORT'} == 443)) { |
} elsif (($exttoolremote =~ /^http:/) && ($ENV{'SERVER_PORT'} == 443)) { |
$exttool = 'tab'; |
$exttool = 'tab'; |
Line 427 described at http://www.lon-capa.org.
|
Line 427 described at http://www.lon-capa.org.
|
|
|
=over |
=over |
|
|
=item wrapper($r,$url,$brcrum,$absolute,$is_ext,$is_pdf,$linktext,$explanation,$title,$width,$height) |
=item wrapper($r,$url,$brcrum,$absolute,$is_ext,$is_pdf,$exttool,$linktext,$explanation,$title,$width,$height) |
|
|
=over |
=over |
|
|
Line 437 request object
|
Line 437 request object
|
|
|
=item $url |
=item $url |
|
|
url to display by including in an iframe within a |
url to display either by including in an iframe within a |
LON-CAPA page which has a standard LON-CAPA inline menu. |
LON-CAPA page which has a standard LON-CAPA inline menu, |
|
or in some cases launched in a separate tab or window, |
|
launched via a link in a LON-CAPA page with standard inline |
|
menu. |
|
|
=item $brcrum |
=item $brcrum |
|
|
Line 473 true if URL is for an external resource.
|
Line 476 true if URL is for an external resource.
|
|
|
true if URL is for a PDF (based on file extension). |
true if URL is for a PDF (based on file extension). |
|
|
|
=item $exttool |
|
|
|
If URL is for an External Tool, will contain the target type: iframe, window or tab. |
|
|
|
=item $linktext |
|
|
|
optional. If URL is for an External Tool, and target type is window or tab, |
|
then the link text may be an option set in the course for each tool instance, |
|
or may be a default defined in the domain for all instances of the tool. |
|
|
|
=item $explanation |
|
|
|
optional. If URL is for an External Tool, and target type is window or tab, |
|
then the explanation is an option set in the course for each tool instance, |
|
or may be a default defined in the domain for all instances of the tool. |
|
|
=item $title |
=item $title |
|
|
optional. If wrapped item is a PDF, and $env{'browser.mobile'} |
optional. If wrapped item is a PDF, and $env{'browser.mobile'} |
Line 481 above the link, but if not provided as a
|
Line 500 above the link, but if not provided as a
|
will be used, otherwise, the filename will be displayed (unless |
will be used, otherwise, the filename will be displayed (unless |
hidden URL set for the resource). |
hidden URL set for the resource). |
|
|
|
=item $width |
|
|
|
optional. If URL is for an External Tool, and target type is window, |
|
then a default width may have been defined in the domain for all instances of |
|
the tool. If so, that width will be used for the window opened (via a link) |
|
to launch the external tool. |
|
|
|
=item $height |
|
|
|
optional. If URL is for an External Tool, and target type is window, |
|
then a default height may have been defined in the domain for all instances of |
|
the tool. If so, that height will be used for the window opened (via a link) |
|
to launch the external tool. |
|
|
=back |
=back |
|
|
Returns markup for the entire page. |
Returns markup for the entire page. |
|
|
=item handler() |
=item handler() |
|
|
|
Content handler for requests for: /adm/wrapper/... |
|
used for content to be displayed in an iframe, or launched in a separate tab |
|
or window via a link. The target URL is extracted from the requested URL, by |
|
removing the /adm/wrapper prefix. |
|
|
|
The target URL will typically be a PDF served from the current server, an |
|
external resource URL served from a different server, or an external tool |
|
(from an LTI Provider) launched from LON-CAPA (as LTI Consumer) and launched |
|
via a link. |
|
|
|
If the request included forceedit in the query string, and the requester has |
|
rights to modify course content, then the editor will be didplayed to allow |
|
changes to be made to the resource (e.g., change the URL of the external resource, |
|
or change the setting for the external tool instance. |
|
|
|
If not in edit mode, then the wrapper() subroutine will be called to generate the |
|
standard LON-CAPA inline menu, and then either a link to launch a separate tab or |
|
window, or an iframe to display the content inline. |
|
|
=back |
=back |
|
|
=cut |
=cut |