Skip to content
This repository was archived by the owner on Jun 25, 2024. It is now read-only.

Commit 00fc47c

Browse files
Merge pull request #10 from silinternational/develop
beautify UI
2 parents 7ffec56 + d5c5237 commit 00fc47c

17 files changed

+494
-238
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
11
.idea/
22
vendor/
33
composer.lock
4+
nbproject/
5+
.vagrant/

README.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,9 @@ Update `/simplesamlphp/config/config.php`:
2525
'theme.color-scheme' => ['indigo-purple'|'blue_grey-teal'|'red-teal'|'orange-light_blue']
2626
```
2727

28+
The login page will get its images from `/simplesamlphp/www/favicon.ico` and
29+
`/simplesamlphp/www/logo.png` which are **NOT** provided by default.
30+
2831
### Analytics
2932
Update `/simplesamlphp/config/config.php`:
3033

@@ -54,7 +57,8 @@ content of that announcement. HTML is supported.
5457
3. Click **hub-discovery**
5558

5659
### Error
57-
1. Click **Configuration** tab
60+
1. Click **Federation** tab
61+
2. Click either **Show metadata** link
5862

5963
### Logout
6064
1. Click **Authentication** tab

Vagrantfile

Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
# -*- mode: ruby -*-
2+
# vi: set ft=ruby :
3+
4+
# All Vagrant configuration is done below. The "2" in Vagrant.configure
5+
# configures the configuration version (we support older styles for
6+
# backwards compatibility). Please don't change it unless you know what
7+
# you're doing.
8+
Vagrant.configure(2) do |config|
9+
# The most common configuration options are documented and commented below.
10+
# For a complete reference, please see the online documentation at
11+
# https://docs.vagrantup.com.
12+
13+
# Every Vagrant development environment requires a box. You can search for
14+
# boxes at https://atlas.hashicorp.com/search.
15+
config.vm.box = "ubuntu/trusty64"
16+
17+
# Create a private network, which allows host-only access to the machine
18+
# using a specific IP.
19+
config.vm.network "private_network", ip: "192.168.62.54"
20+
21+
# Provider-specific configuration so you can fine-tune various
22+
# backing providers for Vagrant. These expose provider-specific options.
23+
# Example for VirtualBox:
24+
#
25+
config.vm.provider "virtualbox" do |vb|
26+
# Customize the amount of memory on the VM:
27+
vb.memory = "1536"
28+
29+
# A fix for speed issues with DNS resolution:
30+
# http://serverfault.com/questions/453185/vagrant-virtualbox-dns-10-0-2-3-not-working?rq=1
31+
vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
32+
33+
# Set the timesync threshold to 59 seconds, instead of the default 20 minutes.
34+
# 59 seconds chosen to ensure SimpleSAML never gets too far out of date.
35+
vb.customize ["guestproperty", "set", :id, "/VirtualBox/GuestAdd/VBoxService/--timesync-set-threshold", 59000]
36+
end
37+
#
38+
# View the documentation for the provider you are using for more
39+
# information on available options.
40+
41+
# This provisioner runs on the first `vagrant up`.
42+
config.vm.provision "install", type: "shell", inline: <<-SHELL
43+
# Add Docker apt repository
44+
sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
45+
sudo sh -c 'echo deb https://apt.dockerproject.org/repo ubuntu-trusty main > /etc/apt/sources.list.d/docker.list'
46+
sudo apt-get update -y
47+
48+
# Add NTP so that the LDAP queries don't unexpectedly fail.
49+
sudo apt-get install ntp -y
50+
51+
# Uninstall old lxc-docker
52+
apt-get purge lxc-docker
53+
apt-cache policy docker-engine
54+
55+
# Install docker and dependencies
56+
sudo apt-get install -y linux-image-extra-$(uname -r)
57+
sudo apt-get install -y docker-engine
58+
59+
# Add user vagrant to docker group
60+
sudo groupadd docker
61+
sudo usermod -aG docker vagrant
62+
63+
# Install Docker Compose
64+
curl -L https://github.com/docker/compose/releases/download/1.9.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
65+
chmod +x /usr/local/bin/docker-compose
66+
SHELL
67+
68+
# This provisioner runs on every `vagrant reload' (as well as the first
69+
# `vagrant up`), reinstalling from local directories
70+
config.vm.provision "recompose", type: "shell", run: "always", inline: <<-SHELL
71+
72+
cd /vagrant
73+
74+
# Set necessary environment variables for shell access.
75+
export COMPOSER_CACHE_DIR=/tmp
76+
export DOCKER_UIDGID="$(id -u):$(id -g)"
77+
78+
# Set up necessary env. vars to automatically be present each time.
79+
cat << 'EOF' >> /home/vagrant/.bashrc
80+
export COMPOSER_CACHE_DIR=/tmp
81+
export DOCKER_UIDGID="$(id -u):$(id -g)"
82+
EOF
83+
84+
SHELL
85+
86+
end

