diff --git a/.do/deploy.template.yaml b/.do/deploy.template.yaml index 45b072b..5dc0630 100644 --- a/.do/deploy.template.yaml +++ b/.do/deploy.template.yaml @@ -10,6 +10,9 @@ spec: - key: APP_ENV scope: RUN_AND_BUILD_TIME value: prod + - key: COLLECTION_IS_REVEALED + scope: RUN_TIME + value: false - key: COLLECTION_WEBSITE scope: RUN_TIME value: https://www.example.com diff --git a/.env b/.env index 54c3700..f60a376 100644 --- a/.env +++ b/.env @@ -14,6 +14,7 @@ # https://symfony.com/doc/current/best_practices.html#use-environment-variables-for-infrastructure-configuration # General collection settings +COLLECTION_IS_REVEALED=true COLLECTION_WEBSITE=https://www.example.com/ COLLECTION_MAX_SUPPLY=10000 COLLECTION_ASSETS_EXTENSION=png diff --git a/config/services.yaml b/config/services.yaml index 368420b..1ebfde3 100644 --- a/config/services.yaml +++ b/config/services.yaml @@ -5,6 +5,7 @@ # https://symfony.com/doc/current/best_practices.html#use-parameters-for-application-configuration parameters: app.cache_expiration: '%env(int:CACHE_EXPIRATION)%' + app.collection_is_revealed: '%env(bool:COLLECTION_IS_REVEALED)%' app.collection_website: '%env(COLLECTION_WEBSITE)%' app.collection_max_supply: '%env(int:COLLECTION_MAX_SUPPLY)%' app.collection_assets_extension: '%env(COLLECTION_ASSETS_EXTENSION)%' diff --git a/src/Contract/AbstractNftController.php b/src/Contract/AbstractNftController.php index 97a8c02..628b52d 100644 --- a/src/Contract/AbstractNftController.php +++ b/src/Contract/AbstractNftController.php @@ -34,7 +34,9 @@ public function __construct( protected function isValidTokenId(int $tokenId): bool { - return $tokenId > 0 && $tokenId <= $this->cachedTotalSupplyProvider->getTotalSupply(); + $isRevealed = $this->getParameter('app.collection_is_revealed'); + + return $isRevealed && $tokenId > 0 && $tokenId <= $this->cachedTotalSupplyProvider->getTotalSupply(); } protected function getDefaultCacheExpiration(): int