version 1.1377, 2022/02/16 16:28:49
|
version 1.1384, 2022/06/11 14:51:49
|
Line 61 use POSIX qw(strftime mktime);
|
Line 61 use POSIX qw(strftime mktime);
|
use Apache::lonmenu(); |
use Apache::lonmenu(); |
use Apache::lonenc(); |
use Apache::lonenc(); |
use Apache::lonlocal; |
use Apache::lonlocal; |
use Apache::lonnet(); |
use Apache::lonnavmaps(); |
use HTML::Entities; |
use HTML::Entities; |
use Apache::lonhtmlcommon(); |
use Apache::lonhtmlcommon(); |
use Apache::loncoursedata(); |
use Apache::loncoursedata(); |
Line 1257 END
|
Line 1257 END
|
|
|
=pod |
=pod |
|
|
=item * &help_open_topic($topic,$text,$stayOnPage,$width,$height,$imgid) |
=item * &help_open_topic($topic,$text,$stayOnPage,$width,$height,$imgid,$links_target) |
|
|
Returns a string corresponding to an HTML link to the given help |
Returns a string corresponding to an HTML link to the given help |
$topic, where $topic corresponds to the name of a .tex file in |
$topic, where $topic corresponds to the name of a .tex file in |
Line 1281 $imgid is the id of the img tag used for
|
Line 1281 $imgid is the id of the img tag used for
|
used in a javascript call to switch the image src. See |
used in a javascript call to switch the image src. See |
lonhtmlcommon::htmlareaselectactive() for an example. |
lonhtmlcommon::htmlareaselectactive() for an example. |
|
|
|
$links_target will optionally be set to a target (_top, _parent or _self). |
|
|
=cut |
=cut |
|
|
sub help_open_topic { |
sub help_open_topic { |
my ($topic, $text, $stayOnPage, $width, $height, $imgid) = @_; |
my ($topic, $text, $stayOnPage, $width, $height, $imgid, $links_target) = @_; |
$text = "" if (not defined $text); |
$text = "" if (not defined $text); |
$stayOnPage = 0 if (not defined $stayOnPage); |
$stayOnPage = 0 if (not defined $stayOnPage); |
$width = 500 if (not defined $width); |
$width = 500 if (not defined $width); |
Line 1307 sub help_open_topic {
|
Line 1309 sub help_open_topic {
|
|
|
# Add the text |
# Add the text |
my $target = ' target="_top"'; |
my $target = ' target="_top"'; |
if (($env{'request.lti.login'}) && ($env{'request.lti.target'} eq 'iframe')) { |
if ($links_target) { |
|
$target = ' target="'.$links_target.'"'; |
|
} elsif ((($env{'request.lti.login'}) && ($env{'request.lti.target'} eq 'iframe')) || |
|
(($env{'request.deeplink.login'}) && ($env{'request.deeplink.target'} eq '_self'))) { |
$target = ''; |
$target = ''; |
} |
} |
if ($text ne "") { |
if ($text ne "") { |
$template.='<span class="LC_help_open_topic">' |
$template.='<span class="LC_help_open_topic">' |
.'<a'.$target.' href="'.$link.'">' |
.'<a'.$target.' href="'.$link.'">' |
.$text.'</a>'; |
.$text.'</a>'; |
Line 1395 ENDOUTPUT
|
Line 1400 ENDOUTPUT
|
|
|
# now just updates the help link and generates a blue icon |
# now just updates the help link and generates a blue icon |
sub help_open_menu { |
sub help_open_menu { |
my ($topic,$component_help,$faq,$bug,$stayOnPage,$width,$height,$text) |
my ($topic,$component_help,$faq,$bug,$stayOnPage,$width,$height,$text,$links_target) |
= @_; |
= @_; |
$stayOnPage = 1; |
$stayOnPage = 1; |
my $output; |
my $output; |
if ($component_help) { |
if ($component_help) { |
if (!$text) { |
if (!$text) { |
$output=&help_open_topic($component_help,undef,$stayOnPage, |
$output=&help_open_topic($component_help,undef,$stayOnPage, |
$width,$height); |
$width,$height,'',$links_target); |
} else { |
} else { |
my $help_text; |
my $help_text; |
$help_text=&unescape($topic); |
$help_text=&unescape($topic); |
$output='<table><tr><td>'. |
$output='<table><tr><td>'. |
&help_open_topic($component_help,$help_text,$stayOnPage, |
&help_open_topic($component_help,$help_text,$stayOnPage, |
$width,$height).'</td></tr></table>'; |
$width,$height,'',$links_target).'</td></tr></table>'; |
} |
} |
} |
} |
my $banner_link = &update_help_link($topic,$component_help,$faq,$bug,$stayOnPage); |
my $banner_link = &update_help_link($topic,$component_help,$faq,$bug,$stayOnPage); |
Line 1516 sub help_open_bug {
|
Line 1521 sub help_open_bug {
|
$link = $url; |
$link = $url; |
} |
} |
|
|
my $target = ' target="_top"'; |
my $target = '_top'; |
if (($env{'request.lti.login'}) && ($env{'request.lti.target'} eq 'iframe')) { |
if ((($env{'request.lti.login'}) && ($env{'request.lti.target'} eq 'iframe')) || |
$target = ''; |
(($env{'request.deeplink.login'}) && ($env{'request.deeplink.target'} eq '_self'))) { |
|
$target = '_blank'; |
} |
} |
|
|
# Add the text |
# Add the text |
if ($text ne "") |
if ($text ne "") |
{ |
{ |
$template .= |
$template .= |
"<table bgcolor='#AA3333' cellspacing='1' cellpadding='1' border='0'><tr>". |
"<table bgcolor='#AA3333' cellspacing='1' cellpadding='1' border='0'><tr>". |
"<td bgcolor='#FF5555'><a".$target." href=\"$link\"><span style=\"color:#FFFFFF;font-size:10pt;\">$text</span></a>"; |
"<td bgcolor='#FF5555'><a target=\"$target\" href=\"$link\"><span style=\"color:#FFFFFF;font-size:10pt;\">$text</span></a>"; |
} |
} |
|
|
# Add the graphic |
# Add the graphic |
my $title = &mt('Report a Bug'); |
my $title = &mt('Report a Bug'); |
my $bugicon=&lonhttpdurl("/adm/lonMisc/smallBug.gif"); |
my $bugicon=&lonhttpdurl("/adm/lonMisc/smallBug.gif"); |
$template .= <<"ENDTEMPLATE"; |
$template .= <<"ENDTEMPLATE"; |
<a$target href="$link" title="$title"><img src="$bugicon" border="0" alt="(Bug: $topic)" /></a> |
<a target="$target" href="$link" title="$title"><img src="$bugicon" border="0" alt="(Bug: $topic)" /></a> |
ENDTEMPLATE |
ENDTEMPLATE |
if ($text ne '') { $template.='</td></tr></table>' }; |
if ($text ne '') { $template.='</td></tr></table>' }; |
return $template; |
return $template; |
Line 6224 sub head_subbox {
|
Line 6231 sub head_subbox {
|
Input: (optional) filename from which breadcrumb trail is built. |
Input: (optional) filename from which breadcrumb trail is built. |
In most cases no input as needed, as $env{'request.filename'} |
In most cases no input as needed, as $env{'request.filename'} |
is appropriate for use in building the breadcrumb trail. |
is appropriate for use in building the breadcrumb trail. |
|
frameset flag |
|
If page header is being requested for use in a frameset, then |
|
the second (option) argument -- frameset will be true, and |
|
the target attribute set for links should be target="_parent". |
|
|
Returns: HTML div with CSTR path and recent box |
Returns: HTML div with CSTR path and recent box |
To be included on Authoring Space pages |
To be included on Authoring Space pages |
Line 6231 Returns: HTML div with CSTR path and rec
|
Line 6242 Returns: HTML div with CSTR path and rec
|
=cut |
=cut |
|
|
sub CSTR_pageheader { |
sub CSTR_pageheader { |
my ($trailfile) = @_; |
my ($trailfile,$frameset) = @_; |
if ($trailfile eq '') { |
if ($trailfile eq '') { |
$trailfile = $env{'request.filename'}; |
$trailfile = $env{'request.filename'}; |
} |
} |
Line 6264 sub CSTR_pageheader {
|
Line 6275 sub CSTR_pageheader {
|
$title = &mt('Authoring Space'); |
$title = &mt('Authoring Space'); |
} |
} |
|
|
my ($target,$crumbtarget) = (' target="_top"','_top'); #FIXME lonpubdir: target="_parent" |
my ($target,$crumbtarget) = (' target="_top"','_top'); |
if (($env{'request.lti.login'}) && ($env{'request.lti.target'} eq 'iframe')) { |
if ($frameset) { |
|
$target = ' target="_parent"'; |
|
$crumbtarget = '_parent'; |
|
} elsif (($env{'request.lti.login'}) && ($env{'request.lti.target'} eq 'iframe')) { |
$target = ''; |
$target = ''; |
$crumbtarget = ''; |
$crumbtarget = ''; |
|
} elsif (($env{'request.deeplink.login'}) && ($env{'request.deeplink.target'})) { |
|
$target = ' target="'.$env{'request.deeplink.target'}.'"'; |
|
$crumbtarget = $env{'request.deeplink.target'}; |
} |
} |
|
|
my $output = |
my $output = |
Line 6285 sub CSTR_pageheader {
|
Line 6302 sub CSTR_pageheader {
|
} |
} |
|
|
if ($crsauthor) { |
if ($crsauthor) { |
$output .= '</form>'.&Apache::lonmenu::constspaceform(); |
$output .= '</form>'.&Apache::lonmenu::constspaceform($frameset); |
} else { |
} else { |
$output .= |
$output .= |
'<br />' |
'<br />' |
#FIXME lonpubdir: &Apache::lonhtmlcommon::crumbs($uname.$thisdisfn.'/',$crumbtarget,'/priv','','+1',1)."</b></tt><br />" |
#FIXME lonpubdir: &Apache::lonhtmlcommon::crumbs($uname.$thisdisfn.'/',$crumbtarget,'/priv','','+1',1)."</b></tt><br />" |
.&Apache::lonhtmlcommon::select_recent('construct','recent','this.form.action=this.form.recent.value;this.form.submit()') |
.&Apache::lonhtmlcommon::select_recent('construct','recent','this.form.action=this.form.recent.value;this.form.submit()') |
.'</form>' |
.'</form>' |
.&Apache::lonmenu::constspaceform(); |
.&Apache::lonmenu::constspaceform($frameset); |
} |
} |
$output .= '</div>'; |
$output .= '</div>'; |
|
|
Line 6512 sub bodytag {
|
Line 6529 sub bodytag {
|
|
|
unless ($args->{'no_primary_menu'}) { |
unless ($args->{'no_primary_menu'}) { |
my ($left,$right) = Apache::lonmenu::primary_menu($crstype,$ltimenu,$menucoll,$menuref, |
my ($left,$right) = Apache::lonmenu::primary_menu($crstype,$ltimenu,$menucoll,$menuref, |
$args->{'links_disabled'}); |
$args->{'links_disabled'}, |
|
$args->{'links_target'}); |
|
|
if ($env{'request.noversionuri'} =~ m{^/res/adm/pages/}) { |
if ($env{'request.noversionuri'} =~ m{^/res/adm/pages/}) { |
if ($dc_info) { |
if ($dc_info) { |
Line 6545 sub bodytag {
|
Line 6563 sub bodytag {
|
$bodytag .= Apache::lonmenu::secondary_menu($httphost,$ltiscope,$ltimenu, |
$bodytag .= Apache::lonmenu::secondary_menu($httphost,$ltiscope,$ltimenu, |
$args->{'no_primary_menu'}, |
$args->{'no_primary_menu'}, |
$menucoll,$menuref, |
$menucoll,$menuref, |
$args->{'links_disabled'}); |
$args->{'links_disabled'}, |
|
$args->{'links_target'}); |
} |
} |
$bodytag .= Apache::lonmenu::serverform(); |
$bodytag .= Apache::lonmenu::serverform(); |
$bodytag .= Apache::lonhtmlcommon::scripttag('', 'end'); |
$bodytag .= Apache::lonhtmlcommon::scripttag('', 'end'); |
Line 8505 a#LC_content_toolbar_edittoplevel {
|
Line 8524 a#LC_content_toolbar_edittoplevel {
|
background-image:url(/res/adm/pages/edittoplevel.gif); |
background-image:url(/res/adm/pages/edittoplevel.gif); |
} |
} |
|
|
|
a#LC_content_toolbar_printout { |
|
background-image:url(/res/adm/pages/printout.gif); |
|
} |
|
|
ul#LC_toolbar li a:hover { |
ul#LC_toolbar li a:hover { |
background-position: bottom center; |
background-position: bottom center; |
} |
} |
Line 9226 $args - additional optional args support
|
Line 9249 $args - additional optional args support
|
links_disabled -> Links in primary and secondary menus are disabled |
links_disabled -> Links in primary and secondary menus are disabled |
(Can enable them once page has loaded - see lonroles.pm |
(Can enable them once page has loaded - see lonroles.pm |
for an example). |
for an example). |
|
links_target -> Target for links, e.g., _parent (optional). |
|
|
=back |
=back |
|
|
Line 9454 sub menucoll_in_effect {
|
Line 9478 sub menucoll_in_effect {
|
} |
} |
} |
} |
if ($deeplink ne '') { |
if ($deeplink ne '') { |
my ($state,$others,$listed,$scope,$protect,$display) = split(/,/,$deeplink); |
my ($state,$others,$listed,$scope,$protect,$display,$target) = split(/,/,$deeplink); |
if ($display =~ /^\d+$/) { |
if ($display =~ /^\d+$/) { |
$deeplinkmenu = 1; |
$deeplinkmenu = 1; |
$menucoll = $display; |
$menucoll = $display; |