1 // -----------------------------------------------------
3 // -----------------------------------------------------
4 // hide 'rate' button if javascript enabled
6 $(document).ready(function(){
7 $("input[name='rate_button']").remove();
9 var star_ratings = $(".star_rating");
11 star_ratings.barrating({
12 theme: 'fontawesome-stars',
13 showSelectedRating: false,
16 readonly: !is_logged_in,
17 onSelect: function( value ) {
18 var context = $("#" + this.$elem.data("context") );
19 $(".rating-loading", context ).show();
20 let biblionumber = this.$elem.data('biblionumber');
21 if ( value == "" ) value = null;
22 fetch("/api/v1/public/biblios/"+biblionumber+"/ratings", {
24 body: JSON.stringify({ rating: value }),
26 "Content-Type": "application/json;charset=utf-8",
30 $(".rating_value", context ).val(data.rating);
32 console.log($(".cancel_rating_text", context ));
34 console.log(data.rating);
35 $(".rating_value_text", context ).text( __("Your rating: %s.").format(data.rating) );
36 $(".cancel_rating_text", context ).show();
38 $(".rating_value_text", context ).text("");
39 $(".cancel_rating_text", context ).hide();
41 console.log($(".rating_text", context ));
42 $(".rating_text", context ).text( __("Average rating: %s (%s votes)").format(data.average, data.count) );
43 $(".rating-loading", context ).hide();
48 $("body").on("click", ".cancel_rating_text a", function(e){
50 var context = "#" + $(this).data("context");
51 $(context).barrating("set", "");