57 lines
1.7 KiB
PHP
57 lines
1.7 KiB
PHP
<?php
|
|
|
|
class AdminController extends Controller
|
|
{
|
|
/**
|
|
* Construct this object by extending the basic Controller class
|
|
*/
|
|
public function __construct()
|
|
{
|
|
parent::__construct();
|
|
|
|
// special authentication check for the entire controller: Note the check-ADMIN-authentication!
|
|
// All methods inside this controller are only accessible for admins (= users that have role type 7)
|
|
Auth::checkAdminAuthentication();
|
|
}
|
|
|
|
/**
|
|
* This method controls what happens when you move to /admin or /admin/index in your app.
|
|
*/
|
|
public function index()
|
|
{
|
|
$this->View->render('admin/index', array(
|
|
'users' => UserModel::getPublicProfilesOfAllUsers())
|
|
);
|
|
}
|
|
|
|
public function actionAccountSettings()
|
|
{
|
|
AdminModel::setAccountSuspensionAndDeletionStatus(
|
|
Request::post('suspension'), Request::post('softDelete'), Request::post('user_id')
|
|
);
|
|
|
|
Redirect::to("admin");
|
|
}
|
|
|
|
public function registerUser()
|
|
{
|
|
// Ensure the user is logged in and is an admin
|
|
if (!LoginModel::isUserLoggedIn() || !LoginModel::isAdmin()) {
|
|
Session::add('feedback_negative', Text::get('FEEDBACK_ADMIN_ONLY'));
|
|
Redirect::to('admin/index');
|
|
return;
|
|
}
|
|
|
|
// Validate and register the new user
|
|
$registration_successful = RegistrationModel::registerNewUser(true);
|
|
|
|
if ($registration_successful) {
|
|
Session::add('feedback_positive', Text::get('FEEDBACK_USER_REGISTERED_SUCCESSFULLY'));
|
|
} else {
|
|
Session::add('feedback_negative', Text::get('FEEDBACK_USER_REGISTRATION_FAILED'));
|
|
}
|
|
|
|
Redirect::to('admin/index');
|
|
}
|
|
}
|