development/hub/authsources.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,6 @@
66
'hub-discovery' => [
77
'saml:SP',
88
'entityID' => 'ssp-hub.local',
9-
'discoURL' => null,
9+
'discoURL' => 'http://ssp-hub.local/module.php/sildisco/disco.php',
1010
],
11-
];
11+
];

development/hub/saml20-idp-remote.php

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
<?php
22
$metadata['http://ssp-hub-idp1.local:8085'] = [
3+
'enabled' => true,
34
'metadata-set' => 'saml20-idp-remote',
45
'entityid' => 'http://ssp-hub-idp1.local:8085',
56
'name' => [
@@ -10,6 +11,7 @@
1011
'certData' => 'MIIDzzCCAregAwIBAgIJAPlZYTAQSIbHMA0GCSqGSIb3DQEBCwUAMH4xCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJOQzEPMA0GA1UEBwwGV2F4aGF3MQwwCgYDVQQKDANTSUwxDTALBgNVBAsMBEdUSVMxDjAMBgNVBAMMBVN0ZXZlMSQwIgYJKoZIhvcNAQkBFhVzdGV2ZV9iYWd3ZWxsQHNpbC5vcmcwHhcNMTYxMDE3MTIzMTQ1WhcNMjYxMDE3MTIzMTQ1WjB+MQswCQYDVQQGEwJVUzELMAkGA1UECAwCTkMxDzANBgNVBAcMBldheGhhdzEMMAoGA1UECgwDU0lMMQ0wCwYDVQQLDARHVElTMQ4wDAYDVQQDDAVTdGV2ZTEkMCIGCSqGSIb3DQEJARYVc3RldmVfYmFnd2VsbEBzaWwub3JnMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArssOaeKbdOQFpN6bBolwSJ/6QFBXA73Sotg60anx9v6aYdUTmi+b7SVtvOmHDgsD5X8pN/6Z11QCZfTYg2nW3ZevGZsj8W/R6C8lRLHzWUr7e7DXKfj8GKZptHlUs68kn0ndNVt9r/+irJe9KBdZ+4kAihykomNdeZg06bvkklxVcvpkOfLTQzEqJAmISPPIeOXes6hXORdqLuRNTuIKarcZ9rstLnpgAs2TE4XDOrSuUg3XFnM05eDpFQpUb0RXWcD16mLCPWw+CPrGoCfoftD5ZGfll+W2wZ7d0kQ4TbCpNyxQH35q65RPVyVNPgSNSsFFkmdcqP9DsFqjJ8YC6wIDAQABo1AwTjAdBgNVHQ4EFgQUD6oyJKOPPhvLQpDCC3027QcuQwUwHwYDVR0jBBgwFoAUD6oyJKOPPhvLQpDCC3027QcuQwUwDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEAA6tCLHJQGfXGdFerQ3J0wUu8YDSLb0WJqPtGdIuyeiywR5ooJf8G/jjYMPgZArepLQSSi6t8/cjEdkYWejGnjMG323drQ9M1sKMUhOJF4po9R3t7IyvGAL3fSqjXA8JXH5MuGuGtChWxaqhduA0dBJhFAtAXQ61IuIQF7vSFxhTwCvJnaWdWD49sG5OqjCfgIQdY/mw70e45rLnR/bpfoigL67sTJxy+Kx2ogbvMR6lITByOEQFMt7BYpMtXrwvKUM7k9NOo1jREmJacC8PTx//jRhCWwzUj1RsfIri24BuITrawwqMsYl8DZiiwMpjUf9m4NPaf4E7+QRpzo+MCcg==',
1112
];
1213
$metadata['http://ssp-hub-idp2.local:8086'] = [
14+
'enabled' => true,
1315
'metadata-set' => 'saml20-idp-remote',
1416
'entityid' => 'http://ssp-hub-idp2.local:8086',
1517
'name' => [
@@ -19,3 +21,75 @@
1921
'SingleLogoutService' => 'http://ssp-hub-idp2.local:8086/saml2/idp/SingleLogoutService.php',
2022
'certData' => 'MIIDzzCCAregAwIBAgIJALBaUrvz1X5DMA0GCSqGSIb3DQEBCwUAMH4xCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJOQzEPMA0GA1UEBwwGV2F4aGF3MQwwCgYDVQQKDANTSUwxDTALBgNVBAsMBEdUSVMxDjAMBgNVBAMMBVN0ZXZlMSQwIgYJKoZIhvcNAQkBFhVzdGV2ZV9iYWd3ZWxsQHNpbC5vcmcwHhcNMTYxMDE4MTQwMDUxWhcNMjYxMDE4MTQwMDUxWjB+MQswCQYDVQQGEwJVUzELMAkGA1UECAwCTkMxDzANBgNVBAcMBldheGhhdzEMMAoGA1UECgwDU0lMMQ0wCwYDVQQLDARHVElTMQ4wDAYDVQQDDAVTdGV2ZTEkMCIGCSqGSIb3DQEJARYVc3RldmVfYmFnd2VsbEBzaWwub3JnMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAx5mZNwjEnakJho+5etuFyx+2g9rs96iLX/LDC24aBAsdNxTNuIc1jJ7pxBxGrepEND4LkietLNBlOr1q50nq2+ddTrCfmoJB+9BqBOxcm9qWeqWbp8/arUjaxPzK3DfZrxJxIVFjzqFF7gI91y9yvEW/fqLRMhvnH1ns+N1ne59zr1y6h9mmHfBffGr1YXAfyEAuV1ich4AfTfjqhdwFwxhFLLCVnxA0bDbNw/0eGCSiA13N7a013xTurLeJu0AQaZYssMqvc/17UphH4gWDMEZAwy0EfRSBOsDOYCxeNxVajnWX1834VDpBDfpnZj996Gh8tzRQxQgT9/plHKhGiwIDAQABo1AwTjAdBgNVHQ4EFgQUApxlUQg26GrG3eH8lEG3SkqbH/swHwYDVR0jBBgwFoAUApxlUQg26GrG3eH8lEG3SkqbH/swDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEANhbm8WgIqBDlF7DIRVUbq04TEA9nOJG8wdjJYdoKrPX9f/E9slkFuD2StcK99RTcowa8Z2OmW7tksa+onyH611Lq21QXh4aHzQUAm2HbsmPQRZnkByeYoCJ/1tuEho+x+VGanaUICSBVWYiebAQVKHR6miFypRElibNBizm2nqp6Q9B87V8COzyDVngR1DlWDduxYaNOBgvht3Rk9Y2pVHqym42dIfN+pprcsB1PGBkY/BngIuS/aqTENbmoC737vcb06e8uzBsbCpHtqUBjPpL2psQZVJ2Y84JmHafC3B7nFQrjdZBbc9eMHfPo240Rh+pDLwxdxPqRAZdeLaUkCQ==',
2123
];
24+
$metadata['jaars-idp'] = [
25+
'enabled' => true,
26+
'metadata-set' => 'saml20-idp-remote',
27+
'entityid' => 'jaars-idp',
28+
'name' => [
29+
'en' => 'jaars'
30+
],
31+
'logoURL' => 'https://static.gtis.guru/idp-logo/jaars-logo.png'
32+
];
33+
$metadata['sil-idp'] = [
34+
'enabled' => true,
35+
'metadata-set' => 'saml20-idp-remote',
36+
'entityid' => 'sil-idp',
37+
'name' => [
38+
'en' => 'sil'
39+
],
40+
'logoURL' => 'https://static.gtis.guru/idp-logo/sil-logo.png'
41+
];
42+
$metadata['usa-idp'] = [
43+
'enabled' => true,
44+
'metadata-set' => 'saml20-idp-remote',
45+
'entityid' => 'usa-idp',
46+
'name' => [
47+
'en' => 'usa'
48+
],
49+
'logoURL' => 'https://static.gtis.guru/idp-logo/usa-logo.png'
50+
];
51+
$metadata['wga-idp'] = [
52+
'enabled' => true,
53+
'metadata-set' => 'saml20-idp-remote',
54+
'entityid' => 'wga-idp',
55+
'name' => [
56+
'en' => 'wga'
57+
],
58+
'logoURL' => 'https://static.gtis.guru/idp-logo/wga-logo.png'
59+
];
60+
$metadata['mock-jaars-idp'] = [
61+
'enabled' => false,
62+
'metadata-set' => 'saml20-idp-remote',
63+
'entityid' => 'mock-jaars-idp',
64+
'name' => [
65+
'en' => 'jaars'
66+
],
67+
'logoURL' => 'https://static.gtis.guru/idp-logo/jaars-logo.png'
68+
];
69+
$metadata['mock-sil-idp'] = [
70+
'enabled' => false,
71+
'metadata-set' => 'saml20-idp-remote',
72+
'entityid' => 'mock-sil-idp',
73+
'name' => [
74+
'en' => 'sil'
75+
],
76+
'logoURL' => 'https://static.gtis.guru/idp-logo/sil-logo.png'
77+
];
78+
$metadata['mock-usa-idp'] = [
79+
'enabled' => false,
80+
'metadata-set' => 'saml20-idp-remote',
81+
'entityid' => 'mock-usa-idp',
82+
'name' => [
83+
'en' => 'usa'
84+
],
85+
'logoURL' => 'https://static.gtis.guru/idp-logo/usa-logo.png'
86+
];
87+
$metadata['mock-wga-idp'] = [
88+
'enabled' => false,
89+
'metadata-set' => 'saml20-idp-remote',
90+
'entityid' => 'mock-wga-idp',
91+
'name' => [
92+
'en' => 'wga'
93+
],
94+
'logoURL' => 'https://static.gtis.guru/idp-logo/wga-logo.png'
95+
];

dictionaries/login.definition.json

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@
66
"ko": "로그인 계정"
77
},
88
"header": {
9-
"en": "Please enter your username and password",
10-
"es": "por favor introduzca su nombre de usuario y contraseña",
11-
"fr": "Veuillez s'il vous plaît entrer votre nom d'utilisateur et votre mot de passe",
12-
"ko": "사용자 이름과 암호를 입력하십시오."
9+
"en": "Login with your {idpName} account",
10+
"es": "Inicie sesión con su cuenta {idpName}",
11+
"fr": "Connectez-vous avec votre compte {idpName}",
12+
"ko": "{idpName} 계정으로 로그인하십시오."
1313
},
1414
"label_username": {
1515
"en": "Username",
@@ -36,9 +36,15 @@
3636
"ko": "로그인"
3737
},
3838
"forgot": {
39-
"en": "Forgot your password? Reset it now",
40-
"es": "¿Olvidaste tu contraseña? Restablecer ahora",
41-
"fr": "Mot de passe oublié? Réinitialisez-le maintenant",
42-
"ko": "비밀번호를 잊어 버렸습니까? 지금 다시 설정하십시오"
39+
"en": "Forgot password?",
40+
"es": "¿Se te olvidó tu contraseña?",
41+
"fr": "Mot de passe oublié?",
42+
"ko": "비밀번호를 잊으 셨나요?"
43+
},
44+
"logo": {
45+
"en": "{idpName} logo",
46+
"es": "Logotipo de {idpName}",
47+
"fr": "Logo {idpName}",
48+
"ko": "{idpName} 로고"
4349
}
4450
}

