Passed
Push — release_2_1 ( 3551c4...9fef4b )
by Tomasz
22:08
created
web/admin/edit_silverbullet.php 1 patch
Spacing   +73 added lines, -73 removed lines patch added patch discarded remove patch
@@ -20,7 +20,7 @@  discard block
 block discarded – undo
20 20
 /*
21 21
  * Class autoloader invocation, should be included prior to any other code at the entry points to the application
22 22
  */
23
-require_once dirname(dirname(dirname(__FILE__))) . "/config/_config.php";
23
+require_once dirname(dirname(dirname(__FILE__)))."/config/_config.php";
24 24
 
25 25
 $auth = new \web\lib\admin\Authentication();
26 26
 $auth->authenticate();
@@ -53,7 +53,7 @@  discard block
 block discarded – undo
53 53
     $fed = new \core\Federation($inst->federation);
54 54
     $allowSb = $fed->getAttributes("fed:silverbullet");
55 55
     if (count($allowSb) == 0) {
56
-        throw new Exception("We were told to create a new SB profile, but this " . \config\ConfAssistant::CONSORTIUM['nomenclature_federation'] . " does not allow SB at all!");
56
+        throw new Exception("We were told to create a new SB profile, but this ".\config\ConfAssistant::CONSORTIUM['nomenclature_federation']." does not allow SB at all!");
57 57
     }
58 58
     // okay, new SB profiles are allowed. 
59 59
     // but is there a support:email attribute on inst level?
@@ -64,7 +64,7 @@  discard block
 block discarded – undo
64 64
     // Create one.
65 65
     $newProfile = $inst->newProfile(core\AbstractProfile::PROFILETYPE_SILVERBULLET);
66 66
     // and modify the REQUEST_URI to add the new profile ID
67
-    $_SERVER['REQUEST_URI'] = $_SERVER['REQUEST_URI'] . "&profile_id=" . $newProfile->identifier;
67
+    $_SERVER['REQUEST_URI'] = $_SERVER['REQUEST_URI']."&profile_id=".$newProfile->identifier;
68 68
     $_GET['profile_id'] = $newProfile->identifier;
69 69
     $profile = $newProfile;
