Rev 82 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 82 | Rev 83 | ||
---|---|---|---|
Line 19... | Line 19... | ||
19 | */ |
19 | */ |
20 | 20 | ||
21 | $uuid = isset($_GET['uuid']) ? trim($_GET['uuid']) : 'CREATE'; |
21 | $uuid = isset($_GET['uuid']) ? trim($_GET['uuid']) : 'CREATE'; |
22 | 22 | ||
23 | $version = $_REQUEST['version'] ?? null; |
23 | $version = $_REQUEST['version'] ?? null; |
24 | $hash_sqlserver_version = null; |
24 | $v8_sqlserver_version = null; |
25 | $hash_algo = null; |
25 | $v8_hash_algo = null; |
26 | if (!is_null($version)) { |
26 | if (!is_null($version)) { |
27 | if (preg_match('@^(8)_sqlserver_v(.+)$@', $version, $m)) { |
27 | if (preg_match('@^(8)_sqlserver_v(.+)$@', $version, $m)) { |
28 | $version = $m[1]; |
28 | $version = $m[1]; |
29 | $hash_sqlserver_version = $m[2]; |
29 | $v8_sqlserver_version = $m[2]; |
30 | } else if (preg_match('@^(8)_namebased_(.+)$@', $version, $m)) { |
30 | } else if (preg_match('@^(8)_namebased_(.+)$@', $version, $m)) { |
31 | $version = $m[1]; |
31 | $version = $m[1]; |
32 | $hash_algo = $m[2]; |
32 | $v8_hash_algo = $m[2]; |
33 | } |
33 | } |
34 | } |
34 | } |
35 | if (!is_numeric($version) || (strlen($version)!=1)) $version = 1; // default: Version 1 / time based |
35 | if (!is_numeric($version) || (strlen($version)!=1)) $version = 1; // default: Version 1 / time based |
36 | 36 | ||
37 | if ($uuid == 'CREATE') { |
37 | if ($uuid == 'CREATE') { |
Line 59... | Line 59... | ||
59 | 59 | ||
60 | if ($uuid != 'CREATE') { |
60 | if ($uuid != 'CREATE') { |
61 | echo '<form method="GET" action="interprete_uuid.php">'; |
61 | echo '<form method="GET" action="interprete_uuid.php">'; |
62 | echo ' UUID: <input style="font-family:Courier,Courier New,Serif;width:325px" type="text" name="uuid" value="'.htmlentities($uuid).'"> <input type="submit" value="Interprete">'; |
62 | echo ' UUID: <input style="font-family:Courier,Courier New,Serif;width:325px" type="text" name="uuid" value="'.htmlentities($uuid).'"> <input type="submit" value="Interprete">'; |
63 | echo '</form>'; |
63 | echo '</form>'; |
64 | } else if (($version!=3) && ($version!=5) && ($version!=8)) { |
64 | } else if (($version!=3) && ($version!=5) && (($version!=8) || ($v8_sqlserver_version!=null))) { |
65 | echo '<p><i>Reload the page to receive another UUID.</i></p>'; |
65 | echo '<p><i>Reload the page to receive another UUID.</i></p>'; |
66 | } |
66 | } |
67 | 67 | ||
68 | echo '<pre>'; |
68 | echo '<pre>'; |
69 | 69 | ||
Line 84... | Line 84... | ||
84 | } else if ($version == '6') { |
84 | } else if ($version == '6') { |
85 | $uuid = gen_uuid_reordered(); |
85 | $uuid = gen_uuid_reordered(); |
86 | } else if ($version == '7') { |
86 | } else if ($version == '7') { |
87 | $uuid = gen_uuid_unix_epoch(); |
87 | $uuid = gen_uuid_unix_epoch(); |
88 | } else if ($version == '8') { |
88 | } else if ($version == '8') { |
89 | if ($hash_sqlserver_version != null) { |
89 | if ($v8_sqlserver_version != null) { |
90 | $uuid = gen_uuid_v8_sqlserver_sortable(intval($hash_sqlserver_version)); |
90 | $uuid = gen_uuid_v8_sqlserver_sortable(intval($v8_sqlserver_version)); |
91 | } else if ($hash_algo != null) { |
91 | } else if ($v8_hash_algo != null) { |
92 | $uuid = gen_uuid_v8_namebased($hash_algo, trim($_REQUEST['nb_ns']??''), trim($_REQUEST['nb_val']??'')); |
92 | $uuid = gen_uuid_v8_namebased($v8_hash_algo, trim($_REQUEST['nb_ns']??''), trim($_REQUEST['nb_val']??'')); |
93 | } else { |
93 | } else { |
94 | $uuid = gen_uuid_custom(trim($_REQUEST['block1']??'0'), trim($_REQUEST['block2']??'0'), trim($_REQUEST['block3']??'0'), trim($_REQUEST['block4']??'0'), trim($_REQUEST['block5']??'0')); |
94 | $uuid = gen_uuid_custom(trim($_REQUEST['block1']??'0'), trim($_REQUEST['block2']??'0'), trim($_REQUEST['block3']??'0'), trim($_REQUEST['block4']??'0'), trim($_REQUEST['block5']??'0')); |
95 | } |
95 | } |
96 | } else { |
96 | } else { |
97 | throw new Exception("Unexpected version number"); |
97 | throw new Exception("Unexpected version number"); |