Чтобы ограничить количество зарегистрированных пользователей для всего контроллера, используйте что-то вроде:
function __construct(){
if(!is_logged_in){
redirect('user/login');
}
}
Или сделайте то же самое, если вам нужно ограничить определенный метод:
function restricted_function(){
if(!is_logged_in){
redirect('user/login');
}
}
Для этого необходимо, чтобы перед вызовом контроллера была установлена переменная is_logged_in.
Я использую MY_controller, который проверяет вошедший в систему сеанс, который наследуют все контроллеры.