70 70
 } else {
@@ -89,7 +89,7 @@  discard block
 block discarded – undo
89 89
 if (isset($_POST['command'])) {
90 90
     switch ($_POST['command']) {
91 91
         case \web\lib\common\FormElements::BUTTON_CLOSE:
92
-            header("Location: overview_org.php?inst_id=" . $inst->identifier);
92
+            header("Location: overview_org.php?inst_id=".$inst->identifier);
93 93
             break;
94 94
         case \web\lib\common\FormElements::BUTTON_TERMSOFUSE_ACCEPTED:
95 95
             if (isset($_POST['agreement']) && $_POST['agreement'] == 'true') {
@@ -132,7 +132,7 @@  discard block
 block discarded – undo
132 132
                         break;
133 133
                     }
134 134
                     $properName = $validator->syntaxConformUser($elements[0]);
135
-                    $properDate = new DateTime($elements[1] . " 00:00:00");
135
+                    $properDate = new DateTime($elements[1]." 00:00:00");
136 136
                     $numberOfActivations = $elements[2] ?? 5;
137 137
                     $number = $validator->integer($numberOfActivations);
138 138
                     if ($number === FALSE) { // invalid input received, default to sane
@@ -235,18 +235,18 @@  discard block
 block discarded – undo
235 235
                     // warn and ask for confirmation unless already confirmed
236 236
                     if (!isset($_POST['insecureconfirm']) || $_POST['insecureconfirm'] != "CONFIRM") {
237 237
                         echo $deco->pageheader(_("Insecure mail domain!"), "ADMIN-IDP-USERS");
238
-                        echo "<p>" . sprintf(_("The mail domain of the mail address <strong>%s</strong> is not secure: some or all of the mail servers are not accepting encrypted connections (no consistent support for STARTTLS)."), $properEmail) . "</p>";
239
-                        echo "<p>" . _("The invitation would need to be sent in cleartext across the internet, and can possibly be read and abused by anyone in transit.") . "</p>";
240
-                        echo "<p>" . _("Do you want the system to send this mail anyway?") . "</p>";
238
+                        echo "<p>".sprintf(_("The mail domain of the mail address <strong>%s</strong> is not secure: some or all of the mail servers are not accepting encrypted connections (no consistent support for STARTTLS)."), $properEmail)."</p>";
239
+                        echo "<p>"._("The invitation would need to be sent in cleartext across the internet, and can possibly be read and abused by anyone in transit.")."</p>";
240
+                        echo "<p>"._("Do you want the system to send this mail anyway?")."</p>";
241 241
                         echo $formtext;
242
-                        echo "<button type='submit' class='delete'>" . _("DO NOT SEND") . "</button>";
242
+                        echo "<button type='submit' class='delete'>"._("DO NOT SEND")."</button>";
243 243
                         echo "</form>";
244 244
                         echo $formtext;
245
-                        echo "<input type='hidden' name='command' value='" . \web\lib\common\FormElements::BUTTON_SENDINVITATIONMAILBYCAT . "'</>";
245
+                        echo "<input type='hidden' name='command' value='".\web\lib\common\FormElements::BUTTON_SENDINVITATIONMAILBYCAT."'</>";
246 246
                         echo "<input type='hidden' name='address' value='$properEmail'</>";
247
-                        echo "<input type='hidden' name='token' value='" . $invitationObject->invitationTokenString . "'</>";
247
+                        echo "<input type='hidden' name='token' value='".$invitationObject->invitationTokenString."'</>";
248 248
                         echo "<input type='hidden' name='insecureconfirm' value='CONFIRM'/>";
249
-                        echo "<button type='submit'>" . _("Send anyway.") . "</button>";
249
+                        echo "<button type='submit'>"._("Send anyway.")."</button>";
250 250
                         echo "</form>";
251 251
                         echo $deco->footer();
252 252
                         exit;
@@ -297,7 +297,7 @@  discard block
 block discarded – undo
297 297
 $activeUsers = $profile->listActiveUsers();
298 298
 
299 299
 
300
-echo $deco->defaultPagePrelude(sprintf(_('Managing %s users'), \core\ProfileSilverbullet::PRODUCTNAME ));
300
+echo $deco->defaultPagePrelude(sprintf(_('Managing %s users'), \core\ProfileSilverbullet::PRODUCTNAME));
301 301
 
302 302
 ?>
303 303
 <script src='js/option_expand.js' type='text/javascript'></script>
@@ -337,12 +337,12 @@  discard block
 block discarded – undo
337 337
     <img src='../resources/images/icons/loading51.gif' id='spin' alt='loading...' style='position:absolute;left: 50%; top: 50%; transform: translate(-100px, -50px); display:none; z-index: 100;'>
338 338
     <?php echo $uiElements->instLevelInfoBoxes($inst); ?>
339 339
     <div class='infobox'>
340
-        <h2><?php $tablecaption = sprintf(_('Current %s users'), \core\ProfileSilverbullet::PRODUCTNAME); echo $tablecaption;?></h2>
340
+        <h2><?php $tablecaption = sprintf(_('Current %s users'), \core\ProfileSilverbullet::PRODUCTNAME); echo $tablecaption; ?></h2>
341 341
         <table>
342
-            <caption><?php echo $tablecaption;?></caption>
342
+            <caption><?php echo $tablecaption; ?></caption>
343 343
             <tr>
344
-                <th class="wai-invisible" scope="col"><?php echo _("Property Type");?></th>
345
-                <th class="wai-invisible" scope="col"><?php echo _("Property Value");?></th>
344
+                <th class="wai-invisible" scope="col"><?php echo _("Property Type"); ?></th>
345
+                <th class="wai-invisible" scope="col"><?php echo _("Property Value"); ?></th>
346 346
             </tr>
347 347
 
348 348
             <tr>
@@ -366,19 +366,19 @@  discard block
 block discarded – undo
366 366
         case "NOSTIPULATION":
367 367
             break;
368 368
         case "EMAIL-SENT":
369
-            echo $boundaryPre . $uiElements->boxOkay(_("The e-mail was sent successfully."), _("E-mail OK."), FALSE) . $boundaryPost;
369
+            echo $boundaryPre.$uiElements->boxOkay(_("The e-mail was sent successfully."), _("E-mail OK."), FALSE).$boundaryPost;
370 370
             break;
371 371
         case "EMAIL-NOTSENT":
372
-            echo $boundaryPre . $uiElements->boxError(_("The e-mail was NOT sent."), _("E-mail not OK."), FALSE) . $boundaryPost;
372
+            echo $boundaryPre.$uiElements->boxError(_("The e-mail was NOT sent."), _("E-mail not OK."), FALSE).$boundaryPost;
373 373
             break;
374 374
         case "SMS-SENT":
375
-            echo $boundaryPre . $uiElements->boxOkay(_("The SMS was sent successfully."), _("SMS OK."), FALSE) . $boundaryPost;
375
+            echo $boundaryPre.$uiElements->boxOkay(_("The SMS was sent successfully."), _("SMS OK."), FALSE).$boundaryPost;
376 376
             break;
377 377
         case "SMS-NOTSENT":
378
-            echo $boundaryPre . $uiElements->boxOkay(_("The SMS was NOT sent."), _("SMS not OK."), FALSE) . $boundaryPost;
378
+            echo $boundaryPre.$uiElements->boxOkay(_("The SMS was NOT sent."), _("SMS not OK."), FALSE).$boundaryPost;
379 379
             break;
380 380
         case "SMS-FRAGMENT":
381
-            echo $boundaryPre . $uiElements->boxWarning(_("Only a fragment of the SMS was sent. You should re-send it."), _("SMS Fragment."), FALSE) . $boundaryPost;
381
+            echo $boundaryPre.$uiElements->boxWarning(_("Only a fragment of the SMS was sent. You should re-send it."), _("SMS Fragment."), FALSE).$boundaryPost;
382 382
             break;
383 383
     }
384 384
     ?>
@@ -391,17 +391,17 @@  discard block
 block discarded – undo
391 391
             <?php
392 392
             $bufferCurrentUsers = "<table class='sb-user-table' style='max-width:1920px;'>
393 393
                 <tr class='sb-title-row_id'>
394
-                    <td>" . _("User") . "</td>
395
-                    <td>" . _("Token/Certificate details") . "</td>
396
-                    <td>" . _("User/Token Expiry") . "</td>
397
-                    <td>" . _("Actions") . "</td>
394
+                    <td>" . _("User")."</td>
395
+                    <td>" . _("Token/Certificate details")."</td>
396
+                    <td>" . _("User/Token Expiry")."</td>
397
+                    <td>" . _("Actions")."</td>
398 398
                 </tr>";
399 399
             $bufferPreviousUsers = "<table class='sb-user-table' style='max-width:1920px;'>
400 400
                 <tr class='sb-title-row_id'>
401
-                    <td>" . _("User") . "</td>
402
-                    <td>" . _("Certificate details") . "</td>
403
-                    <td>" . _("User Expiry") . "</td>
404
-                    <td>" . _("Actions") . "</td>
401
+                    <td>" . _("User")."</td>
402
+                    <td>" . _("Certificate details")."</td>
403
+                    <td>" . _("User Expiry")."</td>
404
+                    <td>" . _("Actions")."</td>
405 405
                 </tr>";
406 406
 
407 407
             natsort($allUsers);
@@ -458,23 +458,23 @@  discard block
 block discarded – undo
458 458
                     $display = empty(devices\Devices::listDevices()[$oneCert->device]['display']) ? $oneCert->device : devices\Devices::listDevices()[$oneCert->device]['display'];
459 459
 
460 460
                     $bufferText = "<div class='sb-certificate-summary ca-summary' $style>
461
-                                    <div class='sb-certificate-details'>" . _("Device:") . " " . $display .
462
-                            "<br>" . _("Serial Number:") . "&nbsp;" . dechex($oneCert->serial) .
463
-                            "<br>" . _("CN:") . "&nbsp;" . explode('@', $oneCert->username)[0] . "@…" .
464
-                            "<br>" . _("Expiry:") . "&nbsp;" . $oneCert->expiry .
465
-                            "<br>" . _("Issued:") . "&nbsp;" . $oneCert->issued .
466
-                            "</div>" .
461
+                                    <div class='sb-certificate-details'>"._("Device:")." ".$display.
462
+                            "<br>"._("Serial Number:")."&nbsp;".dechex($oneCert->serial).
463
+                            "<br>"._("CN:")."&nbsp;".explode('@', $oneCert->username)[0]."@…".
464
+                            "<br>"._("Expiry:")."&nbsp;".$oneCert->expiry.
465
+                            "<br>"._("Issued:")."&nbsp;".$oneCert->issued.
466
+                            "</div>".
467 467
                             "<div style='text-align:right;padding-top: 5px; $buttonStyle'>";
468 468
 
469 469
                     if ($buttonText == "") {
470 470
                         $bufferText .= $formtext
471
-                                . "<input type='hidden' name='certSerial' value='" . $oneCert->serial . "'/>"
472
-                                . "<input type='hidden' name='certAlgo' value='" . $oneCert->ca_type . "'/>"
471
+                                . "<input type='hidden' name='certSerial' value='".$oneCert->serial."'/>"
472
+                                . "<input type='hidden' name='certAlgo' value='".$oneCert->ca_type."'/>"
473 473
                                 . "<button type='submit' "
474 474
                                 . "name='command' "
475
-                                . "value='" . \web\lib\common\FormElements::BUTTON_REVOKECREDENTIAL . "' "
475
+                                . "value='".\web\lib\common\FormElements::BUTTON_REVOKECREDENTIAL."' "
476 476
                                 . "class='delete' "
477
-                                . "onclick='return confirm(\"" . sprintf(_("The device in question will stop functioning with %s. The revocation cannot be undone. Are you sure you want to do this?"), \config\ConfAssistant::CONSORTIUM['display_name']) . "\")'>"
477
+                                . "onclick='return confirm(\"".sprintf(_("The device in question will stop functioning with %s. The revocation cannot be undone. Are you sure you want to do this?"), \config\ConfAssistant::CONSORTIUM['display_name'])."\")'>"
478 478
                                 . _("Revoke")
479 479
                                 . "</button>"
480 480
                                 . "</form>";
@@ -499,13 +499,13 @@  discard block
 block discarded – undo
499 499
                 }
500 500
                 // wrap the revoked and expired certs in a div that is hidden by default
501 501
                 if ($textRevokedCerts !== "") {
502
-                    $textRevokedCerts = "<span style='text-decoration: underline;' id='$oneUserId-revoked-heading' onclick='document.getElementById(\"$oneUserId-revoked-certs\").style.display = \"block\"; document.getElementById(\"$oneUserId-revoked-heading\").style.display = \"none\";'>" . sprintf(ngettext("(show %d revoked certificate)", "(show %d revoked certificates)", $countRevoked), $countRevoked) . "</span><div id='$oneUserId-revoked-certs' style='display:none;'>" . $textRevokedCerts . "</div>";
502
+                    $textRevokedCerts = "<span style='text-decoration: underline;' id='$oneUserId-revoked-heading' onclick='document.getElementById(\"$oneUserId-revoked-certs\").style.display = \"block\"; document.getElementById(\"$oneUserId-revoked-heading\").style.display = \"none\";'>".sprintf(ngettext("(show %d revoked certificate)", "(show %d revoked certificates)", $countRevoked), $countRevoked)."</span><div id='$oneUserId-revoked-certs' style='display:none;'>".$textRevokedCerts."</div>";
503 503
                 }
504 504
                 if ($textExpiredCerts !== "") {
505
-                    $textExpiredCerts = "<span style='text-decoration: underline;' id='$oneUserId-expired-heading' onclick='document.getElementById(\"$oneUserId-expired-certs\").style.display = \"block\"; document.getElementById(\"$oneUserId-expired-heading\").style.display = \"none\";'>" . sprintf(ngettext("(show %d expired certificate)", "(show %d expired certificates)", $countExpired), $countExpired) . "</span><div id='$oneUserId-expired-certs' style='display:none;'>" . $textExpiredCerts . "</div>";
505
+                    $textExpiredCerts = "<span style='text-decoration: underline;' id='$oneUserId-expired-heading' onclick='document.getElementById(\"$oneUserId-expired-certs\").style.display = \"block\"; document.getElementById(\"$oneUserId-expired-heading\").style.display = \"none\";'>".sprintf(ngettext("(show %d expired certificate)", "(show %d expired certificates)", $countExpired), $countExpired)."</span><div id='$oneUserId-expired-certs' style='display:none;'>".$textExpiredCerts."</div>";
506 506
                 }
507 507
                 // and push out the HTML
508
-                ${$outputBuffer} .= $textActiveCerts . "<br/>" . $textExpiredCerts . " " . $textRevokedCerts . "</td>";
508
+                ${$outputBuffer} .= $textActiveCerts."<br/>".$textExpiredCerts." ".$textRevokedCerts."</td>";
509 509
                 $tokenHtmlBuffer = "";
510 510
                 $hasOnePendingInvite = FALSE;
511 511
                 foreach ($tokensWithoutCerts as $invitationObject) {
@@ -516,38 +516,38 @@  discard block
 block discarded – undo
516 516
                             $tokenHtmlBuffer .= "<tr class='sb-certificate-row_id'><td></td>";
517 517
                             $jsEncodedBody = str_replace('\n', '%0D%0A', str_replace('"', '', json_encode($invitationObject->invitationMailBody())));
518 518
                             $tokenHtmlBuffer .= "<td>";
519
-                            $tokenHtmlBuffer .= sprintf(_("The invitation token %s is ready for sending! Choose how to send it:"), "<input type='text' readonly='readonly' style='background-color:lightgrey;' size='60' value='" . $invitationObject->link() . "' name='token' class='identifiedtokenarea-" . $invitationObject->identifier . "'>(…)<br/>");
519
+                            $tokenHtmlBuffer .= sprintf(_("The invitation token %s is ready for sending! Choose how to send it:"), "<input type='text' readonly='readonly' style='background-color:lightgrey;' size='60' value='".$invitationObject->link()."' name='token' class='identifiedtokenarea-".$invitationObject->identifier."'>(…)<br/>");
520 520
                             $tokenHtmlBuffer .= "<table>
521
-                                    <tr><td style='vertical-align:bottom;'>" . _("E-Mail:") . "</td><td>
521
+                                    <tr><td style='vertical-align:bottom;'>" . _("E-Mail:")."</td><td>
522 522
                                     $formtext
523
-                                <input type='hidden' value='" . $invitationObject->invitationTokenString . "' name='token'><br/>
523
+                                <input type='hidden' value='".$invitationObject->invitationTokenString."' name='token'><br/>
524 524
                                 <input type='text' name='address' id='address-$invitationObject->identifier'/>
525
-                                <button type='button' onclick='window.location=\"mailto:\"+document.getElementById(\"address-$invitationObject->identifier\").value+\"?subject=" . $invitationObject->invitationMailSubject() . "&amp;body=$jsEncodedBody\"; return false;'>" . _("Local mail client") . "</button>
526
-                                <button type='submit' name='command' onclick='document.getElementById(\"spin\").style.display =\"block\"' value='" . \web\lib\common\FormElements::BUTTON_SENDINVITATIONMAILBYCAT . "'>" . _("Send with CAT") . "</button>
525
+                                <button type='button' onclick='window.location=\"mailto:\"+document.getElementById(\"address-$invitationObject->identifier\").value+\"?subject=".$invitationObject->invitationMailSubject()."&amp;body=$jsEncodedBody\"; return false;'>"._("Local mail client")."</button>
526
+                                <button type='submit' name='command' onclick='document.getElementById(\"spin\").style.display =\"block\"' value='" . \web\lib\common\FormElements::BUTTON_SENDINVITATIONMAILBYCAT."'>"._("Send with CAT")."</button>
527 527
                                     </form>
528 528
                                     </td></tr>
529
-                                    <tr><td style='vertical-align:bottom;'>" . _("SMS:") . "</td><td>
529
+                                    <tr><td style='vertical-align:bottom;'>" . _("SMS:")."</td><td>
530 530
                                     $formtext
531
-                                    <input type='hidden' value='" . $invitationObject->invitationTokenString . "' name='token'><br/>
531
+                                    <input type='hidden' value='".$invitationObject->invitationTokenString."' name='token'><br/>
532 532
                                     <input type='text' name='smsnumber' />
533
-				<button type='submit' name='command' value='" . \web\lib\common\FormElements::BUTTON_SENDINVITATIONSMS . "'>" . _("Send in SMS...") . "</button>
533
+				<button type='submit' name='command' value='" . \web\lib\common\FormElements::BUTTON_SENDINVITATIONSMS."'>"._("Send in SMS...")."</button>
534 534
                                     </form>
535 535
 				</td></tr>
536
-                                    <tr><td style='vertical-align:bottom;'>" . _("Manual:") . "</td><td>
537
-				<button type='button' class='clipboardButton' onclick='clipboardCopy(" . $invitationObject->identifier . ");'>" . _("Copy to Clipboard") . "</button>
536
+                                    <tr><td style='vertical-align:bottom;'>" . _("Manual:")."</td><td>
537
+				<button type='button' class='clipboardButton' onclick='clipboardCopy(" . $invitationObject->identifier.");'>"._("Copy to Clipboard")."</button>
538 538
                                     <form style='display:inline-block;' method='post' action='inc/displayQRcode.inc.php' onsubmit='popupQRWindow(this); return false;' accept-charset='UTF-8'>
539
-                                    <input type='hidden' value='" . $invitationObject->invitationTokenString . "' name='token'><br/>
540
-                                      <button type='submit'>" . _("Display QR code") . "</button>
539
+                                    <input type='hidden' value='" . $invitationObject->invitationTokenString."' name='token'><br/>
540
+                                      <button type='submit'>" . _("Display QR code")."</button>
541 541
                                   </form>
542 542
                                         </td></tr>
543 543
                                         
544 544
                                 </table>
545 545
                                 </td>";
546
-                            $tokenHtmlBuffer .= "<td>" . _("Expiry Date:") . " " . $invitationObject->expiry . " UTC<br>" . _("Activations remaining:") . " " . sprintf(_("%d of %d"), $invitationObject->activationsRemaining, $invitationObject->activationsTotal) . "</td>";
546
+                            $tokenHtmlBuffer .= "<td>"._("Expiry Date:")." ".$invitationObject->expiry." UTC<br>"._("Activations remaining:")." ".sprintf(_("%d of %d"), $invitationObject->activationsRemaining, $invitationObject->activationsTotal)."</td>";
547 547
                             $tokenHtmlBuffer .= "<td>"
548 548
                                     . $formtext
549
-                                    . "<input type='hidden' name='invitationtoken' value='" . $invitationObject->invitationTokenString . "'/>"
550
-                                    . "<button type='submit' name='command' value='" . \web\lib\common\FormElements::BUTTON_REVOKEINVITATION . "' class='delete'>" . _("Revoke") . "</button></form>"
549
+                                    . "<input type='hidden' name='invitationtoken' value='".$invitationObject->invitationTokenString."'/>"
550
+                                    . "<button type='submit' name='command' value='".\web\lib\common\FormElements::BUTTON_REVOKEINVITATION."' class='delete'>"._("Revoke")."</button></form>"
551 551
                                     . "</td></tr>";
552 552
                             break;
553 553
                         case core\SilverbulletInvitation::SB_TOKENSTATUS_EXPIRED:
@@ -563,10 +563,10 @@  discard block
 block discarded – undo
563 563
                 }
564 564
                 ${$outputBuffer} .= "<td>$formtext
565 565
                     <div class='sb-date-container' style='min-width: 200px;'>
566
-                        <span><input type='text' maxlength='19' class='sb-date-picker' name='userexpiry' value='" . $profile->getUserExpiryDate($oneUserId) . "'>&nbsp;(UTC)</span>
566
+                        <span><input type='text' maxlength='19' class='sb-date-picker' name='userexpiry' value='".$profile->getUserExpiryDate($oneUserId)."'>&nbsp;(UTC)</span>
567 567
                     </div>
568 568
                     <input type='hidden' name='userid' value='$oneUserId'/>
569
-                    <button type='submit' name='command' value='" . \web\lib\common\FormElements::BUTTON_CHANGEUSEREXPIRY . "'>" . _("Update") . "</button>
569
+                    <button type='submit' name='command' value='".\web\lib\common\FormElements::BUTTON_CHANGEUSEREXPIRY."'>"._("Update")."</button>
570 570
                     </form>
571 571
                 </td>
572 572
                 <td>
@@ -574,33 +574,33 @@  discard block
 block discarded – undo
574 574
 
575 575
                 if ($hasOnePendingInvite || count($validCerts) > 0) {
576 576
                     $deletionText = sprintf(_("All of the currently active devices will stop functioning with %s. This cannot be undone. While the user can be re-activated later, they will then need to be re-provisioned with new invitation tokens. Are you sure you want to do this?"), \config\ConfAssistant::CONSORTIUM['display_name']);
577
-                    ${$outputBuffer} .= $formtext . "
577
+                    ${$outputBuffer} .= $formtext."
578 578
                                     <input type='hidden' name='userid' value='$oneUserId'/>
579 579
                                     <button type='submit' "
580 580
                             . "name='command' "
581
-                            . "value='" . \web\lib\common\FormElements::BUTTON_DEACTIVATEUSER . "' "
581
+                            . "value='".\web\lib\common\FormElements::BUTTON_DEACTIVATEUSER."' "
582 582
                             . "class='delete' "
583
-                            . ( count($validCerts) > 0 ? "onclick='return confirm(\"" . $deletionText . "\")' " : "" )
583
+                            . (count($validCerts) > 0 ? "onclick='return confirm(\"".$deletionText."\")' " : "")
584 584
                             . ">"
585 585
                             . _("Deactivate User")
586 586
                             . "</button>
587 587
                                 </form>";
588 588
                 }
589
-                ${$outputBuffer} .= "<form method='post' action='inc/userStats.inc.php?inst_id=" . $profile->institution . "&amp;profile_id=" . $profile->identifier . "&amp;user_id=$oneUserId' onsubmit='popupStatsWindow(this); return false;' accept-charset='UTF-8'>
590
-                    <button type='submit'>" . _("Show Authentication Records") . "</button>
589
+                ${$outputBuffer} .= "<form method='post' action='inc/userStats.inc.php?inst_id=".$profile->institution."&amp;profile_id=".$profile->identifier."&amp;user_id=$oneUserId' onsubmit='popupStatsWindow(this); return false;' accept-charset='UTF-8'>
590
+                    <button type='submit'>"._("Show Authentication Records")."</button>
591 591
                 </form>";
592 592
                 if (new DateTime() < new DateTime($expiryDate)) { // current user, allow sending new token
593
-                    ${$outputBuffer} .= $formtext . "
593
+                    ${$outputBuffer} .= $formtext."
594 594
                     <input type='hidden' name='userid' value='$oneUserId'/>
595
-                    <button type='submit' name='command' value='" . \web\lib\common\FormElements::BUTTON_NEWINVITATION . "'>" . _("New Invitation") . "</button>
596
-                    <label>" . _("Activations:") . "
595
+                    <button type='submit' name='command' value='".\web\lib\common\FormElements::BUTTON_NEWINVITATION."'>"._("New Invitation")."</button>
596
+                    <label>" . _("Activations:")."
597 597
                         <input type='text' name='invitationsquantity' value='5' maxlength='3' style='width: 30px;'/>
598 598
                     </label>
599 599
                     </form>";
600 600
                 } elseif (count($profile->getUserAuthRecords($oneUserId)) == 0) { // previous user; if there are NO authentication records, allow full deletion - otherwise, need to keep user trace for abuse handling
601
-                    ${$outputBuffer} .= $formtext . "
601
+                    ${$outputBuffer} .= $formtext."
602 602
                     <input type='hidden' name='userid' value='$oneUserId'/>
603
-                    <button type='submit' class='delete' name='command' value='" . \web\lib\common\FormElements::BUTTON_DELETE . "'>" . _("Delete User") . "</button>
603
+                    <button type='submit' class='delete' name='command' value='".\web\lib\common\FormElements::BUTTON_DELETE."'>"._("Delete User")."</button>
604 604
                     </form>";
605 605
                 }
606 606
                 ${$outputBuffer} .= "</div>
@@ -632,13 +632,13 @@  discard block
 block discarded – undo
632 632
                                     . ' If all accounts shown as active above are indeed still valid, please check the box below and push "Save".'
633 633
                                     . ' If any of the accounts are stale, please deactivate them by pushing the corresponding button before doing this.'), \config\ConfAssistant::SILVERBULLET['gracetime'] ?? core\ProfileSilverbullet::SB_ACKNOWLEDGEMENT_REQUIRED_DAYS);
634 634
 
635
-                    echo $formtext . "<div style='padding-bottom: 20px;'>"
635
+                    echo $formtext."<div style='padding-bottom: 20px;'>"
636 636
                     . "
637 637
                     <p>$acknowledgeText</p>
638 638
                     <input type='checkbox' name='acknowledge' value='true'>
639
-                    <label>" . sprintf(_("I have verified that all configured users are still eligible for %s."),\config\ConfAssistant::CONSORTIUM['display_name']) . "</label>
639
+                    <label>".sprintf(_("I have verified that all configured users are still eligible for %s."), \config\ConfAssistant::CONSORTIUM['display_name'])."</label>
640 640
                 </div>
641
-                <button type='submit' name='command' value='" . \web\lib\common\FormElements::BUTTON_ACKUSERELIGIBILITY . "'>" . _("Save") . "</button></form>";
641
+                <button type='submit' name='command' value='" . \web\lib\common\FormElements::BUTTON_ACKUSERELIGIBILITY."'>"._("Save")."</button></form>";
642 642
                 }
643 643
                 ?>
644 644
             </div>
Please login to merge, or discard this patch.
core/common/Language.php 1 patch
Spacing   +6 added lines, -6 removed lines patch added patch discarded remove patch
@@ -81,9 +81,9 @@  discard block
 block discarded – undo
81 81
         $loggerInstance = new \core\common\Logging();
82 82
         $olddomain = textdomain(NULL);
83 83
         $loggerInstance->debug(4, "set_locale($domain)\n");
84
-        $loggerInstance->debug(4, ROOT . "\n");
84
+        $loggerInstance->debug(4, ROOT."\n");
85 85
         textdomain($domain);
86
-        bindtextdomain($domain, ROOT . "/translation/");
86
+        bindtextdomain($domain, ROOT."/translation/");
87 87
         bind_textdomain_codeset($domain, "UTF-8");
88 88
         return $olddomain;
89 89
     }
