1
1
Fork 0
novelmetrix-python/ras/frontend/static/js/902.js

1 line
11 KiB
JavaScript

"use strict";(self.webpackChunkfrontend=self.webpackChunkfrontend||[]).push([[902,225],{3225:(e,t,a)=>{a.r(t),a.d(t,{getAllBooks:()=>n,getAvgRatings:()=>h,getBooksPerYearPerGenres:()=>i,getChallenge:()=>r,getCountries:()=>l,getGenresCount:()=>m,getRatingsCount:()=>d,getReadingYears:()=>o,getShortestLongestBook:()=>c,getStats:()=>s});const n=()=>fetch("/api/books",{method:"GET"}).then((e=>e.json())).then((e=>e)),s=e=>fetch("/api/books/stats",{method:"GET",headers:{year:e}}).then((e=>e.json())).then((e=>e)),r=e=>fetch("/api/books/challenge",{method:"GET",headers:{year:e}}).then((e=>e.json())).then((e=>e)),o=()=>fetch("/api/books/years",{method:"GET"}).then((e=>e.json())).then((e=>e)),l=e=>fetch("/api/books/countries",{method:"GET",headers:{year:e}}).then((e=>e.json())).then((e=>e)),c=e=>fetch("/api/books/pages/stats",{method:"GET",headers:{year:e}}).then((e=>e.json())).then((e=>e)),i=e=>fetch("/api/books/genres",{method:"GET",headers:{year:e}}).then((e=>e.json())).then((e=>e)),m=e=>fetch("/api/books/genres/count",{method:"GET",headers:{year:e}}).then((e=>e.json())).then((e=>e)),h=e=>fetch("/api/books/ratings",{method:"GET",headers:{year:e}}).then((e=>e.json())).then((e=>e)),d=e=>fetch("/api/books/ratings/count",{method:"GET",headers:{year:e}}).then((e=>e.json())).then((e=>e))},764:(e,t,a)=>{a.d(t,{Z:()=>o});var n=a(7294),s=a.n(n),r=a(9655);const o=function(){return s().createElement(s().Fragment,null,s().createElement("div",{className:"sidebar"},s().createElement("ul",null,s().createElement("li",null,s().createElement(r.OL,{to:"/"},s().createElement("i",{className:"fa fa-chart-bar"})," Dashboard")),s().createElement("li",null,s().createElement(r.OL,{to:"/booklist"},s().createElement("i",{className:"fas fa-book"})," Boekenlijst")),s().createElement("li",null,s().createElement("i",{className:"fa fa-calendar"}),s().createElement("span",{className:"stats-number"},s().createElement("select",{className:"yearselector",value:this.state.year,onChange:e=>this.changeYear(e)},this.state.readingYears.map(((e,t)=>s().createElement("option",{key:t,value:e},e)))))))))}},1902:(e,t,a)=>{a.r(t),a.d(t,{default:()=>g});var n=a(7294),s=a.n(n),r=a(3225);class o extends n.Component{constructor(e){super(e),this.state={readingYears:[],challenge:0}}getComponentData(){var e=this;(0,r.getStats)(this.props.year).then((t=>{e.setState({totalbooks:t.totalbooks})})),(0,r.getChallenge)(this.props.year).then((e=>{this.setState({challenge:e&&e.length>0?e[0].nrofbooks:0})}))}componentDidMount(){this.getComponentData()}componentDidUpdate(e,t){e.year!==this.props.year&&this.getComponentData()}render(){var e=Math.round(this.state.totalbooks/this.state.challenge*100,0);return s().createElement(s().Fragment,null,this.state.challenge&&0!==this.state.challenge?s().createElement("div",{className:"container-fluid"},s().createElement("div",{className:"row"},s().createElement("div",{className:"col-md-12"},s().createElement("div",{className:"stat-block"},s().createElement("span",{className:"block_name"},"Book Challenge"),s().createElement("div",{className:"progress"},s().createElement("div",{className:"progress-bar progress-bar-striped",role:"progressbar",style:{width:e+"%"},"aria-valuenow":e,"aria-valuemin":"0","aria-valuemax":"100"},s().createElement("div",{className:"progress-bar-number"},e,"%"))),s().createElement("span",{className:"stats-number"},this.state.totalbooks),s().createElement("span",{className:"stats-label"},"van de"),s().createElement("span",{className:"stats-number"},this.state.challenge),s().createElement("span",{className:"stats-label"},"boeken gelezen"))))):"")}}class l extends n.Component{constructor(e){super(e),this.state={countries:[]}}getComponentData(){(0,r.getCountries)(this.props.year).then((e=>{this.setState({countries:e})}))}componentDidMount(){this.getComponentData()}componentDidUpdate(e,t){e.year!==this.props.year&&this.getComponentData()}render(){return s().createElement(s().Fragment,null,s().createElement("div",{className:"books-per-country"},s().createElement("span",{className:"block_name"},"Landen"),s().createElement("table",{id:"DataTable",className:"table responsive nowrap",width:"100%"},s().createElement("thead",null,s().createElement("tr",null,s().createElement("th",null,"#"),s().createElement("th",null,"Land"),s().createElement("th",null,"Boeken"))),s().createElement("tbody",null,this.state.countries.map(((e,t)=>{var a=e.code.toLowerCase();return s().createElement("tr",{key:t},s().createElement("td",null,t+1),s().createElement("td",null,s().createElement("img",{src:`https://flagcdn.com/32x24/${a}.png`})," ",e.country),s().createElement("td",null,e.count))}))))))}}const c=(e,t,a)=>{var n=[],s=["#8066ee","#58c8d6","#fe4c62","#49b8fd","#ffbe0e"],r=[];e.forEach((e=>{n.includes(e.genre)||n.push(e.genre)})),n&&n.length>0&&n.forEach(((t,n)=>{for(var o=[],l=0;l<12;l++){if(o[l]=0,l+1<10)var c="0"+(l+1);else c=l+1;for(var i=0;i<e.length;i++)e&&e[i]&&e[i].readed==c+"-"+a&&e[i].genre==t&&(o[l]=e[i].count)}r.push({label:t,data:o,backgroundColor:s[n],order:2})}));for(var o=[0,0,0,0,0,0,0,0,0,0,0,0],l=0;l<12;l++){if(l<9)var c="0"+(l+1);else c=l+1;for(var i=0;i<t.length;i++)t[i].date==c+"-"+a&&(o[l]=t[i].rating)}r.push({label:"Gemiddelde beoordeling",data:o,backgroundColor:"#ffa500",borderColor:"#ffa500",tension:.4,type:"line",order:1}),console.log(r),$("canvas#chart").remove(),$("div.books-per-month").append('<canvas id="chart"></canvas>');const m={id:"legendMargin",beforeInit(e,t,a){const n=e.legend.fit;e.legend.fit=function(){return n.bind(e.legend)(),this.height+=30}}};new Chart(document.getElementById("chart"),{type:"bar",data:{labels:["Januari","Februari","Maart","April","Mei","Juni","Juli","Augustus","September","Oktober","November","December"],datasets:r},options:{maintainAspectRatio:!1,responsive:!0,showTooltips:!0,legend:{display:!0,labels:{usePointStyle:!0}},interaction:{mode:"index"},scales:{x:{ticks:{beginAtZero:!0,color:"#101010",fontFamily:"Source Sans Pro"},stacked:!0},y:{ticks:{beginAtZero:!0,stepSize:1,color:"#101010",fontFamily:"Source Sans Pro"},stacked:!0}},plugins:{legend:{position:"top",labels:{usePointStyle:!0,color:"#101010",padding:20,font:{size:14,family:"Source Sans Pro"}}}},tooltips:{bodyFont:"Source Sans Pro"}},plugins:[m]})},i=e=>{console.log(e);var t=[],a=[];e.forEach((e=>{t.includes(e.genre)||t.push(e.genre),a.push(e.count)})),$("canvas#chartGenres").remove(),$("div.genresPercent").append('<canvas id="chartGenres"></canvas>');var n=document.getElementById("chartGenres");new Chart(n,{type:"pie",data:{labels:t,datasets:[{label:"# of Tomatoes",data:a,backgroundColor:["#8066ee","#58c8d6","#fe4c62","#49b8fd","#ffbe0e"],borderWidth:0,borderColor:"#1f2940",tooltip:{callbacks:{label:function(e){let t=e.label,a=e.formattedValue;t||(t="Unknown");let n=0;return e.chart.data.datasets[0].data.map((e=>{n+=Number(e)})),t+": "+(100*a/n).toFixed(1)+"%"}}}}]},options:{cutout:"80%",responsive:!0,plugins:{legend:{position:"top",labels:{padding:20,usePointStyle:!0,color:"##101010",font:{size:14,family:"Source Sans Pro"}}}}},plugins:[{id:"legendMargin",beforeInit(e,t,a){const n=e.legend.fit;e.legend.fit=function(){return n.bind(e.legend)(),this.height+=30}}}]})};class m extends n.Component{constructor(e){super(e),this.state={genres:[]}}getComponentData(){(0,r.getGenresCount)(this.props.year).then((e=>{this.setState({genres:e}),i(e,this.props.year)}))}componentDidMount(){this.getComponentData()}componentDidUpdate(e,t){e.year!==this.props.year&&this.getComponentData()}render(){return s().createElement(s().Fragment,null,s().createElement("div",{className:"genresPercent"},s().createElement("span",{className:"block_name"},"Genres"),s().createElement("canvas",{id:"chartGenres"})))}}class h extends n.Component{constructor(e){super(e),this.state={books:[]}}getComponentData(){(0,r.getBooksPerYearPerGenres)(this.props.year).then((e=>{this.setState({books:e}),(0,r.getAvgRatings)(this.props.year).then((t=>{c(e,t,this.props.year)}))}))}componentDidMount(){this.getComponentData()}componentDidUpdate(e,t){e.year!==this.props.year&&this.getComponentData()}render(){return s().createElement(s().Fragment,null,s().createElement("div",{className:"books-per-month"},s().createElement("span",{className:"block_name"},"Boeken per maand per genre"),s().createElement("canvas",{id:"chart"})))}}var d=a(764);class p extends n.Component{constructor(e){super(e),this.state={ratings:[],totalRatings:0}}getComponentData(){(0,r.getRatingsCount)(this.props.year).then((e=>{var t=0;e.forEach((e=>{t+=e.count}));for(var a={5:0,4:0,3:0,2:0,1:0},n=5;n>0;n--)e.forEach((e=>{e.rating===n&&(a[n]=e.count)}));console.log(Object.entries(a)),this.setState({ratings:Object.entries(a),totalRatings:t})}))}componentDidMount(){this.getComponentData()}componentDidUpdate(e,t){e.year!==this.props.year&&this.getComponentData()}render(){return s().createElement(s().Fragment,null,s().createElement("div",{className:"ratings"},s().createElement("span",{className:"block_name"},"Waarderingen (",this.state.totalRatings,")"),s().createElement("table",{id:"DataTable",className:"table responsive nowrap",width:"100%"},s().createElement("thead",null,s().createElement("tr",null,s().createElement("th",null,"#"),s().createElement("th",null,"percentage"),s().createElement("th",null,"aantal"))),s().createElement("tbody",null,this.state.ratings.map((e=>{var t="",a=e[1]/this.state.totalRatings*100;if(console.log(e[1],this.state.totalRatings),e[0])for(var n=0;n<e[0];n++)t+="<i class='fas fa-star'></i>";return s().createElement("tr",null,s().createElement("td",{style:{width:"120px"},className:"book_rating",dangerouslySetInnerHTML:{__html:t}}),s().createElement("td",{style:{width:"257px"}},s().createElement("div",{className:"progress"},s().createElement("div",{className:"progress-bar progress-bar-striped",role:"progressbar",style:{width:a+"%"},"aria-valuenow":a,"aria-valuemin":"0","aria-valuemax":"100"}))),s().createElement("td",null,e[1]))}))))))}}class g extends n.Component{constructor(e){super(e),this.state={year:(new Date).getFullYear(),readingYears:[]}}changeYear(e){this.setState({year:e.target.value})}componentDidMount(){(0,r.getReadingYears)().then((e=>{this.setState({readingYears:e})})),(0,r.getRatingsCount)(this.state.year).then((e=>{console.log(e)}))}render(){return window.location.href.split("/"),s().createElement(s().Fragment,null,s().createElement(d.Z,null),s().createElement("div",{className:"content"},s().createElement("div",{className:"container-fluid"},s().createElement("div",{className:"row"},s().createElement("div",{className:"col-md-8"},s().createElement(o,{year:this.state.year}),s().createElement(h,{year:this.state.year})),s().createElement("div",{className:"col-md-4"},s().createElement(m,{year:this.state.year}),s().createElement(l,{year:this.state.year}),s().createElement(p,{year:this.state.year}))))))}}}}]);