View | Details | Raw Unified | Return to bug 17089
Collapse All | Expand All

(-)a/C4/Ratings.pm (-27 lines)
Lines 35-41 BEGIN { Link Here
35
35
36
    @EXPORT = qw(
36
    @EXPORT = qw(
37
      &GetRating
37
      &GetRating
38
      &ModRating
39
      &DelRating
38
      &DelRating
40
    );
39
    );
41
}
40
}
Lines 58-66 Get a rating for a bib Link Here
58
 my $rating_hashref = GetRating( $biblionumber, undef );
57
 my $rating_hashref = GetRating( $biblionumber, undef );
59
 my $rating_hashref = GetRating( $biblionumber, $borrowernumber );
58
 my $rating_hashref = GetRating( $biblionumber, $borrowernumber );
60
59
61
Mod a rating for a bib
62
 my $rating_hashref = ModRating( $biblionumber, $borrowernumber, $rating_value );
63
64
Delete a rating for a bib
60
Delete a rating for a bib
65
 my $rating_hashref = DelRating( $biblionumber, $borrowernumber );
61
 my $rating_hashref = DelRating( $biblionumber, $borrowernumber );
66
62
Lines 188-216 sub GetRating { Link Here
188
    return \%rating_hash;
184
    return \%rating_hash;
189
}
185
}
190
186
191
=head2 ModRating
192
193
    my $rating_hashref = ModRating( $biblionumber, $borrowernumber, $rating_value );
194
195
Mod a rating for a bib
196
197
=cut
198
199
sub ModRating {
200
    my ( $biblionumber, $borrowernumber, $rating_value ) = @_;
201
202
    my $rating = Koha::Database->new()->schema->resultset('Rating')->find(
203
        {
204
            borrowernumber => $borrowernumber,
205
            biblionumber   => $biblionumber
206
        }
207
    );
208
209
    $rating->update( { rating_value => $rating_value } );
210
211
    return GetRating( $biblionumber, $borrowernumber );
212
}
213
214
=head2 DelRating
187
=head2 DelRating
215
188
216
    my $rating_hashref = DelRating( $biblionumber, $borrowernumber );
189
    my $rating_hashref = DelRating( $biblionumber, $borrowernumber );
(-)a/opac/opac-ratings-ajax.pl (-2 / +1 lines)
Lines 82-89 elsif ( $rating_value and !$rating_old_value ) { Link Here
82
}
82
}
83
83
84
elsif ( $rating_value ne $rating_old_value ) {
84
elsif ( $rating_value ne $rating_old_value ) {
85
#### mod
85
    $rating = Koha::Ratings->find( { biblionumber => $biblionumber, borrowernumber => $loggedinuser })->rating_value($rating_value)->store;
86
    $rating = ModRating( $biblionumber, $loggedinuser, $rating_value );
87
}
86
}
88
87
89
my %js_reply = (
88
my %js_reply = (
(-)a/opac/opac-ratings.pl (-3 / +1 lines)
Lines 45-51 my $loggedinuser = C4::Context->userenv->{'number'}; Link Here
45
my $biblionumber     = $query->param('biblionumber');
45
my $biblionumber     = $query->param('biblionumber');
46
my $rating_old_value = $query->param('rating_value');
46
my $rating_old_value = $query->param('rating_value');
47
my $rating_value     = $query->param('rating');
47
my $rating_value     = $query->param('rating');
48
my $rating;
49
48
50
# If JS is disabled and a user click on "Rate me" without selecting a rate
49
# If JS is disabled and a user click on "Rate me" without selecting a rate
51
unless ( $biblionumber and $rating_value ) {
50
unless ( $biblionumber and $rating_value ) {
Lines 58-64 if ( !$rating_old_value ) { Link Here
58
    Koha::Rating->new( { biblionumber => $biblionumber, borrowernumber => $loggedinuser, rating_value => $rating_value, })->store;
57
    Koha::Rating->new( { biblionumber => $biblionumber, borrowernumber => $loggedinuser, rating_value => $rating_value, })->store;
59
}
58
}
60
else {
59
else {
61
    $rating = ModRating( $biblionumber, $loggedinuser, $rating_value );
60
    Koha::Ratings->find( { biblionumber => $biblionumber, borrowernumber => $loggedinuser })->rating_value($rating_value)->store;
62
}
61
}
63
print $query->redirect(
62
print $query->redirect(
64
    "/cgi-bin/koha/opac-detail.pl?biblionumber=$biblionumber");
63
    "/cgi-bin/koha/opac-detail.pl?biblionumber=$biblionumber");
65
- 

Return to bug 17089