diff --git a/bin/build-release.sh b/bin/build-release.sh
index 18f46d8bf583cd2ca4ea9e4dafb8140b1c0b840d..b399c54d7126479127dc55e0e5e2aec1be9b8766 100755
--- a/bin/build-release.sh
+++ b/bin/build-release.sh
@@ -50,6 +50,7 @@ php "$TARGET/composer.phar" install --no-dev --prefer-dist -o -d "$TARGET"
 php "$TARGET/composer.phar" require --update-no-dev simplesamlphp/simplesamlphp-module-authfacebook
 php "$TARGET/composer.phar" require --update-no-dev simplesamlphp/simplesamlphp-module-authlinkedin
 php "$TARGET/composer.phar" require --update-no-dev simplesamlphp/simplesamlphp-module-authtwitter
+php "$TARGET/composer.phar" require --update-no-dev simplesamlphp/simplesamlphp-module-authx509
 php "$TARGET/composer.phar" require --update-no-dev simplesamlphp/simplesamlphp-module-authwindowslive
 php "$TARGET/composer.phar" require --update-no-dev simplesamlphp/simplesamlphp-module-cdc
 php "$TARGET/composer.phar" require --update-no-dev simplesamlphp/simplesamlphp-module-memcookie
diff --git a/composer.json b/composer.json
index 41404e9a7bb896f5a3fa57119bc7db95d75c94a9..35d41d3a80e8829d72ea4c9147ca27a99b6bcab7 100644
--- a/composer.json
+++ b/composer.json
@@ -45,6 +45,7 @@
         "simplesamlphp/simplesamlphp-module-authlinkedin": "^1.0",
         "simplesamlphp/simplesamlphp-module-authtwitter": "^1.0",
         "simplesamlphp/simplesamlphp-module-authwindowslive": "^1.0",
+        "simplesamlphp/simplesamlphp-module-authx509": "^1.0.0",
         "simplesamlphp/simplesamlphp-module-cdc": "^1.0",
         "simplesamlphp/simplesamlphp-module-memcookie": "^1.2",
         "simplesamlphp/simplesamlphp-module-oauth": "^1.0",
