X-Git-Url: https://git.auder.net/pieces/cn.svg?a=blobdiff_plain;f=client%2Fsrc%2Fviews%2FHall.vue;h=7a7f911b21a7739ce9a879113bebc578856b8864;hb=db1f1f9adb920605c7a16b060a7737e54636ee08;hp=6f2dfeab9b616c0a04869106e446361f1dcaa9e1;hpb=5fe7e71c7d34afbaed99d5bb75525db411bade61;p=vchess.git
diff --git a/client/src/views/Hall.vue b/client/src/views/Hall.vue
index 6f2dfeab..7a7f911b 100644
--- a/client/src/views/Hall.vue
+++ b/client/src/views/Hall.vue
@@ -1,55 +1,108 @@
main
input#modalInfo.modal(type="checkbox")
- div#infoDiv(role="dialog" data-checkbox="modalInfo")
+ div#infoDiv(
+ role="dialog"
+ data-checkbox="modalInfo"
+ )
.card.text-center
label.modal-close(for="modalInfo")
p(v-html="infoMessage")
+ input#modalAccept.modal(type="checkbox")
+ div#acceptDiv(role="dialog")
+ .card.text-center
+ p
+ span.variantName {{ curChallToAccept.vname }}
+ span {{ curChallToAccept.cadence }}
+ span {{ st.tr["with"] + " " + curChallToAccept.from.name }}
+ .diagram(v-html="tchallDiag")
+ .button-group#buttonsTchall
+ button.acceptBtn(@click="decisionChallenge(true)") {{ st.tr["Accept challenge?"] }}
+ button.refuseBtn(@click="decisionChallenge(false)") {{ st.tr["Refuse"] }}
input#modalNewgame.modal(type="checkbox")
- div#newgameDiv(role="dialog" data-checkbox="modalNewgame")
+ div#newgameDiv(
+ role="dialog"
+ data-checkbox="modalNewgame"
+ )
.card
label#closeNewgame.modal-close(for="modalNewgame")
- form(@submit.prevent="newChallenge()" @keyup.enter="newChallenge()")
+ div(@keyup.enter="newChallenge()")
fieldset
label(for="selectVariant") {{ st.tr["Variant"] }} *
- select#selectVariant(v-model="newchallenge.vid")
- option(v-for="v in st.variants" :value="v.id"
- :selected="newchallenge.vid==v.id")
+ select#selectVariant(
+ @change="loadNewchallVariant(trySetNewchallDiag)"
+ v-model="newchallenge.vid"
+ )
+ option(
+ v-for="v in st.variants"
+ :value="v.id"
+ :selected="newchallenge.vid==v.id"
+ )
| {{ v.name }}
fieldset
label(for="cadence") {{ st.tr["Cadence"] }} *
div#predefinedCadences
- button 3+2
- button 5+3
- button 15+5
- input#cadence(type="text" v-model="newchallenge.cadence"
- placeholder="5+0, 1h+30s, 7d+1d ...")
+ button(type="button") 5+3
+ button(type="button") 15+5
+ button(type="button") 45+30
+ button(type="button") 7d+2d
+ input#cadence(
+ type="text"
+ v-model="newchallenge.cadence"
+ placeholder="5+0, 1h+30s, 7d+1d ..."
+ )
fieldset(v-if="st.user.id > 0")
label(for="selectPlayers") {{ st.tr["Play with?"] }}
- input#selectPlayers(type="text" v-model="newchallenge.to")
+ input#selectPlayers(
+ type="text"
+ v-model="newchallenge.to"
+ )
fieldset(v-if="st.user.id > 0 && newchallenge.to.length > 0")
- label(for="inputFen") FEN
- input#inputFen(type="text" v-model="newchallenge.fen")
+ input#inputFen(
+ placeholder="FEN"
+ @input="trySetNewchallDiag()"
+ type="text"
+ v-model="newchallenge.fen"
+ )
+ .diagram(v-html="newchallenge.diag")
button(@click="newChallenge()") {{ st.tr["Send challenge"] }}
- input#modalPeople.modal(type="checkbox" @click="resetChatColor()")
- div#peopleWrap(role="dialog" data-checkbox="modalPeople")
+ input#modalPeople.modal(
+ type="checkbox"
+ @click="resetChatColor()"
+ )
+ div#peopleWrap(
+ role="dialog"
+ data-checkbox="modalPeople"
+ )
.card
label.modal-close(for="modalPeople")
#people
#players
- p(v-for="sid in Object.keys(people)" v-if="!!people[sid].name")
+ p(
+ v-for="sid in Object.keys(people)"
+ v-if="!!people[sid].name"
+ )
span {{ people[sid].name }}
- button.player-action(v-if="sid!=st.user.sid || isGamer(sid)" @click="challOrWatch(sid)")
+ button.player-action(
+ v-if="isGamer(sid) || (st.user.id > 0 && sid!=st.user.sid)"
+ @click="challOrWatch(sid)"
+ )
| {{ getActionLabel(sid) }}
p.anonymous @nonymous ({{ anonymousCount }})
#chat
- Chat(:newChat="newChat" @mychat="processChat" :pastChats="[]")
+ Chat(
+ :newChat="newChat"
+ @mychat="processChat"
+ :pastChats="[]"
+ )
.clearer
.row
.col-sm-12.col-md-10.col-md-offset-1.col-lg-8.col-lg-offset-2
.button-group
- button#peopleBtn(onClick="doClick('modalPeople')") {{ st.tr["Social"] }}
- button(onClick="doClick('modalNewgame')") {{ st.tr["New game"] }}
+ button#peopleBtn(onClick="window.doClick('modalPeople')")
+ | {{ st.tr["Who's there?"] }}
+ button(onClick="window.doClick('modalNewgame')")
+ | {{ st.tr["New game"] }}
.row
.col-sm-12.col-md-10.col-md-offset-1.col-lg-8.col-lg-offset-2
div#div2
@@ -58,20 +111,34 @@ main
| {{ st.tr["Live challenges"] }}
button.tabbtn#btnCcorr(@click="setDisplay('c','corr',$event)")
| {{ st.tr["Correspondance challenges"] }}
- ChallengeList(v-show="cdisplay=='live'"
- :challenges="filterChallenges('live')" @click-challenge="clickChallenge")
- ChallengeList(v-show="cdisplay=='corr'"
- :challenges="filterChallenges('corr')" @click-challenge="clickChallenge")
+ ChallengeList(
+ v-show="cdisplay=='live'"
+ :challenges="filterChallenges('live')"
+ @click-challenge="clickChallenge"
+ )
+ ChallengeList(
+ v-show="cdisplay=='corr'"
+ :challenges="filterChallenges('corr')"
+ @click-challenge="clickChallenge"
+ )
div#div3
.button-group
button.tabbtn#btnGlive(@click="setDisplay('g','live',$event)")
| {{ st.tr["Live games"] }}
button.tabbtn#btnGcorr(@click="setDisplay('g','corr',$event)")
| {{ st.tr["Correspondance games"] }}
- GameList(v-show="gdisplay=='live'" :games="filterGames('live')"
- :showBoth="true" @show-game="showGame")
- GameList(v-show="gdisplay=='corr'" :games="filterGames('corr')"
- :showBoth="true" @show-game="showGame")
+ GameList(
+ v-show="gdisplay=='live'"
+ :games="filterGames('live')"
+ :showBoth="true"
+ @show-game="showGame"
+ )
+ GameList(
+ v-show="gdisplay=='corr'"
+ :games="filterGames('corr')"
+ :showBoth="true"
+ @show-game="showGame"
+ )
@@ -771,7 +910,7 @@ export default {
padding: 15px 0
max-width: 430px
-#newgameDiv > .card
+#newgameDiv > .card, #acceptDiv > .card
max-width: 767px
max-height: 100%
@@ -794,21 +933,27 @@ div#peopleWrap > .card
width: 50%
position: relative
float: left
+
#chat
width: 50%
float: left
position: relative
+
@media screen and (max-width: 767px)
#players, #chats
width: 100%
+
#chat > .card
max-width: 100%
margin: 0;
border: none;
+
#players > p
margin-left: 5px
+
.anonymous
font-style: italic
+
button.player-action
margin-left: 32px
@@ -818,6 +963,24 @@ button.player-action
.tabbtn
background-color: #f9faee
+button.acceptBtn
+ background-color: lightgreen
+button.refuseBtn
+ background-color: red
+
+#buttonsTchall
+ margin-top: 10px
+
+.variantName
+ font-weight: bold
+
+.diagram
+ margin: 0 auto
+ max-width: 400px
+
+#inputFen
+ width: 100%
+
#div2, #div3
margin-top: 15px
@media screen and (max-width: 767px)