X-Git-Url: https://git.auder.net/rpsls.js?a=blobdiff_plain;f=client%2Fsrc%2Fcomponents%2FMoveList.vue;h=ccb07758296e00fb40d3dce05b2b0b0a19a6a54e;hb=a06fc4ba49b535ba45d70ee7401c5d2e26faefa2;hp=1e19a2bdb77a70b2afd40c9fb97250bd400c1177;hpb=3837d4f7885a3c3cdb468da2f3fa3fa1e5a1415a;p=vchess.git
diff --git a/client/src/components/MoveList.vue b/client/src/components/MoveList.vue
index 1e19a2bd..ccb07758 100644
--- a/client/src/components/MoveList.vue
+++ b/client/src/components/MoveList.vue
@@ -1,156 +1,248 @@
div
+ input#modalAdjust.modal(type="checkbox")
+ div#adjuster(
+ role="dialog"
+ data-checkbox="modalAdjust"
+ )
+ .card.text-center
+ label.modal-close(for="modalAdjust")
+ label(for="boardSize") {{ st.tr["Board size"] }}
+ input#boardSize.slider(
+ type="range"
+ min="0"
+ max="100"
+ value="50"
+ @input="adjustBoard()"
+ )
+ #aboveMoves
+ // NOTE: variants pages already have a "Rules" link on top
+ span#rulesBtn(
+ v-if="!$route.path.match('/variants/')"
+ @click="$emit('showrules')"
+ )
+ | {{ st.tr["Rules"] }}
+ button.tooltip(
+ onClick="window.doClick('modalAdjust')"
+ :aria-label="st.tr['Resize board']"
+ )
+ img.inline(src="/images/icons/resize.svg")
+ button#analyzeBtn.tooltip(
+ v-if="canAnalyze"
+ @click="$emit('analyze')"
+ :aria-label="st.tr['Analyse']"
+ )
+ img.inline(src="/images/icons/analyse.svg")
+ #downloadDiv(v-if="canDownload")
+ a#download(href="#")
+ button.tooltip(
+ @click="$emit('download')"
+ :aria-label="st.tr['Download'] + ' PGN'"
+ )
+ img.inline(src="/images/icons/download.svg")
#scoreInfo(v-if="score!='*'")
- p {{ score }}
- p {{ message }}
- table#movesList
- tbody
- tr(v-for="moveIdx in evenNumbers")
- td {{ moveIdx / 2 + 1 }}
- td(:class="{'highlight-lm': cursor == moveIdx}"
- data-label="White move" @click="() => gotoMove(moveIdx)")
- | {{ moves[moveIdx].notation }}
- td(v-if="moveIdx < moves.length-1"
- :class="{'highlight-lm': cursor == moveIdx+1}"
- data-label="Black move" @click="() => gotoMove(moveIdx+1)")
- | {{ moves[moveIdx+1].notation }}
- // Else: just add an empty cell
- td(v-else)
+ span.score {{ score }}
+ span.score-msg {{ st.tr[message] }}
+ .moves-list(v-if="!['none','highlight'].includes(show)")
+ .tr(v-for="moveIdx in evenNumbers")
+ .td {{ firstNum + moveIdx / 2 }}
+ .td(v-if="moveIdx < moves.length-1 || show == 'all'"
+ :class="{'highlight-lm': cursor == moveIdx}"
+ @click="() => gotoMove(moveIdx)"
+ )
+ | {{ notation(moves[moveIdx]) }}
+ .td(
+ v-if="moveIdx < moves.length-1"
+ :class="{'highlight-lm': highlightBlackmove(moveIdx+1)}"
+ @click="() => gotoMove(moveIdx+1)"
+ )
+ | {{ notation(moves[moveIdx + 1]) }}
-
+#boardSizeBtnContainer
+ width: 100%
+ text-align: center
+
+[type="checkbox"]#modalAdjust+div .card
+ padding: 5px
+
+img.inline
+ height: 22px
+ @media screen and (max-width: 767px)
+ height: 18px
+
+#scoreInfo
+ margin: 10px 0
+ @media screen and (max-width: 767px)
+ margin: 5px 0
+
+span.score
+ display: inline-block
+ margin-left: 10px
+ font-weight: bold
+
+span.score-msg
+ display: inline-block
+ margin-left: 10px
+ font-style: italic
+
+#downloadDiv
+ display: inline-block
+ margin: 0
+
+span#rulesBtn
+ cursor: pointer
+ display: inline-block
+ margin: 0 10px
+ font-weight: bold
+
+button
+ margin: 0
+ &.active
+ background-color: #50E99A
+
+#aboveMoves button
+ padding-bottom: 5px
+