--- loncom/interface/loncommon.pm 2010/02/25 16:01:15 1.925.2.11
+++ loncom/interface/loncommon.pm 2009/12/08 14:44:17 1.926
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# a pile of common routines
#
-# $Id: loncommon.pm,v 1.925.2.11 2010/02/25 16:01:15 raeburn Exp $
+# $Id: loncommon.pm,v 1.926 2009/12/08 14:44:17 bisitz Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -4467,10 +4467,6 @@ sub bodytag {
'link' => &designparm($function.'.link',$domain),);
@design{keys(%$addentries)} = @$addentries{keys(%$addentries)};
- my $custommenu;
- if ($env{'environment.remote'} eq 'off') {
- $custommenu = &needs_gci_custom();
- }
# role and realm
my ($role,$realm) = split(/\./,$env{'request.role'},2);
if ($role eq 'ca') {
@@ -4480,22 +4476,14 @@ sub bodytag {
# realm
if ($env{'request.course.id'}) {
if ($env{'request.role'} !~ /^cr/) {
- if (($custommenu) && ($role eq 'cm')) {
- undef($role);
- } else {
- $role = &Apache::lonnet::plaintext($role,&course_type());
- }
+ $role = &Apache::lonnet::plaintext($role,&course_type());
}
if ($env{'request.course.sec'}) {
$role .= (' 'x2).'- '.&mt('section:').' '.$env{'request.course.sec'};
}
$realm = $env{'course.'.$env{'request.course.id'}.'.description'};
} else {
- if (($custommenu) && ($role eq 'cm')) {
- undef($role);
- } else {
- $role = &Apache::lonnet::plaintext($role);
- }
+ $role = &Apache::lonnet::plaintext($role);
}
if (!$realm) { $realm=' '; }
@@ -4546,17 +4534,7 @@ sub bodytag {
# $titleinfo = &CSTR_pageheader(); #FIXME: Will be removed once all scripts have their own calls
# }
- my $role_selector;
- if (($custommenu) && ($env{'request.course.id'}) &&
- ($env{'course.'.$env{'request.course.id'}.'.domain'} eq 'gcitest') &&
- ($env{'request.role'} !~ m{^st\./gcitest/$match_courseid})) {
- $role_selector = &Apache::lonmenu::roles_selector(
- $env{'course.' . $env{'request.course.id'} . '.domain'},
- $env{'course.' . $env{'request.course.id'} . '.num'} );
- if ($role_selector) {
- $role_selector = '
'.$role_selector;
- }
- }
+
if ($env{'request.noversionuri'} =~ m{^/res/adm/pages/}) {
if ($dc_info) {
@@ -4567,10 +4545,10 @@ sub bodytag {
return $bodytag;
}
- $bodytag .= qq|
$name $role $role_selector
|;
+ $bodytag .= qq|$name $role
|;
$bodytag .= Apache::lonhtmlcommon::scripttag(
- Apache::lonmenu::utilityfunctions('',$custommenu), 'start');
+ Apache::lonmenu::utilityfunctions(), 'start');
$bodytag .= Apache::lonmenu::primary_menu();
@@ -4581,12 +4559,7 @@ sub bodytag {
#don't show menus for public users
if($env{'user.name'} ne 'public' && $env{'user.domain'} ne 'public'){
- if (($custommenu) &&
- ($env{'request.role'} !~ m{^st\./gcitest/$match_courseid})) {
- $bodytag .= &Apache::lonmenu::gci_secondary_menu();
- } else {
- $bodytag .= Apache::lonmenu::secondary_menu();
- }
+ $bodytag .= Apache::lonmenu::secondary_menu();
$bodytag .= Apache::lonmenu::serverform();
$bodytag .= Apache::lonhtmlcommon::scripttag('', 'end');
if ($env{'request.state'} eq 'construct') {
@@ -5542,10 +5515,6 @@ table.LC_notify_front_page td {
font-size: 1.2em;
}
-.LC_topic_bar img {
- vertical-align: bottom;
-}
-
table.LC_course_group_status {
margin: 20px;
}
@@ -6446,36 +6415,6 @@ ul.LC_funclist li {
line-height: 150%;
}
-#gciheader {
- float:left;
- width:100%;
- background:#DAE0D2 url("/gcimenu_bg.gif") repeat-x bottom;
- font-size:93%;
- line-height:normal;
-}
-#gciheader ul {
- margin:0;
- padding:10px 10px 0;
- list-style:none;
-}
-#gciheader li {
- float:left;
- background:url("/gcimenu_left.gif") no-repeat left top;
- margin:0;
- padding:0 0 0 9px;
-}
-#gciheader a {
- display:block;
- background:url("/gcimenu_right.gif") no-repeat right top;
- padding:5px 15px 4px 6px;
-}
-#gciheader #current {
- background-image:url("/gcimenu_left_on.gif");
-}
-#gciheader #current a {
- background-image:url("/gcimenu_right_on.gif");
- padding-bottom:5px;
-}
END
}
@@ -10050,19 +9989,19 @@ sub check_clone {
my $clonehome=&Apache::lonnet::homeserver($clonecrsunum,$clonecrsudom);
my $clonemsg;
my $can_clone = 0;
- my $lctype = lc($args->{'crstype'});
+ my $lctype = lc($args->{'type'});
if ($lctype ne 'community') {
$lctype = 'course';
}
if ($clonehome eq 'no_host') {
- if ($args->{'crstype'} eq 'Community') {
+ if ($args->{'type'} eq 'Community') {
$clonemsg = &mt('No new community created.').$linefeed.&mt('A new community could not be cloned from the specified original - [_1] - because it is a non-existent community.',$args->{'clonecourse'}.':'.$args->{'clonedomain'});
} else {
$clonemsg = &mt('No new course created.').$linefeed.&mt('A new course could not be cloned from the specified original - [_1] - because it is a non-existent course.',$args->{'clonecourse'}.':'.$args->{'clonedomain'});
}
} else {
my %clonedesc = &Apache::lonnet::coursedescription($cloneid,{'one_time' => 1});
- if ($args->{'crstype'} eq 'Community') {
+ if ($args->{'type'} eq 'Community') {
if ($clonedesc{'type'} ne 'Community') {
$clonemsg = &mt('No new community created.').$linefeed.&mt('A new community could not be cloned from the specified original - [_1] - because it is a course not a community.',$args->{'clonecourse'}.':'.$args->{'clonedomain'});
return ($can_clone, $clonemsg, $cloneid, $clonehome);
@@ -10081,7 +10020,7 @@ sub check_clone {
$can_clone = 1;
} else {
my $ccrole = 'cc';
- if ($args->{'crstype'} eq 'Community') {
+ if ($args->{'type'} eq 'Community') {
$ccrole = 'co';
}
my %roleshash =
@@ -10092,7 +10031,7 @@ sub check_clone {
if (($roleshash{$args->{'clonecourse'}.':'.$args->{'clonedomain'}.':'.$ccrole}) || (grep(/^\Q$args->{'ccuname'}\E:\Q$args->{'ccdomain'}\E$/,@cloners))) {
$can_clone = 1;
} else {
- if ($args->{'crstype'} eq 'Community') {
+ if ($args->{'type'} eq 'Community') {
$clonemsg = &mt('No new community created.').$linefeed.&mt('The new community could not be cloned from the existing community because the new community owner ([_1]) does not have cloning rights in the existing community ([_2]).',$args->{'ccuname'}.':'.$args->{'ccdomain'},$clonedesc{'description'});
} else {
$clonemsg = &mt('No new course created.').$linefeed.&mt('The new course could not be cloned from the existing course because the new course owner ([_1]) does not have cloning rights in the existing course ([_2]).',$args->{'ccuname'}.':'.$args->{'ccdomain'},$clonedesc{'description'});
@@ -10697,60 +10636,6 @@ sub _add_to_env {
}
}
-sub new_roles_update {
- my $rolecount = 0;
- foreach my $envkey (keys(%env)) {
- next unless ($envkey =~ /^user\.role\./);
- $rolecount ++;
- }
- my $newrolecount = 0;
- if (!$rolecount) {
- my %userenv;
- foreach my $crstype ('official','unofficial','community') {
- $userenv{'canrequest.'.$crstype} =
- &Apache::lonnet::usertools_access($env{'user.name'},
- $env{'user.domain'},$crstype,'reload','requestcourses');
- }
- my $then=$env{'user.login.time'};
- my $refresh=time;
- my (%userroles,%allroles,%allgroups,@newroles);
- my %roleshash =
- &Apache::lonnet::get_my_roles($env{'user.name'},$env{'user.domain'},'userroles',['active','future','previous'],undef,undef,1);
- foreach my $item (keys(%roleshash)) {
- my ($uname,$udom,$role,$section) = split(':',$item);
- my $where = '/'.$udom.'/'.$uname;
- my ($tstart,$tend) = split(':',$roleshash{$item});
- if ($section ne '') {
- $where .= '/'.$section;
- }
- my $spec = $role.'.'.$where;
- &Apache::lonnet::set_arearole($role,$where,$tstart,$tend,
- $env{'user.domain'},$env{'user.name'});
- $userroles{'user.role.'.$spec} = $tstart.'.'.$tend;
- $newrolecount ++;
- unless (grep(/^\Q$role\E$/,@newroles)) {
- push(@newroles,$role);
- }
- my $status =
- &Apache::lonnet::curr_role_status($tstart,$tend,$refresh,$then);
- if ($status eq 'active') {
- &Apache::lonnet::gather_roleprivs(\%allroles,\%allgroups,\%userroles,
- $where,$role,$tstart,$tend);
- }
- }
- if (@newroles) {
- my ($author,$adv) = &Apache::lonnet::set_userprivs(\%userroles,\%allroles,
- \%allgroups);
- &Apache::lonnet::appenv(\%userroles,[@newroles,'cm']);
- $userenv{'user.adv'} = $adv;
- $userenv{'user.author'} = $author;
- $userenv{'user.refresh.time'} = $refresh;
- }
- &Apache::lonnet::appenv(\%userenv);
- }
- return $newrolecount;
-}
-
# --- Get the symbolic name of a problem and the url
sub get_symb {
my ($request,$silent) = @_;
@@ -10792,76 +10677,6 @@ sub clean_symb {
return ($symb,$enc);
}
-sub needs_gci_custom {
- my $custommenu;
- my $numdc = &check_for_gci_dc();
- unless ($numdc) {
- my $then=$env{'user.login.time'};
- my $now = time;
- my %cnums = (
- review => '9615072b469884921gcil1',
- submit => '1H96711d710194bfegcil1',
- );
- if ($env{'user.role.st./gci/'.$cnums{'review'}}) {
- my ($start,$end) =
- split('.',$env{'user.role.st./gci/'.$cnums{'review'}});
- if (((!$start) || ($start && $start <= $now)) &&
- ((!$end) || ($end > $now))) {
- $custommenu = 1;
- if ($env{'user.role.cc./gci/'.$cnums{'review'}}) {
- my ($ccstart,$ccend) =
- split('.',$env{'user.role.cc./gci/'.$cnums{'review'}});
- if (((!$start) || ($start && $start <= $now)) &&
- ((!$end) || ($end > $now))) {
- $custommenu = '';
- }
- }
- }
- }
- }
- return $custommenu;
-}
-
-sub check_for_gci_dc {
- my $then=$env{'user.login.time'};
- my $numdc = 0;
- foreach my $dom ('gci','gcitest') {
- if ($env{'user.role.dc./'.$dom.'/'}) {
- my $livedc = 1;
- my ($tstart,$tend)=split(/\./,$env{'user.role.dc./'.$dom.'/'});
- if ($tstart && $tstart>$then) { $livedc = 0; }
- if ($tend && $tend <$then) { $livedc = 0; }
- if ($livedc) {
- $numdc++;
- }
- }
- }
- return $numdc;
-}
-
-sub existing_gcitest_courses {
- my ($role) = @_;
- my %courses;
- my $cdom = 'gcitest';
- my $now = time;
- foreach my $envkey (keys(%env)) {
- my $cnum;
- if ($envkey =~ m{^user\.role\.\Q$role\E\./\Q$cdom\E/($match_courseid)$}) {
- $cnum = $1;
- } else {
- next;
- }
- my ($tstart,$tend) = split('.',$env{$envkey});
- if (((!$tstart) || ($tstart < $now)) && ((!$tend) || ($tend > $now))) {
- my $descr = $env{'course.'.$cdom.'_'.$cnum.'.description'};
- if ($descr ne '') {
- $courses{$cdom.'_'.$cnum}{'description'} = $descr;
- }
- }
- }
- return %courses;
-}
-
=pod
=back