Advance on client side
[vchess.git] / client / client_OLD / views / app.pug
1 doctype html
2 html
3 main#VueElement
4 my-upsert-user
5 .container
6 .row(v-show="display=='index'")
7 .row
8 .col-sm-12.col-md-10.col-md-offset-1.col-lg-8.col-lg-offset-2
9 label.drawer-toggle(for="drawerControl")
10 input#drawerControl.drawer(type="checkbox")
11 #menuBar
12 label.drawer-close(for="drawerControl")
13 a.icon-link(href="/")
14 i(data-feather="home")
15 a(href="#room")
16 =translations["Hall"]
17 a(href="#tabGames")
18 =translations["My games"]
19 a(href="#rules")
20 =translations["Rules"]
21 a(href="#problems")
22 =translations["Problems"]
23 #userMenu.clickable.right-menu(onClick="doClick('modalUser')")
24 .info-container
25 if !user.email
26 p
27 span Login
28 span.icon-user
29 else
30 p
31 span Update
32 span.icon-user
33 #flagMenu.clickable.right-menu(onClick="doClick('modalLang')")
34 img(src="/images/flags/" + lang + ".svg")
35 #settings.clickable(v-show="display!='index'" onClick="doClick('modalSettings')")
36 i(data-feather="settings")
37 #mainTitle.clickable(onClick="doClick('modalWelcome')")
38 .info-container
39 p Introduction
40 .row
41 .col-sm-12.col-md-10.col-md-offset-1.col-lg-8.col-lg-offset-2
42 .row(v-show="display=='variants'")
43 .col-sm-12.col-md-10.col-md-offset-1.col-lg-8.col-lg-offset-2
44 label(for="prefixFilter") Type first letters...
45 input#prefixFilter(v-model="curPrefix")
46 my-variant-summary(v-for="(v,idx) in sortedCounts"
47 v-bind:vobj="v" v-bind:index="idx" v-bind:key="v.name")
48 .row(v-show="display=='correspondance'")
49 my-correspondance
50 .row
51 my-room(v-show="display=='room'" :conn="conn" :settings="settings")
52 my-tab-games(v-show="display=='tabGames'")
53 my-rules(v-show="display=='rules'" :settings="settings")
54 my-problems(v-show="display=='problems'" :prob-id="probId" :settings="settings")
55 my-game(v-show="display=='game'" :game-ref="gameRef" :conn="conn"
56 :allow-chat="allowChat" :allow-movelist="allowMovelist"
57 :mode="mode" :settings="settings" @game-over="archiveGame")
58
59 footer.col-sm-12.col-md-10.col-md-offset-1.col-lg-8.col-lg-offset-2.text-center
60 div
61 a(href="https://github.com/yagu0/vchess") Source code
62 p.clickable(onClick="document.getElementById('modalContact').checked=true")
63 =translations["Contact form"]
64
65 script.
66 const translations = !{JSON.stringify(translations)};
67 const user = !{JSON.stringify(user)};
68 const variantArray = !{JSON.stringify(variantArray)};
69 // TODO: get rid of underscore
70 // (used essentially for _.random(), _.sample() and _.range())
71 script(src="//cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js")
72 // TODO: add only the necessary icons to mini-css custom build
73 script(src="//unpkg.com/feather-icons")
74 if development
75 script(src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js")
76 else
77 script(src="https://cdn.jsdelivr.net/npm/vue")
78 script(src="/javascripts/utils/printDiagram.js")
79 script(src="/javascripts/utils/datetime.js")
80 script(src="/javascripts/utils/squareId.js")
81 script(src="/javascripts/utils/misc.js")
82 script(src="/javascripts/utils/ajax.js")
83 script(src="/javascripts/utils/array.js")
84 script(src="/javascripts/shared/nbPlayers.js")
85 script(src="/javascripts/shared/challengeCheck.js")
86 script(src="/javascripts/shared/userCheck.js")
87 script(src="/javascripts/components/upsertUser.js")
88 script(src="/javascripts/components/variantSummary.js")
89 script(src="/javascripts/components/correspondance.js")
90 script(src="/javascripts/components/board.js")
91 script(src="/javascripts/components/chat.js")
92 script(src="/javascripts/components/gameList.js")
93 script(src="/javascripts/components/challengeList.js")
94 script(src="/javascripts/components/moveList.js")
95 script(src="/javascripts/components/game.js")
96 script(src="/javascripts/components/rules.js")
97 script(src="/javascripts/components/room.js")
98 script(src="/javascripts/components/tabGames.js")
99 script(src="/javascripts/components/problemSummary.js")
100 script(src="/javascripts/components/problems.js")
101 script(src="/javascripts/base_rules.js")
102 script(src="/javascripts/contactForm.js")
103 script(src="/javascripts/socket_url.js")
104 script(src="/javascripts/index.js")
105 script(src="/javascripts/variant.js")
106 script(src="/javascripts/app.js")