@@ -136,7 +136,7 @@  discard block
 block discarded – undo
136 136
 
137 137
             // check if this language is supported by the CAT config
138 138
             foreach (\config\Master::LANGUAGES as $language => $value) {
139
-                if (preg_match("/^" . $language . ".*/", $tryLang)) {
139
+                if (preg_match("/^".$language.".*/", $tryLang)) {
140 140
                     $localeTmp = $value['locale'];
141 141
                     $langIndex = $language; // ???
142 142
                     break;
@@ -152,12 +152,12 @@  discard block
 block discarded – undo
152 152
             }
153 153
         }
154 154
         $isRtl = \config\Master::LANGUAGES[$langIndex]['rtl'];
155
-        putenv("LC_ALL=" . $theLocale);
156
-        putenv("LANGUAGE=" . $theLocale);
155
+        putenv("LC_ALL=".$theLocale);
156
+        putenv("LANGUAGE=".$theLocale);
157 157
         $_SESSION['language'] = $langIndex;
158 158
         $loggerInstance->debug(4, "selected lang:$langIndex:$theLocale\n");
159 159
         $loggerInstance->debug(4, print_r($langConverted, true));
160
-        return([$langIndex, $theLocale,$isRtl]);
160
+        return([$langIndex, $theLocale, $isRtl]);
161 161
     }
162 162
 
163 163
     /**
Please login to merge, or discard this patch.
core/CertificationAuthorityEduPkiServer.php 1 patch
Spacing   +38 added lines, -38 removed lines patch added patch discarded remove patch
@@ -27,9 +27,9 @@  discard block
 block discarded – undo
27 27
     #private const EDUPKI_ENDPOINT_PUBLIC = "https://pki.edupki.org/edupki-ca/cgi-bin/pub/soap?wsdl=1";
28 28
     #private const EDUPKI_ENDPOINT_RA = "https://ra.edupki.org/edupki-ca/cgi-bin/ra/soap?wsdl=1";
29 29
     
30
-    private const LOCATION_RA_CERT = ROOT . "/config/SilverbulletClientCerts/edupki-test-ra.pem";
31
-    private const LOCATION_RA_KEY = ROOT . "/config/SilverbulletClientCerts/edupki-test-ra.clearkey";
32
-    private const LOCATION_WEBROOT = ROOT . "/config/SilverbulletClientCerts/eduPKI-webserver-root.pem";
30
+    private const LOCATION_RA_CERT = ROOT."/config/SilverbulletClientCerts/edupki-test-ra.pem";
31
+    private const LOCATION_RA_KEY = ROOT."/config/SilverbulletClientCerts/edupki-test-ra.clearkey";
32
+    private const LOCATION_WEBROOT = ROOT."/config/SilverbulletClientCerts/eduPKI-webserver-root.pem";
33 33
     private const EDUPKI_RA_ID = 700;
34 34
     private const EDUPKI_CERT_PROFILE_BOTH = "Radius Server SOAP";
35 35
     private const EDUPKI_CERT_PROFILE_IDP = "Radius Server SOAP";
@@ -49,13 +49,13 @@  discard block
 block discarded – undo
49 49
         parent::__construct();
50 50
 
51 51
         if (stat(CertificationAuthorityEduPkiServer::LOCATION_RA_CERT) === FALSE) {
52
-            throw new Exception("RA operator PEM file not found: " . CertificationAuthorityEduPkiServer::LOCATION_RA_CERT);
52
+            throw new Exception("RA operator PEM file not found: ".CertificationAuthorityEduPkiServer::LOCATION_RA_CERT);
53 53
         }
54 54
         if (stat(CertificationAuthorityEduPkiServer::LOCATION_RA_KEY) === FALSE) {
55
-            throw new Exception("RA operator private key file not found: " . CertificationAuthorityEduPkiServer::LOCATION_RA_KEY);
55
+            throw new Exception("RA operator private key file not found: ".CertificationAuthorityEduPkiServer::LOCATION_RA_KEY);
56 56
         }
57 57
         if (stat(CertificationAuthorityEduPkiServer::LOCATION_WEBROOT) === FALSE) {
58
-            throw new Exception("CA website root CA file not found: " . CertificationAuthorityEduPkiServer::LOCATION_WEBROOT);
58
+            throw new Exception("CA website root CA file not found: ".CertificationAuthorityEduPkiServer::LOCATION_WEBROOT);
59 59
         }
60 60
     }
61 61
 
@@ -122,22 +122,22 @@  discard block
 block discarded – undo
122 122
                 throw new Exception("Unexpected policies requested.");
123 123
             }
124 124
             $altArray = [# Array mit den Subject Alternative Names
125
-                "email:" . $csr["USERMAIL"]
125
+                "email:".$csr["USERMAIL"]
126 126
             ];
127 127
             foreach ($csr["ALTNAMES"] as $oneAltName) {
128
-                $altArray[] = "DNS:" . $oneAltName;
128
+                $altArray[] = "DNS:".$oneAltName;
129 129
             }
130 130
             $soapPub = $this->initEduPKISoapSession("PUBLIC");
131 131
             $this->loggerInstance->debug(5, "FIRST ACTUAL SOAP REQUEST (Public, newRequest)!\n");
132
-            $this->loggerInstance->debug(5, "PARAM_1: " . CertificationAuthorityEduPkiServer::EDUPKI_RA_ID . "\n");
133
-            $this->loggerInstance->debug(5, "PARAM_2: " . $csr["CSR_STRING"] . "\n");
132
+            $this->loggerInstance->debug(5, "PARAM_1: ".CertificationAuthorityEduPkiServer::EDUPKI_RA_ID."\n");
133
+            $this->loggerInstance->debug(5, "PARAM_2: ".$csr["CSR_STRING"]."\n");
134 134
             $this->loggerInstance->debug(5, "PARAM_3: ");
135 135
             $this->loggerInstance->debug(5, $altArray);
136
-            $this->loggerInstance->debug(5, "PARAM_4: " . $profile . "\n");
137
-            $this->loggerInstance->debug(5, "PARAM_5: " . sha1("notused") . "\n");
138
-            $this->loggerInstance->debug(5, "PARAM_6: " . $csr["USERNAME"] . "\n");
139
-            $this->loggerInstance->debug(5, "PARAM_7: " . $csr["USERMAIL"] . "\n");
140
-            $this->loggerInstance->debug(5, "PARAM_8: " . ProfileSilverbullet::PRODUCTNAME . "\n");
136
+            $this->loggerInstance->debug(5, "PARAM_4: ".$profile."\n");
137
+            $this->loggerInstance->debug(5, "PARAM_5: ".sha1("notused")."\n");
138
+            $this->loggerInstance->debug(5, "PARAM_6: ".$csr["USERNAME"]."\n");
139
+            $this->loggerInstance->debug(5, "PARAM_7: ".$csr["USERMAIL"]."\n");
140
+            $this->loggerInstance->debug(5, "PARAM_8: ".ProfileSilverbullet::PRODUCTNAME."\n");
141 141
             $this->loggerInstance->debug(5, "PARAM_9: false\n");
142 142
             $soapNewRequest = $soapPub->newRequest(
143 143
                     CertificationAuthorityEduPkiServer::EDUPKI_RA_ID, # RA-ID
@@ -159,11 +159,11 @@  discard block
 block discarded – undo
159 159
         } catch (Exception $e) {
160 160
             // PHP 7.1 can do this much better
161 161
             if (is_soap_fault($e)) {
162
-                throw new Exception("Error when sending SOAP request: " . "{$e->faultcode}:  {
162
+                throw new Exception("Error when sending SOAP request: "."{$e->faultcode}:  {
163 163
                     $e->faultstring
164 164
                 }\n");
165 165
             }
166
-            throw new Exception("Something odd happened while doing the SOAP request:" . $e->getMessage());
166
+            throw new Exception("Something odd happened while doing the SOAP request:".$e->getMessage());
167 167
         }
168 168
         try {
169 169
             $soap = $this->initEduPKISoapSession("RA");
@@ -195,7 +195,7 @@  discard block
 block discarded – undo
195 195
             // for obnoxious reasons, we have to dump the request into a file and let pkcs7_sign read from the file
196 196
             // rather than just using the string. Grr.
197 197
             $tempdir = \core\common\Entity::createTemporaryDirectory("test");
198
-            file_put_contents($tempdir['dir'] . "/content.txt", $soapCleartext);
198
+            file_put_contents($tempdir['dir']."/content.txt", $soapCleartext);
199 199
             // retrieve our RA cert from filesystem                    
200 200
             // the RA certificates are not needed right now because we
201 201
             // have resorted to S/MIME signatures with openssl command-line
@@ -207,7 +207,7 @@  discard block
 block discarded – undo
207 207
             // sign the data, using cmdline because openssl_pkcs7_sign produces strange results
208 208
             // -binary didn't help, nor switch -md to sha1 sha256 or sha512
209 209
             $this->loggerInstance->debug(5, "Actual content to be signed is this:\n  $soapCleartext\n");
210
-            $execCmd = \config\Master::PATHS['openssl'] . " smime -sign -binary -in " . $tempdir['dir'] . "/content.txt -out " . $tempdir['dir'] . "/signature.txt -outform pem -inkey " . CertificationAuthorityEduPkiServer::LOCATION_RA_KEY . " -signer " . CertificationAuthorityEduPkiServer::LOCATION_RA_CERT;
210
+            $execCmd = \config\Master::PATHS['openssl']." smime -sign -binary -in ".$tempdir['dir']."/content.txt -out ".$tempdir['dir']."/signature.txt -outform pem -inkey ".CertificationAuthorityEduPkiServer::LOCATION_RA_KEY." -signer ".CertificationAuthorityEduPkiServer::LOCATION_RA_CERT;
211 211
             $this->loggerInstance->debug(2, "Calling openssl smime with following cmdline:   $execCmd\n");
212 212
             $output = [];
213 213
             $return = 999;
@@ -216,21 +216,21 @@  discard block
 block discarded – undo
216 216
                 throw new Exception("Non-zero return value from openssl smime!");
217 217
             }
218 218
             // and get the signature blob back from the filesystem
219
-            $detachedSig = trim(file_get_contents($tempdir['dir'] . "/signature.txt"));
219
+            $detachedSig = trim(file_get_contents($tempdir['dir']."/signature.txt"));
220 220
             $this->loggerInstance->debug(5, "Request for server approveRequest has parameters:\n");
221
-            $this->loggerInstance->debug(5, $soapReqnum . "\n");
222
-            $this->loggerInstance->debug(5, $soapCleartext . "\n"); // PHP magically encodes this as base64 while sending!
223
-            $this->loggerInstance->debug(5, $detachedSig . "\n");
221
+            $this->loggerInstance->debug(5, $soapReqnum."\n");
222
+            $this->loggerInstance->debug(5, $soapCleartext."\n"); // PHP magically encodes this as base64 while sending!
223
+            $this->loggerInstance->debug(5, $detachedSig."\n");
224 224
             $soapIssueCert = $soap->approveRequest($soapReqnum, $soapCleartext, $detachedSig);
225
-            $this->loggerInstance->debug(5, "approveRequest Request was: \n" . $soap->__getLastRequest());
226
-            $this->loggerInstance->debug(5, "approveRequest Response was: \n" . $soap->__getLastResponse());
225
+            $this->loggerInstance->debug(5, "approveRequest Request was: \n".$soap->__getLastRequest());
226
+            $this->loggerInstance->debug(5, "approveRequest Response was: \n".$soap->__getLastResponse());
227 227
             if ($soapIssueCert === FALSE) {
228 228
                 throw new Exception("The locally approved request was NOT processed by the CA.");
229 229
             }
230 230
         } catch (SoapFault $e) {
231
-            throw new Exception("SoapFault: Error when sending or receiving SOAP message: " . "{$e->faultcode}: {$e->faultname}: {$e->faultstring}: {$e->faultactor}: {$e->detail}: {$e->headerfault}\n");
231
+            throw new Exception("SoapFault: Error when sending or receiving SOAP message: "."{$e->faultcode}: {$e->faultname}: {$e->faultstring}: {$e->faultactor}: {$e->detail}: {$e->headerfault}\n");
232 232
         } catch (Exception $e) {
233
-            throw new Exception("Exception: Something odd happened between the SOAP requests:" . $e->getMessage());
233
+            throw new Exception("Exception: Something odd happened between the SOAP requests:".$e->getMessage());
234 234
         }
235 235
         return $soapReqnum;
236 236
     }
@@ -282,9 +282,9 @@  discard block
 block discarded – undo
282 282
                 throw new Exception("CAInfo has no root certificate for us!");
283 283
             }
284 284
         } catch (SoapFault $e) {
285
-            throw new Exception("SoapFault: Error when sending or receiving SOAP message: " . "{$e->faultcode}: {$e->faultname}: {$e->faultstring}: {$e->faultactor}: {$e->detail}: {$e->headerfault}\n");
285
+            throw new Exception("SoapFault: Error when sending or receiving SOAP message: "."{$e->faultcode}: {$e->faultname}: {$e->faultstring}: {$e->faultactor}: {$e->detail}: {$e->headerfault}\n");
286 286
         } catch (Exception $e) {
287
-            throw new Exception("Exception: Something odd happened between the SOAP requests:" . $e->getMessage());
287
+            throw new Exception("Exception: Something odd happened between the SOAP requests:".$e->getMessage());
288 288
         }
289 289
         return [
290 290
             "CERT" => openssl_x509_read($parsedCert['pem']),
@@ -317,12 +317,12 @@  discard block
 block discarded – undo
317 317
             // for obnoxious reasons, we have to dump the request into a file and let pkcs7_sign read from the file
318 318
             // rather than just using the string. Grr.
319 319
             $tempdir = \core\common\Entity::createTemporaryDirectory("test");
320
-            file_put_contents($tempdir['dir'] . "/content.txt", $soapRawRevRequest);
320
+            file_put_contents($tempdir['dir']."/content.txt", $soapRawRevRequest);
321 321
             // retrieve our RA cert from filesystem
322 322
             // sign the data, using cmdline because openssl_pkcs7_sign produces strange results
323 323
             // -binary didn't help, nor switch -md to sha1 sha256 or sha512
324 324
             $this->loggerInstance->debug(5, "Actual content to be signed is this:\n$soapRawRevRequest\n");
325
-        $execCmd = \config\Master::PATHS['openssl'] . " smime -sign -binary -in " . $tempdir['dir'] . "/content.txt -out " . $tempdir['dir'] . "/signature.txt -outform pem -inkey " . CertificationAuthorityEduPkiServer::LOCATION_RA_KEY . " -signer " . CertificationAuthorityEduPkiServer::LOCATION_RA_CERT;
325
+        $execCmd = \config\Master::PATHS['openssl']." smime -sign -binary -in ".$tempdir['dir']."/content.txt -out ".$tempdir['dir']."/signature.txt -outform pem -inkey ".CertificationAuthorityEduPkiServer::LOCATION_RA_KEY." -signer ".CertificationAuthorityEduPkiServer::LOCATION_RA_CERT;
326 326
             $this->loggerInstance->debug(2, "Calling openssl smime with following cmdline: $execCmd\n");
327 327
             $output = [];
328 328
             $return = 999;
@@ -331,7 +331,7 @@  discard block
 block discarded – undo
331 331
                 throw new Exception("Non-zero return value from openssl smime!");
332 332
             }
333 333
             // and get the signature blob back from the filesystem
334
-            $detachedSig = trim(file_get_contents($tempdir['dir'] . "/signature.txt"));
334
+            $detachedSig = trim(file_get_contents($tempdir['dir']."/signature.txt"));
335 335
             $soapIssueRev = $soap->approveRevocationRequest($soapRevocationSerial, $soapRawRevRequest, $detachedSig);
336 336
             if ($soapIssueRev === FALSE) {
337 337
                 throw new Exception("The locally approved revocation request was NOT processed by the CA.");
@@ -339,9 +339,9 @@  discard block
 block discarded – undo
339 339
         } catch (Exception $e) {
340 340
             // PHP 7.1 can do this much better
341 341
             if (is_soap_fault($e)) {
342
-                throw new Exception("Error when sending SOAP request: " . "{$e->faultcode}: {$e->faultstring}\n");
342
+                throw new Exception("Error when sending SOAP request: "."{$e->faultcode}: {$e->faultstring}\n");
343 343
             }
344
-            throw new Exception("Something odd happened while doing the SOAP request:" . $e->getMessage());
344
+            throw new Exception("Something odd happened while doing the SOAP request:".$e->getMessage());
345 345
         }
346 346
     }
347 347
 
@@ -441,9 +441,9 @@  discard block
 block discarded – undo
441 441
      */
