Compare commits
	
		
			2 Commits
		
	
	
		
			75bea7c05c
			...
			c02f595606
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| c02f595606 | |||
| 54bc9c31db | 
| @ -20,3 +20,4 @@ MULTI_INTERNAL_HOST=multi | ||||
| MULTI_INTERNAL_PORT=5000 | ||||
| MULTI_WS_URL=mapguesser-dev.ch:8090 | ||||
| MULTI_WS_PORT=8090 | ||||
| ENABLE_GAME_FOR_GUESTS=0 | ||||
|  | ||||
| @ -2,6 +2,7 @@ | ||||
| 
 | ||||
| use DateTime; | ||||
| use Faker\Factory; | ||||
| use MapGuesser\Interfaces\Authorization\ISecured; | ||||
| use MapGuesser\Interfaces\Request\IRequest; | ||||
| use MapGuesser\Response\HtmlContent; | ||||
| use MapGuesser\Response\JsonContent; | ||||
| @ -14,7 +15,7 @@ use MapGuesser\Repository\MapRepository; | ||||
| use MapGuesser\Repository\MultiRoomRepository; | ||||
| use MapGuesser\Response\Redirect; | ||||
| 
 | ||||
| class GameController | ||||
| class GameController implements ISecured | ||||
| { | ||||
|     private IRequest $request; | ||||
| 
 | ||||
| @ -35,6 +36,11 @@ class GameController | ||||
|         $this->mapRepository = new MapRepository(); | ||||
|     } | ||||
| 
 | ||||
|     public function authorize(): bool | ||||
|     { | ||||
|         return !empty($_ENV['ENABLE_GAME_FOR_GUESTS']) || $this->request->user() !== null; | ||||
|     } | ||||
| 
 | ||||
|     public function getGame(): IContent | ||||
|     { | ||||
|         $mapId = (int) $this->request->query('mapId'); | ||||
|  | ||||
| @ -1,6 +1,7 @@ | ||||
| <?php namespace MapGuesser\Controller; | ||||
| 
 | ||||
| use DateTime; | ||||
| use MapGuesser\Interfaces\Authorization\ISecured; | ||||
| use MapGuesser\Interfaces\Request\IRequest; | ||||
| use MapGuesser\Util\Geo\Position; | ||||
| use MapGuesser\Response\JsonContent; | ||||
| @ -12,7 +13,7 @@ use MapGuesser\Repository\MultiRoomRepository; | ||||
| use MapGuesser\Repository\PlaceRepository; | ||||
| use MapGuesser\Repository\UserPlayedPlaceRepository; | ||||
| 
 | ||||
| class GameFlowController | ||||
| class GameFlowController implements ISecured | ||||
| { | ||||
|     const NUMBER_OF_ROUNDS = 5; | ||||
|     const MAX_SCORE = 1000; | ||||
| @ -39,6 +40,11 @@ class GameFlowController | ||||
|         $this->userPlayedPlaceRepository = new UserPlayedPlaceRepository(); | ||||
|     } | ||||
| 
 | ||||
|     public function authorize(): bool | ||||
|     { | ||||
|         return !empty($_ENV['ENABLE_GAME_FOR_GUESTS']) || $this->request->user() !== null; | ||||
|     } | ||||
| 
 | ||||
|     public function initialData(): IContent | ||||
|     { | ||||
|         $mapId = (int) $this->request->query('mapId'); | ||||
|  | ||||
| @ -62,12 +62,16 @@ TODO: condition! | ||||
|                     </div> | ||||
|                 </div> | ||||
|                 <div class="buttonContainer"> | ||||
|                     <?php if ($isAdmin): ?>
 | ||||
|                         <button class="button fullWidth noRightRadius playButton" data-map-id="<?= $map['id'] ?>" data-map-name="<?= htmlspecialchars($map['name']) ?>" title="Play map '<?= $map['name'] ?>'">Play this map</button> | ||||
|                         <a class="button yellow fullWidth noLeftRadius noRightRadius" href="/admin/mapEditor/<?= $map['id']; ?>" title="Edit map '<?= $map['name'] ?>'">Edit</a> | ||||
|                         <button class="button red fullWidth noLeftRadius deleteButton" data-map-id="<?= $map['id'] ?>" data-map-name="<?= htmlspecialchars($map['name']) ?>" title="Delete map '<?= $map['name'] ?>'">Delete</button> | ||||
|                     <?php if (!empty($_ENV['ENABLE_GAME_FOR_GUESTS']) || Container::$request->user()): ?>
 | ||||
|                         <?php if ($isAdmin): ?>
 | ||||
|                             <button class="button fullWidth noRightRadius playButton" data-map-id="<?= $map['id'] ?>" data-map-name="<?= htmlspecialchars($map['name']) ?>" title="Play map '<?= $map['name'] ?>'">Play this map</button> | ||||
|                             <a class="button yellow fullWidth noLeftRadius noRightRadius" href="/admin/mapEditor/<?= $map['id']; ?>" title="Edit map '<?= $map['name'] ?>'">Edit</a> | ||||
|                             <button class="button red fullWidth noLeftRadius deleteButton" data-map-id="<?= $map['id'] ?>" data-map-name="<?= htmlspecialchars($map['name']) ?>" title="Delete map '<?= $map['name'] ?>'">Delete</button> | ||||
|                         <?php else: ?>
 | ||||
|                             <button class="button fullWidth playButton" data-map-id="<?= $map['id'] ?>" data-map-name="<?= htmlspecialchars($map['name']) ?>" title="Play map '<?= $map['name'] ?>'">Play this map</button> | ||||
|                         <?php endif; ?>
 | ||||
|                     <?php else: ?>
 | ||||
|                         <button class="button fullWidth playButton" data-map-id="<?= $map['id'] ?>" data-map-name="<?= htmlspecialchars($map['name']) ?>" title="Play map '<?= $map['name'] ?>'">Play this map</button> | ||||
|                         <a href="/login" class="button fullWidth" title="Play map '<?= $map['name'] ?>'">Play this map</a> | ||||
|                     <?php endif; ?>
 | ||||
|                 </div> | ||||
|             </div> | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user