{ config, ... }:

let
  host = "demarches.dgnum.eu";
in
{
  imports = [ ./module.nix ];

  services.demarches-simplifiees = {
    enable = true;

    secretFile = config.age.secrets."ds-fr-secret_file".path;

    initialDeploymentDate = "20230923";

    settings = {
      APP_HOST = host;

      # Disable France Connect and Agent Connect
      FRANCE_CONNECT_ENABLED = "disabled";
      AGENT_CONNECT_ENABLED = "disabled";

      # S3 storage setup
      ACTIVE_STORAGE_SERVICE = "local";

      # SAML_IDP_ENABLED = "enabled";

      # Optional settings
      APPLICATION_NAME = ''"Démarches normaliennes"'';
      APPLICATION_SHORTNAME = "d-s.dgnum.eu";
      APPLICATION_BASE_URL = "https://${host}";

      # SMTP setup, TODO: Fix and stop using sendmail
      CLASSIC_SMTP_ENABLED = "enabled";
      SMTP_HOST = "kurisu.lahfa.xyz";
      SMTP_PORT = "465";
      SMTP_USER = "web-services@infra.dgnum.eu";
      SMTP_TLS = "";
      SMTP_SSL = "true";
      SMTP_AUTHENTICATION = "plain";

      SUPER_ADMIN_OTP_ENABLED = "disabled";

      CONTACT_EMAIL = "demarches@infra.dgnum.eu";
      EQUIPE_EMAIL = "equipe@infra.dgnum.eu";
      TECH_EMAIL = "tech@infra.dgnum.eu";
      NO_REPLY_EMAIL = ''"Ne pas répondre <demarches@infra.dgnum.eu>"'';
      OLD_CONTACT_EMAIL = "";
      CONTACT_PHONE = "";

      STATUS_URL = "https://status.dgnum.eu/demarches-normaliennes";

      DEMANDE_INSCRIPTION_ADMIN_PAGE_URL = "https://demarches.dgnum.eu/commencer/demande-d-inscription-demarches-normaliennes";
      DOC_URL = "https://docs.dgnum.eu/s/demarches-normaliennes";

      ADMINS_GROUP_ENABLED = "enabled";

      RUBY_YJIT_ENABLE = "1";

      STRICT_EMAIL_VALIDATION_STARTS_ON = "2024-02-23";
      WEASYPRINT_URL = "http://127.0.0.1:5000/pdf";

      # Customization
      # HEADER_LOGO_SRC = "logo_ens_psl_couleur.png";
      # HEADER_LOGO_ALT = "Par la Recherche, pour la Recherche";
      # PROCEDURE_DEFAULT_LOGO_SRC = "logo_ens_psl_couleur.png";
    };
  };

  age-secrets.autoMatch = [ "ds-fr" ];

  dgn-backups.jobs.ds-fr.settings.paths = [ "/var/lib/ds-fr" ];
  dgn-backups.postgresDatabases = [ "ds-fr" ];
}