]> git.cworth.org Git - lmno.games/blobdiff - empathy/empathy.jsx
Add a containing div element to the "still waiting" component chunks
[lmno.games] / empathy / empathy.jsx
index 044d4e07ad5e3e62885648410f0d6977d5b62525..163b977cbb8c474560a4dfa9cf24c1a03926e56b 100644 (file)
@@ -569,19 +569,18 @@ class Ambiguities extends React.PureComponent {
       );
     }
 
-    if (this.props.players_judged.has(this.props.player.name)) {
-      return (
-        <div className="please-wait">
-          <h2>Submission received</h2>
-          <p>
-            The following players have completed judging:
-            {[...this.props.players_judged].join(', ')}
-          </p>
+    let still_waiting = null;
+    const judging_players = Object.keys(this.props.players_judging);
+    if (judging_players.length) {
+      still_waiting = (
+        <div>
           <p>
-            Still waiting for the following players:
+            Still waiting for the following player
+            {judging_players.length > 1 ? 's' : '' }
+            :
           </p>
           <ul>
-            {Object.keys(this.props.players_judging).map(player => {
+            {judging_players.map(player => {
               return (
                 <li
                   key={player}
@@ -593,6 +592,19 @@ class Ambiguities extends React.PureComponent {
               );
             })}
           </ul>
+        </div>
+      );
+    }
+
+    if (this.props.players_judged.has(this.props.player.name)) {
+      return (
+        <div className="please-wait">
+          <h2>Submission received</h2>
+          <p>
+            The following players have completed judging:{' '}
+            {[...this.props.players_judged].join(', ')}
+          </p>
+          {still_waiting}
           {move_on_button}
 
         </div>
@@ -611,6 +623,7 @@ class Ambiguities extends React.PureComponent {
           what goes around comes around, so it's best to be generous when
           judging.
         </p>
+        <h2>{this.props.prompt.prompt}</h2>
         {this.state.word_sets.map(set => {
           return (
             <div
@@ -731,19 +744,18 @@ class ActivePrompt extends React.PureComponent {
       );
     }
 
-    if (this.props.players_answered.has(this.props.player.name)) {
-      return (
-        <div className="please-wait">
-          <h2>Submission received</h2>
+    let still_waiting = null;
+    const answering_players = Object.keys(this.props.players_answering);;
+    if (answering_players.length) {
+      still_waiting = (
+        <div>
           <p>
-            The following players have submitted their answers:
-            {[...this.props.players_answered].join(', ')}
-          </p>
-          <p>
-          Still waiting for the following players:
+            Still waiting for the following player
+            {answering_players.length > 1 ? 's' : ''}
+            :
           </p>
           <ul>
-            {Object.keys(this.props.players_answering).map(player => {
+            {answering_players.map(player => {
               return (
                 <li
                   key={player}
@@ -755,6 +767,19 @@ class ActivePrompt extends React.PureComponent {
               );
             })}
           </ul>
+        </div>
+      );
+    }
+
+    if (this.props.players_answered.has(this.props.player.name)) {
+      return (
+        <div className="please-wait">
+          <h2>Submission received</h2>
+          <p>
+            The following players have submitted their answers:{' '}
+            {[...this.props.players_answered].join(', ')}
+          </p>
+          {still_waiting}
           {move_on_button}
 
         </div>
@@ -767,7 +792,8 @@ class ActivePrompt extends React.PureComponent {
         <p>
           Remember, you're trying to match your answers with
           what the other players submit.
-          Give {this.props.prompt.items} answers for the following prompt:
+          Give {this.props.prompt.items} answer
+          {this.props.prompt.items > 1 ? 's' : ''} for the following prompt:
         </p>
         <h2>{this.props.prompt.prompt}</h2>
         <form onSubmit={this.handle_submit}>
@@ -1062,6 +1088,7 @@ class Game extends React.PureComponent {
     if (state.scores) {
       return (
         <div className="scores">
+          <h2>{state.active_prompt.prompt}</h2>
           <h2>Scores</h2>
           <ul>
             {state.scores.scores.map(score => {
@@ -1077,7 +1104,7 @@ class Game extends React.PureComponent {
             {state.scores.words.map(word => {
               return (
                 <li key={word.word}>
-                  {word.word}: {word.players.join(', ')}
+                  {word.word} ({word.players.length}): {word.players.join(', ')}
                 </li>
               );
             })}