Compare commits

...

2 Commits

Author SHA1 Message Date
Chris Sexton 09cc6f75c3 emojy: reorder the stats page 2022-07-23 12:58:33 -04:00
Chris Sexton bffc1589c2 emojy: add a threshold for stats page 2022-07-23 12:58:33 -04:00
3 changed files with 9 additions and 9 deletions

View File

@ -207,12 +207,12 @@ func InvertEmojyList(emojy map[string]string) map[string]string {
return out
}
func (p *EmojyPlugin) allCounts() (map[string][]EmojyCount, error) {
func (p *EmojyPlugin) allCounts(threshold int) (map[string][]EmojyCount, error) {
out := map[string][]EmojyCount{}
onServerList := InvertEmojyList(p.b.GetEmojiList(true))
q := `select emojy, count(observed) as count from emojyLog group by emojy order by count desc`
q := `select emojy, count(observed) as count from emojyLog group by emojy having count(observed) > ? order by count desc`
result := []EmojyCount{}
err := p.db.Select(&result, q)
err := p.db.Select(&result, q, threshold)
if err != nil {
return nil, err
}

View File

@ -43,10 +43,9 @@
{{ err }}
</div>
<ul>
<li v-for="(category, name) in results" key="name">
{{name}}:
<ul>
<ul style="list-style-type: none;">
<li v-for="category in results">
<ul v-if="category" style="list-style-type: none;">
<li v-for="emojy in category" key="emojy">
{{emojy.count}} -
<span v-if="name != 'emoji'">
@ -96,7 +95,7 @@
refresh: function () {
axios.get('/emojy/all')
.then(resp => {
this.results = resp.data
this.results = [resp.data["emojy"], resp.data["unknown"], resp.data["emoji"]]
this.err = ''
})
.catch(err => (this.err = err))

View File

@ -44,7 +44,8 @@ func (p *EmojyPlugin) handlePage(file string) func(w http.ResponseWriter, r *htt
}
func (p *EmojyPlugin) handleAll(w http.ResponseWriter, r *http.Request) {
emojy, err := p.allCounts()
threshold := p.c.GetInt("emojy.statthreshold", 1)
emojy, err := p.allCounts(threshold)
if err != nil {
w.WriteHeader(500)
log.Error().Err(err).Msgf("handleAll")