Bug 5503 [REVISED] comments shouldn't show patron's full name
authorOwen Leonard <oleonard@myacpl.org>
Fri, 16 Dec 2011 21:32:40 +0000 (16:32 -0500)
committerPaul Poulain <paul.poulain@biblibre.com>
Fri, 2 Mar 2012 17:32:38 +0000 (18:32 +0100)
Adding a few choices for what information can be displayed
alongside comments in the OPAC:

- nothing
- full name
- first name
- last name
- first name and last name first initial
- username

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Tested by choosing each choice and previewing an individual title
with a comment and confirming the name was displayed properly. Then
choosing each option and prevewing the recent comments page.

All tests passed.

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Ran all tests again and it works as explained.

installer/data/mysql/sysprefs.sql
installer/data/mysql/updatedatabase.pl
koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref
koha-tmpl/opac-tmpl/prog/en/modules/opac-detail.tt
koha-tmpl/opac-tmpl/prog/en/modules/opac-showreviews.tt
opac/opac-showreviews.pl

index 20c880c..8f289d6 100644 (file)
@@ -103,7 +103,7 @@ INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('ReturnBeforeExpiry',0,'If ON, checkout will be prevented if returndate is after patron card expiry',NULL,'YesNo');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('ReturnLog',1,'If ON, enables the circulation (returns) log',NULL,'YesNo');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('reviewson',1,'If ON, enables patron reviews of bibliographic records in the OPAC','','YesNo');
-INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('ShowReviewer',1,'If ON, name of reviewer will be shown above comments in OPAC','','YesNo');
+INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('ShowReviewer','full','Choose how a commenter''s identity is presented alongside comments in the OPAC','none|full|first|surname|firstandinitial|username','Choice');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('ShowReviewerPhoto',1,'If ON, photo of reviewer will be shown beside comments in OPAC','','YesNo');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('SpecifyDueDate',1,'Define whether to display \"Specify Due Date\" form in Circulation','','YesNo');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('SubscriptionHistory','simplified','Define the display preference for serials issue history in OPAC','simplified|full','Choice');
index 803542a..2552a7f 100755 (executable)
@@ -4726,6 +4726,14 @@ if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
     SetVersion($DBversion);
 }
 
+$DBversion = "3.07.00.019";
+if ( C4::Context->preference("Version") < TransformToNum($DBversion) ) {
+    $dbh->do(" UPDATE `systempreferences` SET  `value` =  'none', `options` =  'none|full|first|surname|firstandinitial|username', `explanation` =  'Choose how a commenter''s identity is presented alongside comments in the OPAC', `type` =  'Choice' WHERE  `systempreferences`.`variable` =  'ShowReviewer' AND `systempreferences`.`variable` = 0");
+    $dbh->do(" UPDATE `systempreferences` SET  `value` =  'full', `options` =  'none|full|first|surname|firstandinitial|username', `explanation` =  'Choose how a commenter''s identity is presented alongside comments in the OPAC', `type` =  'Choice' WHERE  `systempreferences`.`variable` =  'ShowReviewer' AND `systempreferences`.`variable` = 1");
+    print "Adding additional options for the display of commenter's identity in the OPAC: Full name, first name, last name, first name and last name first initial, username, or no information\n";
+    SetVersion($DBversion);
+}
+
 =head1 FUNCTIONS
 
 =head2 DropAllForeignKeys($table)
index 24856b8..bca7a71 100644 (file)
@@ -277,11 +277,16 @@ OPAC:
                   no: "Don't allow"
             - patrons to make comments on items on the OPAC.
         -
+            - Show
             - pref: ShowReviewer
               choices:
-                  yes: Show
-                  no: Hide
-            - reviewer's name above comments in OPAC.
+                  none: no name
+                  full: full name
+                  first: first name
+                  surname: last name
+                  firstandinitial: first name and last name initial
+                  username: username
+            - of commenter with comments in OPAC.
         -
             - pref: ShowReviewerPhoto
               choices:
index 25480c8..7af60a0 100644 (file)
@@ -873,18 +873,26 @@ YAHOO.util.Event.onContentReady("furtherm", function () {
         </p></div>
             [% ELSE %]
             <div class="commentline">
-            [% IF ( ShowReviewer ) %]
-                [% IF ( review.avatarurl ) %]
-            <img class="avatar" src="[% review.avatarurl %]" height="80" width="80" alt="" />
-                [% END %]
-            <h5>
-                Comment by
-                [% review.title %]
-                [% review.firstname %]
-                [% review.surname %]
-            </h5>
+            [% IF ( ShowReviewer != "none" ) %]
+                    [% IF ( review.avatarurl ) %]
+                <img class="avatar" src="[% review.avatarurl %]" height="80" width="80" alt="" />
+                    [% END %]
+                    [% SWITCH ShowReviewer %]
+                    [% CASE 'full' %]
+                        <h5>Comment by [% review.title %] [% review.firstname %] [% review.surname %]</h5>
+                    [% CASE 'first' %]
+                        <h5>Comment by [% review.firstname %]</h5>
+                    [% CASE 'surname' %]
+                        <h5>Comment by [% review.surname %]</h5>
+                    [% CASE 'firstandinitial' %]
+                        <h5>Comment by [% review.firstname %] [% review.surname|truncate(2,'.') %]</h5>
+                    [% CASE 'username' %]
+                        <h5>Comment by [% review.userid %]</h5>
+                    [% END %]
+                <small>[% review.datereviewed %]</small>
+            [% ELSIF ( ShowReviewer == "none") %]
+                <h5>Patron comment on [% review.datereviewed %]</h5>
             [% END %]
-            <small>[% review.datereviewed %]</small>
         <p>
           [% FILTER html_break %]
           [% review.review |html %]
index fdea679..d548361 100644 (file)
@@ -54,8 +54,20 @@ $(document).ready(function(){
             [% review.review |html %]
             [% END %]
             <span style="font-size:87%;font-color:#CCC;">Added [% review.datereviewed %] [% IF ( review.your_comment ) %] by <strong>you</strong>[% ELSE %]
-            [% IF ( ShowReviewer ) %] by
-            [% review.firstname %] [% review.surname %][% END %][% END %]</span></p>
+            [% IF ( ShowReviewer != "none" ) %] by
+                [% SWITCH ShowReviewer %]
+                [% CASE 'full' %]
+                    [% review.borrtitle %] [% review.firstname %] [% review.surname %]
+                [% CASE 'first' %]
+                    [% review.firstname %]
+                [% CASE 'surname' %]
+                    [% review.surname %]
+                [% CASE 'firstandinitial' %]
+                    [% review.firstname %] [% review.surname|truncate(2,'.') %]
+                [% CASE 'username' %]
+                    [% review.userid %]
+                [% END %]
+            [% END %][% END %]</span></p>
         </td>
         <td>
 [% IF ( review.BiblioDefaultViewmarc ) %]<a class="title" href="/cgi-bin/koha/opac-MARCdetail.pl?biblionumber=[% review.biblionumber |url %]" title="View details for this title">
index 74f4684..449ffcd 100755 (executable)
@@ -101,8 +101,10 @@ for my $result (@$reviews){
        $result->{size} = $bib->{'size'};
        $result->{notes} = $bib->{'notes'};
        $result->{timestamp} = $bib->{'timestamp'};
+    $result->{borrtitle} = $borr->{'title'};
        $result->{firstname} = $borr->{'firstname'};
        $result->{surname} = $borr->{'surname'};
+    $result->{userid} = $borr->{'userid'};
         if ($libravatar_enabled and $borr->{'email'}) {
             $result->{avatarurl} = libravatar_url(email => $borr->{'email'}, size => 40, https => $ENV{HTTPS});
         }