Commit | Line | Data |
---|---|---|
ed1268fb | 1 | <?php |
ff49a0be | 2 | namespace dns\api\page; |
ed1268fb | 3 | use dns\page\AbstractPage; |
ff49a0be | 4 | use dns\system\cache\builder\DNSApiCacheBuilder; |
ed1268fb S |
5 | use dns\system\DNS; |
6 | ||
7 | /** | |
8 | * @author Jan Altensen (Stricted) | |
9 | * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php> | |
10 | * @copyright 2014-2015 Jan Altensen (Stricted) | |
11 | */ | |
12 | class ServerPage extends AbstractPage { | |
13 | const AVAILABLE_DURING_OFFLINE_MODE = true; | |
14 | ||
15 | public function prepare() { | |
16 | // todo: user/server seletion | |
17 | $key = ""; | |
18 | if (isset($_REQUEST['key'])) { | |
19 | $key = strtoupper(trim($_REQUEST['key'])); | |
20 | } | |
21 | ||
22 | if (!defined('DNS_API_KEY') || $key != DNS_API_KEY || empty($key) || !preg_match('/[a-f0-9]{8}\-[a-f0-9]{4}\-4[a-f0-9]{3}\-[89ab][a-f0-9]{3}\-[a-f0-9]{12}/i', $key)) { | |
23 | header('Content-Type: application/json'); | |
24 | echo json_encode(array("error" => "wrong access key"), JSON_PRETTY_PRINT); | |
25 | exit; | |
26 | } | |
27 | else { | |
ff49a0be | 28 | $data = DNSApiCacheBuilder::getInstance()->getData(); |
ed1268fb S |
29 | |
30 | header('Content-Type: application/json'); | |
31 | echo json_encode($data, JSON_PRETTY_PRINT); | |
32 | exit; | |
33 | } | |
34 | } | |
35 | } |