diff options
| author | George Halkiadakis <gchalkiadakis@sklavenitis.co.gr> | 2023-05-27 13:06:44 +0300 |
|---|---|---|
| committer | George Halkiadakis <gchalkiadakis@sklavenitis.co.gr> | 2023-05-27 13:06:44 +0300 |
| commit | d1338cbb59d0752155f17d94b0b9b073df95183f (patch) | |
| tree | 75b7fe87a47ee6961dc38263582117bb920fa1d4 /public/app/routes/user.php | |
| parent | 38cc5c0c3abed6cfe4fbe0cbabec60a8ed64784d (diff) | |
| download | gyraf1gov-d1338cbb59d0752155f17d94b0b9b073df95183f.tar.gz gyraf1gov-d1338cbb59d0752155f17d94b0b9b073df95183f.tar.bz2 gyraf1gov-d1338cbb59d0752155f17d94b0b9b073df95183f.zip | |
content model; add petition to database
Diffstat (limited to 'public/app/routes/user.php')
| -rw-r--r-- | public/app/routes/user.php | 134 |
1 files changed, 94 insertions, 40 deletions
diff --git a/public/app/routes/user.php b/public/app/routes/user.php index 26483f4..12ca7d2 100644 --- a/public/app/routes/user.php +++ b/public/app/routes/user.php @@ -2,6 +2,7 @@ use app\controllers\Auth; use app\controllers\Classroom_user; +use app\controllers\Office; /** User Connection Management Routes @@ -25,28 +26,12 @@ Route::add('/logout', function() { header('Location: /'); die(); }); -// request activation (from invitation page; POST:form is sent) -Route::add('/account/activate', function() { Auth::activate(); }, 'post'); + // request password reset Route::add('/account/reset_password', function() { Auth::reset_password(); } ); -// invite some users -Route::add('/invite', function() { - Auth::allowRoles([1, 2, 3]); - Render::view('admin/invite'); -}); - -Route::add('/panel', function() { - Render::view('user/panel'); - // Render::json([ - // 'connected' => Auth::is_connected(), - // 'user' => Auth::user_data(), - // ]); -}); - - // Replies to common requests (POST method) // --- -- -- - - - @@ -58,36 +43,105 @@ Route::add('/account/check-login', function() { 'post' ); -// user sends a registration form -Route::add('/account/register', function() { - $response = Auth::register(); - Render::json($response); -},'post'); -// Account Management -// --- -- -- - - - +/* DEPRICATED: + // Account Management + //////////////////////////////////////////////////////////////////////////////// + + // user profile + Route::add('/account/profile', function() { + $user = Auth::is_connected(); + if ($user === false) { + Render::view('error/general', + [ + 'title' => 'Nope!', + 'message' => "<h2>No profile</h2>User is not connected" + ] + ); -// user profile -Route::add('/account/profile', function() { - $user = Auth::is_connected(); - if ($user === false) { - Render::view('error/general', - [ - 'title' => 'Nope!', - 'message' => "<h2>No profile</h2>User is not connected" - ] - ); - - } else { - Render::json(['success' => true, 'status' => 'user is connected']); + } else { + Render::json(['success' => true, 'status' => 'user is connected']); + } } - } -); + ); +--- */ + + +// routes for connected users +//////////////////////////////////////////////////////////////////////////////// + +if (Auth::is_connected()) { + + // serve content + // ------------------------------------------------------------------------- + + // control panel + // --- -- -- - - - + Route::add('/panel', function() { + Render::view('user/panel',[ + 'is_admin' => Auth::in_admin_group(), + 'content' => 'info', + 'user' => json_decode(json_encode( + Auth::user_data(), JSON_UNESCAPED_UNICODE + )) + ]); + }); + + // file of petitions + // --- -- -- - - - + Route::add('/user/petitions', function() { + Render::view('admin/invite'); + }); + + // request New petition form + // --- -- -- - - - + Route::add('/petition/([0-9a-z\-_]*)', function($tag) { + Office::request_petition($tag); + }); + + // request existing petition + // --- -- -- - - - + Route::add('/petition/signature/([0-9a-f]*)', function($signature) { + Office::filter_request_petition($signature); + }); + + + // CRUD content + // ------------------------------------------------------------------------- + + // add petition + // --- -- -- - - - + Route::add('/petition/new', function() { + Office::add_petition(); + }, 'post'); + + +} + + + +// routes for administrators +//////////////////////////////////////////////////////////////////////////////// + +if (Auth::in_admin_group()) { + + // administer petitions + // --- -- -- - - - + Route::add('/admin/petitions', function() { + Render::view('user/panel'); + }); + + // invite user(s) + // --- -- -- - - - + Route::add('/admin/invite', function() { + Render::view('admin/invite'); + }); +} // temporary (on development) -// --- -- -- - -- +//////////////////////////////////////////////////////////////////////////////// // NOTE: these is only for testing purposes // test connection |
