version 1.385, 2017/05/07 13:57:58
|
version 1.390, 2017/11/16 13:31:29
|
Line 92 sub raw_href_to_link {
|
Line 92 sub raw_href_to_link {
|
|
|
sub entity_encode { |
sub entity_encode { |
my ($text)=@_; |
my ($text)=@_; |
return &HTML::Entities::encode($text, '<>&"'); |
return &HTML::Entities::encode($text, '\'<>&"'); |
} |
} |
|
|
sub direct_parm_link { |
sub direct_parm_link { |
Line 1025 data structure used for bookkeeping.
|
Line 1025 data structure used for bookkeeping.
|
|
|
=item $number_to_do The total number of items being processed. |
=item $number_to_do The total number of items being processed. |
|
|
|
=item $preamble Optional HTML to display before the progress bar. |
|
|
=back |
=back |
|
|
=back |
=back |
|
|
Returns a hash containing the progress state data structure. |
Returns a hash containing the progress state data structure. |
|
If $number_to_do is zero or null, an indeterminate progress bar will |
|
be used. |
|
|
=item &Update_PrgWin() |
=item &Update_PrgWin() |
|
|
Line 1118 Returns: none
|
Line 1122 Returns: none
|
|
|
# Create progress |
# Create progress |
sub Create_PrgWin { |
sub Create_PrgWin { |
my ($r,$number_to_do)=@_; |
my ($r,$number_to_do,$preamble)=@_; |
my %prog_state; |
my %prog_state; |
$prog_state{'done'}=0; |
$prog_state{'done'}=0; |
$prog_state{'firststart'}=&Time::HiRes::time(); |
$prog_state{'firststart'}=&Time::HiRes::time(); |
$prog_state{'laststart'}=&Time::HiRes::time(); |
$prog_state{'laststart'}=&Time::HiRes::time(); |
$prog_state{'max'}=$number_to_do; |
$prog_state{'max'}=$number_to_do; |
&Apache::loncommon::LCprogressbar($r); |
&Apache::loncommon::LCprogressbar($r,$prog_state{'max'},$preamble); |
return %prog_state; |
return %prog_state; |
} |
} |
|
|
# update progress |
# update progress |
sub Update_PrgWin { |
sub Update_PrgWin { |
my ($r,$prog_state,$displayString)=@_; |
my ($r,$prog_state,$displayString)=@_; |
&Apache::loncommon::LCprogressbarUpdate($r,undef,$displayString); |
&Apache::loncommon::LCprogressbarUpdate($r,undef,$displayString,$$prog_state{'max'}); |
$$prog_state{'laststart'}=&Time::HiRes::time(); |
$$prog_state{'laststart'}=&Time::HiRes::time(); |
} |
} |
|
|
Line 1181 sub Increment_PrgWin {
|
Line 1185 sub Increment_PrgWin {
|
if ($$prog_state{'max'}) { |
if ($$prog_state{'max'}) { |
$percent=int(100.*$current/$$prog_state{'max'}); |
$percent=int(100.*$current/$$prog_state{'max'}); |
} |
} |
&Apache::loncommon::LCprogressbarUpdate($r,$percent,$timeinfo); |
&Apache::loncommon::LCprogressbarUpdate($r,$percent,$timeinfo,$$prog_state{'max'}); |
$$prog_state{'laststart'}=&Time::HiRes::time(); |
$$prog_state{'laststart'}=&Time::HiRes::time(); |
} |
} |
|
|
Line 1301 sub htmlareaheaders {
|
Line 1305 sub htmlareaheaders {
|
ENDEDITOR |
ENDEDITOR |
} |
} |
$s.=(<<ENDJQUERY); |
$s.=(<<ENDJQUERY); |
<script type="text/javascript" src="/adm/jQuery/js/jquery-1.11.3.min.js"></script> |
<script type="text/javascript" src="/adm/jQuery/js/jquery-3.2.1.min.js"></script> |
<script type="text/javascript" src="/adm/jQuery/js/jquery-ui-1.11.4.custom.min.js"></script> |
<script type="text/javascript" src="/adm/jQuery/js/jquery-ui-1.12.1.custom.min.js"></script> |
<link rel="stylesheet" type="text/css" href="/adm/jQuery/css/smoothness/jquery-ui-1.11.4.custom.css" /> |
<link rel="stylesheet" type="text/css" href="/adm/jQuery/css/smoothness/jquery-ui-1.12.1.custom.min.css" /> |
<script type="text/javascript" src="/adm/jpicker/js/jpicker-1.1.6.min.js" > |
<script type="text/javascript" src="/adm/jpicker/js/jpicker-1.1.6.min.js" > |
</script> |
</script> |
<link rel="stylesheet" type="text/css" href="/adm/jpicker/css/jPicker-1.1.6.min.css" /> |
<link rel="stylesheet" type="text/css" href="/adm/jpicker/css/jPicker-1.1.6.min.css" /> |
Line 1727 sub show_return_link {
|
Line 1731 sub show_return_link {
|
(($env{'request.noversionuri'}=~/^\/adm\//) && |
(($env{'request.noversionuri'}=~/^\/adm\//) && |
($env{'request.noversionuri'}!~/^\/adm\/wrapper\//) && |
($env{'request.noversionuri'}!~/^\/adm\/wrapper\//) && |
($env{'request.noversionuri'}!~ |
($env{'request.noversionuri'}!~ |
m{^/adm/.*/(smppg|bulletinboard|exttool)($|\?)}) |
m{^/adm/.*/(smppg|bulletinboard|ext\.tool)($|\?)}) |
)); |
)); |
} |
} |
|
|
Line 3608 sub jump_to_editres {
|
Line 3612 sub jump_to_editres {
|
# javascript_valid_email |
# javascript_valid_email |
# |
# |
# Generates javascript to validate an e-mail address. |
# Generates javascript to validate an e-mail address. |
# Returns a javascript function which accetps a form field as argumnent, and |
# Returns a javascript function which accepts a form field as argument, and |
# returns false if field.value does not satisfy two regular expression matches |
# returns false if field.value does not satisfy two regular expression matches |
# for a valid e-mail address. Backwards compatible with old browsers without |
# for a valid e-mail address. Backwards compatible with old browsers without |
# support for javascript RegExp (just checks for @ in field.value in this case). |
# support for javascript RegExp (just checks for @ in field.value in this case). |
|
|
sub javascript_valid_email { |
sub javascript_valid_email { |
my $scripttag .= <<'END'; |
my $scripttag .= <<'END'; |
function validmail(field) { |
function validmail(field,suffix) { |
var str = field.value; |
var str = field.value; |
|
if (suffix != '' && suffix != undefined) { |
|
str += suffix; |
|
} |
if (window.RegExp) { |
if (window.RegExp) { |
var reg1str = "(@.*@)|(\\.\\.)|(@\\.)|(\\.@)|(^\\.)"; |
var reg1str = "(@.*@)|(\\.\\.)|(@\\.)|(\\.@)|(^\\.)"; |
var reg2str = "^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$"; //" |
var reg2str = "^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$"; //" |