<!DOCTYPE html> <html lang="en"> <head> <!-- Load required Bootstrap and BootstrapVue CSS --> <link type="text/css" rel="stylesheet" href="//unpkg.com/bootstrap/dist/css/bootstrap.min.css"/> <link type="text/css" rel="stylesheet" href="//unpkg.com/bootstrap-vue@^2/dist/bootstrap-vue.min.css"/> <!-- Load polyfills to support older browsers --> <script src="//polyfill.io/v3/polyfill.min.js?features=es2015%2CMutationObserver"></script> <!-- Load Vue followed by BootstrapVue --> <script src="//unpkg.com/vue@^2/dist/vue.min.js"></script> <script src="//unpkg.com/bootstrap-vue@^2/dist/bootstrap-vue.min.js"></script> <script src="https://unpkg.com/axios/dist/axios.min.js"></script> <meta charset="UTF-8"> <title>Memes</title> </head> <body> <div id="app"> <b-navbar> <b-navbar-brand>Emojys</b-navbar-brand> <b-navbar-nav> <b-nav-item v-for="item in nav" :href="item.url" :active="item.name === 'Meme'" :key="item.key">{{ item.name }} </b-nav-item> </b-navbar-nav> </b-navbar> <b-navbar> <b-navbar-nav> <b-nav-item active href="/emojy/stats">Stats</b-nav-item> <b-nav-item href="/emojy/list">List</b-nav-item> <b-nav-item href="/emojy/new">Upload</b-nav-item> </b-navbar-nav> </b-navbar> <div style="background-color:red;" variant="error" v-if="err != ''" @click="err = ''"> {{ err }} </div> <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'"> <span v-if="emojy.onServer">✅</span> <span v-else>❎</span> - </span> <span v-if="emojy.url"> <img :src="emojy.url" :alt="emojy.name" class="img-thumbnail" style="max-width: 64px; max-height: 64px"/> {{emojy.emojy}} </span> <span v-else>{{emojy.emojy}}</span> </li> </ul> </li> </ul> </div> <script> var app = new Vue({ el: '#app', data: function () { return { err: '', view: '', nav: [], results: [], fileList: {}, image: null, password: '' } }, watch: { view(newView, oldView) { this.err = ''; } }, mounted() { axios.get('/nav') .then(resp => { this.nav = resp.data; }) .catch(err => console.log(err)) this.refresh(); }, methods: { refresh: function () { axios.get('/emojy/all') .then(resp => { this.results = [resp.data["emojy"], resp.data["unknown"], resp.data["emoji"]] this.err = '' }) .catch(err => (this.err = err)) axios.get('/emojy/allFiles') .then(resp => { this.fileList = resp.data this.err = '' }) .catch(err => (this.err = err)) }, } }) </script> </body> </html>