442 442
     public function soapToXmlInteger($x)
443 443
     {
444
-        return '<' . $x[0] . '>'
444
+        return '<'.$x[0].'>'
445 445
                 . htmlentities($x[1], ENT_NOQUOTES | ENT_XML1)
446
-                . '</' . $x[0] . '>';
446
+                . '</'.$x[0].'>';
447 447
     }
448 448
 
449 449
     /**
@@ -462,9 +462,9 @@  discard block
 block discarded – undo
462 462
         // dump private key into directory
463 463
         $outstring = "";
464 464
         openssl_pkey_export($privateKey, $outstring);
465
-        file_put_contents($tempdir . "/pkey.pem", $outstring);
465
+        file_put_contents($tempdir."/pkey.pem", $outstring);
466 466
         // PHP can only do one DC in the Subject. But we need three.
467
-        $execCmd = \config\Master::PATHS['openssl'] . " req -new -sha256 -key $tempdir/pkey.pem -out $tempdir/request.csr -subj /DC=test/DC=test/DC=eduroam/C=$fed/O=" . \config\ConfAssistant::CONSORTIUM['name'] . "/OU=$fed/CN=$username/emailAddress=$username";
467
+        $execCmd = \config\Master::PATHS['openssl']." req -new -sha256 -key $tempdir/pkey.pem -out $tempdir/request.csr -subj /DC=test/DC=test/DC=eduroam/C=$fed/O=".\config\ConfAssistant::CONSORTIUM['name']."/OU=$fed/CN=$username/emailAddress=$username";
468 468
         $this->loggerInstance->debug(2, "Calling openssl req with following cmdline: $execCmd\n");
469 469
         $output = [];
470 470
         $return = 999;
Please login to merge, or discard this patch.
web/skins/modern/accountstatus/accountstatus.php 1 patch
Spacing   +27 added lines, -27 removed lines patch added patch discarded remove patch
@@ -47,9 +47,9 @@  discard block
 block discarded – undo
47 47
 $Gui->loggerInstance->debug(4, $operatingSystem);
48 48
 $uiElements = new web\lib\admin\UIElements();
49 49
 if ($operatingSystem) {
50
-    print "recognisedOS = '" . $operatingSystem['device'] . "';\n";
50
+    print "recognisedOS = '".$operatingSystem['device']."';\n";
51 51
 }
52
-require dirname(__DIR__) . '/user/js/cat_js.php';
52
+require dirname(__DIR__).'/user/js/cat_js.php';
53 53
 ?>
54 54
     var lang = "<?php echo($Gui->languageInstance->getLang()) ?>";
55 55
 </script>
@@ -79,7 +79,7 @@  discard block
 block discarded – undo
79 79
                         <?php
80 80
                         switch ($statusInfo['errorcode']) {
81 81
                             case "GENERATOR_CONSUMED":
82
-                                echo $uiElements->boxError(_("You attempted to download an installer that was already downloaded before. Please request a new token from your administrator instead."), _("Attempt to reuse download link"), TRUE) . "<p>";
82
+                                echo $uiElements->boxError(_("You attempted to download an installer that was already downloaded before. Please request a new token from your administrator instead."), _("Attempt to reuse download link"), TRUE)."<p>";
83 83
                                 break;
84 84
                             case NULL:
85 85
                             default:
@@ -102,7 +102,7 @@  discard block
 block discarded – undo
102 102
                                     echo " ";
103 103
                                     echo sprintf(ngettext("<strong>%d</strong> of your credentials is not valid any more.", "<strong>%d</strong> of your credentials are not valid any more.", $noGoodCerts), $noGoodCerts);
104 104
                                 }
105
-                                echo " <span id='detailtext'>" . _("I want to see the details.") . "</span>";
105
+                                echo " <span id='detailtext'>"._("I want to see the details.")."</span>";
106 106
                                 echo "<table id='cert_details'></table>";
107 107
                             }
108 108
                         }
@@ -111,60 +111,60 @@  discard block
 block discarded – undo
111 111
                             case \core\SilverbulletInvitation::SB_TOKENSTATUS_VALID: // treat both cases as equal
112 112
                             case \core\SilverbulletInvitation::SB_TOKENSTATUS_PARTIALLY_REDEEMED:
113 113
                                 if ($statusInfo['invitation_object']->activationsTotal > 1) { // only show this extra info in the non-trivial case.
114
-                                    echo "<h3>" . sprintf(_("Your invitation token is valid for %d more device activations (%d have already been used)."), $statusInfo['invitation_object']->activationsRemaining, $statusInfo['invitation_object']->activationsTotal - $statusInfo['invitation_object']->activationsRemaining) . "</h3>";
114
+                                    echo "<h3>".sprintf(_("Your invitation token is valid for %d more device activations (%d have already been used)."), $statusInfo['invitation_object']->activationsRemaining, $statusInfo['invitation_object']->activationsTotal - $statusInfo['invitation_object']->activationsRemaining)."</h3>";
115 115
                                 }
116 116
                                 if (!$statusInfo["OS"]) {
117
-                                    echo "<p>" . _("Unfortunately, we are unable to determine your device's operating system. If you have made modifications on your device which prevent it from being recognised (e.g. custom 'User Agent' settings), please undo such modifications. You can come back to this page again; the invitation link has not been used up yet.") . "</p>";
117
+                                    echo "<p>"._("Unfortunately, we are unable to determine your device's operating system. If you have made modifications on your device which prevent it from being recognised (e.g. custom 'User Agent' settings), please undo such modifications. You can come back to this page again; the invitation link has not been used up yet.")."</p>";
118 118
                                     break;
119 119
                                 }
120 120
 
121 121
                                 $dev = new \core\DeviceFactory($statusInfo['OS']['device']);
122 122
                                 $dev->device->calculatePreferredEapType([new \core\common\EAP(\core\common\EAP::EAPTYPE_SILVERBULLET)]);
123 123
                                 if ($dev->device->selectedEap == []) {
124
-                                    echo "<p>" . sprintf(_("Unfortunately, the operating system your device uses (%s) is currently not supported for hosted end-user accounts. You can visit this page with a supported operating system later; the invitation link has not been used up yet."), $statusInfo['OS']['display']) . "</p>";
124
+                                    echo "<p>".sprintf(_("Unfortunately, the operating system your device uses (%s) is currently not supported for hosted end-user accounts. You can visit this page with a supported operating system later; the invitation link has not been used up yet."), $statusInfo['OS']['display'])."</p>";
125 125
                                     break;
126 126
                                 }
127
-                                $message = $dev->device->options['message'] ?? '' ;
127
+                                $message = $dev->device->options['message'] ?? '';
128 128
 
129 129
                                 $sbMessage = $dev->device->options['sb_message'] ?? '';
130 130
                                 if ($message != '' && $sbMessage != '') {
131
-                                    $message = $message . "<p>" . $sbMessage;
131
+                                    $message = $message."<p>".$sbMessage;
132 132
                                 } else {
133
-                                    $message = $message . $sbMessage;
133
+                                    $message = $message.$sbMessage;
134 134
                                 }
135 135
                          
136
-                                echo "<div id='sb_download_message'><p>" . sprintf(_("You can now download a personalised  %s installation program."), \config\ConfAssistant::CONSORTIUM['display_name']);
136
+                                echo "<div id='sb_download_message'><p>".sprintf(_("You can now download a personalised  %s installation program."), \config\ConfAssistant::CONSORTIUM['display_name']);
137 137
 //                       echo sprintf(_("The installation program is <span class='emph'>strictly personal</span>, to be used <span class='emph'>only on this device (%s)</span>, and it is <span class='emph'>not permitted to share</span> this information with anyone."), $statusInfo['OS']['display']);
138 138
                                 echo sprintf(_("The installation program is <span class='emph'>strictly personal</span>, to be used <span class='emph'>only on this device (%s)</span>, and it is <span class='emph'>not permitted to share</span> this information with anyone."), $statusInfo['OS']['display']);
139
-                                echo "<p style='color:red;'>" . sprintf(_("When the system detects abuse such as sharing login data with others, all access rights for you will be revoked and you may be sanctioned by your local %s administrator."), \config\ConfAssistant::CONSORTIUM['display_name']) . "</p>";
140
-                                echo "<p>" . _("During the installation process, you will be asked for the following import PIN. This only happens once during the installation. You do not have to write down this PIN.") . "</p></div>";
139
+                                echo "<p style='color:red;'>".sprintf(_("When the system detects abuse such as sharing login data with others, all access rights for you will be revoked and you may be sanctioned by your local %s administrator."), \config\ConfAssistant::CONSORTIUM['display_name'])."</p>";
140
+                                echo "<p>"._("During the installation process, you will be asked for the following import PIN. This only happens once during the installation. You do not have to write down this PIN.")."</p></div>";
141 141
 
142 142
                                 $importPassword = \core\common\Entity::randomString(4, "0123456789");
143 143
                                 $profile = new \core\ProfileSilverbullet($statusInfo['profile']->identifier, NULL);
144 144
                                 
145
-                                echo "<h2>" . sprintf(_("Import PIN: %s"), $importPassword) . "</h2>";
145
+                                echo "<h2>".sprintf(_("Import PIN: %s"), $importPassword)."</h2>";
146 146
                                 $_SESSION['individualtoken'] = $cleanToken;
147 147
                                 $_SESSION['importpassword'] = $importPassword;
148
-                                echo "<input type='hidden' name='device' value='" . $statusInfo['OS']['device'] . "'/>";
148
+                                echo "<input type='hidden' name='device' value='".$statusInfo['OS']['device']."'/>";
149 149
                                 echo "<input type='hidden' name='generatedfor' value='silverbullet'/>";
150
-                                echo "<button class='large_button' id='user_button_sb' style='height:80px;'><span id='user_buttonnnn'>" . sprintf(_("Click here to download your %s installer!"), \config\ConfAssistant::CONSORTIUM['display_name']) . "</span></button>";
150
+                                echo "<button class='large_button' id='user_button_sb' style='height:80px;'><span id='user_buttonnnn'>".sprintf(_("Click here to download your %s installer!"), \config\ConfAssistant::CONSORTIUM['display_name'])."</span></button>";
151 151
                                 echo "<div class='device_info' id='info_g_sb'></div>";
152 152
                                 break;
153 153
                             case \core\SilverbulletInvitation::SB_TOKENSTATUS_EXPIRED:
154 154
                                 echo "<h2>Invitation link expired</h2>";
155
-                                echo "<p>" . sprintf(_("Unfortunately, the invitation link you just used is too old. The %s sign-up invitation was valid until %s. You cannot use this link any more. Please ask your administrator to issue you a new invitation link."), \config\ConfAssistant::CONSORTIUM['display_name'], $statusInfo['invitation_object']->expiry) . "</p>";
155
+                                echo "<p>".sprintf(_("Unfortunately, the invitation link you just used is too old. The %s sign-up invitation was valid until %s. You cannot use this link any more. Please ask your administrator to issue you a new invitation link."), \config\ConfAssistant::CONSORTIUM['display_name'], $statusInfo['invitation_object']->expiry)."</p>";
156 156
                                 echo "<p>Below is all the information about your account's other login details, if any.</p>";
157 157
 // do NOT break, display full account info instead (this was a previously valid token after all)
158 158
                             case \core\SilverbulletInvitation::SB_TOKENSTATUS_REDEEMED:
159 159
                                 // nothing to say really. User got the breakdown of certs above, and this link doesn't give him any new ones.
160 160
                                 break;
161 161
                             case \core\SilverbulletInvitation::SB_TOKENSTATUS_INVALID:
162
-                                echo "<h2>" . _("Account information not found") . "</h2>";
163
-                                echo "<p>" . sprintf(_("The invitation link you followed does not map to any invititation we have on file.") . "</p><p>" . _("You should use the exact link you got during sign-up to come here. Alternatively, if you have a valid %s credential already, you can visit this page and Accept the question about logging in with a client certificate (select a certificate with a name ending in '…%s')."),\config\ConfAssistant::CONSORTIUM['display_name'], \config\ConfAssistant::SILVERBULLET['realm_suffix']);
162
+                                echo "<h2>"._("Account information not found")."</h2>";
163
+                                echo "<p>".sprintf(_("The invitation link you followed does not map to any invititation we have on file.")."</p><p>"._("You should use the exact link you got during sign-up to come here. Alternatively, if you have a valid %s credential already, you can visit this page and Accept the question about logging in with a client certificate (select a certificate with a name ending in '…%s')."), \config\ConfAssistant::CONSORTIUM['display_name'], \config\ConfAssistant::SILVERBULLET['realm_suffix']);
164 164
                         }
165 165
                         if (isset($statusInfo['profile_id']) && isset($statusInfo['idp_id'])) {
166
-                            echo "<input type='hidden' name='profile' id='profile_id' value='" . $statusInfo['profile_id'] . "'/>";
167
-                            echo "<input type='hidden' id='inst_id' name='idp' value='" . $statusInfo['idp_id'] . "'/>";
166
+                            echo "<input type='hidden' name='profile' id='profile_id' value='".$statusInfo['profile_id']."'/>";
167
+                            echo "<input type='hidden' id='inst_id' name='idp' value='".$statusInfo['idp_id']."'/>";
168 168
                         }
169 169
                         ?>
170 170
                     </div>
@@ -184,18 +184,18 @@  discard block
 block discarded – undo
184 184
     $attributes = $statusInfo['attributes'];
185 185
     $supportInfo = '';
186 186
     if (!empty($attributes['local_url'])) {
187
-        $supportInfo .= '<tr><td>' . ("WWW:") . '</td><td><a href="' . $attributes['local_url'] . '" target="_blank">' . $attributes['local_url'] . '</a></td></tr>';
187
+        $supportInfo .= '<tr><td>'.("WWW:").'</td><td><a href="'.$attributes['local_url'].'" target="_blank">'.$attributes['local_url'].'</a></td></tr>';
188 188
     }
189 189
     if (!empty($attributes['local_email'])) {
190
-        $supportInfo .= '<tr><td>' . ("email:") . '</td><td><a href="' . $attributes['local_email'] . '" target="_blank">' . $attributes['local_email'] . '</a></td></tr>';
190
+        $supportInfo .= '<tr><td>'.("email:").'</td><td><a href="'.$attributes['local_email'].'" target="_blank">'.$attributes['local_email'].'</a></td></tr>';
191 191
     }
192 192
     if (!empty($attributes['local_phone'])) {
193
-        $supportInfo .= '<tr><td>' . ("tel:") . '</td><td><a href="' . $attributes['local_phone'] . '" target="_blank">' . $attributes['local_phone'] . '</a></td></tr>';
193
+        $supportInfo .= '<tr><td>'.("tel:").'</td><td><a href="'.$attributes['local_phone'].'" target="_blank">'.$attributes['local_phone'].'</a></td></tr>';
194 194
     }
195 195
     if ($supportInfo != '') {
196
-        $supportInfo = "<table><tr><th colspan='2'>" . _("If you encounter problems, then you can obtain direct assistance from your organisation at:") . "</th></tr>$supportInfo</table>";
196
+        $supportInfo = "<table><tr><th colspan='2'>"._("If you encounter problems, then you can obtain direct assistance from your organisation at:")."</th></tr>$supportInfo</table>";
197 197
     } else {
198
-        $supportInfo = "<table><tr><th colspan='2'>" . _("If you encounter problems you should ask those who gave you your account for help.") . "</th></tr></table>";
198
+        $supportInfo = "<table><tr><th colspan='2'>"._("If you encounter problems you should ask those who gave you your account for help.")."</th></tr></table>";
199 199
     }
200 200
     ?>
201 201
     <script>
@@ -204,7 +204,7 @@  discard block
 block discarded – undo
204 204
             var logo = <?php echo $statusInfo['idp_logo']; ?>;
205 205
             var idpId = <?php echo $statusInfo['idp_id']; ?>;
206 206
             <?php
207
-                if($message != '') {
207
+                if ($message != '') {
208 208
                     echo "message = \"$message\";\n";
209 209
                 }
210 210
             ?>
Please login to merge, or discard this patch.
core/DBConnection.php 1 patch
Spacing   +20 added lines, -20 removed lines patch added patch discarded remove patch
@@ -62,24 +62,24 @@  discard block
 block discarded – undo
62 62
             case "EXTERNAL":
63 63
             case "FRONTEND":
64 64
             case "DIAGNOSTICS":
65
-                if (!isset(self::${"instance" . $theDb})) {
65
+                if (!isset(self::${"instance".$theDb})) {
66 66
                     $class = __CLASS__;
67
-                    self::${"instance" . $theDb} = new $class($database);
68
-                    DBConnection::${"instance" . $theDb}->databaseInstance = $theDb;
67
+                    self::${"instance".$theDb} = new $class($database);
68
+                    DBConnection::${"instance".$theDb}->databaseInstance = $theDb;
69 69
                 }
70
-                return self::${"instance" . $theDb};
70
+                return self::${"instance".$theDb};
71 71
             case "RADIUS":
72
-                if (!isset(self::${"instance" . $theDb})) {
72
+                if (!isset(self::${"instance".$theDb})) {
73 73
                     $class = __CLASS__;
74 74
                     foreach (\config\ConfAssistant::DB as $name => $oneRadiusAuthDb) {
75 75
                         $theInstance = new $class($name);
76
-                        self::${"instance" . $theDb}[] = $theInstance;
76
+                        self::${"instance".$theDb}[] = $theInstance;
77 77
                         $theInstance->databaseInstance = $theDb;
78 78
                     }
79 79
                 }
80
-                return self::${"instance" . $theDb};
80
+                return self::${"instance".$theDb};
81 81
             default:
82
-                throw new Exception("This type of database (" . strtoupper($database) . ") is not known!");
82
+                throw new Exception("This type of database (".strtoupper($database).") is not known!");
83 83
         }
84 84
     }
85 85
 
@@ -121,18 +121,18 @@  discard block
 block discarded – undo
121 121
             }
122 122
         }
123 123
         // log exact query to debug log, if log level is at 5
124
-        $this->loggerInstance->debug(5, "DB ATTEMPT: ".$this->databaseInstance .": " . $querystring . "\n");
124
+        $this->loggerInstance->debug(5, "DB ATTEMPT: ".$this->databaseInstance.": ".$querystring."\n");
125 125
         if ($types !== NULL) {
126
-            $this->loggerInstance->debug(5, "Argument type sequence: $types, parameters are: " . /** @scrutinizer ignore-type */ print_r($arguments, true));
126
+            $this->loggerInstance->debug(5, "Argument type sequence: $types, parameters are: "./** @scrutinizer ignore-type */ print_r($arguments, true));
127 127
         }
