Subversion Repositories oidplus

Rev

Rev 1200 | Blame | Compare with Previous | Last modification | View Log | RSS feed

  1. <?php
  2.  
  3. /*
  4.  * OIDplus 2.0 RDAP
  5.  * Copyright 2019 - 2023 Daniel Marschall, ViaThinkSoft
  6.  * Authors               Daniel Marschall, ViaThinkSoft
  7.  *                       Till Wehowski, Frdlweb
  8.  *
  9.  * Licensed under the Apache License, Version 2.0 (the "License");
  10.  * you may not use this file except in compliance with the License.
  11.  * You may obtain a copy of the License at
  12.  *
  13.  *     http://www.apache.org/licenses/LICENSE-2.0
  14.  *
  15.  * Unless required by applicable law or agreed to in writing, software
  16.  * distributed under the License is distributed on an "AS IS" BASIS,
  17.  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  18.  * See the License for the specific language governing permissions and
  19.  * limitations under the License.
  20.  */
  21.  
  22. use ViaThinkSoft\OIDplus\OIDplus;
  23. use ViaThinkSoft\OIDplus\OIDplusGui;
  24. use ViaThinkSoft\OIDplus\OIDplusException;
  25. use Frdlweb\OIDplus\OIDplusRDAP;
  26.  
  27. require_once __DIR__ . '/../../../../../includes/oidplus.inc.php';
  28.  
  29. set_exception_handler(array(OIDplusGui::class, 'html_exception_handler'));
  30.  
  31. OIDplus::init(true);
  32.  
  33. if (OIDplus::baseConfig()->getValue('DISABLE_PLUGIN_Frdlweb\OIDplus\OIDplusPagePublicRdap', false)) {
  34.         throw new OIDplusException(_L('This plugin was disabled by the system administrator!'));
  35. }
  36.  
  37. originHeaders();
  38.  
  39. if (\PHP_SAPI == 'cli') {
  40.         if ($_SERVER['argc'] != 2) {
  41.                 echo _L('Syntax').': '.$_SERVER['argv'][0].' <query>'."\n";
  42.                 exit(2);
  43.         }
  44.         $query = $_SERVER['argv'][1];
  45. } else {
  46.         if (!isset($_REQUEST['query'])) {
  47.                 http_response_code(400);
  48.                 die('<h1>'._L('Error').'</h1><p>'._L('Argument "%1" is missing','query').'<p>');
  49.         }
  50.         $query = $_REQUEST['query'];
  51. }
  52.  
  53. $x = new OIDplusRDAP();
  54. list($out_content, $out_type) = $x->rdapQuery($query);
  55.  
  56. OIDplus::invoke_shutdown();
  57.  
  58. if ($out_type) header('Content-Type:'.$out_type);
  59. echo $out_content;
  60.