Draft code reorganisation (+ fix Alice rules + stateless VariantRules object)
[vchess.git] / views / variant.pug
index e744962..ca9091b 100644 (file)
@@ -1,36 +1,53 @@
 extends layout
 
 block css
-       link(rel="stylesheet" href="//fonts.googleapis.com/icon?family=Material+Icons")
        link(rel="stylesheet" href="/stylesheets/variant.css")
 
 block content
        .container#variantPage
                .row
                        .col-sm-12.col-md-10.col-md-offset-1.col-lg-8.col-lg-offset-2
-                               h4.rulesTitle.text-center(v-on:click="display='rules'")
-                                       | #{variant} Rules
-                               my-rules(v-show="display=='rules'")
-                       .col-sm-12.col-md-10.col-md-offset-1.col-lg-8.col-lg-offset-2
-                               h4.rulesTitle.text-center(v-on:click="display='game'")
-                                       | #{variant} Game
-                               my-game(v-show="display=='game'")
-                       .col-sm-12.col-md-10.col-md-offset-1.col-lg-8.col-lg-offset-2
-                               h4.rulesTitle.text-center(v-on:click="display='problems'")
-                                       | #{variant} Problems
-                               my-game(v-show="display=='problems'")
+                               label.drawer-toggle(for="drawer-control")
+                               input#drawer-control.drawer(type="checkbox")
+                               #menuBar
+                                       label.drawer-close(for="drawer-control")
+                                       a.icon-link(href="/")
+                                               i.material-icons home
+                                       a(href="#room" @click="setDisplay('room')")
+                                               =translations["Hall"]
+                                       a(href="#gameList" @click="setDisplay('gameList')")
+                                               =translations["Play"]
+                                       a(href="#rules" @click="setDisplay('rules')")
+                                               =translations["Rules"]
+                                       a(href="#problems" @click="setDisplay('problems')")
+                                               =translations["Problems"]
+                                       #settings.clickable(
+                                                       onClick="document.getElementById('modalSettings').checked=true")
+                                               i.material-icons settings
+               .row
+                       my-room(v-show="display=='room'")
+                       my-games-list(v-show="display=='gameList'")
+                       my-rules(v-show="display=='rules'")
+                       my-problems(v-show="display=='problems'")
+                       // my-game: for room and games-list components
+                       my-game(v-show="display=='game'" :gameId="")
 
 block javascripts
        script(src="/javascripts/utils/misc.js")
-       script(src="/javascripts/utils/socket_url.js")
        script(src="/javascripts/utils/array.js")
        script(src="/javascripts/utils/md5.js")
+       script(src="/javascripts/utils/printDiagram.js")
+       script(src="/javascripts/utils/ajax.js")
+       script(src="/javascripts/utils/datetime.js")
+       script(src="/javascripts/socket_url.js")
        script(src="/javascripts/base_rules.js")
        script(src="/javascripts/variants/" + variant + ".js")
        script.
-               const VariantRules = #{variant}Rules;
                const V = VariantRules; //because this variable is often used
                const variant = "#{variant}";
+               const problemArray = !{JSON.stringify(problemArray)};
        script(src="/javascripts/components/rules.js")
        script(src="/javascripts/components/game.js")
+       script(src="/javascripts/components/problemSummary.js")
        script(src="/javascripts/components/problems.js")
+       script(src="/javascripts/variant.js")