diff --git a/modules/authX509/default-disable b/modules/authX509/default-disable
deleted file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000
diff --git a/modules/authX509/dictionaries/X509error.definition.json b/modules/authX509/dictionaries/X509error.definition.json
deleted file mode 100644
index 9bd4897b962ff80b81dd3248bb8c043292c92f73..0000000000000000000000000000000000000000
--- a/modules/authX509/dictionaries/X509error.definition.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
-	"certificate_header": {
-		"en": "X509 certificate authentication"
-	},
-	"certificate_text": {
-		"en": "X509 certificate authentication is required to access this service."
-	}
-}
diff --git a/modules/authX509/dictionaries/X509error.translation.json b/modules/authX509/dictionaries/X509error.translation.json
deleted file mode 100644
index 941df2ce050cfcc9d343d1d5b86bd28c24691d6c..0000000000000000000000000000000000000000
--- a/modules/authX509/dictionaries/X509error.translation.json
+++ /dev/null
@@ -1,62 +0,0 @@
-{
-	"certificate_header": {
-		"fr": "Authentification par certificat X509",
-		"sl": "Avtentikacija z X509 digitalnim potrdilom",
-		"sv": "Inloggning med X509-certifikat",
-		"lt": "X509 sertifikato autentikacija",
-		"it": "Autenticazione con certificato X509",
-		"no": "X509 sertifikatautentisering",
-		"es": "Autenticaci\u00f3n mediante certificado X509",
-		"hu": "X509 tan\u00fas\u00edtv\u00e1nyalap\u00fa azonos\u00edt\u00e1s",
-		"ja": "X509\u8a3c\u660e\u66f8\u8a8d\u8a3c",
-		"nl": "Authenticatie via X509-certificaat",
-		"da": "X509 certifikat authentifikation",
-		"de": "Authentifizierung mit X.509 Zertifikat",
-		"hr": "Autentifikacija uporabom X509 digitalnog certifikata",
-		"zh-tw": "X509 \u6191\u8b49\u9a57\u8b49",
-		"nn": "X509 sertifikatautentisering",
-		"et": "X509 sertifikaadiga autentimine",
-		"he": "\u05d0\u05d9\u05de\u05d5\u05ea \u05ea\u05e2\u05d5\u05d3\u05ea X509 ",
-		"ru": "\u0421\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u043f\u043e\u0434\u043b\u0438\u043d\u043d\u043e\u0441\u0442\u0438 X509",
-		"zh": "X509\u786e\u8ba4\u8ba4\u8bc1",
-		"ar": "\u062a\u0635\u062f\u064a\u0642 \u0634\u0647\u0627\u062f\u0629 X509",
-		"lv": "x509 sertifik\u0101ta autentifik\u0101cija",
-		"id": "Autentifikasi certificate X509",
-		"sr": "Autentifikacija upotrebom X509 digitalnog sertifikata",
-		"ro": "Autentificare cu certificat X509",
-		"cs": "Autentizace certifik\u00e1tem X509",
-		"eu": "Kautotzea X509 ziurtagiri bidez",
-		"af": "X509 sertifikaat verifikasie",
-		"el": "\u03a4\u03b1\u03c5\u03c4\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 \u03bc\u03ad\u03c3\u03c9 \u03c0\u03b9\u03c3\u03c4\u03bf\u03c0\u03bf\u03b9\u03b7\u03c4\u03b9\u03ba\u03bf\u03cd X.509"
-	},
-	"certificate_text": {
-		"fr": "Un certificat X509 est requis pour acc\u00e9der \u00e0 ce service.",
-		"sl": "Avtentikacija z X509 digitalnim potrdilom je zahtevana za dostop do izbrane storitve.",
-		"sv": "Inloggning med X509-certifikat kr\u00e4vs f\u00f6r att f\u00e5 tillg\u00e5ng till denna tj\u00e4nst.",
-		"lt": "X509 sertifikato autentikacija yra reikalinga norint pasiekti \u0161i\u0105 paslaug\u0105.",
-		"it": "Una autenticazione con certificato X509 \u00e8 richiesta per accedere a questo servizio.",
-		"no": "X509 sertifikatautentisering er p\u00e5krevd for \u00e5 aksessere denne tjenesten.",
-		"es": "Se requiere autenticaci\u00f3n mediante certificado X509 para acceder a este servicio",
-		"hu": "Az al\u00e1bbi oldalhoz X509 tan\u00fas\u00edtv\u00e1nyalap\u00fa azonos\u00edt\u00e1s ut\u00e1n kaphat hozz\u00e1f\u00e9r\u00e9st",
-		"ja": "\u3053\u306e\u30b5\u30fc\u30d3\u30b9\u306b\u30a2\u30af\u30bb\u30b9\u3059\u308b\u306b\u306fX509\u8a3c\u660e\u66f8\u8a8d\u8a3c\u3092\u884c\u3046\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002",
-		"nl": "Authenticatie via een X509-certificaat is noodzakelijk voor toegang tot deze dienst.",
-		"da": "X509 certifikat-authentifikation er p\u00e5kr\u00e6vet til denne service.",
-		"de": "Das gew\u00fcnschte Service ist nur nach Authentifizierung mit einem X.509 Zertifikat nutzbar.",
-		"hr": "Za pristup ovom servisu potreban je X509 certifikat.",
-		"zh-tw": "\u9019\u500b\u670d\u52d9\u5fc5\u9808\u4ee5 X509 \u6191\u8b49\u9032\u884c\u9a57\u8b49",
-		"nn": "X509 sertifikatautentisering er p\u00e5krevd for tilgang til denne tenesta.",
-		"et": "Sellele teenusele ligip\u00e4\u00e4suks on vajalik X509 sertifikaadiga autentimine.",
-		"he": "\u05e0\u05d3\u05e8\u05e9 \u05d0\u05d9\u05de\u05d5\u05ea \u05ea\u05e2\u05d5\u05d3\u05ea X509  \u05e2\u05dc \u05de\u05e0\u05ea \u05dc\u05d2\u05e9\u05ea \u05dc\u05e9\u05d9\u05e8\u05d5\u05ea \u05d6\u05d4.",
-		"ru": "\u0421\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0443 \u043f\u043e\u0434\u043b\u0438\u043d\u043d\u043e\u0441\u0442\u0438 X509 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0441\u043b\u0443\u0436\u0431\u0435.",
-		"zh": "X509\u786e\u8ba4\u8ba4\u8bc1\u8981\u6c42\u8bbf\u95ee\u8be5\u670d\u52a1",
-		"ar": "\u062a\u0635\u062f\u064a\u0642 \u0634\u0647\u0627\u062f\u0629 (X509) \u0636\u0631\u0648\u0631\u064a \u0644\u062f\u062e\u0648\u0644 \u0647\u0630\u0647 \u0627\u0644\u062e\u062f\u0645\u0629",
-		"lv": "x509 sertifik\u0101ta autentifik\u0101cija ir nepiecie\u0161ama, lai piek\u013c\u016btu \u0161im servisam",
-		"id": "Autentifikasi certificate X509 diperlukan untuk mengakses layanan ini.",
-		"sr": "Za pristup ovom servisu potrebno je da se autentifikujete upotrebom X509 sertifikata.",
-		"ro": "Pentru accesarea acestui serviciu este necesar\u0103 autentificarea cu certificat X509.",
-		"cs": "Pro p\u0159\u00edstup k t\u00e9to slu\u017eb\u011b je vy\u017eadov\u00e1n X509 certifik\u00e1t.",
-		"eu": "X509 ziurtagiriaren bidezko kautotzea beharrezkoa da zerbitzu honetan sartzeko",
-		"af": "X509 sertifikaat verifikasie word vereis vir toegang tot di\u00e9 diens. ",
-		"el": "\u0397 \u03c0\u03c1\u03cc\u03c3\u03b2\u03b1\u03c3\u03b7 \u03c3\u03c4\u03b7\u03bd \u03c5\u03c0\u03b7\u03c1\u03b5\u03c3\u03af\u03b1 \u03b1\u03c0\u03b1\u03b9\u03c4\u03b5\u03af \u03c4\u03b1\u03c5\u03c4\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 \u03bc\u03ad\u03c3\u03c9 \u03c0\u03b9\u03c3\u03c4\u03bf\u03c0\u03bf\u03b9\u03b7\u03c4\u03b9\u03ba\u03bf\u03cd X.509"
-	}
-}
diff --git a/modules/authX509/dictionaries/X509warning.definition.json b/modules/authX509/dictionaries/X509warning.definition.json
deleted file mode 100644
index d56bed1be7cac133e4e66fafdfe182c19be23de0..0000000000000000000000000000000000000000
--- a/modules/authX509/dictionaries/X509warning.definition.json
+++ /dev/null
@@ -1,17 +0,0 @@
-{
-  "warning": {
-    "en": "Your certificate will expire in %daysleft% days."
-  },
-  "warning_header": {
-    "en": "Your certificate is about to expire."
-  },
-  "renew": {
-    "en": "Please renew your certificate in time."
-  },
-  "renew_url": {
-  "en": "Please  <a href='%renewurl%'>renew<\/a> your certificate in time."
-},
-  "proceed": {
-    "en": "Proceed"
-  }
-}
diff --git a/modules/authX509/dictionaries/X509warning.translation.json b/modules/authX509/dictionaries/X509warning.translation.json
deleted file mode 100644
index e22096295f62ed70bd97b712e0910f4f06f5f737..0000000000000000000000000000000000000000
--- a/modules/authX509/dictionaries/X509warning.translation.json
+++ /dev/null
@@ -1,37 +0,0 @@
-{
-  "warning": {
-    "nl": "Je certificaat verloopt over %daysleft% dagen.",
-    "no": "Sertifikatet ditt vil utløpe om %daysleft% dager.",
-    "da": "Dit certifikat udløber om %daysleft% dage.",
-    "es": "Su certificado caduca en %daysleft% dĂ­as.",
-    "el": "\u0397 \u03b9\u03c3\u03c7\u03cd\u03c2 \u03c4\u03bf\u03c5 \u03c0\u03b9\u03c3\u03c4\u03bf\u03c0\u03bf\u03b9\u03b7\u03c4\u03b9\u03ba\u03bf\u03cd \u03c3\u03b1\u03c2 \u03b8\u03b1 \u03bb\u03ae\u03be\u03b5\u03b9 \u03c3\u03b5 %daysleft%."
-  },
-  "warning_header": {
-    "nl": "Je certificaat verloopt binnenkort.",
-    "no": "Sertifikatet ditt vil snart utløpe.",
-    "da": "Dit certifikat udløber om kort tid",
-    "es": "Su certificado está a punto de caducar.",
-    "el": "\u0397 \u03b9\u03c3\u03c7\u03cd\u03c2 \u03c4\u03bf\u03c5 \u03c0\u03b9\u03c3\u03c4\u03bf\u03c0\u03bf\u03b9\u03b7\u03c4\u03b9\u03ba\u03bf\u03cd \u03c3\u03b1\u03c2 \u03c0\u03c1\u03cc\u03ba\u03b5\u03b9\u03c4\u03b1\u03b9 \u03bd\u03b1 \u03bb\u03ae\u03be\u03b5\u03b9."
-  },
-  "renew": {
-    "nl": "Vervang tijdig je certificaat.",
-    "no": "Vennligst forny sertifikatet ditt før det utløper.",
-    "da": "Forny venligst dit certifikat i tide.",
-    "es": "Por favor, renueve su certificado a tiempo.",
-    "el": "\u03a0\u03b1\u03c1\u03b1\u03ba\u03b1\u03bb\u03b5\u03af\u03c3\u03c4\u03b5 \u03bd\u03b1 \u03c0\u03c1\u03bf\u03c7\u03c9\u03c1\u03ae\u03c3\u03b5\u03c4\u03b5 \u03c3\u03b5 \u03b1\u03bd\u03b1\u03bd\u03ad\u03c9\u03c3\u03b7 \u03c4\u03bf\u03c5 \u03c0\u03b9\u03c3\u03c4\u03bf\u03c0\u03bf\u03b9\u03b7\u03c4\u03b9\u03ba\u03bf\u03cd \u03c3\u03b1\u03c2 \u03ad\u03b3\u03ba\u03b1\u03b9\u03c1\u03b1."
-  },
-  "renew_url": {
-    "nl": "<a href='%renewurl%'>Vervang<\/a> tijdig je certificaat.",
-    "no": "Vennligst <a href=‘%renewurl%’>forny<\/a> sertifikatet ditt før det utløper.",
-    "da": "<a href='%renewurl%'>Forny<\/a>, venligst dit certifikat før det udløber.",
-    "es": "Por favor, <a href=‘%renewurl%’>renueve<\/a> su certificado a tiempo.",
-    "el": "\u03a0\u03b1\u03c1\u03b1\u03ba\u03b1\u03bb\u03b5\u03af\u03c3\u03c4\u03b5 \u03bd\u03b1 \u03c0\u03c1\u03bf\u03c7\u03c9\u03c1\u03ae\u03c3\u03b5\u03c4\u03b5 \u03c3\u03b5 <a href=‘%renewurl%’>\u03b1\u03bd\u03b1\u03bd\u03ad\u03c9\u03c3\u03b7<\/a> \u03c4\u03bf\u03c5 \u03c0\u03b9\u03c3\u03c4\u03bf\u03c0\u03bf\u03b9\u03b7\u03c4\u03b9\u03ba\u03bf\u03cd \u03c3\u03b1\u03c2 \u03ad\u03b3\u03ba\u03b1\u03b9\u03c1\u03b1."
-  },
-  "proceed": {
-    "nl": "Verder",
-    "no": "Fortsett",
-    "da": "Fortsæt",
-    "es": "Continuar",
-    "el": "\u03a3\u03c5\u03bd\u03ad\u03c7\u03b5\u03b9\u03b1"
-  }
-}
diff --git a/modules/authX509/docs/authX509.md b/modules/authX509/docs/authX509.md
deleted file mode 100644
index dcb8ff92590351fe477cefa1cf7be18db0a13dc6..0000000000000000000000000000000000000000
--- a/modules/authX509/docs/authX509.md
+++ /dev/null
@@ -1,126 +0,0 @@
-Using the X509 authentication source with SimpleSAMLphp
-=======================================================
-
-The authX509 module provides X509 authentication with certificate
-validation. For now there is only one authentication source:
-
-* authX509userCert Validate against LDAP userCertificate attribute
-
-More validation schemes (OCSP, CRL, local list) might be added later.
-
-Configuring Apache
-------------------
-
-This module assumes that the server requests a client certificate, and
-stores it in the environment variable SSL_CLIENT_CERT. This can be achieved
-with such a configuration:
-
-    SSLEngine on
-    SSLCertificateFile /etc/openssl/certs/server.crt
-    SSLCertificateKeyFile /etc/openssl/private/server.key
-    SSLCACertificateFile /etc/openssl/certs/ca.crt
-    SSLVerifyClient require
-    SSLVerifyDepth 2
-    SSLOptions +ExportCertData
-
-Note that SSLVerifyClient can be set to optional if you want to support
-both certificate and plain login authentication at the same time (more on
-this later).
-
-If your server or your client (or both!) have TLS renegotiation disabled
-as a workaround for CVE-2009-3555, then the configuration directive above
-must not appear in a &lt;Directory&gt;, &lt;Location&gt;, or in a name-based
-&lt;VirtualHost&gt;. You can only use them server-wide, or in &lt;VirtualHost&gt;s
-with different IP address/port combinations.
-
-
-Setting up the authX509 module
-------------------------------
-
-The first thing you need to do is to enable the module:
-
-    touch modules/authX509/enable
-
-Then you must add it as an authentication source. Here is an
-example authsources.php entry:
-
-    'x509' => array(
-        'authX509:X509userCert',
-        'hostname' => 'ldaps://ldap.example.net',
-        'enable_tls' => false,
-        'attributes' => array('cn', 'uid', 'mail', 'ou', 'sn'),
-        'search.enable' => true,
-        'search.attributes' => array('uid', 'mail'),
-        'search.base' => 'dc=example,dc=net',
-        'authX509:x509attributes' => array('UID' => 'uid'),
-        'authX509:ldapusercert' => array('userCertificate;binary'),
-    ),
-
-The configuration is the same as for the LDAP module, except for
-two options:
-
-* x509attributes is used to map a certificate subject attribute to
-                 an LDAP attribute. It is used to find the certificate
-                 owner in LDAP from the certificate subject. If multiple
-                 mappings are provided, any mapping will match (this
-                 is a logical OR). Default is array('UID' => 'uid').
-* ldapusercert   the LDAP attribute in which the user certificate will
-                 be found. Default is userCertificate;binary. This can
-                 be set to NULL to avoid looking up the certificate in
-                 LDAP.
-
-
-Uploading certificate in LDAP
------------------------------
-
-Certificates are usually stored in LDAP as DER, in binary. Here is
-how to convert from PEM to DER:
-
-    openssl x509 -in cert.pem -inform PEM -outform DER -out cert.der
-
-Here is some LDIF to upload the certificate in the directory:
-
-    dn: uid=jdoe,dc=example,dc=net
-    changetype: modify
-    add: userCertificate;binary
-    userCertificate;binary:< file:///path/to/cert.der
-
-
-Supporting both certificate and login authentication
-====================================================
-
-In your Apache configuration, set SSLVerifyClient to optional. Then you
-can hack your metadata/saml20-idp-hosted.php file that way:
-
-    $auth_source = empty($_SERVER['SSL_CLIENT_CERT']) ? 'ldap' : 'x509';
-    $metadata = array(
-        '__DYNAMIC:1__' => array(
-            'host'          =>      '__DEFAULT__',
-            'privatekey'    =>      'server.key',
-            'certificate'   =>      'server.crt',
-            'auth'          =>       $auth_source,
-            'authority'     =>      'login',
-            'userid.attribute' =>   'uid',
-            'logouttype'    =>      'iframe',
-            'attributes.NameFormat' =>
-                            'urn:oasis:names:tc:SAML:2.0:attrname-format:uri',
-    )
-
-Checking certificate expiry
-===========================
-
-To issue warnings to users whose certificate is about to expire, configure an authproc filter.
-
-Example:
-
-     10 => array(
-         'class' => 'authX509:ExpiryWarning',
-         'warndaysbefore' => '30',
-         'renewurl' => 'https://myca.com/renew',
-     ),
-
-Parameter `warndaysbefore` specifies the number of days the user's certificate needs to be valid before a warning is
-issued. The default is 30.
-
-Parameter `renewurl` specifies the URL of your Certification Authority. If specified, the user is suggested to renew the
-certificate immediately.
diff --git a/modules/authX509/lib/Auth/Process/ExpiryWarning.php b/modules/authX509/lib/Auth/Process/ExpiryWarning.php
deleted file mode 100644
index 9ef69aeb976d945157b1f187a4e81ea7cd8259fd..0000000000000000000000000000000000000000
--- a/modules/authX509/lib/Auth/Process/ExpiryWarning.php
+++ /dev/null
@@ -1,101 +0,0 @@
-<?php
-
-namespace SimpleSAML\Module\authX509\Auth\Process;
-
-/**
- * Filter which shows a warning if the user's client certificate is about to expire.
- *
- ** <code>
- * // show about2xpire warning if client certificate is about to expire
- * 10 => array(
- *     'class' => 'authX509:ExpiryWarning',
- *     'warndaysbefore' => '30',
- * ),
- * </code>
- *
- * @author Joost van Dijk, SURFnet. <Joost.vanDijk@surfnet.nl>
- * @package SimpleSAMLphp
- */
-
-class ExpiryWarning extends \SimpleSAML\Auth\ProcessingFilter
-{
-    /** @var int */
-    private $warndaysbefore = 30;
-
-    /** @var string|null */
-    private $renewurl = null;
-
-    /**
-     * Initialize this filter.
-     *
-     * @param array $config  Configuration information about this filter.
-     * @param mixed $reserved  For future use.
-     */
-    public function __construct($config, $reserved)
-    {
-        parent::__construct($config, $reserved);
-
-        assert(is_array($config));
-
-        if (array_key_exists('warndaysbefore', $config)) {
-            $this->warndaysbefore = $config['warndaysbefore'];
-            if (!is_string($this->warndaysbefore)) {
-                throw new \Exception('Invalid value for \'warndaysbefore\'-option to authX509::ExpiryWarning filter.');
-            }
-        }
-
-        if (array_key_exists('renewurl', $config)) {
-            $this->renewurl = $config['renewurl'];
-            if (!is_string($this->renewurl)) {
-                throw new \Exception('Invalid value for \'renewurl\'-option to authX509::ExpiryWarning filter.');
-            }
-        }
-    }
-
-    /**
-     * Process an authentication response.
-     *
-     * This function saves the state, and if necessary redirects the user to the page where the user
-     * is informed about the expiry date of his/her certificate.
-     *
-     * @param array $state  The state of the response.
-     * @return void
-     */
-    public function process(&$state)
-    {
-        assert(is_array($state));
-
-        if (isset($state['isPassive']) && $state['isPassive'] === true) {
-            // We have a passive request. Skip the warning
-            return;
-        }
-
-        if (!isset($_SERVER['SSL_CLIENT_CERT']) ||
-            ($_SERVER['SSL_CLIENT_CERT'] == '')) {
-            return;
-        }
-
-        $client_cert = $_SERVER['SSL_CLIENT_CERT'];
-        $client_cert_data = openssl_x509_parse($client_cert);
-        if ($client_cert_data == false) {
-            \SimpleSAML\Logger::error('authX509: invalid cert');
-            return;
-        }
-        $validTo = $client_cert_data['validTo_time_t'];
-        $now = time();
-        $daysleft = (int) (($validTo - $now) / 86400); //24*60*60
-        if ($daysleft > $this->warndaysbefore) {
-            // We have a certificate that will be valid for some time. Skip the warning
-            return;
-        }
-
-        \SimpleSAML\Logger::warning('authX509: user certificate expires in '.$daysleft.' days');
-        $state['daysleft'] = $daysleft;
-        $state['renewurl'] = $this->renewurl;
-
-        // Save state and redirect
-        $id = \SimpleSAML\Auth\State::saveState($state, 'warning:expire');
-        $url = \SimpleSAML\Module::getModuleURL('authX509/expirywarning.php');
-        \SimpleSAML\Utils\HTTP::redirectTrustedURL($url, ['StateId' => $id]);
-    }
-}
diff --git a/modules/authX509/lib/Auth/Source/X509userCert.php b/modules/authX509/lib/Auth/Source/X509userCert.php
deleted file mode 100644
index 7739cbdb76bca2b6a4e2c9de817c7d15e6b4829d..0000000000000000000000000000000000000000
--- a/modules/authX509/lib/Auth/Source/X509userCert.php
+++ /dev/null
@@ -1,213 +0,0 @@
-<?php
-
-namespace SimpleSAML\Module\authX509\Auth\Source;
-
-/**
- * This class implements x509 certificate authentication with certificate validation against an LDAP directory.
- *
- * @author Emmanuel Dreyfus <manu@netbsd.org>
- * @package SimpleSAMLphp
- */
-
-class X509userCert extends \SimpleSAML\Auth\Source
-{
-    /**
-     * x509 attributes to use from the certificate for searching the user in the LDAP directory.
-     * @var array
-     */
-    private $x509attributes = ['UID' => 'uid'];
-
-
-    /**
-     * LDAP attribute containing the user certificate.
-     * This can be set to NULL to avoid looking up the certificate in LDAP
-     * @var array|null
-     */
-    private $ldapusercert = ['userCertificate;binary'];
-
-
-    /**
-     * @var \SimpleSAML\Module\ldap\ConfigHelper
-     */
-    private $ldapcf;
-
-
-    /**
-     * Constructor for this authentication source.
-     *
-     * All subclasses who implement their own constructor must call this constructor before using $config for anything.
-     *
-     * @param array $info Information about this authentication source.
-     * @param array &$config Configuration for this authentication source.
-     */
-    public function __construct($info, &$config)
-    {
-        assert(is_array($info));
-        assert(is_array($config));
-
-        if (isset($config['authX509:x509attributes'])) {
-            $this->x509attributes = $config['authX509:x509attributes'];
-        }
-
-        if (array_key_exists('authX509:ldapusercert', $config)) {
-            $this->ldapusercert = $config['authX509:ldapusercert'];
-        }
-
-        parent::__construct($info, $config);
-
-        $this->ldapcf = new \SimpleSAML\Module\ldap\ConfigHelper(
-            $config,
-            'Authentication source '.var_export($this->authId, true)
-        );
-    }
-
-
-    /**
-     * Finish a failed authentication.
-     *
-     * This function can be overloaded by a child authentication class that wish to perform some operations on failure.
-     *
-     * @param array &$state Information about the current authentication.
-     * @return void
-     */
-    public function authFailed(&$state)
-    {
-        $config = \SimpleSAML\Configuration::getInstance();
-
-        $t = new \SimpleSAML\XHTML\Template($config, 'authX509:X509error.php');
-        $t->data['loginurl'] = \SimpleSAML\Utils\HTTP::getSelfURL();
-        $t->data['errorcode'] = $state['authX509.error'];
-        $t->data['errorcodes'] = \SimpleSAML\Error\ErrorCodes::getAllErrorCodeMessages();
-
-        $t->show();
-        exit();
-    }
-
-
-    /**
-     * Validate certificate and login.
-     *
-     * This function try to validate the certificate. On success, the user is logged in without going through the login
-     * page. On failure, The authX509:X509error.php template is loaded.
-     *
-     * @param array &$state Information about the current authentication.
-     * @return void
-     */
-    public function authenticate(&$state)
-    {
-        assert(is_array($state));
-        $ldapcf = $this->ldapcf;
-
-        if (!isset($_SERVER['SSL_CLIENT_CERT']) ||
-            ($_SERVER['SSL_CLIENT_CERT'] == '')) {
-            $state['authX509.error'] = "NOCERT";
-            $this->authFailed($state);
-
-            assert(false); // should never be reached
-            return;
-        }
-
-        $client_cert = $_SERVER['SSL_CLIENT_CERT'];
-        $client_cert_data = openssl_x509_parse($client_cert);
-        if ($client_cert_data === false) {
-            \SimpleSAML\Logger::error('authX509: invalid cert');
-            $state['authX509.error'] = "INVALIDCERT";
-            $this->authFailed($state);
-
-            assert(false); // should never be reached
-            return;
-        }
-
-        $dn = null;
-        foreach ($this->x509attributes as $x509_attr => $ldap_attr) {
-            // value is scalar
-            if (array_key_exists($x509_attr, $client_cert_data['subject'])) {
-                $value = $client_cert_data['subject'][$x509_attr];
-                \SimpleSAML\Logger::info('authX509: cert '.$x509_attr.' = '.$value);
-                $dn = $ldapcf->searchfordn($ldap_attr, $value, true);
-                if ($dn !== null) {
-                    break;
-                }
-            }
-        }
-
-        if ($dn === null) {
-            \SimpleSAML\Logger::error('authX509: cert has no matching user in LDAP.');
-            $state['authX509.error'] = "UNKNOWNCERT";
-            $this->authFailed($state);
-
-            assert(false); // should never be reached
-            return;
-        }
-
-        if ($this->ldapusercert === null) {
-            // do not check for certificate match
-            $attributes = $ldapcf->getAttributes($dn);
-            assert(is_array($attributes));
-            $state['Attributes'] = $attributes;
-            $this->authSuccesful($state);
-
-            assert(false); // should never be reached
-            return;
-        }
-
-        $ldap_certs = $ldapcf->getAttributes($dn, $this->ldapusercert);
-        if ($ldap_certs === false) {
-            \SimpleSAML\Logger::error('authX509: no certificate found in LDAP for dn='.$dn);
-            $state['authX509.error'] = "UNKNOWNCERT";
-            $this->authFailed($state);
-
-            assert(false); // should never be reached
-            return;
-        }
-
-
-        $merged_ldapcerts = [];
-        foreach ($this->ldapusercert as $attr) {
-            $merged_ldapcerts = array_merge($merged_ldapcerts, $ldap_certs[$attr]);
-        }
-        $ldap_certs = $merged_ldapcerts;
-
-        foreach ($ldap_certs as $ldap_cert) {
-            $pem = \SimpleSAML\Utils\Crypto::der2pem($ldap_cert);
-            $ldap_cert_data = openssl_x509_parse($pem);
-            if ($ldap_cert_data === false) {
-                \SimpleSAML\Logger::error('authX509: cert in LDAP is invalid for dn='.$dn);
-                continue;
-            }
-
-            if ($ldap_cert_data === $client_cert_data) {
-                $attributes = $ldapcf->getAttributes($dn);
-                assert(is_array($attributes));
-                $state['Attributes'] = $attributes;
-                $this->authSuccesful($state);
-
-                assert(false); // should never be reached
-                return;
-            }
-        }
-
-        \SimpleSAML\Logger::error('authX509: no matching cert in LDAP for dn='.$dn);
-        $state['authX509.error'] = "UNKNOWNCERT";
-        $this->authFailed($state);
-
-        assert(false); // should never be reached
-        return;
-    }
-
-
-    /**
-     * Finish a successful authentication.
-     *
-     * This function can be overloaded by a child authentication class that wish to perform some operations after login.
-     *
-     * @param array &$state Information about the current authentication.
-     * @return void
-     */
-    public function authSuccesful(&$state)
-    {
-        \SimpleSAML\Auth\Source::completeAuth($state);
-
-        assert(false); // should never be reached
-    }
-}
diff --git a/modules/authX509/locales/af/LC_MESSAGES/authX509.po b/modules/authX509/locales/af/LC_MESSAGES/authX509.po
deleted file mode 100644
index 9a3b205ca86addf9ab0b543e3df0325e7d7029ec..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/af/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,29 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: af\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr "X509 sertifikaat verifikasie word vereis vir toegang tot dié diens. "
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "X509 sertifikaat verifikasie"
-
-msgid "X509 certificate authentication"
-msgstr "X509 sertifikaat verifikasie"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr "X509 sertifikaat verifikasie word vereis vir toegang tot dié diens. "
-
diff --git a/modules/authX509/locales/ar/LC_MESSAGES/authX509.po b/modules/authX509/locales/ar/LC_MESSAGES/authX509.po
deleted file mode 100644
index c92f34a39555d0f5dfb3fc6c14365f332555e68d..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/ar/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,30 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: ar\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n>=3 "
-"&& n<=10 ? 3 : n>=11 && n<=99 ? 4 : 5)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr "تصديق شهادة (X509) ضروري لدخول هذه الخدمة"
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "تصديق شهادة X509"
-
-msgid "X509 certificate authentication"
-msgstr "تصديق شهادة X509"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr "تصديق شهادة (X509) ضروري لدخول هذه الخدمة"
-
diff --git a/modules/authX509/locales/cs/LC_MESSAGES/authX509.po b/modules/authX509/locales/cs/LC_MESSAGES/authX509.po
deleted file mode 100644
index 600473a03e1bd1ef361ea60559188aa8f02a8b44..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/cs/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,30 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: cs\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
-"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr "Pro přístup k této službě je vyžadován X509 certifikát."
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "Autentizace certifikátem X509"
-
-msgid "X509 certificate authentication"
-msgstr "Autentizace certifikátem X509"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr "Pro přístup k této službě je vyžadován X509 certifikát."
-
diff --git a/modules/authX509/locales/da/LC_MESSAGES/authX509.po b/modules/authX509/locales/da/LC_MESSAGES/authX509.po
deleted file mode 100644
index a883034f930b787cb6816e7600cc31884625c17e..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/da/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,61 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: da\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509warning:proceed}"
-msgstr "Fortsæt"
-
-msgid "{authX509:X509warning:renew}"
-msgstr "Forny venligst dit certifikat i tide."
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr "X509 certifikat-authentifikation er påkrævet til denne service."
-
-msgid "{authX509:X509warning:renew_url}"
-msgstr "<a href='%renewurl%'>Forny</a>, venligst dit certifikat før det udløber."
-
-msgid "{authX509:X509warning:warning_header}"
-msgstr "Dit certifikat udløber om kort tid"
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "X509 certifikat authentifikation"
-
-msgid "{authX509:X509warning:warning}"
-msgstr "Dit certifikat udløber om %daysleft% dage."
-
-msgid "Please renew your certificate in time."
-msgstr "Forny venligst dit certifikat i tide."
-
-#, python-format
-msgid "Your certificate will expire in %daysleft% days."
-msgstr "Dit certifikat udløber om %daysleft% dage."
-
-msgid "X509 certificate authentication"
-msgstr "X509 certifikat authentifikation"
-
-#, python-format
-msgid "Please <a href='%renewurl%'>renew your certificate</a> in time."
-msgstr "<a href='%renewurl%'>Forny</a>, venligst dit certifikat før det udløber."
-
-msgid "Proceed"
-msgstr "Fortsæt"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr "X509 certifikat-authentifikation er påkrævet til denne service."
-
-msgid "Your certificate is about to expire."
-msgstr "Dit certifikat udløber om kort tid"
-
diff --git a/modules/authX509/locales/de/LC_MESSAGES/authX509.po b/modules/authX509/locales/de/LC_MESSAGES/authX509.po
deleted file mode 100644
index 4ce07317f2109b75d672d7cd65d51468e27af5d3..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/de/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,33 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: de\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr ""
-"Das gewĂĽnschte Service ist nur nach Authentifizierung mit einem X.509 "
-"Zertifikat nutzbar."
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "Authentifizierung mit X.509 Zertifikat"
-
-msgid "X509 certificate authentication"
-msgstr "Authentifizierung mit X.509 Zertifikat"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr ""
-"Das gewĂĽnschte Service ist nur nach Authentifizierung mit einem X.509 "
-"Zertifikat nutzbar."
-
diff --git a/modules/authX509/locales/el/LC_MESSAGES/authX509.po b/modules/authX509/locales/el/LC_MESSAGES/authX509.po
deleted file mode 100644
index 8fb335efc17d27d406955f0b34d1716b8a26bde5..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/el/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,65 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: el\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509warning:proceed}"
-msgstr "Συνέχεια"
-
-msgid "{authX509:X509warning:renew}"
-msgstr "Παρακαλείστε να προχωρήσετε σε ανανέωση του πιστοποιητικού σας έγκαιρα."
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr "Η πρόσβαση στην υπηρεσία απαιτεί ταυτοποίηση μέσω πιστοποιητικού X.509"
-
-msgid "{authX509:X509warning:renew_url}"
-msgstr ""
-"Παρακαλείστε να προχωρήσετε σε <a href=‘%renewurl%’>ανανέωση</a> του "
-"πιστοποιητικού σας έγκαιρα."
-
-msgid "{authX509:X509warning:warning_header}"
-msgstr "Η ισχύς του πιστοποιητικού σας πρόκειται να λήξει."
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "Ταυτοποίηση μέσω πιστοποιητικού X.509"
-
-msgid "{authX509:X509warning:warning}"
-msgstr "Η ισχύς του πιστοποιητικού σας θα λήξει σε %daysleft%."
-
-msgid "Please renew your certificate in time."
-msgstr "Παρακαλείστε να προχωρήσετε σε ανανέωση του πιστοποιητικού σας έγκαιρα."
-
-#, python-format
-msgid "Your certificate will expire in %daysleft% days."
-msgstr "Η ισχύς του πιστοποιητικού σας θα λήξει σε %daysleft%."
-
-msgid "X509 certificate authentication"
-msgstr "Ταυτοποίηση μέσω πιστοποιητικού X.509"
-
-#, python-format
-msgid "Please <a href='%renewurl%'>renew your certificate</a> in time."
-msgstr ""
-"Παρακαλείστε να προχωρήσετε σε <a href=‘%renewurl%’>ανανέωση</a> του "
-"πιστοποιητικού σας έγκαιρα."
-
-msgid "Proceed"
-msgstr "Συνέχεια"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr "Η πρόσβαση στην υπηρεσία απαιτεί ταυτοποίηση μέσω πιστοποιητικού X.509"
-
-msgid "Your certificate is about to expire."
-msgstr "Η ισχύς του πιστοποιητικού σας πρόκειται να λήξει."
-
diff --git a/modules/authX509/locales/en/LC_MESSAGES/authX509.po b/modules/authX509/locales/en/LC_MESSAGES/authX509.po
deleted file mode 100644
index 6e317173c419d855cf6a408ec4f3760912be5f8e..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/en/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,61 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: en\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509warning:proceed}"
-msgstr "Proceed"
-
-msgid "{authX509:X509warning:renew}"
-msgstr "Please renew your certificate in time."
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr "X509 certificate authentication is required to access this service."
-
-msgid "{authX509:X509warning:renew_url}"
-msgstr "Please  <a href='%renewurl%'>renew</a> your certificate in time."
-
-msgid "{authX509:X509warning:warning_header}"
-msgstr "Your certificate is about to expire."
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "X509 certificate authentication"
-
-msgid "{authX509:X509warning:warning}"
-msgstr "Your certificate will expire in %daysleft% days."
-
-msgid "Please renew your certificate in time."
-msgstr "Please renew your certificate in time."
-
-#, python-format
-msgid "Your certificate will expire in %daysleft% days."
-msgstr "Your certificate will expire in %daysleft% days."
-
-msgid "X509 certificate authentication"
-msgstr "X509 certificate authentication"
-
-#, python-format
-msgid "Please <a href='%renewurl%'>renew your certificate</a> in time."
-msgstr "Please <a href='%renewurl%'>renew your certificate</a> in time."
-
-msgid "Proceed"
-msgstr "Proceed"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr "X509 certificate authentication is required to access this service."
-
-msgid "Your certificate is about to expire."
-msgstr "Your certificate is about to expire."
-
diff --git a/modules/authX509/locales/es/LC_MESSAGES/authX509.po b/modules/authX509/locales/es/LC_MESSAGES/authX509.po
deleted file mode 100644
index e25961f4ea500c71aac0d07059d3d0e247ef623a..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/es/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,65 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: es\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509warning:proceed}"
-msgstr "Continuar"
-
-msgid "{authX509:X509warning:renew}"
-msgstr "Por favor, renueve su certificado a tiempo."
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr ""
-"Se requiere autenticaciĂłn mediante certificado X509 para acceder a este "
-"servicio"
-
-msgid "{authX509:X509warning:renew_url}"
-msgstr "Por favor, <a href=‘%renewurl%’>renueve</a> su certificado a tiempo."
-
-msgid "{authX509:X509warning:warning_header}"
-msgstr "Su certificado está a punto de caducar."
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "AutenticaciĂłn mediante certificado X509"
-
-msgid "{authX509:X509warning:warning}"
-msgstr "Su certificado caduca en %daysleft% dĂ­as."
-
-msgid "Please renew your certificate in time."
-msgstr "Por favor, renueve su certificado a tiempo."
-
-#, python-format
-msgid "Your certificate will expire in %daysleft% days."
-msgstr "Su certificado caduca en %daysleft% dĂ­as."
-
-msgid "X509 certificate authentication"
-msgstr "AutenticaciĂłn mediante certificado X509"
-
-#, python-format
-msgid "Please <a href='%renewurl%'>renew your certificate</a> in time."
-msgstr "Por favor, <a href=‘%renewurl%’>renueve su certificado</a> a tiempo."
-
-msgid "Proceed"
-msgstr "Continuar"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr ""
-"Se requiere autenticaciĂłn mediante certificado X509 para acceder a este "
-"servicio"
-
-msgid "Your certificate is about to expire."
-msgstr "Su certificado está a punto de caducar."
-
diff --git a/modules/authX509/locales/et/LC_MESSAGES/authX509.po b/modules/authX509/locales/et/LC_MESSAGES/authX509.po
deleted file mode 100644
index 1e17abc37f074d27581bdc6c385fc3a8807b8a8c..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/et/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,29 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: et\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr "Sellele teenusele ligipääsuks on vajalik X509 sertifikaadiga autentimine."
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "X509 sertifikaadiga autentimine"
-
-msgid "X509 certificate authentication"
-msgstr "X509 sertifikaadiga autentimine"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr "Sellele teenusele ligipääsuks on vajalik X509 sertifikaadiga autentimine."
-
diff --git a/modules/authX509/locales/eu/LC_MESSAGES/authX509.po b/modules/authX509/locales/eu/LC_MESSAGES/authX509.po
deleted file mode 100644
index 865cbebc682fffcaad04bcdbbc87842d810be250..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/eu/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,33 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: eu\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr ""
-"X509 ziurtagiriaren bidezko kautotzea beharrezkoa da zerbitzu honetan "
-"sartzeko"
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "Kautotzea X509 ziurtagiri bidez"
-
-msgid "X509 certificate authentication"
-msgstr "Kautotzea X509 ziurtagiri bidez"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr ""
-"X509 ziurtagiriaren bidezko kautotzea beharrezkoa da zerbitzu honetan "
-"sartzeko"
-
diff --git a/modules/authX509/locales/fr/LC_MESSAGES/authX509.po b/modules/authX509/locales/fr/LC_MESSAGES/authX509.po
deleted file mode 100644
index fb83aee4be9e7379f7318296051b94964bd9e59b..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/fr/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,29 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: fr\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=2; plural=(n > 1)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr "Un certificat X509 est requis pour accéder à ce service."
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "Authentification par certificat X509"
-
-msgid "X509 certificate authentication"
-msgstr "Authentification par certificat X509"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr "Un certificat X509 est requis pour accéder à ce service."
-
diff --git a/modules/authX509/locales/he/LC_MESSAGES/authX509.po b/modules/authX509/locales/he/LC_MESSAGES/authX509.po
deleted file mode 100644
index 27087cd3c7428b0507fe1e4514cb9650bd676bc8..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/he/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,29 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: he\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr "נדרש אימות תעודת X509  על מנת לגשת לשירות זה."
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "אימות תעודת X509 "
-
-msgid "X509 certificate authentication"
-msgstr "אימות תעודת X509 "
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr "נדרש אימות תעודת X509  על מנת לגשת לשירות זה."
-
diff --git a/modules/authX509/locales/hr/LC_MESSAGES/authX509.po b/modules/authX509/locales/hr/LC_MESSAGES/authX509.po
deleted file mode 100644
index 9b8474f586d95126a8c318c66dfc5406a8d4982c..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/hr/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,30 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: hr\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
-"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr "Za pristup ovom servisu potreban je X509 certifikat."
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "Autentifikacija uporabom X509 digitalnog certifikata"
-
-msgid "X509 certificate authentication"
-msgstr "Autentifikacija uporabom X509 digitalnog certifikata"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr "Za pristup ovom servisu potreban je X509 certifikat."
-
diff --git a/modules/authX509/locales/hu/LC_MESSAGES/authX509.po b/modules/authX509/locales/hu/LC_MESSAGES/authX509.po
deleted file mode 100644
index 4cad03b55b7ef0d969626b3b09723d46881c0b8d..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/hu/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,33 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: hu\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=1; plural=0\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr ""
-"Az alábbi oldalhoz X509 tanúsítványalapú azonosítás után kaphat "
-"hozzáférést"
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "X509 tanúsítványalapú azonosítás"
-
-msgid "X509 certificate authentication"
-msgstr "X509 tanúsítványalapú azonosítás"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr ""
-"Az alábbi oldalhoz X509 tanúsítványalapú azonosítás után kaphat "
-"hozzáférést"
-
diff --git a/modules/authX509/locales/id/LC_MESSAGES/authX509.po b/modules/authX509/locales/id/LC_MESSAGES/authX509.po
deleted file mode 100644
index 7637fa48d7cfad962b7ccea718644bd8ad4293ac..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/id/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,29 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: id\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr "Autentifikasi certificate X509 diperlukan untuk mengakses layanan ini."
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "Autentifikasi certificate X509"
-
-msgid "X509 certificate authentication"
-msgstr "Autentifikasi certificate X509"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr "Autentifikasi certificate X509 diperlukan untuk mengakses layanan ini."
-
diff --git a/modules/authX509/locales/it/LC_MESSAGES/authX509.po b/modules/authX509/locales/it/LC_MESSAGES/authX509.po
deleted file mode 100644
index 3b129a093236113fe22580ffaa844c7cce027fad..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/it/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,33 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: it\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr ""
-"Una autenticazione con certificato X509 è richiesta per accedere a questo"
-" servizio."
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "Autenticazione con certificato X509"
-
-msgid "X509 certificate authentication"
-msgstr "Autenticazione con certificato X509"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr ""
-"Una autenticazione con certificato X509 è richiesta per accedere a questo"
-" servizio."
-
diff --git a/modules/authX509/locales/ja/LC_MESSAGES/authX509.po b/modules/authX509/locales/ja/LC_MESSAGES/authX509.po
deleted file mode 100644
index 92711d89e5ebe9adb294683feef3fccb72f55356..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/ja/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,29 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: ja\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=1; plural=0\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr "このサービスにアクセスするにはX509証明書認証を行う必要があります。"
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "X509証明書認証"
-
-msgid "X509 certificate authentication"
-msgstr "X509証明書認証"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr "このサービスにアクセスするにはX509証明書認証を行う必要があります。"
-
diff --git a/modules/authX509/locales/lt/LC_MESSAGES/authX509.po b/modules/authX509/locales/lt/LC_MESSAGES/authX509.po
deleted file mode 100644
index 86e18342cdcdcb48ad3377a963ac0b224bf58870..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/lt/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,34 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: lt\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
-"(n%100<10 || n%100>=20) ? 1 : 2)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr ""
-"X509 sertifikato autentikacija yra reikalinga norint pasiekti šią "
-"paslaugÄ…."
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "X509 sertifikato autentikacija"
-
-msgid "X509 certificate authentication"
-msgstr "X509 sertifikato autentikacija"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr ""
-"X509 sertifikato autentikacija yra reikalinga norint pasiekti šią "
-"paslaugÄ…."
-
diff --git a/modules/authX509/locales/lv/LC_MESSAGES/authX509.po b/modules/authX509/locales/lv/LC_MESSAGES/authX509.po
deleted file mode 100644
index 811b59cad7c2dcf0fcc6b0b0351772a7b086d40a..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/lv/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,34 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: lv\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 :"
-" 2)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr ""
-"x509 sertifikāta autentifikācija ir nepieciešama, lai piekļūtu šim "
-"servisam"
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "x509 sertifikāta autentifikācija"
-
-msgid "X509 certificate authentication"
-msgstr "x509 sertifikāta autentifikācija"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr ""
-"x509 sertifikāta autentifikācija ir nepieciešama, lai piekļūtu šim "
-"servisam"
-
diff --git a/modules/authX509/locales/nb/LC_MESSAGES/authX509.po b/modules/authX509/locales/nb/LC_MESSAGES/authX509.po
deleted file mode 100644
index 6517289e0bb7986b1aec16c5d699b67b20f488ba..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/nb/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,65 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: nb_NO\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509warning:proceed}"
-msgstr "Fortsett"
-
-msgid "{authX509:X509warning:renew}"
-msgstr "Vennligst forny sertifikatet ditt før det utløper."
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr "X509 sertifikatautentisering er pĂĄkrevd for ĂĄ aksessere denne tjenesten."
-
-msgid "{authX509:X509warning:renew_url}"
-msgstr ""
-"Vennligst <a href=‘%renewurl%’>forny</a> sertifikatet ditt før det "
-"utløper."
-
-msgid "{authX509:X509warning:warning_header}"
-msgstr "Sertifikatet ditt vil snart utløpe."
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "X509 sertifikatautentisering"
-
-msgid "{authX509:X509warning:warning}"
-msgstr "Sertifikatet ditt vil utløpe om %daysleft% dager."
-
-msgid "Please renew your certificate in time."
-msgstr "Vennligst forny sertifikatet ditt før det utløper."
-
-#, python-format
-msgid "Your certificate will expire in %daysleft% days."
-msgstr "Sertifikatet ditt vil utløpe om %daysleft% dager."
-
-msgid "X509 certificate authentication"
-msgstr "X509 sertifikatautentisering"
-
-#, python-format
-msgid "Please <a href='%renewurl%'>renew your certificate</a> in time."
-msgstr ""
-"Vennligst <a href=‘%renewurl%’>forny</a> sertifikatet ditt før det "
-"utløper."
-
-msgid "Proceed"
-msgstr "Fortsett"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr "X509 sertifikatautentisering er pĂĄkrevd for ĂĄ aksessere denne tjenesten."
-
-msgid "Your certificate is about to expire."
-msgstr "Sertifikatet ditt vil snart utløpe."
-
diff --git a/modules/authX509/locales/nl/LC_MESSAGES/authX509.po b/modules/authX509/locales/nl/LC_MESSAGES/authX509.po
deleted file mode 100644
index 3515e80ead16e2a92048eebab00d274cef65441a..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/nl/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,65 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: nl\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509warning:proceed}"
-msgstr "Verder"
-
-msgid "{authX509:X509warning:renew}"
-msgstr "Vervang tijdig je certificaat."
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr ""
-"Authenticatie via een X509-certificaat is noodzakelijk voor toegang tot "
-"deze dienst."
-
-msgid "{authX509:X509warning:renew_url}"
-msgstr "<a href='%renewurl%'>Vervang</a> tijdig je certificaat."
-
-msgid "{authX509:X509warning:warning_header}"
-msgstr "Je certificaat verloopt binnenkort."
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "Authenticatie via X509-certificaat"
-
-msgid "{authX509:X509warning:warning}"
-msgstr "Je certificaat verloopt over %daysleft% dagen."
-
-msgid "Please renew your certificate in time."
-msgstr "Vervang tijdig je certificaat."
-
-#, python-format
-msgid "Your certificate will expire in %daysleft% days."
-msgstr "Je certificaat verloopt over %daysleft% dagen."
-
-msgid "X509 certificate authentication"
-msgstr "Authenticatie via X509-certificaat"
-
-#, python-format
-msgid "Please <a href=\"%renewurl%\">renew your certificate</a> in time."
-msgstr "<a href=\"%renewurl%\">Vervang tijdig je certificaat</a>."
-
-msgid "Proceed"
-msgstr "Verder"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr ""
-"Authenticatie via een X509-certificaat is noodzakelijk voor toegang tot "
-"deze dienst."
-
-msgid "Your certificate is about to expire."
-msgstr "Je certificaat verloopt binnenkort."
-
diff --git a/modules/authX509/locales/nn/LC_MESSAGES/authX509.po b/modules/authX509/locales/nn/LC_MESSAGES/authX509.po
deleted file mode 100644
index 430dbcfa18473996700c39cbb1e69d224f212ff7..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/nn/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,29 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: nn\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr "X509 sertifikatautentisering er pĂĄkrevd for tilgang til denne tenesta."
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "X509 sertifikatautentisering"
-
-msgid "X509 certificate authentication"
-msgstr "X509 sertifikatautentisering"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr "X509 sertifikatautentisering er pĂĄkrevd for tilgang til denne tenesta."
-
diff --git a/modules/authX509/locales/ro/LC_MESSAGES/authX509.po b/modules/authX509/locales/ro/LC_MESSAGES/authX509.po
deleted file mode 100644
index 0b7af53da37b4bf7d10038630a886f972468ce1c..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/ro/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,34 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: ro\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100 > 0 && n%100"
-" < 20)) ? 1 : 2)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr ""
-"Pentru accesarea acestui serviciu este necesară autentificarea cu "
-"certificat X509."
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "Autentificare cu certificat X509"
-
-msgid "X509 certificate authentication"
-msgstr "Autentificare cu certificat X509"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr ""
-"Pentru accesarea acestui serviciu este necesară autentificarea cu "
-"certificat X509."
-
diff --git a/modules/authX509/locales/ru/LC_MESSAGES/authX509.po b/modules/authX509/locales/ru/LC_MESSAGES/authX509.po
deleted file mode 100644
index e0a7e6903b7ef6bafedce3d21b7a1e4982dca3c5..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/ru/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,30 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: ru\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
-"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr "Сертификату подлинности X509 требуется доступ к службе."
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "Сертификат подлинности X509"
-
-msgid "X509 certificate authentication"
-msgstr "Сертификат подлинности X509"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr "Сертификату подлинности X509 требуется доступ к службе."
-
diff --git a/modules/authX509/locales/sl/LC_MESSAGES/authX509.po b/modules/authX509/locales/sl/LC_MESSAGES/authX509.po
deleted file mode 100644
index b2bfadb7c5e07a6df682bc6569763bd17b581507..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/sl/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,34 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: sl\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 "
-"|| n%100==4 ? 2 : 3)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr ""
-"Avtentikacija z X509 digitalnim potrdilom je zahtevana za dostop do "
-"izbrane storitve."
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "Avtentikacija z X509 digitalnim potrdilom"
-
-msgid "X509 certificate authentication"
-msgstr "Avtentikacija z X509 digitalnim potrdilom"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr ""
-"Avtentikacija z X509 digitalnim potrdilom je zahtevana za dostop do "
-"izbrane storitve."
-
diff --git a/modules/authX509/locales/sr/LC_MESSAGES/authX509.po b/modules/authX509/locales/sr/LC_MESSAGES/authX509.po
deleted file mode 100644
index 195f027a4ed8b46dd61ecdc6365e4828aea3a551..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/sr/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,34 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: sr\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
-"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr ""
-"Za pristup ovom servisu potrebno je da se autentifikujete upotrebom X509 "
-"sertifikata."
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "Autentifikacija upotrebom X509 digitalnog sertifikata"
-
-msgid "X509 certificate authentication"
-msgstr "Autentifikacija upotrebom X509 digitalnog sertifikata"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr ""
-"Za pristup ovom servisu potrebno je da se autentifikujete upotrebom X509 "
-"sertifikata."
-
diff --git a/modules/authX509/locales/sv/LC_MESSAGES/authX509.po b/modules/authX509/locales/sv/LC_MESSAGES/authX509.po
deleted file mode 100644
index 44fe248024ea0f8f01649672b0a4af0388cb14f7..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/sv/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,33 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: sv\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr ""
-"Inloggning med X509-certifikat krävs för att få tillgång till denna "
-"tjänst."
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "Inloggning med X509-certifikat"
-
-msgid "X509 certificate authentication"
-msgstr "Inloggning med X509-certifikat"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr ""
-"Inloggning med X509-certifikat krävs för att få tillgång till denna "
-"tjänst."
-
diff --git a/modules/authX509/locales/zh-tw/LC_MESSAGES/authX509.po b/modules/authX509/locales/zh-tw/LC_MESSAGES/authX509.po
deleted file mode 100644
index 0d66e9359a768c73becfae108c403213702097dc..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/zh-tw/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,29 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: zh_Hant_TW\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=1; plural=0\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr "這個服務必須以 X509 憑證進行驗證"
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "X509 憑證驗證"
-
-msgid "X509 certificate authentication"
-msgstr "X509 憑證驗證"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr "這個服務必須以 X509 憑證進行驗證"
-
diff --git a/modules/authX509/locales/zh/LC_MESSAGES/authX509.po b/modules/authX509/locales/zh/LC_MESSAGES/authX509.po
deleted file mode 100644
index 43d23998dee077895eb90f9150c8f6112ecb5ff5..0000000000000000000000000000000000000000
--- a/modules/authX509/locales/zh/LC_MESSAGES/authX509.po
+++ /dev/null
@@ -1,29 +0,0 @@
-
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: SimpleSAMLphp 1.15\n"
-"Report-Msgid-Bugs-To: simplesamlphp-translation@googlegroups.com\n"
-"POT-Creation-Date: 2016-10-12 09:23+0200\n"
-"PO-Revision-Date: 2016-10-14 12:14+0200\n"
-"Last-Translator: \n"
-"Language: zh\n"
-"Language-Team: \n"
-"Plural-Forms: nplurals=1; plural=0\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.3.4\n"
-
-msgid "{authX509:X509error:certificate_text}"
-msgstr "X509确认认证要求访问该服务"
-
-msgid "{authX509:X509error:certificate_header}"
-msgstr "X509确认认证"
-
-msgid "X509 certificate authentication"
-msgstr "X509确认认证"
-
-msgid "X509 certificate authentication is required to access this service."
-msgstr "X509确认认证要求访问该服务"
-
diff --git a/modules/authX509/templates/X509error.php b/modules/authX509/templates/X509error.php
deleted file mode 100644
index 5db087b3adb7a9537add780cc47123b877f29d48..0000000000000000000000000000000000000000
--- a/modules/authX509/templates/X509error.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-
-$this->data['header'] = $this->t('{authX509:X509error:certificate_header}');
-
-$this->includeAtTemplateBase('includes/header.php');
-
-if ($this->data['errorcode'] !== null) {
-?>
-    <div style="border-left: 1px solid #e8e8e8; border-bottom: 1px solid #e8e8e8; background: #f5f5f5">
-        <img src="/<?php echo $this->data['baseurlpath']; ?>resources/icons/experience/gtk-dialog-error.48x48.png" class="float-l" style="margin: 15px" alt="" />
-        <h2><?php echo $this->t('{login:error_header}'); ?></h2>
-        <p><b><?php echo $this->t($this->data['errorcodes']['title'][$this->data['errorcode']]); ?></b></p>
-        <p><?php echo $this->t($this->data['errorcodes']['descr'][$this->data['errorcode']]); ?></p>
-    </div>
-<?php
-}
-?>
-    <h2 style="break: both"><?php echo $this->t('{authX509:X509error:certificate_header}'); ?></h2>
-
-    <p><?php echo $this->t('{authX509:X509error:certificate_text}'); ?></p>
-
-    <a href="<?php echo htmlspecialchars(\SimpleSAML\Utils\HTTP::getSelfURL()); ?>">
-        <?php echo $this->t('{login:login_button}'); ?>
-    </a>
-<?php
-
-if (!empty($this->data['links'])) {
-    echo '<ul class="links" style="margin-top: 2em">';
-    foreach ($this->data['links'] as $l) {
-        echo '<li><a href="'.htmlspecialchars($l['href']).'">'.htmlspecialchars($this->t($l['text'])).'</a></li>';
-    }
-    echo '</ul>';
-}
-
-$this->includeAtTemplateBase('includes/footer.php');
diff --git a/modules/authX509/templates/X509error.twig b/modules/authX509/templates/X509error.twig
deleted file mode 100644
index becaebdb722c7d0067293661a350520a77df917a..0000000000000000000000000000000000000000
--- a/modules/authX509/templates/X509error.twig
+++ /dev/null
@@ -1,19 +0,0 @@
-{% set pagetitle = 'X509 certificate authentication'|trans %}
-{% extends "base.twig" %}
-{% block content %}
-
-{% if errorcode -%}
-<h2>{% trans 'Error' %}</h2>
-<h3>{% trans errortitle %}</h3>
-<p>{% trans errordescr %}</p>
-{% endif -%}
-
-<h2>{% trans 'X509 certificate authentication' %}</h2>
-
-<p>{% trans 'X509 certificate authentication is required to access this service.' %}</p>
-
-<a href="{{ loginurl }}">
-{% trans 'Login' %}
-</a>
-
-{% endblock %}
diff --git a/modules/authX509/templates/X509warning.php b/modules/authX509/templates/X509warning.php
deleted file mode 100644
index a25385ec9a97772712c0d962d28ba87f82089ee6..0000000000000000000000000000000000000000
--- a/modules/authX509/templates/X509warning.php
+++ /dev/null
@@ -1,48 +0,0 @@
-<?php
-
-/**
- * Template form for X509 warnings.
- *
- * Parameters:
- * - 'target': Target URL for the continue-button.
- * - 'data': Parameters which should be included in the request.
- *
- * @package SimpleSAMLphp
- */
-
-$warning = $this->t('{authX509:X509warning:warning}', [
-    '%daysleft%' => htmlspecialchars($this->data['daysleft']),
-]);
-
-if ($this->data['renewurl']) {
-    $warning .= " ".$this->t('{authX509:X509warning:renew_url}', [
-        '%renewurl%' => $this->data['renewurl'],
-        ]);
-} else {
-    $warning .= " ".$this->t('{authX509:X509warning:renew}');
-}
-
-$this->data['header'] = $this->t('{authX509:X509warning:warning_header}');
-$this->data['autofocus'] = 'proceedbutton';
-
-$this->includeAtTemplateBase('includes/header.php');
-
-?>
-
-<form style="display: inline; margin: 0px; padding: 0px" action="<?php echo htmlspecialchars($this->data['target']); ?>">
-
-    <?php
-    // Embed hidden fields...
-    foreach ($this->data['data'] as $name => $value) {
-        echo '<input type="hidden" name="'.htmlspecialchars($name).'" value="'.htmlspecialchars($value).'" />';
-    }
-    ?>
-    <p><?php echo $warning; ?></p>
-
-    <input type="submit" name="proceed" id="proceedbutton" value="<?php echo htmlspecialchars($this->t('{authX509:X509warning:proceed}')) ?>" />
-
-</form>
-
-
-<?php
-$this->includeAtTemplateBase('includes/footer.php');
diff --git a/modules/authX509/templates/X509warning.twig b/modules/authX509/templates/X509warning.twig
deleted file mode 100644
index b75f7c370fd773ef4c52aa0a26114e7f5cb8893d..0000000000000000000000000000000000000000
--- a/modules/authX509/templates/X509warning.twig
+++ /dev/null
@@ -1,24 +0,0 @@
-{% extends "base.twig" %}
-
-{% block content %}
-
-<h2>{% trans 'Your certificate is about to expire.' %}</h2>
-<form action="{{ target | escape }}">
-
-    {% for name, value in data -%}
-    <input type="hidden" name="{{ name }}" value="{{ value }}">
-    {%- endfor %}
-
-    <p>{% trans %}Your certificate will expire in {{ daysleft }} days.{% endtrans %}</p>
-
-    {% if renewurl -%}
-    <p>{% trans %}Please <a href="{{ renewurl }}">renew your certificate</a> in time.{% endtrans %}</p>
-    {% else -%}
-    <p>{% trans 'Please renew your certificate in time.' %}</p>
-    {% endif -%}
-
-    <p><input type="submit" name="proceed" id="proceedbutton" value="{% trans 'Proceed' %}" autofocus></p>
-
-</form>
-
-{% endblock %}
diff --git a/modules/authX509/www/expirywarning.php b/modules/authX509/www/expirywarning.php
deleted file mode 100644
index 7bd36030d44a399fb59d510220078311d564d0a3..0000000000000000000000000000000000000000
--- a/modules/authX509/www/expirywarning.php
+++ /dev/null
@@ -1,31 +0,0 @@
-<?php
-
-/**
- * This script warns a user that his/her certificate is about to expire.
- *
- * @package SimpleSAMLphp
- */
-
-\SimpleSAML\Logger::info('AuthX509 - Showing expiry warning to user');
-
-if (!array_key_exists('StateId', $_REQUEST)) {
-    throw new \SimpleSAML\Error\BadRequest('Missing required StateId query parameter.');
-}
-$id = $_REQUEST['StateId'];
-$state = \SimpleSAML\Auth\State::loadState($id, 'warning:expire');
-
-
-if (array_key_exists('proceed', $_REQUEST)) {
-    // The user has pressed the proceed-button
-    \SimpleSAML\Auth\ProcessingChain::resumeProcessing($state);
-}
-
-$globalConfig = \SimpleSAML\Configuration::getInstance();
-
-$t = new \SimpleSAML\XHTML\Template($globalConfig, 'authX509:X509warning.php');
-$t->data['target'] = \SimpleSAML\Module::getModuleURL('authX509/expirywarning.php');
-$t->data['data'] = ['StateId' => $id];
-$t->data['daysleft'] = $state['daysleft'];
-$t->data['renewurl'] = $state['renewurl'];
-$t->data['errorcodes'] = \SimpleSAML\Error\ErrorCodes::getAllErrorCodeMessages();
-$t->show();