PluginProbe
VikBooking Hotel Booking Engine & PMS / trunk
VikBooking Hotel Booking Engine & PMS vtrunk
1.8.15 1.8.14 1.8.13 1.8.12 1.8.11 1.8.10 1.8.9 1.8.6 1.8.7 1.8.8 trunk 1.6.0 1.6.1 1.6.2 1.6.3 1.6.4 1.6.5 1.6.6 1.6.7 1.6.8 1.6.9 1.7.0 1.7.1 1.7.2 1.7.3 All 36 releases
vikbooking / libraries / adapter / input / classes / json.php

json.php in VikBooking Hotel Booking Engine & PMS trunk, at libraries/adapter/input/classes/json.php

71 lines 1.4 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * @package VikWP - Libraries
4 * @subpackage adapter.input
5 * @author E4J s.r.l.
6 * @copyright Copyright (C) 2023 E4J s.r.l. All Rights Reserved.
7 * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL
8 * @link https://vikwp.com
9 */
10
11 // No direct access
12 defined('ABSPATH') or die('No script kiddies please!');
13
14 JLoader::import('adapter.input.input');
15
16 /**
17 * Abstract Input handler to access JSON requests.
18 *
19 * @since 10.0
20 */
21 class JInputJSON extends JInput
22 {
23 /**
24 * The raw JSON string from the request.
25 *
26 * @var string
27 */
28 private $_raw;
29
30 /**
31 * Constructor.
32 *
33 * @param array $source Source data (Optional, default is the raw HTTP input decoded from JSON)
34 * @param array $options Array of configuration parameters (Optional)
35 */
36 public function __construct(?array $source = null, array $options = array())
37 {
38 if (isset($options['filter']))
39 {
40 $this->filter = $options['filter'];
41 }
42 else
43 {
44 $this->filter = new JInputFilter;
45 }
46
47 if (is_null($source))
48 {
49 $this->_raw = file_get_contents('php://input');
50 $this->data = json_decode($this->_raw, true);
51 }
52 else
53 {
54 $this->data = & $source;
55 }
56
57 // Set the options for the class.
58 $this->options = $options;
59 }
60
61 /**
62 * Gets the raw JSON string from the request.
63 *
64 * @return string The raw JSON string from the request.
65 */
66 public function getRaw()
67 {
68 return $this->_raw;
69 }
70 }
71