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
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
|
<?php include __DIR__ . '/../vendor/autoload.php'; require_once("../config/config.php");
use Phroute\Phroute\RouteCollector; use Phroute\Phroute\Dispatcher; use \Firebase\JWT\JWT;
$collector = new RouteCollector();
$db = new MysqliDb ($db_config);
header("Access-Control-Allow-Origin: *"); header("Access-Control-Allow-Headers: *");
header('Access-Control-Allow-Methods: GET, PUT, POST, DELETE, OPTIONS'); header('Access-Control-Max-Age: 1000'); header('Access-Control-Allow-Headers: Content-Type, Authorization, X-Requested-With');
$collector->filter('auth', function() { $headers = getallheaders(); if(!isset($headers['Authorization'])) { header('X-PHP-Response-Code: 401', true, 401); return false; } $authHeader = explode(' ', $headers['Authorization']); if(count($authHeader) < 2) { header('X-PHP-Response-Code: 401', true, 401); return false; } try { $token = $authHeader[1]; $decoded = JWT::decode($token, $GLOBALS['private_key'], array('HS256')); if(!property_exists($decoded, 'userName')) { header('X-PHP-Response-Code: 401', true, 401); return false; } } catch(Exception $ex) { header('X-PHP-Response-Code: 401', true, 401); return false; } });
$collector->post($ROUTE_PREFIX . 'services/login', array('controller\Auth','login')); $collector->post($ROUTE_PREFIX . 'services/logout', array('controller\Auth','logout')); $collector->post($ROUTE_PREFIX . 'services/config', array('controller\Config','getConfig')); $collector->get($ROUTE_PREFIX . 'services/getSuggestedPeople_cache', array('controller\Coverflows','getSuggestedPeople_cache')); $collector->post($ROUTE_PREFIX . 'services/getSuggestedPeople_elastic', array('controller\Coverflows','getSuggestedPeople_elastic')); $collector->get($ROUTE_PREFIX . 'services/getMoviesFromMyNetwork_cache', array('controller\Coverflows','getMoviesFromMyNetwork_cache')); $collector->post($ROUTE_PREFIX . 'services/getMoviesFromMyNetwork_elastic', array('controller\Coverflows','getMoviesFromMyNetwork_elastic')); $collector->get($ROUTE_PREFIX . 'services/getMostNoteworthyToday_cache', array('controller\Coverflows','getMostNoteworthyToday_cache')); $collector->post($ROUTE_PREFIX . 'services/getMostNoteworthyToday_elastic', array('controller\Coverflows','getMostNoteworthyToday_elastic'));
$collector->get($ROUTE_PREFIX . 'services/getMovieDetails_elastic/{id}', array('controller\Pages','getMovieDetails_elastic'));
$collector->get($ROUTE_PREFIX . 'services/getCowatchDetails/{cowatchId}', array('controller\Cowatch','getCowatchDetails')); $collector->get($ROUTE_PREFIX . 'services/getCowatchDetailsCinema/{cowatchId}', array('controller\Cowatch','getCowatchDetailsCinema')); $collector->get($ROUTE_PREFIX . 'services/getCowatchDetails/', array('controller\Cowatch','getCowatchDetails')); $collector->post($ROUTE_PREFIX . 'services/cowatchSync/{cowatchId}', array('controller\Cowatch','getCowatchSync')); $collector->get($ROUTE_PREFIX . 'services/getCowatchUsers/{cowatchId}', array('controller\Cowatch','getCowatchUsers')); $collector->get($ROUTE_PREFIX . 'services/resetCowatch/{cowatchId}/{time}', array('controller\Cowatch','resetCowatch')); $collector->post($ROUTE_PREFIX . 'services/cowatch/live/{cowatchId}/participants', array('controller\Cowatch','searchCowatchUsers'));
$collector->get($ROUTE_PREFIX . 'services/uid/getCowatchDetails/{cowatchId}', array('controller\CowatchUid','getCowatchDetails')); $collector->get($ROUTE_PREFIX . 'services/uid/getCowatchDetailsCinema/{cowatchId}', array('controller\CowatchUid','getCowatchDetailsCinema')); $collector->get($ROUTE_PREFIX . 'services/uid/getCowatchDetails/', array('controller\CowatchUid','getCowatchDetails')); $collector->get($ROUTE_PREFIX . 'services/uid/cowatchSync/{cowatchId}', array('controller\CowatchUid','getCowatchSync')); $collector->post($ROUTE_PREFIX . 'services/uid/cowatchSync/{cowatchId}', array('controller\CowatchUid','postCowatchSync')); $collector->get($ROUTE_PREFIX . 'services/uid/getCowatchUsers/{cowatchId}', array('controller\CowatchUid','getCowatchUsers')); $collector->get($ROUTE_PREFIX . 'services/uid/resetCowatch/{cowatchId}/{time}', array('controller\CowatchUid','resetCowatch')); $collector->get($ROUTE_PREFIX . 'services/uid/avatar/{account_id}', array('controller\CowatchUid','avatar')); $collector->post($ROUTE_PREFIX . 'services/uid/cowatch/live/{cowatchId}/participants', array('controller\CowatchUid','searchCowatchUsers'));
//$collector->get($ROUTE_PREFIX . 'services/today', array('controller\Today','get'), array('before' => 'auth')); /* $collector->get($ROUTE_PREFIX . 'services/playlist/{id}', array('controller\Playlist','get'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/addPlaylistCategory', array('controller\Playlist','addCategory'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/deletePlaylistCategory', array('controller\Playlist','deleteCategory'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/updatePlaylistCategory', array('controller\Playlist','updateCategory'), array('before' => 'auth')); $collector->get($ROUTE_PREFIX . 'services/playlist/get/{id}', array('controller\Playlist','getPlaylist'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/addPlaylistItem', array('controller\Playlist','addPlaylistItem'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/deletePlaylistItem', array('controller\Playlist','deletePlaylistItem'), array('before' => 'auth')); $collector->get($ROUTE_PREFIX . 'services/playlist/getPlaylistItem/{id}', array('controller\Playlist','getPlaylistItem'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/updatePlaylistItem', array('controller\Playlist','updatePlaylistItem'), array('before' => 'auth'));
$collector->get($ROUTE_PREFIX . 'services/top20/{id}', array('controller\Top20','get'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/addTop20Category', array('controller\Top20','addCategory'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/deleteTop20Category', array('controller\Top20','deleteCategory'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/updateTop20Category', array('controller\Top20','updateCategory'), array('before' => 'auth')); $collector->get($ROUTE_PREFIX . 'services/top20/get/{id}', array('controller\Top20','getTop20Items'), array('before' => 'auth')); $collector->get($ROUTE_PREFIX . 'services/top20/getItem/{id}', array('controller\Top20','getItem'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/updateTop20Item', array('controller\Top20','updateTop20Item'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/deleteTop20Item', array('controller\Top20','deleteTop20Item'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/addTop20Item', array('controller\Top20','addTop20Item'), array('before' => 'auth'));
$collector->get($ROUTE_PREFIX . 'services/photoGallery', array('controller\PhotoGallery','get'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/updatePhotoCategory', array('controller\PhotoGallery','updatePhotoCategory'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/addPhotoCategory', array('controller\PhotoGallery','addPhotoCategory'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/deletePhotoCategory', array('controller\PhotoGallery','deletePhotoCategory'), array('before' => 'auth')); $collector->get($ROUTE_PREFIX . 'services/getGallery/{id}', array('controller\PhotoGallery','getGallery'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/deleteGalleryItem', array('controller\PhotoGallery','deleteGalleryItem'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/addGalleryItem', array('controller\PhotoGallery','addGalleryItem'), array('before' => 'auth'));
$collector->get($ROUTE_PREFIX . 'services/albums', array('controller\Albums','get'), array('before' => 'auth')); $collector->get($ROUTE_PREFIX . 'services/album/{id}', array('controller\Albums','getAlbum'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/updateAlbum', array('controller\Albums','updateAlbum'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/addAlbum', array('controller\Albums','addAlbum'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/deleteAlbum', array('controller\Albums','deleteAlbum'), array('before' => 'auth'));
$collector->get($ROUTE_PREFIX . 'services/news', array('controller\News','get'), array('before' => 'auth')); $collector->get($ROUTE_PREFIX . 'services/getNews/{id}', array('controller\News','getNews'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/updateNews', array('controller\News','updateNews'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/addNews', array('controller\News','addNews'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/deleteNews', array('controller\News','deleteNews'), array('before' => 'auth'));
$collector->get($ROUTE_PREFIX . 'services/banners', array('controller\Banners','get'), array('before' => 'auth')); $collector->get($ROUTE_PREFIX . 'services/getBanner/{id}', array('controller\Banners','getBanner'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/updateBanner', array('controller\Banners','updateBanner'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/addBanner', array('controller\Banners','addBanner'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/deleteBanner', array('controller\Banners','deleteBanner'), array('before' => 'auth'));
$collector->get($ROUTE_PREFIX . 'services/today', array('controller\Today','get'), array('before' => 'auth')); $collector->get($ROUTE_PREFIX . 'services/todaydetails/{id}', array('controller\Today','getDay'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/updateToday', array('controller\Today','updateToday'), array('before' => 'auth'));
$collector->post($ROUTE_PREFIX . 'services/uploadImage', array('controller\Files','uploadImage'), array('before' => 'auth'));
$collector->get($ROUTE_PREFIX . 'services/pages', array('controller\Pages','get'), array('before' => 'auth')); $collector->get($ROUTE_PREFIX . 'services/page/{id}', array('controller\Pages','getPage'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/updatePage', array('controller\Pages','updatePage'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/addPage', array('controller\Pages','addPage'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/deletePage', array('controller\Pages','deletePage'), array('before' => 'auth'));
$collector->get($ROUTE_PREFIX . 'services/headlines', array('controller\Headlines','get'), array('before' => 'auth')); $collector->get($ROUTE_PREFIX . 'services/headline/{id}', array('controller\Headlines','getHeadline'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/updateHeadline', array('controller\Headlines','updateHeadline'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/addHeadline', array('controller\Headlines','addHeadline'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/deleteHeadline', array('controller\Headlines','deleteHeadline'), array('before' => 'auth'));
$collector->get($ROUTE_PREFIX . 'services/histories', array('controller\History','get'), array('before' => 'auth')); $collector->get($ROUTE_PREFIX . 'services/history/{id}', array('controller\History','getHistory'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/updateHistory', array('controller\History','updateHistory'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/addHistory', array('controller\History','addHistory'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/deleteHistory', array('controller\History','deleteHistory'), array('before' => 'auth'));
$collector->get($ROUTE_PREFIX . 'services/rockinfos', array('controller\RockInfo','get'), array('before' => 'auth')); $collector->get($ROUTE_PREFIX . 'services/rockinfo/{id}', array('controller\RockInfo','getRockInfo'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/updateRockInfo', array('controller\RockInfo','updateRockInfo'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/addRockInfo', array('controller\RockInfo','addRockInfo'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/deleteRockInfo', array('controller\RockInfo','deleteRockInfo'), array('before' => 'auth'));
$collector->get($ROUTE_PREFIX . 'services/rockLegends', array('controller\RockLegends','get'), array('before' => 'auth')); $collector->get($ROUTE_PREFIX . 'services/rockLegend/{id}', array('controller\RockLegends','rockLegend'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/updateRockLegend', array('controller\RockLegends','updateRockLegend'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/addRockLegend', array('controller\RockLegends','addRockLegend'), array('before' => 'auth')); $collector->post($ROUTE_PREFIX . 'services/deleteRockLegend', array('controller\RockLegends','deleteRockLegend'), array('before' => 'auth'));
$collector->get($ROUTE_PREFIX . 'services/history', array('controller\History','get'), array('before' => 'auth')); $collector->get($ROUTE_PREFIX . 'services/photogalleries', array('controller\PhotoGalleries','get'), array('before' => 'auth')); */
$dispatcher = new Dispatcher($collector->getData()); try { $response = $dispatcher->dispatch($_SERVER['REQUEST_METHOD'], parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH)); print_r($response); } catch(Exception $ex) { $response = array('status'=> 0, 'message'=>'Error processing request ' . $ex->getMessage()); print_r(json_encode($response)); } ?>
|