Fix route /citizens/current if not logged

This commit is contained in:
2020-09-04 11:10:22 +02:00
parent a3b44588a9
commit 24d8f1d58b
3 changed files with 15 additions and 3 deletions

View File

@@ -17,6 +17,7 @@
<option value="elasticsearch" /> <option value="elasticsearch" />
<option value="rabbitmq" /> <option value="rabbitmq" />
<option value="redis" /> <option value="redis" />
<option value="openapi" />
</list> </list>
</option> </option>
<option name="sourceFilePath" value="docker-compose.yml" /> <option name="sourceFilePath" value="docker-compose.yml" />

7
.idea/runConfigurations/Run_for_dev.xml generated Normal file
View File

@@ -0,0 +1,7 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="Run for dev" type="CompoundRunConfigurationType">
<toRun name="Run" type="GradleRunConfiguration" />
<toRun name="Run dependencies" type="docker-deploy" />
<method v="2" />
</configuration>
</component>

View File

@@ -2,6 +2,7 @@ package fr.dcproject.routes
import com.fasterxml.jackson.module.kotlin.MissingKotlinParameterException import com.fasterxml.jackson.module.kotlin.MissingKotlinParameterException
import fr.dcproject.citizen import fr.dcproject.citizen
import fr.dcproject.citizenOrNull
import fr.dcproject.entity.Citizen import fr.dcproject.entity.Citizen
import fr.dcproject.routes.CitizenPaths.ChangePasswordCitizenRequest import fr.dcproject.routes.CitizenPaths.ChangePasswordCitizenRequest
import fr.dcproject.routes.CitizenPaths.CitizenRequest import fr.dcproject.routes.CitizenPaths.CitizenRequest
@@ -68,9 +69,12 @@ fun Route.citizen(
} }
get<CurrentCitizenRequest> { get<CurrentCitizenRequest> {
assertCan(VIEW, citizen) if (citizenOrNull === null) {
call.respond(HttpStatusCode.Unauthorized)
call.respond(citizen) } else {
assertCan(VIEW, citizen)
call.respond(citizen)
}
} }
put<ChangePasswordCitizenRequest> { put<ChangePasswordCitizenRequest> {