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

(-)a/C4/Ratings.pm (-30 lines)
Lines 35-41 BEGIN { Link Here
35
35
36
    @EXPORT = qw(
36
    @EXPORT = qw(
37
      &GetRating
37
      &GetRating
38
      &AddRating
39
      &ModRating
38
      &ModRating
40
      &DelRating
39
      &DelRating
41
    );
40
    );
Lines 59-67 Get a rating for a bib Link Here
59
 my $rating_hashref = GetRating( $biblionumber, undef );
58
 my $rating_hashref = GetRating( $biblionumber, undef );
60
 my $rating_hashref = GetRating( $biblionumber, $borrowernumber );
59
 my $rating_hashref = GetRating( $biblionumber, $borrowernumber );
61
60
62
Add a rating for a bib
63
 my $rating_hashref = AddRating( $biblionumber, $borrowernumber, $rating_value );
64
65
Mod a rating for a bib
61
Mod a rating for a bib
66
 my $rating_hashref = ModRating( $biblionumber, $borrowernumber, $rating_value );
62
 my $rating_hashref = ModRating( $biblionumber, $borrowernumber, $rating_value );
67
63
Lines 192-223 sub GetRating { Link Here
192
    return \%rating_hash;
188
    return \%rating_hash;
193
}
189
}
194
190
195
=head2 AddRating
196
197
    my $rating_hashref = AddRating( $biblionumber, $borrowernumber, $rating_value );
198
199
Add a rating for a bib
200
201
This adds or updates a rating for a particular user on a biblio. If the value
202
is 0, then the rating will be deleted. If the value is out of the range of
203
0-5, nothing will happen.
204
205
=cut
206
207
sub AddRating {
208
    my ( $biblionumber, $borrowernumber, $rating_value ) = @_;
209
210
    my $rating = Koha::Database->new()->schema->resultset('Rating')->create(
211
        {
212
            biblionumber   => $biblionumber,
213
            borrowernumber => $borrowernumber,
214
            rating_value   => $rating_value
215
        }
216
    );
217
218
    return GetRating( $biblionumber, $borrowernumber );
219
}
220
221
=head2 ModRating
191
=head2 ModRating
222
192
223
    my $rating_hashref = ModRating( $biblionumber, $borrowernumber, $rating_value );
193
    my $rating_hashref = ModRating( $biblionumber, $borrowernumber, $rating_value );
(-)a/opac/opac-ratings-ajax.pl (-2 / +4 lines)
Lines 34-39 use C4::Context; Link Here
34
use C4::Debug;
34
use C4::Debug;
35
use C4::Output qw(:html :ajax pagination_bar);
35
use C4::Output qw(:html :ajax pagination_bar);
36
use C4::Ratings;
36
use C4::Ratings;
37
38
use Koha::Ratings;
39
37
use JSON;
40
use JSON;
38
41
39
my $is_ajax = is_ajax();
42
my $is_ajax = is_ajax();
Lines 75-82 if ( $rating_value eq '' ) { Link Here
75
}
78
}
76
79
77
elsif ( $rating_value and !$rating_old_value ) {
80
elsif ( $rating_value and !$rating_old_value ) {
78
#### insert
81
    $rating = Koha::Rating->new( { biblionumber => $biblionumber, borrowernumber => $loggedinuser, rating_value => $rating_value, })->store;
79
    $rating = AddRating( $biblionumber, $loggedinuser, $rating_value );
80
}
82
}
81
83
82
elsif ( $rating_value ne $rating_old_value ) {
84
elsif ( $rating_value ne $rating_old_value ) {
(-)a/opac/opac-ratings.pl (-2 / +3 lines)
Lines 34-39 use C4::Context; Link Here
34
use C4::Ratings;
34
use C4::Ratings;
35
use C4::Debug;
35
use C4::Debug;
36
36
37
use Koha::Ratings;
38
37
my $query = CGI->new();
39
my $query = CGI->new();
38
40
39
# auth required to add ratings
41
# auth required to add ratings
Lines 53-59 unless ( $biblionumber and $rating_value ) { Link Here
53
}
55
}
54
56
55
if ( !$rating_old_value ) {
57
if ( !$rating_old_value ) {
56
    $rating = AddRating( $biblionumber, $loggedinuser, $rating_value );
58
    Koha::Rating->new( { biblionumber => $biblionumber, borrowernumber => $loggedinuser, rating_value => $rating_value, })->store;
57
}
59
}
58
else {
60
else {
59
    $rating = ModRating( $biblionumber, $loggedinuser, $rating_value );
61
    $rating = ModRating( $biblionumber, $loggedinuser, $rating_value );
60
- 

Return to bug 17089