Class: AnonymousUser

Inherits:
User show all
Defined in:
app/models/user.rb

Constant Summary

Constants inherited from User

User::LABEL_BY_STATUS, User::LOGIN_LENGTH_LIMIT, User::MAIL_LENGTH_LIMIT, User::MAIL_NOTIFICATION_OPTIONS, User::USER_FORMATS

Constants inherited from Principal

Principal::STATUS_ACTIVE, Principal::STATUS_ANONYMOUS, Principal::STATUS_LOCKED, Principal::STATUS_REGISTERED

Instance Attribute Summary

Attributes inherited from User

#generate_password, #last_before_login_on, #password, #password_confirmation, #remote_ip

Instance Method Summary collapse

Methods inherited from User

#activate, #activate!, #active?, #allowed_to?, #allowed_to_globally?, #allowed_to_view_all_time_entries?, anonymous, #anonymous?, #api_key, #base_reload, #bookmarked_project_ids, #change_password_allowed?, #check_password?, #convert_time_to_user_timezone, #css_classes, current, current=, default_admin_account_changed?, #delete_autologin_token, #delete_session_token, fields_for_order_statement, find_by_api_key, find_by_login, find_by_mail, find_by_rss_key, find_or_initialize_by_identity_url, #force_default_language?, #generate_autologin_token, #generate_password?, generate_salt, #generate_session_token, hash_password, #identity_url=, #is_or_belongs_to?, #language, #lock, #lock!, #locked?, #mail_changed?, #mails, #managed_roles, #must_change_password?, name_formatter, #notified_project_ids=, #notified_projects_ids, #notify_about?, #notify_about_high_priority_issues?, #own_account_deletable?, #password_expired?, #project_ids_by_role, #projects_by_role, #random_password, #register, #register!, #registered?, #reload, #roles, #roles_for_project, #salt_password, salt_unsalted_passwords!, #set_mail_notification, #time_to_date, #to_s, #today, try_to_autologin, try_to_login, #update_hashed_password, #update_last_login_on!, #valid_notification_options, valid_notification_options, verify_session_token, #visible_project_ids, #wants_comments_in_reverse_order?

Methods included from Redmine::SafeAttributes

#delete_unsafe_attributes, included, #safe_attribute?, #safe_attribute_names, #safe_attributes=

Methods inherited from Principal

#<=>, detect_by_keyword, fields_for_order_statement, #nullify_projects_default_assigned_to, #project_ids, #reload, #visible?

Instance Method Details

#adminObject


988
# File 'app/models/user.rb', line 988

def admin; false end

#available_custom_fieldsObject


982
983
984
# File 'app/models/user.rb', line 982

def available_custom_fields
  []
end

#builtin_roleObject

Returns the user's bult-in role


1000
1001
1002
# File 'app/models/user.rb', line 1000

def builtin_role
  @builtin_role ||= Role.anonymous
end

#destroyObject

Anonymous user can not be destroyed


1013
1014
1015
# File 'app/models/user.rb', line 1013

def destroy
  false
end

#logged?Boolean

Overrides a few properties

Returns:

  • (Boolean)

987
# File 'app/models/user.rb', line 987

def logged?; false end

#mailObject


991
# File 'app/models/user.rb', line 991

def mail; nil end

#mail=(*args) ⇒ Object


990
# File 'app/models/user.rb', line 990

def mail=(*args); nil end

#member_of?(*args) ⇒ Boolean

Returns:

  • (Boolean)

1008
1009
1010
# File 'app/models/user.rb', line 1008

def member_of?(*args)
  false
end

#membership(*args) ⇒ Object


1004
1005
1006
# File 'app/models/user.rb', line 1004

def membership(*args)
  nil
end

#name(*args) ⇒ Object


989
# File 'app/models/user.rb', line 989

def name(*args); I18n.t(:label_user_anonymous) end

#prefObject


995
996
997
# File 'app/models/user.rb', line 995

def pref
  UserPreference.new(:user => self)
end

#rss_keyObject


993
# File 'app/models/user.rb', line 993

def rss_key; nil end

#time_zoneObject


992
# File 'app/models/user.rb', line 992

def time_zone; nil end

#validate_anonymous_uniquenessObject


977
978
979
980
# File 'app/models/user.rb', line 977

def validate_anonymous_uniqueness
  # There should be only one AnonymousUser in the database
  errors.add :base, 'An anonymous user already exists.' if AnonymousUser.unscoped.exists?
end