Diff for /loncom/interface/longroup.pm between versions 1.29 and 1.30

version 1.29, 2012/12/18 15:26:03 version 1.30, 2016/02/26 21:44:39
Line 683  sub get_group_bbinfo { Line 683  sub get_group_bbinfo {
 ###############################################  ###############################################
   
 sub get_group_link {  sub get_group_link {
     my ($cdom,$cnum,$group,$navmap) = @_;      my ($cdom,$cnum,$group,$navmap,$view_permission,$refarg) = @_;
     if (ref($navmap)) {      if (ref($navmap)) {
         my $symb = 'uploaded/'.$cdom.'/'.$cnum.'/group_folder_'.$group.'.sequence___1___adm/'.$cdom.'/'.$cnum.'/'.$group.'/smppg';          my $map = "uploaded/$cdom/$cnum/group_folder_"."$group.sequence";
           my $mapres = $navmap->getResourceByUrl("/$map");
           my $hidden;
           if (ref($mapres)) {
               if ((!$viewpermission) && ($mapres->randomout())) {
                   $hidden = 1;
               }
           }
           my $url = "adm/$cdom/$cnum/$group/smppg";
           my $idx = '1';
           my $symb = $map.'___'.$idx.'___'.$url;
         my $res = $navmap->getBySymb($symb);          my $res = $navmap->getBySymb($symb);
           $url = "/$url";
           $map = "/$map";
         my $link;          my $link;
         if (ref($res)) {          if (ref($res)) {
             $link = $res->link();              if ((!$view_permission) && ($res->randomout())) {
             $link .= (($link=~/\?/)?'&':'?').'symb='.$res->shown_symb();                  $hidden = 1;
               } else {
                   $hidden = 0;
                   if ($refarg) {
                       $link = $url.'?'.$refarg;
                   } else {
                       $link = $res->link();
                       $link .= (($link=~/\?/)?'&':'?').'symb='.$res->shown_symb();
                   }
               }
           } elsif (&Apache::lonnet::is_on_map($url)) {
               unless ($hidden) {
                   $link = $url;
                   if ($refarg) {
                       $link = $url.'?'.$refarg;
                   }
               }
           }
           if (wantarray) {
               return ($link,$hidden);
         } else {          } else {
             $link = '/adm/'.$cdom.'/'.$cnum.'/'.$group.'/smppg';              return $link;
         }          }
         return $link;   
     }      }
     return;      return;
 }  }
   
 ###############################################  ###############################################
   
   sub display_group_links {
       my ($r,$target,$group,$context,$refarg,$numtoolsref,$hidehdr,%groupinfo) = @_;
       my @available = ();
       my %menu = ();
       %{$menu{'email'}} = (
                           text => 'Group Message',
                           href => '/adm/email?compose=group&group='.$group.
                                   $refarg,
                         );
       %{$menu{'discussion'}} = (
                           text => 'Discussion Boards',
                           href => '/adm/groupboards?group='.$group.$refarg,
                         );
       %{$menu{'chat'}} = (
                           text => 'Group Chat Room',
                           href => "javascript:group_chat('$group')",
                         );
       %{$menu{'files'}} = (
                           text => 'Group Portfolio',
                           href => '/adm/coursegrp_portfolio?group='.$group.
                                   $refarg,
                         );
       %{$menu{'roster'}} = (
                           text => 'Membership Roster',
                           href => '/adm/grouproster?group='.$group.$refarg,
                         );
       foreach my $tool (sort(keys(%menu))) {
           if ($groupinfo{functions}{$tool} eq 'on') {
               push(@available,$tool);
           }
       }
       my $output = '';
       if (ref($numtoolsref) eq 'SCALAR') {
           $$numtoolsref = scalar(@available);
       }
       if (@available > 0) {
           if ($target eq 'tex') {
               $output = '<table cellspacing="4" cellpadding="4">';
           } else {
               $output = &Apache::loncommon::start_data_table();
           }
           foreach my $tool (@available) {
               if ($target eq 'tex') {
                   $output .= '<tr><td>'.&mt($menu{$tool}{text}).'</td></tr>';
               } else {
                   $output .= &Apache::loncommon::start_data_table_row()
                             .'<td><a href="'.$menu{$tool}{href}.'">'
                             .&mt($menu{$tool}{text}).'</a></td>'
                             .&Apache::loncommon::end_data_table_row();
               }
           }
           if ($target eq 'tex') {
               $output .= '</table>';
           } else {
               $output .= &Apache::loncommon::end_data_table();
           }
           if ($target eq 'tex') {
               $output = &Apache::lonxml::xmlparse($r,'tex',&mt('Available functions').'<br /><br />'.$output);
           } else {
               unless ($hidehdr) {
                   $output = '<h3>'.&mt('Available Group Tools').'</h3>'.$output;
               }
           }
       } else {
           if ($context eq 'edit') {
               $output = &mt('No group functionality.');
           } else {
               $output = &mt('No group functionality (e.g., e-mail, discussion, chat room or file upload) is currently available to you in this group: [_1].',
                         '<b>'.&unescape($groupinfo{'description'}).'</b>');
           }
           if ($target eq 'tex') {
               $output = &Apache::lonxml::xmlparse($r,'tex',$output);
           }
       }
       return $output;
   }
   
 1;  1;
   

Removed from v.1.29  
changed lines
  Added in v.1.30


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>