X-Git-Url: https://git.auder.net/pieces/cr.svg?a=blobdiff_plain;f=client%2Fsrc%2Fviews%2FHall.vue;h=a2ce34d9fd5d9409b0884d6b17e0925d9a3b6764;hb=25d183426e276870f57793f1f043c40a412d18c6;hp=c0736a1adc19a6e23069a831efb1d9fd32aad39f;hpb=1efe1d79400ff4b612e8d0fb820e6c4e15f801da;p=vchess.git
diff --git a/client/src/views/Hall.vue b/client/src/views/Hall.vue
index c0736a1a..a2ce34d9 100644
--- a/client/src/views/Hall.vue
+++ b/client/src/views/Hall.vue
@@ -1,89 +1,92 @@
main
+ input#modalInfo.modal(type="checkbox")
+ div(role="dialog" 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(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"] }}
select#selectVariant(v-model="newchallenge.vid")
- option(v-for="v in st.variants" :value="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
+ option(v-for="v in st.variants" :value="v.id"
+ :selected="newchallenge.vid==v.id")
+ | {{ v.name }}
fieldset
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 ...")
+ placeholder="5+0, 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]")
- fieldset(v-if="st.user.id > 0")
+ input#selectPlayers(type="text" v-model="newchallenge.to")
+ fieldset(v-if="st.user.id > 0 && newchallenge.to.length > 0")
label(for="inputFen") {{ st.tr["FEN (optional)"] }}
input#inputFen(type="text" v-model="newchallenge.fen")
button(@click="newChallenge") {{ st.tr["Send challenge"] }}
.row
- .col-sm-12.col-md-10.col-md-offset-1.col-lg-8.col-lg-offset-2
- button(onClick="doClick('modalNewgame')") New game
+ .col-sm-12
+ button#newGame(onClick="doClick('modalNewgame')") New game
.row
.col-sm-12.col-md-10.col-md-offset-1.col-lg-8.col-lg-offset-2
- .collapse
- input#challengeSection(type="radio" checked aria-hidden="true" name="accordion")
- label(for="challengeSection" aria-hidden="true") Challenges
- div
- .button-group
- button(@click="cdisplay='live'") Live Challenges
- button(@click="cdisplay='corr'") Correspondance challenges
- ChallengeList(v-show="cdisplay=='live'"
- :challenges="filterChallenges('live')" @click-challenge="clickChallenge")
- ChallengeList(v-show="cdisplay=='corr'"
- :challenges="filterChallenges('corr')" @click-challenge="clickChallenge")
- input#peopleSection(type="radio" aria-hidden="true" name="accordion")
- label(for="peopleSection" aria-hidden="true") People
- div
- .button-group
- button(@click="pdisplay='players'") Players
- button(@click="pdisplay='chat'") Chat
- #players(v-show="pdisplay=='players'")
- h3 Online players
- .player(v-for="p in uniquePlayers" @click="tryChallenge(p)"
- :class="{anonymous: !!p.count}"
+ div
+ .button-group
+ button(@click="(e) => setDisplay('c','live',e)" class="active")
+ | Live Challenges
+ button(@click="(e) => setDisplay('c','corr',e)")
+ | 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 Who's there?
+ #players
+ p(v-for="p in Object.values(people)" v-if="!!p.name")
+ span {{ p.name }}
+ button.player-action(
+ v-if="p.name != st.user.name"
+ @click="challOrWatch(p,$event)"
)
- | {{ p.name + (!!p.count ? " ("+p.count+")" : "") }}
- #chat(v-show="pdisplay=='chat'")
- h3 Chat (TODO)
- input#gameSection(type="radio" aria-hidden="true" name="accordion")
- label(for="gameSection" aria-hidden="true") Games
- div
- .button-group
- button(@click="gdisplay='live'") Live games
- button(@click="gdisplay='corr'") Correspondance games
- GameList(v-show="gdisplay=='live'" :games="filterGames('live')"
- @show-game="showGame")
- GameList(v-show="gdisplay=='corr'" :games="filterGames('corr')"
- @show-game="showGame")
+ | {{ whatPlayerDoes(p) }}
+ p.anonymous @nonymous ({{ anonymousCount }})
+ #chat
+ Chat(:players="[]")
+ .clearer
+ div
+ .button-group
+ button(@click="(e) => setDisplay('g','live',e)" class="active")
+ | Live games
+ button(@click="(e) => setDisplay('g','corr',e)")
+ | Correspondance games
+ GameList(v-show="gdisplay=='live'" :games="filterGames('live')"
+ @show-game="showGame")
+ GameList(v-show="gdisplay=='corr'" :games="filterGames('corr')"
+ @show-game="showGame")
-