summaryrefslogtreecommitdiff
path: root/public/index.php
diff options
context:
space:
mode:
authorGeorge Halkiadakis <gchalkiadakis@sklavenitis.co.gr>2023-04-17 12:12:22 +0300
committerGeorge Halkiadakis <gchalkiadakis@sklavenitis.co.gr>2023-04-17 12:12:22 +0300
commit68fc9e55e538e03f94509731ab41a0c8cf96710f (patch)
tree3edb1e81864ac3eb35ba0fe8087ed24da1b812bf /public/index.php
parent84b2da85a1b452922dadb6a609533b9945afe51d (diff)
downloadclassroom-68fc9e55e538e03f94509731ab41a0c8cf96710f.tar.gz
classroom-68fc9e55e538e03f94509731ab41a0c8cf96710f.tar.bz2
classroom-68fc9e55e538e03f94509731ab41a0c8cf96710f.zip
setup a real server environment (apache DocumentRoot=/var/www/public)
Diffstat (limited to 'public/index.php')
-rw-r--r--public/index.php63
1 files changed, 63 insertions, 0 deletions
diff --git a/public/index.php b/public/index.php
new file mode 100644
index 0000000..92b825a
--- /dev/null
+++ b/public/index.php
@@ -0,0 +1,63 @@
+<?php
+/** anom
+ * ANOther MVC framefork ///////////////////////////////////////////////////////
+ * -----------------------------------------------------------------------------
+ * This is where the whole thing stats.
+ * Let's keep it simple and clear
+ *
+ * anom is an Object-Oriented MVC php-framework.
+ * It is super-light, fast and extensible.
+ * Contains almost anything you need to start
+ * and optimize a server-based web-application.
+ * And as long as you write code using secure practices,
+ * it will be secure.
+ *
+ * Copyleft: George Halkiadalos
+ * Licence: BSD
+ * \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
+ * -----------------------------------------------------------------------------
+ */
+// Load parametres:
+// contants and constant arrays
+// -----------------------------------------------------------------------------
+
+require_once '../core/config/constants.php'; // general constants
+
+require_once '../core/config/anom_settings.php'; // core framework constants
+
+require_once 'app/config/app_constants.php'; // application constants
+
+
+
+// Enable Autoloader
+// -----------------------------------------------------------------------------
+require_once AUTOLOADER;
+
+
+// Enable sessions
+// -----------------------------------------------------------------------------
+$session = new (SESSION_DRIVER)(); // Start a new session
+
+
+// prepare output control and benchmarking
+// -----------------------------------------------------------------------------
+ob_start(); // handle output
+if (!PRODUCTION) Benchmark::add_spot('start'); // benchmark request's life
+
+
+// Initialize Application
+// finalize framework; handle credentials; setup app-engine; insert routes
+// -----------------------------------------------------------------------------
+
+require_once INIT_APPLICATION;
+
+
+// Application is ready!
+// -----------------------------------------------------------------------------
+
+Route::run(Registry::get('REQUEST')); // Run baby, run!
+
+
+if (!PRODUCTION) Benchmark::add_spot('end'); // request ended
+if (!PRODUCTION) Benchmark::render_report(); // echo benchmark report
+ob_flush(); // flush output