-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.php
108 lines (84 loc) · 3.4 KB
/
index.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
<?php
$_GET['route'] = isset($_GET['route']) ? '/'.$_GET['route'] : '/';
// Check for composer installed
if (file_exists('vendor/autoload.php')){
include_once('vendor/autoload.php');
}else{
echo '{"error":"Composer Install"}';
header('HTTP/1.1 500 Internal Server Error', true, 500);
return False;
}
include("core/system/runtime.php");
$app = new Jolt\Jolt();
$app->option('source', 'config.ini');
if( $app->option('simperium.enabled') != false ){
$simperium = new Simperium\Simperium( $app->option('simperium.appid'), $app->option('simperium.token') );
// store our Simperium client in our session store...
$app->store('simperium',$simperium);
}
if( $app->option('pusher.enabled') != false ){
$pusher = new Pusher(
$app->option('pusher.key'),
$app->option('pusher.secret'),
$app->option('pusher.appid')
);
// store our Pusher client in our session store...
$app->store('pusher',$pusher);
}
if( $app->option('pdo.enabled') != false ){
ORM::configure( $app->option('pdo.connect') );
}
// Logout --------------------------------------------------------------------------------------------
$app->get('/logout', function() use ($app){
$app->store('user',0);
$app->redirect( $app->getBaseUri().'/login');
});
// Conditions --------------------------------------------------------------------------------------------
$app->condition('signed_in', function () use ($app) {
$app->redirect( $app->getBaseUri().'/login',!$app->store('user'));
});
// Login --------------------------------------------------------------------------------------------
$app->get('/login', function() use ($app){
$app->render( 'login', array(),'blank' );
});
$app->post('/login', function() use ($app){
$user = Model::factory('User')->where_equal('login', $_POST['user'])->find_one();
if( $user->pass == passhash($_POST['pass']) ){
$app->store("user",$user->id);
$app->redirect( $app->getBaseUri().'/dashboard');
}else{
$app->redirect( $app->getBaseUri().'/login');
}
});
// Register --------------------------------------------------------------------------------------------
$app->get('/signup', function() use ($app){
$app->render( 'register', array(),'blank' );
});
$app->post('/signup', 'signup#post' );
// Logged in area --------------------------------------------------------------------------------------------
$app->get('/dashboard', function() use ($app){
$app->condition('signed_in');
$me = Model::factory('User')->where_equal('id', $app->store('user'))->find_one();
$app->render( 'dashboard', array(
"pageTitle" => "My Dashboard",
"me" => $me,
),'inside' );
});
// User --------------------------------------------------------------------------------------------
$app->get('/user', 'userController#mylist');
$app->get('/user/edit/:user_id', 'userController#edit');
$app->post('/user/edit/:user_id', 'userController#save');
$app->get('/user/new', 'userController#addnew');
$app->post('/user/new', 'userController#savenew');
$app->get('/user/delete/:user_id', 'userController#delete');
// home page --------------------------------------------------------------------------------------------
$app->get('/', function() use ($app){
$app->render( 'home', array(),'layout' );
});
// 404 page --------------------------------------------------------------------------------------------
$app->get('.*',function() use ($app){
$app->error(404, $app->render('404', array(
"pageTitle"=>"404 Not Found",
),'layout'));
});
$app->listen();