4 * Check if everything is setup
6 header('HTTP/1.0 500 Internal Server Error');
8 if (file_exists(__DIR__ . '/../src/phancap/Autoloader.php')) {
9 include_once __DIR__ . '/../src/phancap/Autoloader.php';
10 Autoloader::register();
12 include_once 'phancap/Autoloader.php';
17 $config = new Config();
20 if ($config->disableSetup) {
21 header('HTTP/1.0 403 Forbidden');
22 header('Content-type: text/plain');
23 echo "Setup check is disabled.\n";
26 $messages[][] = array('ok', 'Base configuration is ok');
28 if ($config->access === true) {
29 $messages[][] = array('ok', 'Everyone may access the API');
30 } else if ($config->access === false) {
31 $messages[][] = array('err', 'API access is disabled');
33 $messages[][] = array(
35 count($config->access) . ' users may access the API'
39 foreach ($config->cfgFiles as $cfgFile) {
40 $messages[][] = array(
41 'info', 'Possible config file: ' . $cfgFile
44 if ($config->cfgFileExists) {
45 $messages[][] = array(
46 'ok', 'Configuration file loaded'
49 $messages[][] = array(
50 'info', 'No configuration file found'
53 } catch (\Exception $e) {
54 $messages[][] = array('err', $e->getMessage());
60 foreach ($adapter as $classpart) {
61 $class = '\\phancap\\Adapter_' . $classpart;
62 $adapter = new $class();
63 $adapter->setConfig($config);
64 $errors = $adapter->isAvailable();
65 if ($errors === true) {
66 $messages[][] = array(
67 'ok', 'Adapter ' . $classpart . ' is available'
70 foreach ($errors as $msg) {
71 $messages['Adapter: '. $classpart][] = array('err', $msg);
77 <?xml version="1.0" encoding="utf-8"?>
78 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
79 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
81 <title>phancap setup check</title>
82 <link rel="stylesheet" href="css/bootstrap.min.css"/>
83 <link rel="stylesheet" href="css/bootstrap-theme.min.css"/>
84 <link rel="stylesheet" href="css/phancap.css"/>
85 <meta name="viewport" content="width=device-width, initial-scale=1"/>
86 <style type="text/css">
90 display: inline-block;
102 background-color: red;
113 <div class="container">
115 <div class="col-md-2"></div>
116 <div class="col-md-8">
118 <div class="page-header">
119 <h1>phancap setup check</h1>
122 <ul class="list-group">
129 foreach ($messages as $key => $messages) {
130 if (!is_numeric($key)) {
131 $out .= '<li class="list-group-item">' . htmlspecialchars($key)
132 . '<ul class="list-group">';
134 foreach ($messages as $data) {
135 list($state, $message) = $data;
136 $out .= '<li class="list-group-item list-group-item-' . $stateMap[$state] . '">';
137 $out .= htmlspecialchars($message);
138 $out .= '</li>' . "\n";
140 if (!is_numeric($key)) {
141 $out .= '</ul></li>' . "\n";
147 <a href="./">back</a> to the index
156 header('HTTP/1.0 200 OK');