128 128
 
129 129
         if ($this->connection->connect_error) {
130
-            throw new Exception("ERROR: Cannot send query to $this->databaseInstance database (no connection, error number" . $this->connection->connect_error . ")!");
130
+            throw new Exception("ERROR: Cannot send query to $this->databaseInstance database (no connection, error number".$this->connection->connect_error.")!");
131 131
         }
132 132
         if ($types === NULL) {
133 133
             $result = $this->connection->query($querystring);
134 134
             if ($result === FALSE) {
135
-                throw new Exception("DB: Unable to execute simple statement! Error was --> " . $this->connection->error . " <--");
135
+                throw new Exception("DB: Unable to execute simple statement! Error was --> ".$this->connection->error." <--");
136 136
             }
137 137
         } else {
138 138
             // fancy! prepared statement with dedicated argument list
@@ -148,7 +148,7 @@  discard block
 block discarded – undo
148 148
                 }
149 149
                 $prepResult = $statementObject->prepare($querystring);
150 150
                 if ($prepResult === FALSE) {
151
-                    throw new Exception("DB: Unable to prepare statement! Statement was --> $querystring <--, error was --> " . $statementObject->error . " <--.");
151
+                    throw new Exception("DB: Unable to prepare statement! Statement was --> $querystring <--, error was --> ".$statementObject->error." <--.");
152 152
                 }
