@@ -137,7 +137,7 @@ |
||
137 | 137 | |
138 | 138 | $out .= 'Config.sb_user_file = """' . $this->mkSbUserFile() . '"""' . "\n"; |
139 | 139 | if (!empty($this->attributes['internal:realm'][0])) { |
140 | - $out .= 'Config.user_realm = "' . $this->attributes['internal:realm'][0] . "\"\n"; |
|
140 | + $out .= 'Config.user_realm = "' . $this->attributes['internal:realm'][0] . "\"\n"; |
|
141 | 141 | } |
142 | 142 | if(!empty($this->attributes['internal:hint_userinput_suffix'][0]) && $this->attributes['internal:hint_userinput_suffix'][0] == 1) { |
143 | 143 | $out .= "Config.hint_user_input = True\n"; |
@@ -81,7 +81,7 @@ |
||
81 | 81 | <?php if (empty($_REQUEST['idp'])) { ?> |
82 | 82 | <div id="front_page"> |
83 | 83 | <?php |
84 | - echo $divs->div_top_welcome(); |
|
84 | + echo $divs->div_top_welcome(); |
|
85 | 85 | // echo $divs->div_roller(); |
86 | 86 | // echo $divs->div_main_button(); ?> |
87 | 87 | </div> <!-- id="front_page" --> |
@@ -56,34 +56,34 @@ |
||
56 | 56 | // let's start the numbering at 1 |
57 | 57 | $this->qaArray = [ |
58 | 58 | 1 => ["AREA" => AbstractTest::INFRA_DEVICE, |
59 | - "TXT" => _("Have you ever used the network succesfully, e.g. at your home institution without roaming?"), |
|
60 | - "FACTOR" => 0.5, |
|
61 | - "VERDICTLECTURE" => sprintf(_("If your device has never worked before with this setup, then very likely your device configuation is wrong. %s"), $confAssistantText)], |
|
59 | + "TXT" => _("Have you ever used the network succesfully, e.g. at your home institution without roaming?"), |
|
60 | + "FACTOR" => 0.5, |
|
61 | + "VERDICTLECTURE" => sprintf(_("If your device has never worked before with this setup, then very likely your device configuation is wrong. %s"), $confAssistantText)], |
|
62 | 62 | 2 => ["AREA" => AbstractTest::INFRA_DEVICE, |
63 | - "TXT" => _("Did the device previously work when roaming, i.e. at other hotspots away from your home institution?"), |
|
64 | - "FACTOR" => 0.33, |
|
65 | - "VERDICTLECTURE" => sprintf(_("If roaming consistently does not work, then very likely your device configuration is wrong. Typical errors causing this symptom include: using a routing ('outer') username without the @realm.tld suffix - those potentially work at home, but can not be used when roaming. %s"),$confAssistantText)], |
|
63 | + "TXT" => _("Did the device previously work when roaming, i.e. at other hotspots away from your home institution?"), |
|
64 | + "FACTOR" => 0.33, |
|
65 | + "VERDICTLECTURE" => sprintf(_("If roaming consistently does not work, then very likely your device configuration is wrong. Typical errors causing this symptom include: using a routing ('outer') username without the @realm.tld suffix - those potentially work at home, but can not be used when roaming. %s"),$confAssistantText)], |
|
66 | 66 | 3 => ["AREA" => AbstractTest::INFRA_DEVICE, |
67 | - "TXT" => _("Did you recently change the configuration on your device?"), |
|
68 | - "FACTOR" => 3, |
|
69 | - "VERDICTLECTURE" => _("Accounts only need to be configured once, and can then be used anywhere on the planet without any changes. If you recently changed the configuration, that change may very well be at fault. You should never change your network configuration unless explicitly instructed so by your Identity Provider; even in the case of temporary login issues.")], |
|
67 | + "TXT" => _("Did you recently change the configuration on your device?"), |
|
68 | + "FACTOR" => 3, |
|
69 | + "VERDICTLECTURE" => _("Accounts only need to be configured once, and can then be used anywhere on the planet without any changes. If you recently changed the configuration, that change may very well be at fault. You should never change your network configuration unless explicitly instructed so by your Identity Provider; even in the case of temporary login issues.")], |
|
70 | 70 | 4 => ["AREA" => AbstractTest::INFRA_DEVICE, |
71 | - "TXT" => _("Do your other devices still work?"), |
|
72 | - "VERDICTLECTURE" => _("If all devices stopped working simultaneously, there may be a problem with your account as such. Maybe your account expired, or you were forced to change the password? These questions are best answered by your Identity Provider [MGW: display contact info]"), |
|
73 | - "FACTOR" => 0.33], |
|
71 | + "TXT" => _("Do your other devices still work?"), |
|
72 | + "VERDICTLECTURE" => _("If all devices stopped working simultaneously, there may be a problem with your account as such. Maybe your account expired, or you were forced to change the password? These questions are best answered by your Identity Provider [MGW: display contact info]"), |
|
73 | + "FACTOR" => 0.33], |
|
74 | 74 | 5 => ["AREA" => AbstractTest::INFRA_SP_80211, |
75 | - "TXT" => _("Is the place you are currently at heavily crowded, or is a network-intensive workload going on?"), |
|
76 | - "FACTOR" => 3, |
|
77 | - "VERDICTLECTURE" => _("The network is likely overloaded at this location and point in time. You may have to wait until later before you get a better connectivity. If you think the network should be reinforced for more capacity at this place, you should inform the hotspot provider. [MGW: add contact info]")], |
|
75 | + "TXT" => _("Is the place you are currently at heavily crowded, or is a network-intensive workload going on?"), |
|
76 | + "FACTOR" => 3, |
|
77 | + "VERDICTLECTURE" => _("The network is likely overloaded at this location and point in time. You may have to wait until later before you get a better connectivity. If you think the network should be reinforced for more capacity at this place, you should inform the hotspot provider. [MGW: add contact info]")], |
|
78 | 78 | 6 => ["AREA" => AbstractTest::INFRA_SP_80211, |
79 | - "TXT" => _("Does the connection get better when you move around?"), |
|
80 | - "FACTOR" => 3, |
|
81 | - "VERDICTLECTURE" => _("You should move to a different location to achieve better network coverage and service. If you think the exact spot you are at deserves better coverage, you should inform the hotspot provider. [MGW: add contact info]")], |
|
79 | + "TXT" => _("Does the connection get better when you move around?"), |
|
80 | + "FACTOR" => 3, |
|
81 | + "VERDICTLECTURE" => _("You should move to a different location to achieve better network coverage and service. If you think the exact spot you are at deserves better coverage, you should inform the hotspot provider. [MGW: add contact info]")], |
|
82 | 82 | |
83 | 83 | 7 => ["AREA" => AbstractTest::INFRA_SP_LAN, |
84 | - "TXT" => _("Do you see errors stating something similar to 'Unable to get IP address'?"), |
|
85 | - "FACTOR" => 3, |
|
86 | - "VERDICTLECTURE" => _("The evidence at hand suggests that there may be an infrastructure problem at this particular hotspot provider. There is nothing you can do to solve this problem locally. Please be patient and try again at a later time.")], |
|
84 | + "TXT" => _("Do you see errors stating something similar to 'Unable to get IP address'?"), |
|
85 | + "FACTOR" => 3, |
|
86 | + "VERDICTLECTURE" => _("The evidence at hand suggests that there may be an infrastructure problem at this particular hotspot provider. There is nothing you can do to solve this problem locally. Please be patient and try again at a later time.")], |
|
87 | 87 | ]; |
88 | 88 | } |
89 | 89 |
@@ -59,12 +59,12 @@ discard block |
||
59 | 59 | */ |
60 | 60 | |
61 | 61 | /** |
62 | - * Various paths. |
|
63 | - * eapol_test: absolute path to the eapol_test executable. If you just fill in "eapol_test" the one from the system $PATH will be taken. |
|
64 | - * c_rehash: absolute path to the c_rehash executable. If you just fill in "c_rehash" the one from the system $PATH will be taken. |
|
65 | - * See also NSIS_VERSION further down |
|
66 | - * @var array |
|
67 | - */ |
|
62 | + * Various paths. |
|
63 | + * eapol_test: absolute path to the eapol_test executable. If you just fill in "eapol_test" the one from the system $PATH will be taken. |
|
64 | + * c_rehash: absolute path to the c_rehash executable. If you just fill in "c_rehash" the one from the system $PATH will be taken. |
|
65 | + * See also NSIS_VERSION further down |
|
66 | + * @var array |
|
67 | + */ |
|
68 | 68 | 'PATHS' => [ |
69 | 69 | 'c_rehash' => 'c_rehash', |
70 | 70 | 'eapol_test' => 'eapol_test', |
@@ -101,45 +101,45 @@ discard block |
||
101 | 101 | ], |
102 | 102 | |
103 | 103 | 'TLS-clientcerts' => [ |
104 | - 'CA1' => [ |
|
104 | + 'CA1' => [ |
|
105 | 105 | 'status' => 'ACCREDITED', |
106 | 106 | 'issuerCA' => '/DC=org/DC=pki1/CN=PKI 1', |
107 | 107 | 'certificates' => [ |
108 | - [ |
|
108 | + [ |
|
109 | 109 | 'status' => 'CORRECT', |
110 | 110 | 'public' => 'ca1-client-cert.pem', |
111 | 111 | 'private' => 'ca1-client-key.pem', |
112 | 112 | 'expected' => 'PASS'], |
113 | - [ |
|
113 | + [ |
|
114 | 114 | 'status' => 'WRONGPOLICY', |
115 | 115 | 'public' => 'ca1-nopolicy-cert.pem', |
116 | 116 | 'private' => 'ca1-nopolicy-key.key', |
117 | 117 | 'expected' => 'FAIL'], |
118 | - [ |
|
118 | + [ |
|
119 | 119 | 'status' => 'EXPIRED', |
120 | 120 | 'public' => 'ca1-exp.pem', |
121 | 121 | 'private' => 'ca1-exp.key', |
122 | 122 | 'expected' => 'FAIL'], |
123 | - [ |
|
123 | + [ |
|
124 | 124 | 'status' => 'REVOKED', |
125 | 125 | 'public' => 'ca1-revoked.pem', |
126 | 126 | 'private' => 'ca1-revoked.key', |
127 | 127 | 'expected' => 'FAIL'], |
128 | 128 | ] |
129 | - ], |
|
130 | - 'CA-N' => [ |
|
129 | + ], |
|
130 | + 'CA-N' => [ |
|
131 | 131 | 'status' => 'NONACCREDITED', |
132 | 132 | 'issuerCA' => '/DC=org/DC=pkiN/CN=PKI N', |
133 | 133 | 'certificates' => [ |
134 | - [ |
|
134 | + [ |
|
135 | 135 | 'status' => 'CORRECT', |
136 | 136 | 'public' => 'caN-client-cert.pem', |
137 | 137 | 'private' => 'caN-client-cert.key', |
138 | 138 | 'expected' => 'FAIL'], |
139 | - ] |
|
140 | - ] |
|
141 | - ], |
|
142 | - 'accreditedCAsURL' => '', |
|
139 | + ] |
|
140 | + ] |
|
141 | + ], |
|
142 | + 'accreditedCAsURL' => '', |
|
143 | 143 | ], |
144 | 144 | 'eduGainResolver' => [ |
145 | 145 | 'url' => 'https://technical.edugain.org/api.php', |
@@ -104,13 +104,13 @@ discard block |
||
104 | 104 | ], |
105 | 105 | |
106 | 106 | /** |
107 | - * Configuration for GeoIP2 |
|
108 | - * Beware, the legacy version does not really work with IPv6 addresses |
|
109 | - * version: set to 2 if you wish to use GeoIP2, to 1 for the legacy version or set to 0 to turn off geolocation service |
|
110 | - * geoip2-path-to-autoloader: points to the GeoIP2 autoloader |
|
111 | - * geoip2-path-to-db: points to the GeoIP2 city database |
|
112 | - * @var array |
|
113 | - */ |
|
107 | + * Configuration for GeoIP2 |
|
108 | + * Beware, the legacy version does not really work with IPv6 addresses |
|
109 | + * version: set to 2 if you wish to use GeoIP2, to 1 for the legacy version or set to 0 to turn off geolocation service |
|
110 | + * geoip2-path-to-autoloader: points to the GeoIP2 autoloader |
|
111 | + * geoip2-path-to-db: points to the GeoIP2 city database |
|
112 | + * @var array |
|
113 | + */ |
|
114 | 114 | |
115 | 115 | 'GEOIP' => [ |
116 | 116 | 'version' => 0, |
@@ -128,7 +128,6 @@ discard block |
||
128 | 128 | * mails, just configure the signing cert with these parameters. All must |
129 | 129 | * be non-NULL for signing to happen. If you don't need a keypass, make |
130 | 130 | * it an empty string instead. |
131 | - |
|
132 | 131 | * @var array |
133 | 132 | */ |
134 | 133 | 'MAILSETTINGS' => [ // we always use Submission |
@@ -147,25 +146,25 @@ discard block |
||
147 | 146 | * @var array |
148 | 147 | */ |
149 | 148 | 'LANGUAGES' => [ |
150 | - 'bg' => ['display' => 'Български', 'locale' => 'bg_BG.utf8', 'latin_based' => FALSE], |
|
151 | - 'ca' => ['display' => 'Català', 'locale' => 'ca_ES.utf8', 'latin_based' => TRUE], |
|
152 | - 'cs' => ['display' => 'Čeština', 'locale' => 'cs_CZ.utf8', 'latin_based' => TRUE], |
|
153 | - 'de' => ['display' => 'Deutsch', 'locale' => 'de_DE.utf8', 'latin_based' => TRUE], |
|
154 | - 'el' => ['display' => 'Ελληνικά', 'locale' => 'el_GR.utf8', 'latin_based' => FALSE], |
|
155 | - 'en' => ['display' => 'English(GB)', 'locale' => 'en_GB.utf8', 'latin_based' => TRUE], |
|
156 | - 'es' => ['display' => 'Español', 'locale' => 'es_ES.utf8', 'latin_based' => TRUE], |
|
157 | - 'fr' => ['display' => 'Français', 'locale' => 'fr_FR.utf8', 'latin_based' => TRUE], |
|
158 | - 'gl' => ['display' => 'Galego', 'locale' => 'gl_ES.utf8', 'latin_based' => TRUE], |
|
159 | - 'hr' => ['display' => 'Hrvatski', 'locale' => 'hr_HR.utf8', 'latin_based' => TRUE], |
|
160 | - 'it' => ['display' => 'Italiano', 'locale' => 'it_IT.utf8', 'latin_based' => TRUE], |
|
161 | - 'lt' => ['display' => 'lietuvių', 'locale' => 'lt_LT.utf8', 'latin_based' => TRUE], |
|
162 | - 'nb' => ['display' => 'Norsk', 'locale' => 'nb_NO.utf8', 'latin_based' => TRUE], |
|
163 | - 'pl' => ['display' => 'Polski', 'locale' => 'pl_PL.utf8', 'latin_based' => TRUE], |
|
164 | - 'sl' => ['display' => 'Slovenščina', 'locale' => 'sl_SI.utf8', 'latin_based' => TRUE], |
|
165 | - 'sr' => ['display' => 'Srpski', 'locale' => 'sr_RS@latin', 'latin_based' => TRUE], |
|
166 | - 'fi' => ['display' => 'Suomi', 'locale' => 'fi_FI.utf8', 'latin_based' => TRUE], |
|
167 | - 'hu' => ['display' => 'Magyar', 'locale' => 'hu_HU.utf8', 'latin_based' => TRUE], |
|
168 | - 'pt' => ['display' => 'Português', 'locale' => 'pt_PT.utf8', 'latin_based' => TRUE], |
|
149 | + 'bg' => ['display' => 'Български', 'locale' => 'bg_BG.utf8', 'latin_based' => FALSE], |
|
150 | + 'ca' => ['display' => 'Català', 'locale' => 'ca_ES.utf8', 'latin_based' => TRUE], |
|
151 | + 'cs' => ['display' => 'Čeština', 'locale' => 'cs_CZ.utf8', 'latin_based' => TRUE], |
|
152 | + 'de' => ['display' => 'Deutsch', 'locale' => 'de_DE.utf8', 'latin_based' => TRUE], |
|
153 | + 'el' => ['display' => 'Ελληνικά', 'locale' => 'el_GR.utf8', 'latin_based' => FALSE], |
|
154 | + 'en' => ['display' => 'English(GB)', 'locale' => 'en_GB.utf8', 'latin_based' => TRUE], |
|
155 | + 'es' => ['display' => 'Español', 'locale' => 'es_ES.utf8', 'latin_based' => TRUE], |
|
156 | + 'fr' => ['display' => 'Français', 'locale' => 'fr_FR.utf8', 'latin_based' => TRUE], |
|
157 | + 'gl' => ['display' => 'Galego', 'locale' => 'gl_ES.utf8', 'latin_based' => TRUE], |
|
158 | + 'hr' => ['display' => 'Hrvatski', 'locale' => 'hr_HR.utf8', 'latin_based' => TRUE], |
|
159 | + 'it' => ['display' => 'Italiano', 'locale' => 'it_IT.utf8', 'latin_based' => TRUE], |
|
160 | + 'lt' => ['display' => 'lietuvių', 'locale' => 'lt_LT.utf8', 'latin_based' => TRUE], |
|
161 | + 'nb' => ['display' => 'Norsk', 'locale' => 'nb_NO.utf8', 'latin_based' => TRUE], |
|
162 | + 'pl' => ['display' => 'Polski', 'locale' => 'pl_PL.utf8', 'latin_based' => TRUE], |
|
163 | + 'sl' => ['display' => 'Slovenščina', 'locale' => 'sl_SI.utf8', 'latin_based' => TRUE], |
|
164 | + 'sr' => ['display' => 'Srpski', 'locale' => 'sr_RS@latin', 'latin_based' => TRUE], |
|
165 | + 'fi' => ['display' => 'Suomi', 'locale' => 'fi_FI.utf8', 'latin_based' => TRUE], |
|
166 | + 'hu' => ['display' => 'Magyar', 'locale' => 'hu_HU.utf8', 'latin_based' => TRUE], |
|
167 | + 'pt' => ['display' => 'Português', 'locale' => 'pt_PT.utf8', 'latin_based' => TRUE], |
|
169 | 168 | |
170 | 169 | // For the following languages, partial translations exist in Transifex, but |
171 | 170 | // they are not complete enough for display. Their Transifex content is not |
@@ -242,7 +241,7 @@ discard block |
||
242 | 241 | 'user' => 'customerservice', |
243 | 242 | 'pass' => '2lame4u', |
244 | 243 | 'readonly' => TRUE, ], |
245 | - 'enforce-external-sync' => TRUE, |
|
244 | + 'enforce-external-sync' => TRUE, |
|
246 | 245 | ], |
247 | 246 | |
248 | 247 | /** |
@@ -155,12 +155,12 @@ |
||
155 | 155 | * @return bool TRUE if this user is an admin with FED-level blessing |
156 | 156 | */ |
157 | 157 | public function isPrimaryOwner($user) { |
158 | - foreach ($this->listOwners() as $oneOwner) { |
|
159 | - if ($oneOwner['ID'] == $user && $oneOwner['LEVEL'] == "FED") { |
|
160 | - return TRUE; |
|
161 | - } |
|
162 | - } |
|
163 | - return FALSE; |
|
158 | + foreach ($this->listOwners() as $oneOwner) { |
|
159 | + if ($oneOwner['ID'] == $user && $oneOwner['LEVEL'] == "FED") { |
|
160 | + return TRUE; |
|
161 | + } |
|
162 | + } |
|
163 | + return FALSE; |
|
164 | 164 | } |
165 | 165 | |
166 | 166 | /** |
@@ -59,10 +59,10 @@ discard block |
||
59 | 59 | */ |
60 | 60 | |
61 | 61 | public static $Options=[ |
62 | - 'sign'=>0, |
|
63 | - 'no_cache'=>0, |
|
64 | - 'hidden'=>0, |
|
65 | - 'redirect'=>0, |
|
62 | + 'sign'=>0, |
|
63 | + 'no_cache'=>0, |
|
64 | + 'hidden'=>0, |
|
65 | + 'redirect'=>0, |
|
66 | 66 | ]; |
67 | 67 | |
68 | 68 | /** |
@@ -100,75 +100,75 @@ discard block |
||
100 | 100 | |
101 | 101 | public static function listDevices() { |
102 | 102 | return [ |
103 | - 'w10'=>[ |
|
104 | - 'group' => "microsoft", |
|
105 | - 'display'=>_("MS Windows 10"), |
|
106 | - 'match'=>'Windows NT 10', |
|
107 | - 'directory'=>'ms', |
|
108 | - 'module'=>'W10', |
|
109 | - 'signer'=>'ms_windows_sign', |
|
103 | + 'w10'=>[ |
|
104 | + 'group' => "microsoft", |
|
105 | + 'display'=>_("MS Windows 10"), |
|
106 | + 'match'=>'Windows NT 10', |
|
107 | + 'directory'=>'ms', |
|
108 | + 'module'=>'W10', |
|
109 | + 'signer'=>'ms_windows_sign', |
|
110 | 110 | 'options'=>[ |
111 | - 'sign'=>1, |
|
112 | - 'device_id'=>'W10', |
|
113 | - 'mime'=>'application/x-dosexec', |
|
114 | - ], |
|
115 | - ], |
|
111 | + 'sign'=>1, |
|
112 | + 'device_id'=>'W10', |
|
113 | + 'mime'=>'application/x-dosexec', |
|
114 | + ], |
|
115 | + ], |
|
116 | 116 | |
117 | - 'w8'=>[ |
|
118 | - 'group' => "microsoft", |
|
119 | - 'display'=>_("MS Windows 8, 8.1"), |
|
120 | - 'match'=>'Windows NT 6[._][23]', |
|
121 | - 'directory'=>'ms', |
|
122 | - 'module'=>'W8', |
|
123 | - 'signer'=>'ms_windows_sign', |
|
117 | + 'w8'=>[ |
|
118 | + 'group' => "microsoft", |
|
119 | + 'display'=>_("MS Windows 8, 8.1"), |
|
120 | + 'match'=>'Windows NT 6[._][23]', |
|
121 | + 'directory'=>'ms', |
|
122 | + 'module'=>'W8', |
|
123 | + 'signer'=>'ms_windows_sign', |
|
124 | 124 | 'options'=>[ |
125 | - 'sign'=>1, |
|
126 | - 'device_id'=>'W8', |
|
127 | - 'mime'=>'application/x-dosexec', |
|
128 | - ], |
|
129 | - ], |
|
125 | + 'sign'=>1, |
|
126 | + 'device_id'=>'W8', |
|
127 | + 'mime'=>'application/x-dosexec', |
|
128 | + ], |
|
129 | + ], |
|
130 | 130 | |
131 | - 'w7'=>[ |
|
132 | - 'group' => "microsoft", |
|
133 | - 'display'=>_("MS Windows 7"), |
|
134 | - 'match'=>'Windows NT 6[._]1', |
|
135 | - 'directory'=>'ms', |
|
136 | - 'module'=>'Vista7', |
|
137 | - 'signer'=>'ms_windows_sign', |
|
131 | + 'w7'=>[ |
|
132 | + 'group' => "microsoft", |
|
133 | + 'display'=>_("MS Windows 7"), |
|
134 | + 'match'=>'Windows NT 6[._]1', |
|
135 | + 'directory'=>'ms', |
|
136 | + 'module'=>'Vista7', |
|
137 | + 'signer'=>'ms_windows_sign', |
|
138 | 138 | 'options'=>[ |
139 | - 'sign'=>1, |
|
140 | - 'device_id'=>'W7', |
|
141 | - 'mime'=>'application/x-dosexec', |
|
142 | - ], |
|
143 | - ], |
|
139 | + 'sign'=>1, |
|
140 | + 'device_id'=>'W7', |
|
141 | + 'mime'=>'application/x-dosexec', |
|
142 | + ], |
|
143 | + ], |
|
144 | 144 | |
145 | - 'vista'=>[ |
|
146 | - 'group' => "microsoft", |
|
147 | - 'display'=>_("MS Windows Vista"), |
|
148 | - 'match'=>'Windows NT 6[._]0', |
|
149 | - 'directory'=>'ms', |
|
150 | - 'module'=>'Vista7', |
|
151 | - 'signer'=>'ms_windows_sign', |
|
145 | + 'vista'=>[ |
|
146 | + 'group' => "microsoft", |
|
147 | + 'display'=>_("MS Windows Vista"), |
|
148 | + 'match'=>'Windows NT 6[._]0', |
|
149 | + 'directory'=>'ms', |
|
150 | + 'module'=>'Vista7', |
|
151 | + 'signer'=>'ms_windows_sign', |
|
152 | 152 | 'options'=>[ |
153 | - 'sign'=>1, |
|
154 | - 'device_id'=>'Vista', |
|
155 | - 'mime'=>'application/x-dosexec', |
|
156 | - ], |
|
157 | - ], |
|
153 | + 'sign'=>1, |
|
154 | + 'device_id'=>'Vista', |
|
155 | + 'mime'=>'application/x-dosexec', |
|
156 | + ], |
|
157 | + ], |
|
158 | 158 | |
159 | - 'win-rt'=>[ |
|
159 | + 'win-rt'=>[ |
|
160 | 160 | 'group' => "microsoft", |
161 | 161 | 'display'=>_("Windows RT"), |
162 | 162 | 'directory'=>'redirect_dev', |
163 | 163 | 'module'=>'RedirectDev', |
164 | 164 | 'options'=>[ |
165 | - 'hidden'=>0, |
|
166 | - 'redirect'=>1, |
|
167 | - ], |
|
168 | - ], |
|
165 | + 'hidden'=>0, |
|
166 | + 'redirect'=>1, |
|
167 | + ], |
|
168 | + ], |
|
169 | 169 | |
170 | 170 | |
171 | - 'apple_hi_sierra'=>array( |
|
171 | + 'apple_hi_sierra'=>array( |
|
172 | 172 | 'group' => "apple", |
173 | 173 | 'display'=>_("Apple macOS High Sierra"), |
174 | 174 | 'match'=>'Mac OS X 10[._]13', |
@@ -176,14 +176,14 @@ discard block |
||
176 | 176 | 'module'=>'mobileconfig_os_x', |
177 | 177 | 'signer'=>'mobileconfig_sign', |
178 | 178 | 'options'=>array( |
179 | - 'sign'=>1, |
|
180 | - 'device_id'=>'OS_X', |
|
181 | - 'mime'=>'application/x-apple-aspen-config', |
|
182 | - ), |
|
179 | + 'sign'=>1, |
|
180 | + 'device_id'=>'OS_X', |
|
181 | + 'mime'=>'application/x-apple-aspen-config', |
|
182 | + ), |
|
183 | 183 | ), |
184 | 184 | |
185 | 185 | |
186 | - 'apple_sierra'=>array( |
|
186 | + 'apple_sierra'=>array( |
|
187 | 187 | 'group' => "apple", |
188 | 188 | 'display'=>_("Apple macOS Sierra"), |
189 | 189 | 'match'=>'Mac OS X 10[._]12', |
@@ -191,14 +191,14 @@ discard block |
||
191 | 191 | 'module'=>'mobileconfig_os_x', |
192 | 192 | 'signer'=>'mobileconfig_sign', |
193 | 193 | 'options'=>array( |
194 | - 'sign'=>1, |
|
195 | - 'device_id'=>'OS_X', |
|
196 | - 'mime'=>'application/x-apple-aspen-config', |
|
197 | - ), |
|
194 | + 'sign'=>1, |
|
195 | + 'device_id'=>'OS_X', |
|
196 | + 'mime'=>'application/x-apple-aspen-config', |
|
197 | + ), |
|
198 | 198 | ), |
199 | 199 | |
200 | 200 | |
201 | - 'apple_el_cap'=>[ |
|
201 | + 'apple_el_cap'=>[ |
|
202 | 202 | 'group' => "apple", |
203 | 203 | 'display'=>_("Apple OS X El Capitan"), |
204 | 204 | 'match'=>'Mac OS X 10[._]11', |
@@ -206,13 +206,13 @@ discard block |
||
206 | 206 | 'module'=>'mobileconfig_os_x', |
207 | 207 | 'signer'=>'mobileconfig_sign', |
208 | 208 | 'options'=>array( |
209 | - 'sign'=>1, |
|
210 | - 'device_id'=>'OS_X', |
|
211 | - 'mime'=>'application/x-apple-aspen-config', |
|
212 | - ), |
|
209 | + 'sign'=>1, |
|
210 | + 'device_id'=>'OS_X', |
|
211 | + 'mime'=>'application/x-apple-aspen-config', |
|
212 | + ), |
|
213 | 213 | ], |
214 | 214 | |
215 | - 'apple_yos'=>[ |
|
215 | + 'apple_yos'=>[ |
|
216 | 216 | 'group' => "apple", |
217 | 217 | 'display'=>_("Apple OS X Yosemite"), |
218 | 218 | 'match'=>'Mac OS X 10[._]10', |
@@ -220,13 +220,13 @@ discard block |
||
220 | 220 | 'module'=>'mobileconfig_os_x', |
221 | 221 | 'signer'=>'mobileconfig_sign', |
222 | 222 | 'options'=>[ |
223 | - 'sign'=>1, |
|
224 | - 'device_id'=>'OS_X', |
|
225 | - 'mime'=>'application/x-apple-aspen-config', |
|
226 | - ], |
|
223 | + 'sign'=>1, |
|
224 | + 'device_id'=>'OS_X', |
|
225 | + 'mime'=>'application/x-apple-aspen-config', |
|
226 | + ], |
|
227 | 227 | ], |
228 | 228 | |
229 | - 'apple_mav'=>[ |
|
229 | + 'apple_mav'=>[ |
|
230 | 230 | 'group' => "apple", |
231 | 231 | 'display'=>_("Apple OS X Mavericks"), |
232 | 232 | 'match'=>'Mac OS X 10[._]9', |
@@ -234,13 +234,13 @@ discard block |
||
234 | 234 | 'module'=>'mobileconfig_os_x', |
235 | 235 | 'signer'=>'mobileconfig_sign', |
236 | 236 | 'options'=>[ |
237 | - 'sign'=>1, |
|
238 | - 'device_id'=>'OS_X', |
|
239 | - 'mime'=>'application/x-apple-aspen-config', |
|
240 | - ], |
|
237 | + 'sign'=>1, |
|
238 | + 'device_id'=>'OS_X', |
|
239 | + 'mime'=>'application/x-apple-aspen-config', |
|
240 | + ], |
|
241 | 241 | ], |
242 | 242 | |
243 | - 'apple_m_lion'=>[ |
|
243 | + 'apple_m_lion'=>[ |
|
244 | 244 | 'group' => "apple", |
245 | 245 | 'display'=>_("Apple OS X Mountain Lion"), |
246 | 246 | 'match'=>'Mac OS X 10[._]8', |
@@ -248,13 +248,13 @@ discard block |
||
248 | 248 | 'module'=>'mobileconfig_os_x', |
249 | 249 | 'signer'=>'mobileconfig_sign', |
250 | 250 | 'options'=>[ |
251 | - 'sign'=>1, |
|
252 | - 'device_id'=>'OS_X', |
|
253 | - 'mime'=>'application/x-apple-aspen-config', |
|
254 | - ], |
|
251 | + 'sign'=>1, |
|
252 | + 'device_id'=>'OS_X', |
|
253 | + 'mime'=>'application/x-apple-aspen-config', |
|
254 | + ], |
|
255 | 255 | ], |
256 | 256 | |
257 | - 'apple_lion'=>[ |
|
257 | + 'apple_lion'=>[ |
|
258 | 258 | 'group' => "apple", |
259 | 259 | 'display'=>_("Apple OS X Lion"), |
260 | 260 | 'match'=>'Mac OS X 10[._]7', |
@@ -262,13 +262,13 @@ discard block |
||
262 | 262 | 'module'=>'mobileconfig_os_x', |
263 | 263 | 'signer'=>'mobileconfig_sign', |
264 | 264 | 'options'=>[ |
265 | - 'sign'=>1, |
|
266 | - 'device_id'=>'OS_X', |
|
267 | - 'mime'=>'application/x-apple-aspen-config', |
|
268 | - ], |
|
265 | + 'sign'=>1, |
|
266 | + 'device_id'=>'OS_X', |
|
267 | + 'mime'=>'application/x-apple-aspen-config', |
|
268 | + ], |
|
269 | 269 | ], |
270 | 270 | |
271 | - 'mobileconfig'=>[ |
|
271 | + 'mobileconfig'=>[ |
|
272 | 272 | 'group' => "apple", |
273 | 273 | 'display'=>_("Apple iOS mobile devices"), |
274 | 274 | 'match'=>'(iPad|iPhone|iPod);.*OS ([7-9]|1[0-5])_', |
@@ -276,13 +276,13 @@ discard block |
||
276 | 276 | 'module'=>'mobileconfig_ios', |
277 | 277 | 'signer'=>'mobileconfig_sign', |
278 | 278 | 'options'=>[ |
279 | - 'sign'=>1, |
|
280 | - 'device_id'=>'iOS', |
|
281 | - 'mime'=>'application/x-apple-aspen-config', |
|
282 | - ], |
|
279 | + 'sign'=>1, |
|
280 | + 'device_id'=>'iOS', |
|
281 | + 'mime'=>'application/x-apple-aspen-config', |
|
282 | + ], |
|
283 | 283 | ], |
284 | 284 | |
285 | - 'mobileconfig-56'=>[ |
|
285 | + 'mobileconfig-56'=>[ |
|
286 | 286 | 'group' => "apple", |
287 | 287 | 'display'=>_("Apple iOS mobile devices (iOS 5 and 6)"), |
288 | 288 | 'match'=>'(iPad|iPhone|iPod);.*OS [56]_', |
@@ -290,132 +290,132 @@ discard block |
||
290 | 290 | 'module'=>'mobileconfig_ios_56', |
291 | 291 | 'signer'=>'mobileconfig_sign', |
292 | 292 | 'options'=>[ |
293 | - 'sign'=>1, |
|
294 | - 'device_id'=>'iOS', |
|
295 | - 'mime'=>'application/x-apple-aspen-config', |
|
296 | - ], |
|
293 | + 'sign'=>1, |
|
294 | + 'device_id'=>'iOS', |
|
295 | + 'mime'=>'application/x-apple-aspen-config', |
|
296 | + ], |
|
297 | 297 | ], |
298 | 298 | |
299 | 299 | |
300 | - 'linux'=>[ |
|
301 | - 'group' => "linux", |
|
302 | - 'display'=>_("Linux"), |
|
303 | - 'match'=>'Linux(?!.*Android)', |
|
304 | - 'directory'=>'linux', |
|
305 | - 'module' => 'Linux', |
|
306 | - 'options'=>[ |
|
307 | - 'mime'=>'application/x-sh', |
|
308 | - ], |
|
309 | - ], |
|
300 | + 'linux'=>[ |
|
301 | + 'group' => "linux", |
|
302 | + 'display'=>_("Linux"), |
|
303 | + 'match'=>'Linux(?!.*Android)', |
|
304 | + 'directory'=>'linux', |
|
305 | + 'module' => 'Linux', |
|
306 | + 'options'=>[ |
|
307 | + 'mime'=>'application/x-sh', |
|
308 | + ], |
|
309 | + ], |
|
310 | 310 | |
311 | - 'chromeos'=>[ |
|
311 | + 'chromeos'=>[ |
|
312 | 312 | 'group' => "chrome", |
313 | 313 | 'display'=>_("Chrome OS"), |
314 | 314 | 'match'=>'CrOS', |
315 | 315 | 'directory'=>'chromebook', |
316 | 316 | 'module'=>'chromebook', |
317 | 317 | 'options'=>[ |
318 | - 'mime'=>'application/x-onc', |
|
319 | - 'message'=>sprintf(_("After downloading the file, open the Chrome browser and browse to this URL: <a href='chrome://net-internals/#chromeos'>chrome://net-internals/#chromeos</a>. Then, use the 'Import ONC file' button. The import is silent; the new network definitions will be added to the preferred networks.")), |
|
320 | - ], |
|
321 | - ], |
|
318 | + 'mime'=>'application/x-onc', |
|
319 | + 'message'=>sprintf(_("After downloading the file, open the Chrome browser and browse to this URL: <a href='chrome://net-internals/#chromeos'>chrome://net-internals/#chromeos</a>. Then, use the 'Import ONC file' button. The import is silent; the new network definitions will be added to the preferred networks.")), |
|
320 | + ], |
|
321 | + ], |
|
322 | 322 | |
323 | - 'android_marshmallow'=>[ |
|
323 | + 'android_marshmallow'=>[ |
|
324 | 324 | 'group' => "android", |
325 | 325 | 'display'=>_("Android 6.0 Marshmallow"), |
326 | - 'match'=>'Android 6\.[0-9]', |
|
326 | + 'match'=>'Android 6\.[0-9]', |
|
327 | 327 | 'directory'=>'xml', |
328 | 328 | 'module'=>'Lollipop', |
329 | 329 | 'options'=>[ |
330 | - 'mime'=>'application/eap-config', |
|
331 | - 'message'=>sprintf(_("Before you proceed with installation on Android systems, please make sure that you have installed the %s application. This application is available from %s, %s and %s, and will use the configuration file downloaded from CAT to create all necessary settings."), |
|
330 | + 'mime'=>'application/eap-config', |
|
331 | + 'message'=>sprintf(_("Before you proceed with installation on Android systems, please make sure that you have installed the %s application. This application is available from %s, %s and %s, and will use the configuration file downloaded from CAT to create all necessary settings."), |
|
332 | 332 | "eduroamCAT", |
333 | 333 | "<a target='_blank' href='https://play.google.com/store/apps/details?id=uk.ac.swansea.eduroamcat'>Google Play</a>", |
334 | 334 | "<a target='_blank' href='unbeknownst'>Amazon Appstore</a>", |
335 | 335 | "<a target='_blank' href='eduroamCAT-stable.apk'>"._("as local download")."</a>"), |
336 | - ], |
|
337 | - ], |
|
336 | + ], |
|
337 | + ], |
|
338 | 338 | |
339 | - 'android_lollipop'=>[ |
|
339 | + 'android_lollipop'=>[ |
|
340 | 340 | 'group' => "android", |
341 | 341 | 'display'=>_("Android 5.0 Lollipop"), |
342 | - 'match'=>'Android 5\.[0-9]', |
|
342 | + 'match'=>'Android 5\.[0-9]', |
|
343 | 343 | 'directory'=>'xml', |
344 | 344 | 'module'=>'Lollipop', |
345 | 345 | 'options'=>[ |
346 | - 'mime'=>'application/eap-config', |
|
347 | - 'message'=>sprintf(_("Before you proceed with installation on Android systems, please make sure that you have installed the %s application. This application is available from %s, %s and %s, and will use the configuration file downloaded from CAT to create all necessary settings."), |
|
346 | + 'mime'=>'application/eap-config', |
|
347 | + 'message'=>sprintf(_("Before you proceed with installation on Android systems, please make sure that you have installed the %s application. This application is available from %s, %s and %s, and will use the configuration file downloaded from CAT to create all necessary settings."), |
|
348 | 348 | "eduroamCAT", |
349 | 349 | "<a target='_blank' href='https://play.google.com/store/apps/details?id=uk.ac.swansea.eduroamcat'>Google Play</a>", |
350 | 350 | "<a target='_blank' href='unbeknownst'>Amazon Appstore</a>", |
351 | 351 | "<a target='_blank' href='eduroamCAT-stable.apk'>"._("as local download")."</a>"), |
352 | - ], |
|
353 | - ], |
|
352 | + ], |
|
353 | + ], |
|
354 | 354 | |
355 | - 'android_kitkat'=>[ |
|
355 | + 'android_kitkat'=>[ |
|
356 | 356 | 'group' => "android", |
357 | 357 | 'display'=>_("Android 4.4 KitKat"), |
358 | - 'match'=>'Android 4\.[4-9]', |
|
358 | + 'match'=>'Android 4\.[4-9]', |
|
359 | 359 | 'directory'=>'xml', |
360 | 360 | 'module'=>'KitKat', |
361 | 361 | 'options'=>[ |
362 | - 'mime'=>'application/eap-config', |
|
363 | - 'message'=>sprintf(_("Before you proceed with installation on Android systems, please make sure that you have installed the %s application. This application is available from %s, %s and %s, and will use the configuration file downloaded from CAT to create all necessary settings."), |
|
362 | + 'mime'=>'application/eap-config', |
|
363 | + 'message'=>sprintf(_("Before you proceed with installation on Android systems, please make sure that you have installed the %s application. This application is available from %s, %s and %s, and will use the configuration file downloaded from CAT to create all necessary settings."), |
|
364 | 364 | "eduroamCAT", |
365 | 365 | "<a target='_blank' href='https://play.google.com/store/apps/details?id=uk.ac.swansea.eduroamcat'>Google Play</a>", |
366 | 366 | "<a target='_blank' href='unbeknownst'>Amazon Appstore</a>", |
367 | 367 | "<a target='_blank' href='eduroamCAT-stable.apk'>"._("as local download")."</a>"), |
368 | - ], |
|
369 | - ], |
|
368 | + ], |
|
369 | + ], |
|
370 | 370 | |
371 | 371 | |
372 | - 'android_43'=>[ |
|
372 | + 'android_43'=>[ |
|
373 | 373 | 'group' => "android", |
374 | 374 | 'display'=>_("Android 4.3"), |
375 | - 'match'=>'Android 4\.3', |
|
375 | + 'match'=>'Android 4\.3', |
|
376 | 376 | 'directory'=>'xml', |
377 | 377 | 'module'=>'KitKat', |
378 | 378 | 'options'=>[ |
379 | - 'mime'=>'application/eap-config', |
|
380 | - 'message'=>sprintf(_("Before you proceed with installation on Android systems, please make sure that you have installed the %s application. This application is available from %s, %s and %s, and will use the configuration file downloaded from CAT to create all necessary settings."), |
|
379 | + 'mime'=>'application/eap-config', |
|
380 | + 'message'=>sprintf(_("Before you proceed with installation on Android systems, please make sure that you have installed the %s application. This application is available from %s, %s and %s, and will use the configuration file downloaded from CAT to create all necessary settings."), |
|
381 | 381 | "eduroamCAT", |
382 | 382 | "<a target='_blank' href='https://play.google.com/store/apps/details?id=uk.ac.swansea.eduroamcat'>Google Play</a>", |
383 | 383 | "<a target='_blank' href='unbeknownst'>Amazon Appstore</a>", |
384 | 384 | "<a target='_blank' href='eduroamCAT-stable.apk'>"._("as local download")."</a>"), |
385 | - ], |
|
386 | - ], |
|
385 | + ], |
|
386 | + ], |
|
387 | 387 | |
388 | - 'android_legacy'=>[ |
|
389 | - 'group' => "android", |
|
390 | - 'display'=>_("Android"), |
|
391 | - 'match'=>'Android', |
|
392 | - 'directory'=>'redirect_dev', |
|
393 | - 'module'=>'RedirectDev', |
|
394 | - 'options'=>[ |
|
395 | - 'redirect'=>1, |
|
396 | - ], |
|
397 | - ], |
|
388 | + 'android_legacy'=>[ |
|
389 | + 'group' => "android", |
|
390 | + 'display'=>_("Android"), |
|
391 | + 'match'=>'Android', |
|
392 | + 'directory'=>'redirect_dev', |
|
393 | + 'module'=>'RedirectDev', |
|
394 | + 'options'=>[ |
|
395 | + 'redirect'=>1, |
|
396 | + ], |
|
397 | + ], |
|
398 | 398 | |
399 | - 'eap-config'=>[ |
|
399 | + 'eap-config'=>[ |
|
400 | 400 | 'group' => "eap-config", |
401 | 401 | 'display'=>_("EAP config"), |
402 | 402 | 'directory'=>'xml', |
403 | 403 | 'module'=>'XML_ALL', |
404 | 404 | 'options'=>[ |
405 | - 'mime'=>'application/eap-config', |
|
406 | - 'message'=>sprintf(_("This option provides a generic EAP config XML file, which can be consumed by dedicated applications like eduroamCAT for Android and Linux platforms. This is still an experimental feature.")), |
|
407 | - ], |
|
405 | + 'mime'=>'application/eap-config', |
|
406 | + 'message'=>sprintf(_("This option provides a generic EAP config XML file, which can be consumed by dedicated applications like eduroamCAT for Android and Linux platforms. This is still an experimental feature.")), |
|
407 | + ], |
|
408 | 408 | ], |
409 | 409 | |
410 | - 'test'=>[ |
|
410 | + 'test'=>[ |
|
411 | 411 | 'group' => "other", |
412 | 412 | 'display'=>_("Test"), |
413 | 413 | 'directory'=>'test_module', |
414 | 414 | 'module'=>'TestModule', |
415 | 415 | 'options'=>[ |
416 | - 'hidden'=>1, |
|
417 | - ], |
|
418 | - ], |
|
416 | + 'hidden'=>1, |
|
417 | + ], |
|
418 | + ], |
|
419 | 419 | |
420 | 420 | |
421 | 421 | /* |