version 1.384, 2012/08/03 01:36:55
|
version 1.388, 2012/10/29 17:38:56
|
Line 393 sub secondary_menu {
|
Line 393 sub secondary_menu {
|
} |
} |
$menu =~ s/\[uname\]/$$author{user}/g; |
$menu =~ s/\[uname\]/$$author{user}/g; |
$menu =~ s/\[udom\]/$$author{dom}/g; |
$menu =~ s/\[udom\]/$$author{dom}/g; |
|
if ($menu) { |
return "<ul id=\"LC_secondary_menu\">$menu</ul>"; |
$menu = "<ul id=\"LC_secondary_menu\">$menu</ul>"; |
|
} |
|
return $menu; |
} |
} |
|
|
sub create_submenu { |
sub create_submenu { |
Line 585 sub innerregister {
|
Line 587 sub innerregister {
|
|
|
# Check that the user has permission to edit this resource |
# Check that the user has permission to edit this resource |
my $setpriv = 1; |
my $setpriv = 1; |
($cfuname,$cfudom)=&Apache::loncacc::constructaccess($file,$setpriv); |
($cfuname,$cfudom)=&Apache::lonnet::constructaccess($file,$setpriv); |
if (defined($cfudom)) { |
if (defined($cfudom)) { |
$home=&Apache::lonnet::homeserver($cfuname,$cfudom); |
$home=&Apache::lonnet::homeserver($cfuname,$cfudom); |
my $allowed=0; |
my $allowed=0; |
Line 1477 sub roles_selector {
|
Line 1479 sub roles_selector {
|
} else { |
} else { |
$ccrole = 'cc'; |
$ccrole = 'cc'; |
} |
} |
my $priv; |
my ($priv,$gotsymb,$destsymb); |
my $destinationurl = $ENV{'REQUEST_URI'}; |
my $destinationurl = $ENV{'REQUEST_URI'}; |
|
if ($destinationurl =~ /\?symb=/) { |
|
$gotsymb = 1; |
|
} elsif ($destinationurl =~ m{^/enc/}) { |
|
my $plainurl = &Apache::lonenc::unencrypted($destinationurl); |
|
if ($plainurl =~ /\?symb=/) { |
|
$gotsymb = 1; |
|
} |
|
} |
|
unless ($gotsymb) { |
|
$destsymb = &Apache::lonnet::symbread(); |
|
if ($destsymb ne '') { |
|
$destsymb = &Apache::lonenc::check_encrypt($destsymb); |
|
} |
|
} |
my $reqprivs = &required_privs(); |
my $reqprivs = &required_privs(); |
if (ref($reqprivs) eq 'HASH') { |
if (ref($reqprivs) eq 'HASH') { |
my $destination = $destinationurl; |
my $destination = $destinationurl; |
Line 1566 sub roles_selector {
|
Line 1582 sub roles_selector {
|
$role_selector .= "\n".'<option value="'.$role.'">'.&Apache::lonnet::plaintext($role).'</option>'; |
$role_selector .= "\n".'<option value="'.$role.'">'.&Apache::lonnet::plaintext($role).'</option>'; |
} |
} |
} |
} |
$role_selector .= '</select>'."\n". |
$role_selector .= '</select>'."\n"; |
|
if ($destsymb ne '') { |
|
$role_selector .= '<input type="hidden" name="destsymb" value="'. |
|
&HTML::Entities::encode($destsymb).'" />'."\n"; |
|
} |
|
$role_selector .= |
'<input type="hidden" name="destinationurl" value="'. |
'<input type="hidden" name="destinationurl" value="'. |
&HTML::Entities::encode($destinationurl).'" />'."\n". |
&HTML::Entities::encode($destinationurl).'" />'."\n". |
'<input type="hidden" name="gotorole" value="1" />'."\n". |
'<input type="hidden" name="gotorole" value="1" />'."\n". |
Line 1822 sub required_privs {
|
Line 1843 sub required_privs {
|
|
|
sub countdown_timer { |
sub countdown_timer { |
if (($env{'request.course.id'}) && ($env{'request.symb'} ne '') && |
if (($env{'request.course.id'}) && ($env{'request.symb'} ne '') && |
($env{'request.filename'}=~/$LONCAPA::assess_re/) && |
($env{'request.filename'}=~/$LONCAPA::assess_re/)) { |
($Apache::inputtags::status[-1] eq 'CAN_ANSWER')) { |
my ($type,$hastimeleft,$slothastime); |
|
my $now = time; |
|
if ($env{'request.filename'} =~ /\.task$/) { |
|
$type = 'Task'; |
|
} else { |
|
$type = 'problem'; |
|
} |
|
my ($status,$accessmsg,$slot_name,$slot) = |
|
&Apache::lonhomework::check_slot_access('0',$type); |
|
if ($slot_name ne '') { |
|
if (ref($slot) eq 'HASH') { |
|
if (($slot->{'starttime'} < $now) && |
|
($slot->{'endtime'} > $now)) { |
|
$slothastime = 1; |
|
} |
|
} |
|
} |
|
if ($status ne 'CAN_ANSWER') { |
|
return; |
|
} |
my $duedate = &Apache::lonnet::EXT("resource.0.duedate"); |
my $duedate = &Apache::lonnet::EXT("resource.0.duedate"); |
my @interval=&Apache::lonnet::EXT("resource.0.interval"); |
my @interval=&Apache::lonnet::EXT("resource.0.interval"); |
my $hastimeleft; |
my $hastimeleft; |
Line 1836 sub countdown_timer {
|
Line 1876 sub countdown_timer {
|
} |
} |
} |
} |
if (($duedate && $duedate > time) || |
if (($duedate && $duedate > time) || |
(!$duedate && $hastimeleft)) { |
(!$duedate && $hastimeleft) || |
|
($slot_name ne '' && $slothastime)) { |
my ($collapse,$expand,$alttxt,$title,$currdisp); |
my ($collapse,$expand,$alttxt,$title,$currdisp); |
if (@interval > 1 && $hastimeleft) { |
if ((@interval > 1 && $hastimeleft) || |
|
($type eq 'Task' && $slothastime)) { |
$currdisp = 'inline'; |
$currdisp = 'inline'; |
$collapse = '► '; |
$collapse = '► '; |
} else { |
} else { |