153 153
                 $this->preparedStatements[$querystring] = $statementObject;
154 154
             }
@@ -161,11 +161,11 @@  discard block
 block discarded – undo
161 161
             array_unshift($localArray, $types);
162 162
             $retval = call_user_func_array([$statementObject, "bind_param"], $localArray);
163 163
             if ($retval === FALSE) {
164
-                throw new Exception("DB: Unable to bind parameters to prepared statement! Argument array was --> " . var_export($localArray, TRUE) . " <--. Error was --> " . $statementObject->error . " <--");
164
+                throw new Exception("DB: Unable to bind parameters to prepared statement! Argument array was --> ".var_export($localArray, TRUE)." <--. Error was --> ".$statementObject->error." <--");
165 165
             }
166 166
             $result = $statementObject->execute();
167 167
             if ($result === FALSE) {
168
-                throw new Exception("DB: Unable to execute prepared statement! Error was --> " . $statementObject->error . " <--");
168
+                throw new Exception("DB: Unable to execute prepared statement! Error was --> ".$statementObject->error." <--");
169 169
             }
170 170
             $selectResult = $statementObject->get_result();
171 171
             if ($selectResult !== FALSE) {
@@ -175,14 +175,14 @@  discard block
 block discarded – undo
175 175
 
176 176
         // all cases where $result could be FALSE have been caught earlier
177 177
         if ($this->connection->errno) {
178
-            throw new Exception("ERROR: Cannot execute query in $this->databaseInstance database - (hopefully escaped) query was '$querystring', errno was " . $this->connection->errno . "!");
178
+            throw new Exception("ERROR: Cannot execute query in $this->databaseInstance database - (hopefully escaped) query was '$querystring', errno was ".$this->connection->errno."!");
179 179
         }
180 180
 
181 181
 
182 182
         if ($isMoreThanSelect) {
183
-            $this->loggerInstance->writeSQLAudit("[DB: " . strtoupper($this->databaseInstance) . "] " . $querystring);
183
+            $this->loggerInstance->writeSQLAudit("[DB: ".strtoupper($this->databaseInstance)."] ".$querystring);
184 184
             if ($types !== NULL) {
185
-                $this->loggerInstance->writeSQLAudit("Argument type sequence: $types, parameters are: " . /** @scrutinizer ignore-type */ print_r($arguments, true));
185
+                $this->loggerInstance->writeSQLAudit("Argument type sequence: $types, parameters are: "./** @scrutinizer ignore-type */ print_r($arguments, true));
186 186
             }
187 187
         }
188 188
         return $result;
@@ -280,13 +280,13 @@  discard block
 block discarded – undo
280 280
         if (isset(\config\Master::DB[$databaseCapitalised])) {
281 281
             $this->connection = new \mysqli(\config\Master::DB[$databaseCapitalised]['host'], \config\Master::DB[$databaseCapitalised]['user'], \config\Master::DB[$databaseCapitalised]['pass'], \config\Master::DB[$databaseCapitalised]['db']);
282 282
             if ($this->connection->connect_error) {
283
-                throw new Exception("ERROR: Unable to connect to $database database! This is a fatal error, giving up (error number " . $this->connection->connect_errno . ").");
283
+                throw new Exception("ERROR: Unable to connect to $database database! This is a fatal error, giving up (error number ".$this->connection->connect_errno.").");
284 284
             }
285 285
             $this->readOnly = \config\Master::DB[$databaseCapitalised]['readonly'];
286 286
         } else { // one of the RADIUS DBs
287 287
             $this->connection = new \mysqli(\config\ConfAssistant::DB[$databaseCapitalised]['host'], \config\ConfAssistant::DB[$databaseCapitalised]['user'], \config\ConfAssistant::DB[$databaseCapitalised]['pass'], \config\ConfAssistant::DB[$databaseCapitalised]['db']);
288 288
             if ($this->connection->connect_error) {
289
-                throw new Exception("ERROR: Unable to connect to $database database! This is a fatal error, giving up (error number " . $this->connection->connect_errno . ").");
289
+                throw new Exception("ERROR: Unable to connect to $database database! This is a fatal error, giving up (error number ".$this->connection->connect_errno.").");
290 290
             }
291 291
             $this->readOnly = \config\ConfAssistant::DB[$databaseCapitalised]['readonly'];
292 292
         }
Please login to merge, or discard this patch.
core/common/Logging.php 1 patch
Spacing   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -49,7 +49,7 @@  discard block
 block discarded – undo
49 49
      */
50 50
     private function writeToFile($filename, $message)
51 51
     {
52
-        file_put_contents(\config\Master::PATHS['logdir'] . "/$filename", sprintf("%-015s", microtime(TRUE)) . $message, FILE_APPEND);
52
+        file_put_contents(\config\Master::PATHS['logdir']."/$filename", sprintf("%-015s", microtime(TRUE)).$message, FILE_APPEND);
53 53
     }
54 54
 
55 55
     /**
@@ -77,9 +77,9 @@  discard block
 block discarded – undo
77 77
             $output .= " [$file / $function / $line] ";
78 78
         }
79 79
         if (is_string($stuff)) {
80
-            $output .= $prefix . $stuff . $suffix;
80
+            $output .= $prefix.$stuff.$suffix;
81 81
         } else {
82
-            $output .= $prefix . var_export($stuff, TRUE) . $suffix;
82
+            $output .= $prefix.var_export($stuff, TRUE).$suffix;
83 83
         }
84 84
         $this->writeToFile("debug.log", $output);
85 85
 
@@ -128,6 +128,6 @@  discard block
 block discarded – undo
128 128
         $logTextStep1 = preg_replace("/[\n\r]/", "", $query);
129 129
         $logTextStep2 = preg_replace("/ +/", " ", $logTextStep1);
130 130
         $logTextStep3 = iconv("UTF-8", "UTF-8//IGNORE", $logTextStep2);
131
-        $this->writeToFile("audit-SQL.log", " " . $logTextStep3 . "\n");
131
+        $this->writeToFile("audit-SQL.log", " ".$logTextStep3."\n");
132 132
     }
133 133
 }
134 134
\ No newline at end of file
Please login to merge, or discard this patch.
web/admin/inc/option_xhr.inc.php 1 patch
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -19,12 +19,12 @@
 block discarded – undo
19 19
  *          <base_url>/copyright.php after deploying the software
20 20
  */
21 21
 
22
-require_once dirname(dirname(dirname(dirname(__FILE__)))) . "/config/_config.php";
22
+require_once dirname(dirname(dirname(dirname(__FILE__))))."/config/_config.php";
23 23
 
24 24
 \core\CAT::sessionStart();
25 25
 $validator = new \web\lib\common\InputValidation();
26 26
 
27
-if (!isset($_GET["class"] )) {
27
+if (!isset($_GET["class"])) {
28 28
     throw new Exception("Unknown type of option!");
29 29
 }
30 30
 
Please login to merge, or discard this patch.
web/lib/admin/OptionDisplay.php 2 patches
Indentation   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -218,7 +218,7 @@
 block discarded – undo
218 218
                         }
219 219
                     }
220 220
                 }
221
-                 break;
221
+                    break;
222 222
             default:
223 223
                 break;
224 224
         }
Please login to merge, or discard this patch.
Spacing   +43 added lines, -43 removed lines patch added patch discarded remove patch
@@ -112,7 +112,7 @@  discard block
 block discarded – undo
112 112
      */
113 113
     public function prefilledOptionTable(string $attributePrefix, $fed)
114 114
     {
115
-        $retval = "<table id='expandable_$attributePrefix" . "_options'>";
115
+        $retval = "<table id='expandable_$attributePrefix"."_options'>";
116 116
 
117 117
         $prepopulate = [];
118 118
         foreach ($this->listOfOptions as $existingAttribute) {
@@ -120,7 +120,7 @@  discard block
 block discarded – undo
120 120
                 $prepopulate[] = $existingAttribute;
121 121
             }
122 122
         }
123
-        if (is_array($prepopulate) && ( count($prepopulate) > 0 || $attributePrefix == "device-specific" || $attributePrefix == "eap-specific" )) { // editing... fill with values
123
+        if (is_array($prepopulate) && (count($prepopulate) > 0 || $attributePrefix == "device-specific" || $attributePrefix == "eap-specific")) { // editing... fill with values
124 124
             $retval .= $this->addOptionEdit($attributePrefix, $prepopulate);
125 125
         } else {
126 126
             $retval .= $this->addOptionNew($attributePrefix, $fed);
@@ -154,7 +154,7 @@  discard block
 block discarded – undo
154 154
             if (preg_match("/^$class:/", $option['name']) && !preg_match("/($blackListOnPrefill)/", $option['name'])) {
155 155
                 $optiontypearray = $optioninfo->optionType($option['name']);
156 156
                 $loggerInstance->debug(5, "About to execute optiontext with PREFILL!\n");
157
-                $retval .= $this->optiontext([$option['name']], ($optiontypearray["type"] == "file" ? 'ROWID-' . $option['level'] . '-' . $option['row_id'] : $option['value']), $option['lang']);
157
+                $retval .= $this->optiontext([$option['name']], ($optiontypearray["type"] == "file" ? 'ROWID-'.$option['level'].'-'.$option['row_id'] : $option['value']), $option['lang']);
158 158
             }
159 159
         }
160 160
         return $retval;
@@ -170,7 +170,7 @@  discard block
 block discarded – undo
170 170
      * @param string $fed   the federation TLD, to determine fed ops preference context
171 171
      * @return array the list of options to display
172 172
      */
173
-    public static function enumerateOptionsToDisplay($class, $fed, $device='')
173
+    public static function enumerateOptionsToDisplay($class, $fed, $device = '')
174 174
     {
175 175
         $optioninfo = \core\Options::instance();
176 176
         $loggerInstance = new \core\common\Logging();
@@ -266,18 +266,18 @@  discard block
 block discarded – undo
266 266
         }
267 267
         $descriptions["media:force_proxy"] = sprintf(_("The format of this option is: IPv4|IPv6|hostname:port . Forcing your users through a content filter of your own is a significant invasion of user self-determination. It also has technical issues. Please thoroughly read the discussion at %s before specifying a proxy with this option. This feature is currently experimental and only has an effect in Apple installers."), "https://github.com/GEANT/CAT/issues/96");
268 268
         $descriptions["managedsp:realmforvlan"] = sprintf(_("If you are also using %s, then your own realm is automatically tagged with the VLAN you choose, there is no need to add it here manually."), \core\ProfileSilverbullet::PRODUCTNAME);
269
-        $descriptions["media:openroaming"] = sprintf(_("By opting in to OpenRoaming, you agree to be bound by the %s."), "eduroam Ecosystem Broker OpenRoaming Identity Provider Policy") .
270
-                " " .
271
-                sprintf(_("Note that your requirement to inform users about the OpenRoaming End User Terms and Conditions is fulfilled when directing your end users to the %s download portal for installer download. Any other means of providing the installers needs to present this information via its own channel."), \config\Master::APPEARANCE['productname']) .
272
-                " " .
273
-                _("You are also aware that for best technical interoperability, you need to add a DNS entry into the DNS zone of your RADIUS realm.") .
274
-                " " .
269
+        $descriptions["media:openroaming"] = sprintf(_("By opting in to OpenRoaming, you agree to be bound by the %s."), "eduroam Ecosystem Broker OpenRoaming Identity Provider Policy").
270
+                " ".
271
+                sprintf(_("Note that your requirement to inform users about the OpenRoaming End User Terms and Conditions is fulfilled when directing your end users to the %s download portal for installer download. Any other means of providing the installers needs to present this information via its own channel."), \config\Master::APPEARANCE['productname']).
272
+                " ".
273
+                _("You are also aware that for best technical interoperability, you need to add a DNS entry into the DNS zone of your RADIUS realm.").
274
+                " ".
275 275
                 _("Read the instructions in the wiki.");
276 276
         \core\common\Entity::outOfThePotatoes();
277 277
         if (!isset($descriptions[$input])) {
278 278
             return "";
279 279
         }
280
-        return "<span class='tooltip' id='S$rowid-tooltip-$input' style='display:" . ($isVisible ? "block" : "none") . "' onclick='alert(\"" . $descriptions[$input] . "\")'><img src='../resources/images/icons/question-mark-icon.png" . "'></span>";
280
+        return "<span class='tooltip' id='S$rowid-tooltip-$input' style='display:".($isVisible ? "block" : "none")."' onclick='alert(\"".$descriptions[$input]."\")'><img src='../resources/images/icons/question-mark-icon.png"."'></span>";
281 281
     }
