ILIAS  trunk Revision v13.0_alpha-52-g21c366bbdd4
dummy_client.php
Go to the documentation of this file.
1<?php
2
19declare(strict_types=1);
20
21exit();
22
23require_once __DIR__ . '/../../../../vendor/composer/vendor/autoload.php';
24
27
28$default_server = (static function (): string {
29 $https = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off');
30 $scheme = $https ? 'https' : 'http';
31 $host = $_SERVER['HTTP_HOST'] ?? 'localhost';
32 $script_dir = dirname($_SERVER['SCRIPT_NAME'] ?? '/auth/soap/example/dummy_client.php');
33
34 return $scheme . '://' . $host . rtrim($script_dir, '/') . '/dummy_server.php';
35})();
36
38$ext_uid = $_GET['ext_uid'] ?? 'testuser';
39$soap_pw = $_GET['soap_pw'] ?? 'testpw';
40$new_user_raw = $_GET['new_user'] ?? '';
41$new_user = $new_user_raw === '1' || $new_user_raw === 'true';
42
43echo '<form>' .
44 'server <input size="80" type="text" name="server" value="' . htmlspecialchars($server, ENT_QUOTES) . '"/>' .
45 '<br />ext_uid <input size="50" type="text" name="ext_uid" value="' . htmlspecialchars($ext_uid, ENT_QUOTES) . '"/>' .
46 '<br />soap_pw <input size="50" type="text" name="soap_pw" value="' . htmlspecialchars($soap_pw, ENT_QUOTES) . '"/>' .
47 '<br />new_user <input size="50" type="text" name="new_user" value="' . htmlspecialchars($new_user_raw, ENT_QUOTES) . '"/> (1 for true, 0 for false)' .
48 '<br /><input type="submit" /><br />' .
49 '<b>The test server will return true/valid, if ext_uid == soap_pw.</b>' .
50 '</form>';
51
52echo '<br /><br />----------------------------------------------<br /><br /> Calling Server...';
53
55 $server,
56 'http://testuri.org',
57 true
58);
59
60try {
61 $result = $client->validateSession($ext_uid, $soap_pw, $new_user);
62 show_result($result, 'isValidSession');
63} catch (SoapFault $fault) {
64 echo '<h2>SOAP Fault</h2><pre>' . htmlspecialchars($fault->getMessage(), ENT_QUOTES) . '</pre>';
65}
66
67echo '<br />End Test';
68
69function show_result(SessionValidationResult $result, string $message): void
70{
71 echo '<h2>Result ' . htmlspecialchars($message, ENT_QUOTES) . '</h2><pre>';
72 print_r($result->validation ?: 'FAILED');
73 echo '</pre>';
74
75 if ($result->request !== '' || $result->response !== '') {
76 echo '<h3>Request</h3><pre>' . htmlspecialchars(
77 str_replace('" ', "\"\n ", str_replace('>', ">\n", $result->request)),
78 ENT_QUOTES
79 ) . '</pre>';
80 echo '<h3>Response</h3><pre>' . htmlspecialchars(
81 str_replace('" ', "\"\n ", str_replace('>', ">\n", $result->response)),
82 ENT_QUOTES
83 ) . '</pre>';
84 }
85}
@phpstan-type ValidationArray array{valid: bool, firstname?: string, lastname?: string,...
show_result(SessionValidationResult $result, string $message)
$soap_pw
$ext_uid
$new_user
$new_user_raw
$server
$client
$default_server
$_GET['cmd']
Endpoint a platform launches ILIAS objects at, with any LTI version: the launch logs the user in thro...
Definition: lti.php:29
exit
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...