X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=views%2Findex.pug;h=011e4e965728208a88e78dae581fa658bd087907;hb=3acb852d971bc17d31ccc05756524f40038adf95;hp=4be9cf92950bbe740c447d8555122d9f24c38f80;hpb=ea6bb36e86f23f1046d3d1dd03cfb46d598f97f7;p=vchess.git diff --git a/views/index.pug b/views/index.pug index 4be9cf92..011e4e96 100644 --- a/views/index.pug +++ b/views/index.pug @@ -6,46 +6,57 @@ block css block content .container#indexPage .row - .col-sm-12 - h1.text-center(style="font-style:italic") Welcome to v[ariant] chess club ! - h2.text-center - span.help(onClick="document.getElementById('modal-help').checked=true") Help ? - a(href="/demo.webm") Demo ! - input#modal-help.modal(type="checkbox") + .col-sm-12.col-md-10.col-md-offset-1.col-lg-8.col-lg-offset-2 + h1#main-title.text-center + img(src="/images/index/unicorn.svg") + span vchess.club + img(src="/images/index/wildebeest.svg") + h2#needHelp.text-center( + onClick="document.getElementById('modalHelp').checked=true") + | Need help ? + input#modalHelp.modal(type="checkbox") div(role="dialog") - .card - label.modal-close(for="modal-help") - h3.blue.section Modes - p.section. - Each variant page offers two modes: against a human or computer opponent, - which is here to help learning the rules. - h3.blue.section Comments - p.section. - All games start with a random assymetric position. #[br] - Games are untimed, and played anonymously. #[br] - No chat, to rather focus on the moves :) - h3.red.section Bug report - p.section. - If you find a bug in a game, please follow this procedure: #[br] - 1. stop playing: click on the resign button; #[br] - 2. click on the PGN to download it; #[br] - 3. send an email to - #[a(href="mailto:contact@vchess.club?subject=[vchess.club] bug report") contact@vchess.club] - with relevant comments and the PGN attached. Thank you! - input#modal-welcome.modal(type="checkbox") + #help.card + label.modal-close(for="modalHelp") + .section + p.emphasis First: watch #[a(href="/demo.webm") demo video] ! + p Then click on a variant... Reminder: + ul + li All games start with a random assymetric position. + li Games are untimed, and played anonymously. + li No chat while playing, to focus on the moves. + .section + h3.red Bug report + p + | If you find a bug in a game, please follow this procedure: #[br] + | 1. stop playing: click on the resign button; #[br] + | 2. download the game as PGN; #[br] + | 3. send an email to + a(href="mailto:contact@vchess.club?subject=[vchess.club] bug report") + | contact@vchess.club + | with comments + PGN attached. + input#modalB4welcome.modal(type="checkbox") + div(role="dialog") + #b4welcome.card.text-center + label.modal-close(for="modalB4welcome") + h3.blue First visit? + p Please + span#readThis(@click="showWelcomeMsg") read this + span  before playing! + input#modalWelcome.modal(type="checkbox") div(role="dialog") #welcome.card.text-center - label.modal-close(for="modal-welcome") - h3.blue.section Welcome to vchess.club! + label.modal-close(for="modalWelcome") + h3.blue.section Welcome to v[ariant]chess.club! .section - p A fun place to play chess variants in real time! + p A fun place to play chess variants in real time. p But wait... what is a chess variant? img(src="/images/Hexagonal_chess.svg") p. As suggested by the picture, a variant setup generally looks more or less like a chessboard with regular pieces - (otherwise it's no longer a variant but a whole new game!). - p(style="font-style:italic;color:purple") However... + (otherwise it's no longer a variant but a whole new game). + p.emphasis.purple However... p Each variant has its own new rules, which can involve table.list-table tbody @@ -61,32 +72,34 @@ block content td ...and so on .section p. - Example: imagine that a capture is an atomic explosion, wiping all adjacent squares - – except the pawns, which as cockroaches can resist this kind of event. + Example: imagine that a capture is an atomic explosion, wiping all + adjacent squares – except the pawns, which as cockroaches can + resist this kind of event. p Also state a goal: make the opponent's king explode. p → Congrats, you defined Atomic chess! (Playable here) .section - p(style="font-style:italic;color:purple") OK, this all sounds interesting, but why would that be fun? + p.emphasis.purple OK, this all sounds interesting, but why would that be fun? p. Because all games here start with a random setup: no more boring - openings memorization, you have to rely on your chess skills only :) - p Moreover, I claim that the chosen variants here are fun to play :P + openings memorization, you have to rely on your chess skills only. + p Moreover, I claim that the chosen variants here are fun to play :) + - + var wikipediaUrl = "https://en.wikipedia.org/wiki/" + + "List_of_chess_variants#/media/File:Hexagonal_chess.svg"; p. - For informations about hundreds (if not thousands!) of variants, you - can visit the excellent #[a(href="https://www.chessvariants.com/") chessvariants] website. - p(style="cursor:pointer;color:darkgrey" onClick="setCookie('visited','1');document.getElementById('modal-welcome').checked=false") Do not annoy me again! - p(style="font-size:0.8em") Image credit: #[a(href="https://en.wikipedia.org/wiki/List_of_chess_variants#/media/File:Hexagonal_chess.svg") Wikpedia] + For informations about hundreds (if not thousands) of variants, you + can visit the excellent + #[a(href="https://www.chessvariants.com/") chessvariants] website. + p#disableMsg(@click="markAsVisited") + | Click here to not show this message next time + p.smallfont Image credit: #[a(href=wikipediaUrl) Wikipedia] .row - my-variant-summary( - v-for="(v,idx) in sortedCounts", - v-show="v.name.startsWith(curPrefix)", - v-bind:vobj="v", - v-bind:key="v.name") + my-variant-summary(v-for="(v,idx) in sortedCounts" + v-bind:vobj="v" v-bind:index="idx" v-bind:key="v.name") block javascripts script. const variantArray = !{JSON.stringify(variantArray)}; - //JSON.parse("!{variantArray}".replace(/\"/g,'"')); script(src="/javascripts/utils/misc.js") script(src="/javascripts/utils/socket_url.js") script(src="/javascripts/components/variantSummary.js")