dictionaries/selectidp.definition.json

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -12,16 +12,16 @@
1212
"fr": "Choisissez un compte",
1313
"ko": "계정 선택"
1414
},
15-
"button_login": {
16-
"en": "Login with {idpName}",
17-
"es": "Inicia con {idpName}",
18-
"fr": "Connectez-vous avec {idpName}",
19-
"ko": "로 로그인 {idpName}"
15+
"future": {
16+
"en": "Planned for a future release.",
17+
"es": "Planeado para una versión futura.",
18+
"fr": "Prévu pour une version future.",
19+
"ko": "향후 릴리스 예정입니다."
2020
},
21-
"button_login_disabled": {
22-
"en": "Coming soon...",
23-
"es": "Próximamente...",
24-
"fr": "à venir bientôt...",
25-
"ko": "곧 출시 될 예정입니다."
21+
"logo": {
22+
"en": "{idpName} logo",
23+
"es": "Logotipo de {idpName}",
24+
"fr": "Logo {idpName}",
25+
"ko": "{idpName} 로고"
2626
}
2727
}

docker-compose.yml

Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,48 +1,58 @@
11
version: '2'
2-
services:
2+
services:
33
hub:
44
image: silintl/ssp-base:develop
5-
volumes:
5+
volumes:
66
- ./development/hub/cert:/data/vendor/simplesamlphp/simplesamlphp/cert
77
- ./development/hub/authsources.php:/data/vendor/simplesamlphp/simplesamlphp/config/authsources.php
88
- ./development/hub/saml20-idp-remote.php:/data/vendor/simplesamlphp/simplesamlphp/metadata/saml20-idp-remote.php
99
- ./development/hub/saml20-idp-hosted.php:/data/vendor/simplesamlphp/simplesamlphp/metadata/saml20-idp-hosted.php
1010
- ./:/data/vendor/simplesamlphp/simplesamlphp/modules/material
11-
ports:
11+
ports:
1212
- '80:80'
13-
environment:
13+
environment:
1414
ADMIN_PASS: "abc123"
1515
SECURE_COOKIE: "false"
1616
SHOW_SAML_ERRORS: "true"
1717
THEME_USE: "material:material"
18+
HUB_MODE: "true"
19+
ADMIN_EMAIL: "[email protected]"
20+
SECRET_SALT: "FcJwl0zCDc4nuzOuQL9/7WPIj3hdfusGm2ny0dcRQm0="
21+
IDP_NAME: "The Hub"
1822
idp1:
1923
image: silintl/ssp-base:develop
20-
volumes:
24+
volumes:
2125
- ./development/idp1/cert:/data/vendor/simplesamlphp/simplesamlphp/cert
2226
- ./development/idp1/authsources.php:/data/vendor/simplesamlphp/simplesamlphp/config/authsources.php
2327
- ./development/idp1/saml20-idp-hosted.php:/data/vendor/simplesamlphp/simplesamlphp/metadata/saml20-idp-hosted.php
2428
- ./development/idp1/saml20-sp-remote.php:/data/vendor/simplesamlphp/simplesamlphp/metadata/saml20-sp-remote.php
25-
ports:
29+
ports:
2630
- '8085:80'
27-
environment:
31+
environment:
2832
ADMIN_PASS: "a"
2933
SECURE_COOKIE: "false"
3034
SHOW_SAML_ERRORS: "true"
3135
ADMIN_PROTECT_INDEX_PAGE: "false"
3236
THEME_USE: "default:default"
37+
ADMIN_EMAIL: "[email protected]"
38+
SECRET_SALT: "8yC5mb4wqANaU+Rxrl4DHkfKzikeieXkltfFd+YDzx8="
39+
IDP_NAME: "Idp 1"
3340
idp2:
3441
image: silintl/ssp-base:develop
35-
volumes:
42+
volumes:
3643
- ./development/idp2/cert:/data/vendor/simplesamlphp/simplesamlphp/cert
3744
- ./development/idp2/authsources.php:/data/vendor/simplesamlphp/simplesamlphp/config/authsources.php
3845
- ./development/idp2/saml20-idp-hosted.php:/data/vendor/simplesamlphp/simplesamlphp/metadata/saml20-idp-hosted.php
3946
- ./development/idp2/saml20-sp-remote.php:/data/vendor/simplesamlphp/simplesamlphp/metadata/saml20-sp-remote.php
4047
- ./:/data/vendor/simplesamlphp/simplesamlphp/modules/material
41-
ports:
48+
ports:
4249
- '8086:80'
43-
environment:
50+
environment:
4451
ADMIN_PASS: "b"
4552
SECURE_COOKIE: "false"
4653
SHOW_SAML_ERRORS: "true"
4754
ADMIN_PROTECT_INDEX_PAGE: "false"
4855
THEME_USE: "material:material"
56+
ADMIN_EMAIL: "[email protected]"
57+
SECRET_SALT: "edI4GGkYfkzD6/OXFvHBHb9Meu9hdKXQpNFg4q/GGfY="
58+
IDP_NAME: "Idp 2"

themes/material/common-announcement.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33

44
if (! empty($announcement)) {
55
?>
6-
<p class="mdl-typography--subhead mdl-typography--text-center alert">
6+
<p class="mdl-typography--subhead mdl-typography--text-center alert margin">
77
<?= $announcement ?>
88
</p>
99
<?php
Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,12 @@
11
<meta charset="utf-8">
22
<meta name="robots" content="noindex, nofollow"/>
3+
<meta http-equiv="x-ua-compatible" content="ie=edge">
34
<meta name="viewport" content="width=device-width, initial-scale=1.0">
45

5-
<link rel="shortcut icon" href="/module.php/material/favicon.ico" />
6-
76
<?php
87
$colors = $this->configuration->getValue('theme.color-scheme', 'indigo-purple');
98
?>
109
<link rel="stylesheet" href="/module.php/material/material.<?= $colors ?>.1.2.1.min.css">
11-
<link rel="stylesheet" href="/module.php/material/styles.1.0.1.css">
10+
<link rel="stylesheet" href="/module.php/material/styles.2.1.0.css">
1211

1312
<script async src="/module.php/material/material.1.2.1.min.js"></script>

0 commit comments

Comments
 (0)