X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=client%2Fsrc%2FApp.vue;h=def452626f009a2e17e84b5f65cb6f0a189b039d;hb=6e47d367d4b1b4500bc46d65b44c5e55b52221bb;hp=d2f4845f1cb7c00f0df4edb2f91cb06c517312b1;hpb=afd717788f50f92a5df6e5f1004354ff9ab0079d;p=vchess.git diff --git a/client/src/App.vue b/client/src/App.vue index d2f4845f..def45262 100644 --- a/client/src/App.vue +++ b/client/src/App.vue @@ -24,8 +24,7 @@ router-link(to="/problems") | {{ st.tr["Problems"] }} #rightMenu - .clickable(onClick="window.doClick('modalUser')") - | {{ st.user.id > 0 ? (st.user.name || "@nonymous") : "Login" }} + .clickable(onClick="window.doClick('modalUser')") {{ userName }} #divSettings.clickable(onClick="window.doClick('modalSettings')") span {{ st.tr["Settings"] }} img(src="/images/icons/settings.svg") @@ -34,10 +33,13 @@ .col-sm-12.col-md-10.col-md-offset-1.col-lg-8.col-lg-offset-2 footer router-link.menuitem(to="/about") {{ st.tr["About"] }} + router-link.menuitem#newsMenu(to="/news") {{ st.tr["News"] }} + a.menuitem(href="https://discord.gg/a9ZFKBe") + span Discord + img(src="/images/icons/discord.svg") a.menuitem(href="https://github.com/yagu0/vchess") span {{ st.tr["Code"] }} img(src="/images/icons/github.svg") - router-link.menuitem(to="/news") {{ st.tr["News"] }} p.clickable(onClick="window.doClick('modalContact')") | {{ st.tr["Contact"] }} @@ -47,6 +49,7 @@ import ContactForm from "@/components/ContactForm.vue"; import Settings from "@/components/Settings.vue"; import UpsertUser from "@/components/UpsertUser.vue"; import { store } from "@/store.js"; +import { ajax } from "@/utils/ajax.js"; export default { components: { ContactForm, @@ -54,9 +57,28 @@ export default { UpsertUser }, data: function() { - return { - st: store.state - }; + return { st: store.state }; + }, + mounted: function() { + ajax( + "/newsts", + "GET", + { + success: (res) => { + if (this.st.user.newsRead < res.timestamp) + document.getElementById("newsMenu").classList.add("somenews"); + } + } + ); + }, + computed: { + userName: function() { + return ( + this.st.user.id > 0 + ? (this.st.user.name || "@nonymous") + : "Login" + ); + } }, methods: { hideDrawer: function(e) { @@ -135,10 +157,11 @@ table padding: 0 10px 0 0 height: 100% & > span + padding-right: 5px vertical-align: middle & > img padding: 0 - height: 24px + height: 1.2em vertical-align: middle @media screen and (max-width: 767px) @@ -258,6 +281,19 @@ footer footer border: none +@media screen and (max-width: 420px) + .container + min-height: calc(100vh - 55px) + footer + height: 55px + display: block + padding: 5px 0 + +.menuitem.somenews + color: red + &:link, &:visited, &:hover + color: red + // Styles for diagrams and board (partial). // TODO: where to put that ? @@ -268,38 +304,57 @@ footer background-color: #6f8f57 div.board + user-select: none float: left height: 0 display: inline-block position: relative +div.board5 + width: 20% + padding-bottom: 20% + div.board8 width: 12.5% padding-bottom: 12.5% +div.board9 + width: 11.1% + padding-bottom: 11.1% + div.board10 width: 10% padding-bottom: 10% div.board11 width: 9.09% - padding-bottom: 9.1% + padding-bottom: 9.09% + +div.board12 + width: 8.33% + padding-bottom: 8.33% img.piece width: 100% -img.piece, img.mark-square +img.piece, img.mark-square, img.circle-square max-width: 100% height: auto display: block img.mark-square - opacity: 0.6 + opacity: .7 width: 76% position: absolute top: 12% left: 12% - opacity: .7 + +img.circle-square + opacity: 0.7 + width: 100% + position: absolute + top: 0 + left: 0 .in-shadow filter: brightness(50%)