X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=client%2Fsrc%2Fviews%2FHall.vue;h=db8f528b00f069f844b125e83a75715c849dc984;hb=120fe373ca3b9e83e33bd59979af10fe09350fc5;hp=1dd72b415ed130ddcb809aa3a880fcd14cfcd5bb;hpb=dd75774d31a140cabf80790bdade9a40048c38d5;p=vchess.git
diff --git a/client/src/views/Hall.vue b/client/src/views/Hall.vue
index 1dd72b41..db8f528b 100644
--- a/client/src/views/Hall.vue
+++ b/client/src/views/Hall.vue
@@ -1,449 +1,728 @@
main
+ input#modalInfo.modal(type="checkbox")
+ div#infoDiv(role="dialog" data-checkbox="modalInfo" aria-labelledby="infoMessage")
+ .card.smallpad.small-modal.text-center
+ label.modal-close(for="modalInfo")
+ h3#infoMessage.section
+ p(v-html="infoMessage")
input#modalNewgame.modal(type="checkbox")
- div(role="dialog" aria-labelledby="titleFenedit")
- .card.smallpad
+ div#newgameDiv(role="dialog" data-checkbox="modalNewgame"
+ aria-labelledby="titleFenedit")
+ .card.smallpad(@keyup.enter="newChallenge")
label#closeNewgame.modal-close(for="modalNewgame")
fieldset
- label(for="selectVariant") {{ st.tr["Variant"] }}
+ label(for="selectVariant") {{ st.tr["Variant"] }} *
select#selectVariant(v-model="newchallenge.vid")
- option(v-for="v in st.variants" :value="v.id") {{ v.name }}
+ option(v-for="v in st.variants" :value="v.id"
+ :selected="newchallenge.vid==v.id")
+ | {{ v.name }}
fieldset
- label(for="selectNbPlayers") {{ st.tr["Number of players"] }}
- select#selectNbPlayers(v-model="newchallenge.nbPlayers")
- option(v-show="possibleNbplayers(2)" value="2" selected) 2
- option(v-show="possibleNbplayers(3)" value="3") 3
- option(v-show="possibleNbplayers(4)" value="4") 4
- fieldset
- label(for="timeControl") {{ st.tr["Time control"] }}
+ label(for="timeControl") {{ st.tr["Time control"] }} *
+ div#predefinedTimeControls
+ button 3+2
+ button 5+3
+ button 15+5
input#timeControl(type="text" v-model="newchallenge.timeControl"
- placeholder="3m+2s, 1h+30s, 7d+1d ...")
- fieldset(v-if="st.user.id > 0")
- label(for="selectPlayers") {{ st.tr["Play with? (optional)"] }}
- #selectPlayers
- input(type="text" v-model="newchallenge.to[0]")
- input(v-show="newchallenge.nbPlayers>=3" type="text"
- v-model="newchallenge.to[1]")
- input(v-show="newchallenge.nbPlayers==4" type="text"
- v-model="newchallenge.to[2]")
+ placeholder="5+0, 1h+30s, 7d+1d ...")
fieldset(v-if="st.user.id > 0")
- label(for="inputFen") {{ st.tr["FEN (optional)"] }}
+ label(for="selectPlayers") {{ st.tr["Play with?"] }}
+ 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")
button(@click="newChallenge") {{ st.tr["Send challenge"] }}
.row
- .col-sm-12.col-md-5.col-md-offset-1.col-lg-4.col-lg-offset-2
- .button-group
- button(@click="cpdisplay='challenges'") Challenges
- button(@click="cpdisplay='players'") Players
- ChallengeList(v-show="cpdisplay=='challenges'"
- :challenges="challenges" @click-challenge="clickChallenge")
- #players(v-show="cpdisplay=='players'")
- h3 Online players
- .player(v-for="p in uniquePlayers" @click="tryChallenge(p)"
- :class="{anonymous: !!p.count}"
- )
- | {{ p.name + (!!p.count ? " ("+p.count+")" : "") }}
+ .col-sm-12
+ button#newGame(onClick="doClick('modalNewgame')") {{ st.tr["New game"] }}
.row
.col-sm-12.col-md-10.col-md-offset-1.col-lg-8.col-lg-offset-2
- button(onClick="doClick('modalNewgame')") New game
- .row
- .col-sm-12.col-md-10.col-md-offset-1.col-lg-8.col-lg-offset-2
- .button-group
- button(@click="gdisplay='live'") Live games
- button(@click="gdisplay='corr'") Correspondance games
- GameList(v-show="gdisplay=='live'" :games="liveGames"
- @show-game="showGame")
- GameList(v-show="gdisplay=='corr'" :games="corrGames"
- @show-game="showGame")
+ div
+ .button-group
+ button(@click="(e) => setDisplay('c','live',e)" class="active")
+ | {{ st.tr["Live challenges"] }}
+ button(@click="(e) => setDisplay('c','corr',e)")
+ | {{ 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")
+ #people
+ h3.text-center {{ st.tr["Who's there?"] }}
+ #players
+ p(v-for="sid in Object.keys(people)" v-if="!!people[sid].name")
+ span {{ people[sid].name }}
+ button.player-action(
+ v-if="people[sid].name != st.user.name"
+ @click="challOrWatch(sid, $event)"
+ )
+ | {{ st.tr[!!people[sid].gamer ? 'Playing' : 'Available'] }}
+ p.anonymous @nonymous ({{ anonymousCount }})
+ #chat
+ Chat(:newChat="newChat" @mychat="processChat")
+ .clearer
+ div
+ .button-group
+ button(@click="(e) => setDisplay('g','live',e)" class="active")
+ | {{ st.tr["Live games"] }}
+ button(@click="(e) => setDisplay('g','corr',e)")
+ | {{ st.tr["Correspondance games"] }}
+ GameList(v-show="gdisplay=='live'" :games="filterGames('live')"
+ @show-game="showGame")
+ GameList(v-show="gdisplay=='corr'" :games="filterGames('corr')"
+ @show-game="showGame")
-