Diff for /loncom/interface/lonfeedback.pm between versions 1.273.4.5 and 1.279

version 1.273.4.5, 2010/01/25 03:30:23 version 1.279, 2009/11/21 22:36:23
Line 91  sub list_discussion { Line 91  sub list_discussion {
     if (not &discussion_visible($status)) {      if (not &discussion_visible($status)) {
         if ($mode ne 'board') {          if ($mode ne 'board') {
             &Apache::lonenc::check_encrypt(\$ressymb);               &Apache::lonenc::check_encrypt(\$ressymb); 
             return '<br />'.&send_message_link($ressymb);              return '<br /><div class="LC_feedback_link">'.&send_message_link($ressymb)."</div>";
         }          }
     }      }
     if ($group ne '' && $mode eq 'board') {      if ($group ne '' && $mode eq 'board') {
Line 103  sub list_discussion { Line 103  sub list_discussion {
     my ($blocked,$blocktext) =       my ($blocked,$blocktext) = 
         &Apache::loncommon::blocking_status('boards');          &Apache::loncommon::blocking_status('boards');
     if ($blocked) {      if ($blocked) {
           $blocktext = '<br /><div class="LC_feedback_link"><span class="LC_feedback_link">'.$blocktext."</span>";
         &Apache::lonenc::check_encrypt(\$ressymb);          &Apache::lonenc::check_encrypt(\$ressymb);
         if ($mode ne 'board') {          if ($mode ne 'board') {
             $blocktext.='<br />'.&send_message_link($ressymb);              $blocktext.=&send_message_link($ressymb).'</div>';
           }else{
               $blocktext.="</div>";
         }          }
         return $blocktext;           return $blocktext; 
     }      }
Line 171  sub list_discussion { Line 174  sub list_discussion {
     my $cnum = $env{'course.'.$cid.'.num'};      my $cnum = $env{'course.'.$cid.'.num'};
     my $crstype = &Apache::loncommon::course_type();      my $crstype = &Apache::loncommon::course_type();
   
   
 # Get information about students and non-students in course for filtering display of posts  # Get information about students and non-students in course for filtering display of posts
     my %roleshash = ();      my %roleshash = ();
     my %roleinfo = ();      my %roleinfo = ();
Line 567  imscp_v1p1.xsd http://www.imsglobal.org/ Line 569  imscp_v1p1.xsd http://www.imsglobal.org/
                  <table border="0" cellpadding="0" cellspacing="4">                   <table border="0" cellpadding="0" cellspacing="4">
                   <tr>                    <tr>
                    <td>                     <td>
                     <font size="-1"><b>$lt{'cuse'}</b>:</font></td>                      <font size="-1"><b>$lt{'cuse'}</b>:</td>
                    <td>&nbsp;</td>                     <td>&nbsp;</td>
                    <td><font size="-1">                     <td><font size="-1">
 END  END
Line 589  END Line 591  END
                    </font></td>                     </font></td>
                    <td>&nbsp;</td>                     <td>&nbsp;</td>
                    <td align="left">                     <td align="left">
                     <font size="-1"><b><a href="$chglink">$lt{'chgt'}</a>?</b></font>                      <font size="-1"><b><a href="$chglink">$lt{'chgt'}</a>?</font></b>
                    </td>                     </td>
                   </tr>                    </tr>
                  </table>                   </table>
Line 757  sub send_feedback_link { Line 759  sub send_feedback_link {
     my $output = '<span class="LC_feedback_link">'.      my $output = '<span class="LC_feedback_link">'.
                  ' <a href="/adm/feedback?replydisc='.                   ' <a href="/adm/feedback?replydisc='.
                  &escape($ressymb).':::" '.$target.'>'.                   &escape($ressymb).':::" '.$target.'>'.
                  '<img alt="" src="'.                   '<img alt="" class="LC_noBorder" src="'.
                  &Apache::loncommon::lonhttpdurl('/adm/lonMisc/chat.gif').                   &Apache::loncommon::lonhttpdurl('/adm/lonMisc/chat.gif').
                  '" border="0" />'.&mt('Post Discussion').'</a></span>';                   '" border="0" /><span class="LC_menubuttons_inline_text">'.&mt('Post Discussion').'</span></a></span>';
     return $output;      return $output;
 }  }
   
Line 767  sub send_message_link { Line 769  sub send_message_link {
     my ($ressymb) = @_;      my ($ressymb) = @_;
     my $output = '<span class="LC_message_link">'.      my $output = '<span class="LC_message_link">'.
                  '  <a href="/adm/feedback?sendmessageonly=1&amp;symb='.                   '  <a href="/adm/feedback?sendmessageonly=1&amp;symb='.
                  &escape($ressymb).'"><img alt="" src="'.                   &escape($ressymb).'"><img alt="" class="LC_noBorder" src="'.
                  &Apache::loncommon::lonhttpdurl('/res/adm/pages/com.png').                   &Apache::loncommon::lonhttpdurl('/res/adm/pages/com.png').
                  '" border="0" />'.&mt('Send Feedback').'</a></span>';                   '" border="0" /><span class="LC_menubuttons_inline_text">'.&mt('Send Feedback').'</span></a></span>';
     return $output;      return $output;
 }  }
   
Line 813  sub action_links_bar { Line 815  sub action_links_bar {
                            &mt('Preferences on what is marked as NEW').                             &mt('Preferences on what is marked as NEW').
                            '</a><br /><a href="/adm/feedback?markread=1&amp;symb='.$escsymb;                             '</a><br /><a href="/adm/feedback?markread=1&amp;symb='.$escsymb;
             $discussion .= &group_args($group);              $discussion .= &group_args($group);
             $discussion .= '">'.&mt('Mark NEW posts no longer new').'</a></td>';              $discussion .= '">'.&mt('Mark NEW posts no longer new').'</a>';
         } else {          } else {
             $discussion .= '<td>&nbsp;</td>';              $discussion .= '<td>&nbsp;</td>';
         }          }
Line 1014  sub build_posting_display { Line 1016  sub build_posting_display {
  $contrib{$idx.':senderdomain'}).' ('.   $contrib{$idx.':senderdomain'}).' ('.
  $contrib{$idx.':sendername'}.':'.   $contrib{$idx.':sendername'}.':'.
  $contrib{$idx.':senderdomain'}.')';   $contrib{$idx.':senderdomain'}.')';
                             $sender = '<b>'.$sender.'</b>';  
     if ($contrib{$idx.':anonymous'}) {      if ($contrib{$idx.':anonymous'}) {
         $sender.=' <font color="red"><b>['.$$anonhash{$key}.']</b></font> '.          $sender.=' <font color="red"><b>['.$$anonhash{$key}.']</b></font> '.
     $screenname;      $screenname;
Line 1022  sub build_posting_display { Line 1023  sub build_posting_display {
     if ($see_anonymous) {      if ($see_anonymous) {
  $sender.=&Apache::loncommon::student_image_tag($contrib{$idx.':senderdomain'},$contrib{$idx.':sendername'});   $sender.=&Apache::loncommon::student_image_tag($contrib{$idx.':senderdomain'},$contrib{$idx.':sendername'});
     }      }
                             $sender = '<b>'.$sender.'</b>';  
 # Set up for sorting by domain, then username  # Set up for sorting by domain, then username
                             unless (defined($$usernamesort{$contrib{$idx.':senderdomain'}})) {                              unless (defined($$usernamesort{$contrib{$idx.':senderdomain'}})) {
                                 %{$$usernamesort{$contrib{$idx.':senderdomain'}}} = ();                                  %{$$usernamesort{$contrib{$idx.':senderdomain'}}} = ();
Line 1172  sub build_posting_display { Line 1172  sub build_posting_display {
                     $$imsitems{$idx}{'attach'}=$attachtxt{$numoldver};                      $$imsitems{$idx}{'attach'}=$attachtxt{$numoldver};
                     $$imsitems{$idx}{'timestamp'}=$contrib{$idx.':timestamp'};                      $$imsitems{$idx}{'timestamp'}=$contrib{$idx.':timestamp'};
                     $$imsitems{$idx}{'sender'}=$plainname.' ('.                      $$imsitems{$idx}{'sender'}=$plainname.' ('.
                                          $contrib{$idx.':sendername'}.' at '.                                           $contrib{$idx.':sendername'}.':'.
                                          $contrib{$idx.':senderdomain'}.')';                                           $contrib{$idx.':senderdomain'}.')';
                     $$imsitems{$idx}{'isanonymous'}='false';                      $$imsitems{$idx}{'isanonymous'}='false';
                     if ($contrib{$idx.':anonymous'}) {                      if ($contrib{$idx.':anonymous'}) {
Line 1255  sub build_posting_display { Line 1255  sub build_posting_display {
                             }                              }
                             $$discussionitems[$idx] .= '<td align="left">&nbsp;&nbsp;'.                              $$discussionitems[$idx] .= '<td align="left">&nbsp;&nbsp;'.
                                 '<b>'.$subject.'</b>&nbsp;&nbsp;'.                                  '<b>'.$subject.'</b>&nbsp;&nbsp;'.
                                 $sender.' '.$vgrlink.' ('.                                  $sender.'</b> '.$vgrlink.' ('.
                                 &Apache::lonlocal::locallocaltime($posttime).')</td>';                                  &Apache::lonlocal::locallocaltime($posttime).')</td>';
                             if ($$dischash{$toggkey}) {                              if ($$dischash{$toggkey}) {
                                 $$discussionitems[$idx].='<td align="right">&nbsp;&nbsp;'.                                  $$discussionitems[$idx].='<td align="right">&nbsp;&nbsp;'.
Line 1369  sub get_post_contents { Line 1369  sub get_post_contents {
                                  $$plainname,                                   $$plainname,
                                  $$contrib{$idx.':sendername'},                                   $$contrib{$idx.':sendername'},
                                  $$contrib{$idx.':senderdomain'}).' ('.                                   $$contrib{$idx.':senderdomain'}).' ('.
                                  $$contrib{$idx.':sendername'}.' at '.                                   $$contrib{$idx.':sendername'}.':'.
                                  $$contrib{$idx.':senderdomain'}.')';                                   $$contrib{$idx.':senderdomain'}.')';
     my $attachmenturls = $$contrib{$idx.':attachmenturl'};      my $attachmenturls = $$contrib{$idx.':attachmenturl'};
     my @postversions = ();      my @postversions = ();
Line 1665  END Line 1665  END
 </script>  </script>
 END  END
   
     # Breadcrumbs
     my $brcrum = [{'href' => '',
                    'text' => 'Resource Feedback and Discussion'}];
   
   my %onload = ('onload' => 'window.focus();setposttype();');    my %onload = ('onload' => 'window.focus();setposttype();');
   my $start_page=    my $start_page=
       &Apache::loncommon::start_page('Resource Feedback and Discussion',$js,        &Apache::loncommon::start_page('Resource Feedback and Discussion',$js,
      {'add_entries' => \%onload});                                       {'add_entries' => \%onload,
                                         'bread_crumbs' => $brcrum,});
   
   if ($quote ne '') {    if ($quote ne '') {
       &newline_to_br(\$quote);        &newline_to_br(\$quote);
Line 2016  sub print_sortfilter_options { Line 2021  sub print_sortfilter_options {
         $ccrole = 'co';          $ccrole = 'co';
     }      }
     push(@courseroles,$ccrole);      push(@courseroles,$ccrole);
       
     if ($env{'request.course.sec'} !~ /^\s*$/) {  #Restrict section choice to current section       if ($env{'request.course.sec'} !~ /^\s*$/) {  #Restrict section choice to current section 
         @sections = ('all',$env{'request.course.sec'});          @sections = ('all',$env{'request.course.sec'});
         $numvisible = 2;          $numvisible = 2;
Line 2131  $start_page Line 2136  $start_page
 <br /><br />  <br /><br />
 <table border="0">  <table border="0">
  <tr>   <tr>
   <th>$lt{'soor'}</th>    <td><b>$lt{'soor'}</b></td>
   <th>&nbsp;</th>    <td>&nbsp;</td>
   <th>$lt{'sprs'}</th>    <td><b>$lt{'sprs'}</b></td>
   <th>&nbsp;</th>    <td>&nbsp;</td>
   <th>$lt{'spur'}</th>    <td><b>$lt{'spur'}</b></td>
   <th>&nbsp;</th>    <td>&nbsp;</td>
   <th>$lt{'spse'}</th>    <td><b>$lt{'spse'}</b></td>
   <th>&nbsp;</th>    <td>&nbsp;</td>
   <th>$lt{'spgr'}</th>    <td><b>$lt{'spgr'}</b></td>
   <th>&nbsp;</th>    <td>&nbsp;</td>
   <th>$lt{'psub'}</th>    <td><b>$lt{'psub'}</b></td>
  </tr>   </tr>
  <tr>   <tr>
   <td align="center" valign="top">    <td align="center" valign="top">
Line 2625  sub screen_header { Line 2630  sub screen_header {
      $env{'request.course.id'}.       $env{'request.course.id'}.
      ($env{'request.course.sec'}?'/'.$env{'request.course.sec'}:''))) {       ($env{'request.course.sec'}?'/'.$env{'request.course.sec'}:''))) {
     $discussoptions='<label><input type="radio" name="discuss" value="nonanon" checked="checked" /> '.      $discussoptions='<label><input type="radio" name="discuss" value="nonanon" checked="checked" /> '.
                 $contribdisc.   $contribdisc.
                 '</label><br /><label><input type="radio" name="discuss" value="anon" /> '.          '</label><br /><label><input type="radio" name="discuss" value="anon" /> '.
                 $anoncontrib.   $anoncontrib.
                 ' <i>('.$namevis.')</i></label> '.   ' <i>('.$namevis.')</i></label> '.
   
  '<a href="/adm/preferences?action=changescreenname">'.&mt('Change Screenname').'</a>';   '<a href="/adm/preferences?action=changescreenname">'.&mt('Change Screenname').'</a>';
             my $blockblog = &Apache::loncommon::blocking_status('blogs');              my $blockblog = &Apache::loncommon::blocking_status('blogs');
             if (!$blockblog) {              if (!$blockblog) {
Line 2696  sub assemble_email { Line 2700  sub assemble_email {
              'orig' => 'Original screen output (if applicable)',               'orig' => 'Original screen output (if applicable)',
              'corr' => 'Correct Answer(s) (if applicable)',               'corr' => 'Correct Answer(s) (if applicable)',
   );    );
     if (&Apache::loncommon::course_type() eq 'Community') {
         $lt{'prev'} = &mt('Previous attempts of member (if applicable)');
     }
   my $email=<<"ENDEMAIL";    my $email=<<"ENDEMAIL";
 $message  $message
 ENDEMAIL  ENDEMAIL
Line 2942  sub show_preview { Line 2949  sub show_preview {
     );      );
 }  }
   
 sub contains_block_html {  
     my ($message)=@_;  
     return ($message =~ m{  
         <(br|h1|h2|h3|h4|h5|h6|p|ol|ul|table|pre|address|blockquote|center|div)  
           \s*  
          (\w+\=['"]\w+['"])*  
           \s*  
         (  
           \s*/>|  
           >.*</\1\s*>  
         )}xs  
     );  
 }  
   
 sub newline_to_br {  sub newline_to_br {
     my ($message)=@_;      my ($message)=@_;
Line 3014  sub modify_attachments { Line 3008  sub modify_attachments {
 </script>   </script> 
 END  END
   
       # Breadcrumbs
       my $brcrum = [{'href' => '',
                      'text' => 'Discussion Post Attachments'}];
     my $start_page =       my $start_page = 
  &Apache::loncommon::start_page('Discussion Post Attachments',$js);   &Apache::loncommon::start_page('Discussion Post Attachments',$js,
                                      {'bread_crumbs' => $brcrum,});
   
     my $orig_subject = &unescape($env{'form.subject'});      my $orig_subject = &unescape($env{'form.subject'});
     my $subject=&clear_out_html($orig_subject,undef,1);      my $subject=&clear_out_html($orig_subject,undef,1);
Line 3043  $toolarge Line 3041  $toolarge
  <table class="LC_data_table">   <table class="LC_data_table">
   <tr>    <tr>
    <td colspan="2">     <td colspan="2">
     <b>Subject:</b> <b>$subject</b><br /><br />      <b>Subject:</b> $subject</b><br /><br />
 END  END
     if ($idx) {      if ($idx) {
         if ($attachmenturls) {          if ($attachmenturls) {
Line 3357  sub sort_filter_names { Line 3355  sub sort_filter_names {
     }      }
     if (ref($status_types) eq 'HASH') {      if (ref($status_types) eq 'HASH') {
         %{$status_types} = (          %{$status_types} = (
                       all     => 'Roles of any status',                       all     => 'Roles of any status',
                       Active  => 'Only active roles',                       Active  => 'Only active roles',
                       Expired => 'Only past roles',                       Expired => 'Only past roles',
                       Future  => 'Only future roles',                       Future  => 'Only future roles',
                     );                     );
     }      }
 }  }
     
 sub handler {  sub handler {
   my $r = shift;    my $r = shift;
   if ($r->header_only) {    if ($r->header_only) {
Line 3424  sub handler { Line 3422  sub handler {
       &Apache::loncommon::no_cache($r);        &Apache::loncommon::no_cache($r);
       $r->send_http_header;        $r->send_http_header;
   
       $r->print(&Apache::loncommon::start_page('Discussion Post Versions'));        # Breadcrumbs
         my $brcrum = [{'href' => '',
                        'text' => 'Discussion Post Versions'}];
   
         $r->print(&Apache::loncommon::start_page('Discussion Post Versions',undef,
                                                  {'bread_crumbs' => $brcrum,})
         );
   
       my $crs='/'.$env{'request.course.id'};        my $crs='/'.$env{'request.course.id'};
       if ($env{'request.course.sec'}) {        if ($env{'request.course.sec'}) {

Removed from v.1.273.4.5  
changed lines
  Added in v.1.279


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