def updateBaseImage()

in app/controllers/BaseImageController.scala [66:106]


  def updateBaseImage(id: BaseImageId) = authAction(parse.formUrlEncoded) {
    implicit request =>
      BaseImages.findById(id).fold[Result](NotFound) { image =>
        Forms.editBaseImage
          .bindFromRequest()
          .fold(
            { formWithErrors =>
              BadRequest(
                views.html.editBaseImage(image, formWithErrors, Roles.listIds)
              )
            },
            {
              case (
                    description,
                    amiId,
                    linuxDist,
                    eolDate,
                    requiresXLargeBuilder
                  ) =>
                val customisedRoles = parseEnabledRoles(request.body)
                customisedRoles.fold(
                  error => BadRequest(s"Problem parsing roles: $error"),
                  roles => {
                    BaseImages.update(
                      image,
                      description,
                      amiId,
                      linuxDist,
                      roles,
                      modifiedBy = request.user.fullName,
                      new DateTime(eolDate),
                      requiresXLargeBuilder
                    )
                    Redirect(routes.BaseImageController.showBaseImage(id))
                      .flashing("info" -> "Successfully updated base image")
                  }
                )
            }
          )
      }
  }