282 282
 
283 283
     /**
@@ -291,19 +291,19 @@  discard block
 block discarded – undo
291 291
     private function selectElement($rowid, $list)
292 292
     {
293 293
         $jsmagic = "onchange='
294
-                               if (/#ML#/.test(document.getElementById(\"option-S" . $rowid . "-select\").value)) {
294
+                               if (/#ML#/.test(document.getElementById(\"option-S" . $rowid."-select\").value)) {
295 295
                                    document.getElementById(\"S$rowid-input-langselect\").style.display = \"block\";
296 296
                                    } else {
297 297
                                    document.getElementById(\"S$rowid-input-langselect\").style.display = \"none\";
298 298
                                    }";
299 299
         foreach (array_keys($this->htmlDatatypeTexts) as $key) {
300
-            $jsmagic .= "if (/#" . $key . "#/.test(document.getElementById(\"option-S" . $rowid . "-select\").value)) {
301
-                                  document.getElementById(\"S$rowid-input-file\").style.display = \"" . ($key == \core\Options::TYPECODE_FILE ? "block" : "none") . "\";
302
-                                  document.getElementById(\"S$rowid-input-text\").style.display = \"" . ($key == \core\Options::TYPECODE_TEXT ? "block" : "none") . "\";
303
-                                  document.getElementById(\"S$rowid-input-string\").style.display = \"" . ($key == \core\Options::TYPECODE_STRING ? "block" : "none") . "\";
304
-                                  document.getElementById(\"S$rowid-input-enum_openroaming\").style.display = \"" . ($key == \core\Options::TYPECODE_ENUM_OPENROAMING ? "block" : "none") . "\";
305
-                                  document.getElementById(\"S$rowid-input-boolean\").style.display = \"" . ($key == \core\Options::TYPECODE_BOOLEAN ? "block" : "none") . "\";
306
-                                  document.getElementById(\"S$rowid-input-integer\").style.display = \"" . ($key == \core\Options::TYPECODE_INTEGER ? "block" : "none") . "\";
300
+            $jsmagic .= "if (/#".$key."#/.test(document.getElementById(\"option-S".$rowid."-select\").value)) {
301
+                                  document.getElementById(\"S$rowid-input-file\").style.display = \"".($key == \core\Options::TYPECODE_FILE ? "block" : "none")."\";
302
+                                  document.getElementById(\"S$rowid-input-text\").style.display = \"".($key == \core\Options::TYPECODE_TEXT ? "block" : "none")."\";
303
+                                  document.getElementById(\"S$rowid-input-string\").style.display = \"".($key == \core\Options::TYPECODE_STRING ? "block" : "none")."\";
304
+                                  document.getElementById(\"S$rowid-input-enum_openroaming\").style.display = \"".($key == \core\Options::TYPECODE_ENUM_OPENROAMING ? "block" : "none")."\";
305
+                                  document.getElementById(\"S$rowid-input-boolean\").style.display = \"".($key == \core\Options::TYPECODE_BOOLEAN ? "block" : "none")."\";
306
+                                  document.getElementById(\"S$rowid-input-integer\").style.display = \"".($key == \core\Options::TYPECODE_INTEGER ? "block" : "none")."\";
307 307
                              }
308 308
                              ";
309 309
             // hide all tooltips (each is a <span>, and there are no other <span>s)
@@ -334,7 +334,7 @@  discard block
 block discarded – undo
334 334
                 $value = array_shift($list);
335 335
                 $listtype = $optioninfo->optionType($value);
336 336
                 $retval .= $uiElements->displayName($value);
337
-                $retval .= "<input type='hidden' name='option[S$rowid]' value='$value#" . $listtype["type"] . "#" . $listtype["flag"] . "#'/>";
337
+                $retval .= "<input type='hidden' name='option[S$rowid]' value='$value#".$listtype["type"]."#".$listtype["flag"]."#'/>";
338 338
                 $activelisttype = $listtype;
339 339
                 $tooltips = $this->tooltip($rowid, $value, TRUE);
340 340
                 break;
@@ -342,7 +342,7 @@  discard block
 block discarded – undo
342 342
                 $retval .= "<select id='option-S$rowid-select' name='option[S$rowid]' $jsmagic>";
343 343
                 foreach ($list as $value) {
344 344
                     $listtype = $optioninfo->optionType($value);
345
-                    $retval .= "<option id='option-S$rowid-v-$value' value='$value#" . $listtype["type"] . "#" . $listtype["flag"] . "#' ";
345
+                    $retval .= "<option id='option-S$rowid-v-$value' value='$value#".$listtype["type"]."#".$listtype["flag"]."#' ";
346 346
                     if ($iterator == $this->optionIterator) {
347 347
                         $retval .= "selected='selected'";
348 348
                         $activelisttype = $listtype;
@@ -350,7 +350,7 @@  discard block
 block discarded – undo
350 350
                     } else {
351 351
                         $tooltips .= $this->tooltip($rowid, $value, FALSE);
352 352
                     }
353
-                    $retval .= ">" . $uiElements->displayName($value) . "</option>";
353
+                    $retval .= ">".$uiElements->displayName($value)."</option>";
354 354
                     $iterator++;
355 355
                 }
356 356
 
@@ -376,9 +376,9 @@  discard block
 block discarded – undo
376 376
     private function selectLanguage($rowid, $makeVisible)
377 377
     {
378 378
         \core\common\Entity::intoThePotatoes();
379
-        $retval = "<select style='display:" . ($makeVisible ? "block" : "none") . "' name='value[S$rowid-lang]' id='S" . $rowid . "-input-langselect'>
380
-            <option value='' name='select_language' selected>" . _("select language") . "</option>
381
-            <option value='C' name='all_languages'>" . _("default/other languages") . "</option>";
379
+        $retval = "<select style='display:".($makeVisible ? "block" : "none")."' name='value[S$rowid-lang]' id='S".$rowid."-input-langselect'>
380
+            <option value='' name='select_language' selected>" . _("select language")."</option>
381
+            <option value='C' name='all_languages'>" . _("default/other languages")."</option>";
382 382
         foreach (\config\Master::LANGUAGES as $langindex => $possibleLang) {
383 383
             $thislang = $possibleLang['display'];
384 384
             $retval .= "<option value='$langindex' name='$langindex'>$thislang</option>";
@@ -399,7 +399,7 @@  discard block
 block discarded – undo
399 399
     {
400 400
         $retval = "";
401 401
         foreach ($this->htmlDatatypeTexts as $key => $type) {
402
-            $retval .= "<" . $type['html'] . " style='display:" . ($activetype['type'] == $key ? "block" : "none") . "' name='value[S$rowid-$key]' id='S" . $rowid . "-input-" . $key . "'" . $type['tail'] . ">";
402
+            $retval .= "<".$type['html']." style='display:".($activetype['type'] == $key ? "block" : "none")."' name='value[S$rowid-$key]' id='S".$rowid."-input-".$key."'".$type['tail'].">";
403 403
         }
404 404
         return $retval;
405 405
     }
@@ -415,11 +415,11 @@  discard block
 block discarded – undo
415 415
     {
416 416
         // first column: the <select> element with the names of options and their field-toggling JS magic
417 417
         $selectorInfo = $this->selectElement($rowid, $list);
418
-        $retval = "<td>" . $selectorInfo["TEXT"] . "</td>";
418
+        $retval = "<td>".$selectorInfo["TEXT"]."</td>";
419 419
         // second column: the <select> element for language selection - only visible if the active option is multi-lang
420
-        $retval .= "<td>" . $this->selectLanguage($rowid, $selectorInfo['ACTIVE']['flag'] == "ML") . "</td>";
420
+        $retval .= "<td>".$this->selectLanguage($rowid, $selectorInfo['ACTIVE']['flag'] == "ML")."</td>";
421 421
         // third column: the actual input fields; the data type of the active option is visible, all others hidden
422
-        $retval .= "<td>" . $this->inputFields($rowid, $selectorInfo['ACTIVE']) . "</td>";
422
+        $retval .= "<td>".$this->inputFields($rowid, $selectorInfo['ACTIVE'])."</td>";
423 423
         return $retval;
424 424
     }
425 425
 
@@ -443,20 +443,20 @@  discard block
 block discarded – undo
443 443
         $retval .= "<td>";
444 444
         $uiElements = new UIElements();
445 445
         $listtype = $optioninfo->optionType($optionName);
446
-        $retval .= "<span style='display:flex;'>" . $uiElements->displayName($optionName);
447
-        $retval .= $this->tooltip($rowid, $optionName, TRUE) . "</span>";
448
-        $retval .= "<input type='hidden' id='option-S$rowid-select' name='option[S$rowid]' value='$optionName#" . $listtype["type"] . "#" . $listtype["flag"] . "#' ></td>";
446
+        $retval .= "<span style='display:flex;'>".$uiElements->displayName($optionName);
447
+        $retval .= $this->tooltip($rowid, $optionName, TRUE)."</span>";
448
+        $retval .= "<input type='hidden' id='option-S$rowid-select' name='option[S$rowid]' value='$optionName#".$listtype["type"]."#".$listtype["flag"]."#' ></td>";
449 449
 
450 450
         // language tag if any
451 451
         $retval .= "<td>";
452 452
         if ($listtype["flag"] == "ML") {
453 453
 
454
-            $language = "(" . strtoupper($optionLang) . ")";
454
+            $language = "(".strtoupper($optionLang).")";
455 455
             if ($optionLang == 'C') {
456 456
                 $language = _("(default/other languages)");
457 457
             }
458 458
             $retval .= $language;
459
-            $retval .= "<input type='hidden' name='value[S$rowid-lang]' id='S" . $rowid . "-input-langselect' value='" . $optionLang . "' style='display:block'>";
459
+            $retval .= "<input type='hidden' name='value[S$rowid-lang]' id='S".$rowid."-input-langselect' value='".$optionLang."' style='display:block'>";
460 460
         }
461 461
         $retval .= "</td>";
462 462
 // attribute content
@@ -466,12 +466,12 @@  discard block
 block discarded – undo
466 466
             case \core\Options::TYPECODE_COORDINATES:
467 467
                 $this->allLocationCount = $this->allLocationCount + 1;
468 468
                 // display of the locations varies by map provider
469
-                $classname = "\web\lib\admin\Map" . \config\ConfAssistant::MAPPROVIDER['PROVIDER'];
469
+                $classname = "\web\lib\admin\Map".\config\ConfAssistant::MAPPROVIDER['PROVIDER'];
470 470
                 $link = $classname::optionListDisplayCode($optionValue, $this->allLocationCount);
471
-                $retval .= "<input readonly style='display:none' type='text' name='value[S$rowid-" . \core\Options::TYPECODE_TEXT . "]' id='S$rowid-input-text' value='$optionValue'>$link";
471
+                $retval .= "<input readonly style='display:none' type='text' name='value[S$rowid-".\core\Options::TYPECODE_TEXT."]' id='S$rowid-input-text' value='$optionValue'>$link";
472 472
                 break;
473 473
             case \core\Options::TYPECODE_FILE:
474
-                $retval .= "<input readonly type='text' name='value[S$rowid-" . \core\Options::TYPECODE_STRING . "]' id='S" . $rowid . "-input-string' style='display:none' value='" . urlencode($optionValue) . "'>";
474
+                $retval .= "<input readonly type='text' name='value[S$rowid-".\core\Options::TYPECODE_STRING."]' id='S".$rowid."-input-string' style='display:none' value='".urlencode($optionValue)."'>";
475 475
                 $uiElements = new UIElements();
476 476
                 switch ($optionName) {
477 477
                     case "eap:ca_file":
@@ -493,7 +493,7 @@  discard block
 block discarded – undo
493 493
                 break;
494 494
             case \core\Options::TYPECODE_ENUM_OPENROAMING: // is a string after all
495 495
                 $displayedVariant = $this->enumPrettyPrints[$optionValue];
496
-                $retval .= "<strong>$displayedVariant</strong><input type='hidden' name='value[S$rowid-" . $listtype['type'] . "]' id='S" . $rowid . "-input-" . $listtype["type"] . "' value=\"" . htmlspecialchars($optionValue) . "\" style='display:block'>";
496
+                $retval .= "<strong>$displayedVariant</strong><input type='hidden' name='value[S$rowid-".$listtype['type']."]' id='S".$rowid."-input-".$listtype["type"]."' value=\"".htmlspecialchars($optionValue)."\" style='display:block'>";
497 497
                 break;
498 498
             case \core\Options::TYPECODE_STRING:
499 499
             // fall-thorugh is intentional; mostly identical HTML code for the three types
@@ -501,11 +501,11 @@  discard block
 block discarded – undo
501 501
             // fall-thorugh is intentional; mostly identical HTML code for the three types
502 502
             case \core\Options::TYPECODE_TEXT:
503 503
                 $displayedVariant = $optionValue; // for all three types, value tag and actual display are identical
504
-                $retval .= "<strong>$displayedVariant</strong><input type='hidden' name='value[S$rowid-" . $listtype['type'] . "]' id='S" . $rowid . "-input-" . $listtype["type"] . "' value=\"" . htmlspecialchars($optionValue) . "\" style='display:block'>";
504
+                $retval .= "<strong>$displayedVariant</strong><input type='hidden' name='value[S$rowid-".$listtype['type']."]' id='S".$rowid."-input-".$listtype["type"]."' value=\"".htmlspecialchars($optionValue)."\" style='display:block'>";
505 505
                 break;
506 506
             case \core\Options::TYPECODE_BOOLEAN:
507 507
                 $displayedVariant = ($optionValue == "on" ? _("on") : _("off"));
508
-                $retval .= "<strong>$displayedVariant</strong><input type='hidden' name='value[S$rowid-" . $listtype['type'] . "]' id='S" . $rowid . "-input-" . $listtype["type"] . "' value=\"" . htmlspecialchars($optionValue) . "\" style='display:block'>";
508
+                $retval .= "<strong>$displayedVariant</strong><input type='hidden' name='value[S$rowid-".$listtype['type']."]' id='S".$rowid."-input-".$listtype["type"]."' value=\"".htmlspecialchars($optionValue)."\" style='display:block'>";
509 509
                 break;
510 510
             default:
511 511
                 // this should never happen!
@@ -551,10 +551,10 @@  discard block
 block discarded – undo
551 551
        <td>
552 552
           <button type='button' class='delete' onclick='";
553 553
         if ($prefillValue !== NULL && $item == "general:geo_coordinates") {
554
-            $funcname = "Map" . \config\ConfAssistant::MAPPROVIDER['PROVIDER'] . 'DeleteCoord';
555
-            $retval .= 'if (typeof ' . $funcname . ' === "function") { ' . $funcname . '(' . $this->allLocationCount . '); } ';
554
+            $funcname = "Map".\config\ConfAssistant::MAPPROVIDER['PROVIDER'].'DeleteCoord';
555
+            $retval .= 'if (typeof '.$funcname.' === "function") { '.$funcname.'('.$this->allLocationCount.'); } ';
556 556
         }
557
-        $retval .= 'deleteOption("option-S' . $rowid . '")';
557
+        $retval .= 'deleteOption("option-S'.$rowid.'")';
558 558
         $retval .= "'>-</button>
559 559
        </td>
560 560
     </tr>";
Please login to merge, or discard this patch.
devices/Devices-template.php 1 patch
Spacing   +11 added lines, -11 removed lines patch added patch discarded remove patch
@@ -437,7 +437,7 @@  discard block
 block discarded – undo
437 437
                     ],
438 438
                     '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 these sites: %s and will use the configuration file downloaded from CAT to create all necessary settings."),
439 439
                             "geteduroam",
440
-                            "<a target='_blank' href='https://play.google.com/store/apps/details?id=app.eduroam.geteduroam'>Google Play</a>, <a target='_blank' href='geteduroam-stable.apk'>" . _("as local download") . "</a>"),
440
+                            "<a target='_blank' href='https://play.google.com/store/apps/details?id=app.eduroam.geteduroam'>Google Play</a>, <a target='_blank' href='geteduroam-stable.apk'>"._("as local download")."</a>"),
441 441
  
442 442
                     'geteduroam_text' =>  sprintf(_("Use our app, it will guide you through the setup process:%s"
443 443
                             ."(or download it manually %s.)<p>"
@@ -465,7 +465,7 @@  discard block
 block discarded – undo
465 465
                     'mime' => 'application/eap-config',
466 466
                     '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 these sites: %s and will use the configuration file downloaded from CAT to create all necessary settings."),
467 467
                             "geteduroam",
468
-                            "<a target='_blank' href='https://play.google.com/store/apps/details?id=app.eduroam.geteduroam'>Google Play</a>, <a target='_blank' href='geteduroam-stable.apk'>" . _("as local download") . "</a>"),
468
+                            "<a target='_blank' href='https://play.google.com/store/apps/details?id=app.eduroam.geteduroam'>Google Play</a>, <a target='_blank' href='geteduroam-stable.apk'>"._("as local download")."</a>"),
469 469
                 ],
470 470
             ],              
471 471
 
@@ -482,7 +482,7 @@  discard block
 block discarded – undo
482 482
                     ],
483 483
                     '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 these sites: %s and will use the configuration file downloaded from CAT to create all necessary settings."),
484 484
                             "eduroamCAT",
485
-                            "<a target='_blank' href='https://play.google.com/store/apps/details?id=uk.ac.swansea.eduroamcat'>Google Play</a>, <a target='_blank' href='https://www.amazon.com/dp/B01EACCX0S/'>Amazon Appstore</a>, <a target='_blank' href='eduroamCAT-stable.apk'>" . _("as local download") . "</a>"),
485
+                            "<a target='_blank' href='https://play.google.com/store/apps/details?id=uk.ac.swansea.eduroamcat'>Google Play</a>, <a target='_blank' href='https://www.amazon.com/dp/B01EACCX0S/'>Amazon Appstore</a>, <a target='_blank' href='eduroamCAT-stable.apk'>"._("as local download")."</a>"),
486 486
                     'geteduroam_text' => sprintf(_("Use our app, it will guide you through the setup process:%s"
487 487
                             ."(or download it manually %s.)<p>"
488 488
                         . "After installation, open the app, select your home institution and the app will collect required information "
@@ -509,7 +509,7 @@  discard block
 block discarded – undo
509 509
                     'mime' => 'application/eap-config',
510 510
                     '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 these sites: %s and will use the configuration file downloaded from CAT to create all necessary settings."),
511 511
                             "eduroamCAT",
512
-                            "<a target='_blank' href='https://play.google.com/store/apps/details?id=uk.ac.swansea.eduroamcat'>Google Play</a>, <a target='_blank' href='https://www.amazon.com/dp/B01EACCX0S/'>Amazon Appstore</a>, <a target='_blank' href='eduroamCAT-stable.apk'>" . _("as local download") . "</a>"),
512
+                            "<a target='_blank' href='https://play.google.com/store/apps/details?id=uk.ac.swansea.eduroamcat'>Google Play</a>, <a target='_blank' href='https://www.amazon.com/dp/B01EACCX0S/'>Amazon Appstore</a>, <a target='_blank' href='eduroamCAT-stable.apk'>"._("as local download")."</a>"),
513 513
                 ],
514 514
             ],
515 515
             'android_pie' => [
@@ -523,7 +523,7 @@  discard block
 block discarded – undo
523 523
                     'mime' => 'application/eap-config',
524 524
                     '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 these sites: %s and will use the configuration file downloaded from CAT to create all necessary settings."),
525 525
                             "eduroamCAT",
526
-                            "<a target='_blank' href='https://play.google.com/store/apps/details?id=uk.ac.swansea.eduroamcat'>Google Play</a>, <a target='_blank' href='https://www.amazon.com/dp/B01EACCX0S/'>Amazon Appstore</a>, <a target='_blank' href='eduroamCAT-stable.apk'>" . _("as local download") . "</a>"),
526
+                            "<a target='_blank' href='https://play.google.com/store/apps/details?id=uk.ac.swansea.eduroamcat'>Google Play</a>, <a target='_blank' href='https://www.amazon.com/dp/B01EACCX0S/'>Amazon Appstore</a>, <a target='_blank' href='eduroamCAT-stable.apk'>"._("as local download")."</a>"),
527 527
                 ],
528 528
             ],
529 529
             'android_oreo' => [
@@ -537,7 +537,7 @@  discard block
 block discarded – undo
537 537
                     'mime' => 'application/eap-config',
538 538
                     '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 these sites: %s and will use the configuration file downloaded from CAT to create all necessary settings."),
539 539
                             "eduroamCAT",
540
-                            "<a target='_blank' href='https://play.google.com/store/apps/details?id=uk.ac.swansea.eduroamcat'>Google Play</a>, <a target='_blank' href='https://www.amazon.com/dp/B01EACCX0S/'>Amazon Appstore</a>, <a target='_blank' href='eduroamCAT-stable.apk'>" . _("as local download") . "</a>"),
540
+                            "<a target='_blank' href='https://play.google.com/store/apps/details?id=uk.ac.swansea.eduroamcat'>Google Play</a>, <a target='_blank' href='https://www.amazon.com/dp/B01EACCX0S/'>Amazon Appstore</a>, <a target='_blank' href='eduroamCAT-stable.apk'>"._("as local download")."</a>"),
541 541
                 ],
542 542
             ],
543 543
             'android_nougat' => [
@@ -551,7 +551,7 @@  discard block
 block discarded – undo
551 551
                     'mime' => 'application/eap-config',
552 552
                     '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 these sites: %s and will use the configuration file downloaded from CAT to create all necessary settings."),
553 553
                             "eduroamCAT",
554
-                            "<a target='_blank' href='https://play.google.com/store/apps/details?id=uk.ac.swansea.eduroamcat'>Google Play</a>, <a target='_blank' href='https://www.amazon.com/dp/B01EACCX0S/'>Amazon Appstore</a>, <a target='_blank' href='eduroamCAT-stable.apk'>" . _("as local download") . "</a>"),
554
+                            "<a target='_blank' href='https://play.google.com/store/apps/details?id=uk.ac.swansea.eduroamcat'>Google Play</a>, <a target='_blank' href='https://www.amazon.com/dp/B01EACCX0S/'>Amazon Appstore</a>, <a target='_blank' href='eduroamCAT-stable.apk'>"._("as local download")."</a>"),
555 555
                 ],
556 556
             ],
557 557
             'android_marshmallow' => [
@@ -565,7 +565,7 @@  discard block
 block discarded – undo
565 565
                     'mime' => 'application/eap-config',
566 566
                     '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 these sites: %s and will use the configuration file downloaded from CAT to create all necessary settings."),
567 567
                             "eduroamCAT",
568
-                            "<a target='_blank' href='https://play.google.com/store/apps/details?id=uk.ac.swansea.eduroamcat'>Google Play</a>, <a target='_blank' href='https://www.amazon.com/dp/B01EACCX0S/'>Amazon Appstore</a>, <a target='_blank' href='eduroamCAT-stable.apk'>" . _("as local download") . "</a>"),
568
+                            "<a target='_blank' href='https://play.google.com/store/apps/details?id=uk.ac.swansea.eduroamcat'>Google Play</a>, <a target='_blank' href='https://www.amazon.com/dp/B01EACCX0S/'>Amazon Appstore</a>, <a target='_blank' href='eduroamCAT-stable.apk'>"._("as local download")."</a>"),
569 569
                 ],
570 570
             ],
571 571
             'android_lollipop' => [
@@ -579,7 +579,7 @@  discard block
 block discarded – undo
579 579
                     'mime' => 'application/eap-config',
580 580
                     '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 these sites: %s and will use the configuration file downloaded from CAT to create all necessary settings."),
581 581
                             "eduroamCAT",
582
-                            "<a target='_blank' href='https://play.google.com/store/apps/details?id=uk.ac.swansea.eduroamcat'>Google Play</a>, <a target='_blank' href='https://www.amazon.com/dp/B01EACCX0S/'>Amazon Appstore</a>, <a target='_blank' href='eduroamCAT-stable.apk'>" . _("as local download") . "</a>"),
582
+                            "<a target='_blank' href='https://play.google.com/store/apps/details?id=uk.ac.swansea.eduroamcat'>Google Play</a>, <a target='_blank' href='https://www.amazon.com/dp/B01EACCX0S/'>Amazon Appstore</a>, <a target='_blank' href='eduroamCAT-stable.apk'>"._("as local download")."</a>"),
583 583
                 ],
584 584
             ],
585 585
             'android_kitkat' => [
@@ -593,7 +593,7 @@  discard block
 block discarded – undo
593 593
                     'mime' => 'application/eap-config',
594 594
                     '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 these sites: %s and will use the configuration file downloaded from CAT to create all necessary settings."),
595 595
                             "eduroamCAT",
596
-                            "<a target='_blank' href='https://play.google.com/store/apps/details?id=uk.ac.swansea.eduroamcat'>Google Play</a>, <a target='_blank' href='https://www.amazon.com/dp/B01EACCX0S/'>Amazon Appstore</a>, <a target='_blank' href='eduroamCAT-stable.apk'>" . _("as local download") . "</a>"),
596
+                            "<a target='_blank' href='https://play.google.com/store/apps/details?id=uk.ac.swansea.eduroamcat'>Google Play</a>, <a target='_blank' href='https://www.amazon.com/dp/B01EACCX0S/'>Amazon Appstore</a>, <a target='_blank' href='eduroamCAT-stable.apk'>"._("as local download")."</a>"),
597 597
                 ],
598 598
             ],
599 599
             'android_43' => [
@@ -607,7 +607,7 @@  discard block
 block discarded – undo
607 607
                     'mime' => 'application/eap-config',
608 608
                     '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 these sites: %s and will use the configuration file downloaded from CAT to create all necessary settings."),
609 609
                             "eduroamCAT",
610
-                            "<a target='_blank' href='https://play.google.com/store/apps/details?id=uk.ac.swansea.eduroamcat'>Google Play</a>, <a target='_blank' href='https://www.amazon.com/dp/B01EACCX0S/'>Amazon Appstore</a>, <a target='_blank' href='eduroamCAT-stable.apk'>" . _("as local download") . "</a>"),
610
+                            "<a target='_blank' href='https://play.google.com/store/apps/details?id=uk.ac.swansea.eduroamcat'>Google Play</a>, <a target='_blank' href='https://www.amazon.com/dp/B01EACCX0S/'>Amazon Appstore</a>, <a target='_blank' href='eduroamCAT-stable.apk'>"._("as local download")."</a>"),
611 611
                 ],
612 612
             ],
613 613
 
Please login to merge, or discard this patch.