Class UsersController
In: app/controllers/users_controller.rb
Parent: ApplicationController

File users_controller.rb Project iboard4 Author Andreas Altendorfer Copyright 2009 by Andreas Altendorfer

UserController makes use of AuthLogic-Gem

Methods

create   destroy   edit   index   new   remove_avatar   show   update  

Public Instance methods

[Source]

    # File app/controllers/users_controller.rb, line 35
35:   def create
36:     params[:user][:password] = Randomizer::randstr(10)
37:     params[:user][:password_confirmation] = params[:user][:password]
38:     @user = User.new(params[:user])
39:     @user.is_admin = params[:user][:is_admin] if is_admin?
40:     @user.invitations_left = params[:user][:invitations_left] if is_admin?
41:     if @user.save
42:       flash[:notice] = t(:registration_successfull)
43:       UserSession.find.destroy
44:       @user.send_later(:deliver_new_account_instructions, t(:new_account_instructions_subject))
45:       if params[:token]
46:         @invitation = Invitation.find_by_token(params[:token])
47:         if @invitation
48:           @invitation.recipient_id = @user.id
49:           @invitation.save
50:         end
51:       end
52:       redirect_to root_url
53:     else
54:       render :action => 'new'
55:     end
56:   end

[Source]

     # File app/controllers/users_controller.rb, line 103
103:   def destroy
104:     if is_admin? && !params[:id].blank?
105:       @user = User.find(params[:id])
106:     else
107:       @user = current_user
108:     end
109:     @user.destroy
110:     redirect_to :action => :index
111:   end

[Source]

    # File app/controllers/users_controller.rb, line 58
58:   def edit
59:     if is_admin? && !params[:id].blank? && params[:id] != 'current'
60:       @user = User.find(params[:id])
61:     else
62:       @user = current_user
63:     end
64:   end

[Source]

    # File app/controllers/users_controller.rb, line 12
12:   def index
13:     @search = User.search(params[:search])
14:     @users = @search.paginate( :page => params[:page], :per_page => USERS_PER_PAGE )
15:   end

[Source]

    # File app/controllers/users_controller.rb, line 26
26:   def new
27:     @invitation = Invitation.find_by_token(params[:token])
28:     if @invitation
29:       @user = User.new(:email => @invitation.recipient_email)
30:     else
31:       flash[:error] = t(:no_invitation_token_found)
32:     end
33:   end

[Source]

     # File app/controllers/users_controller.rb, line 82
 82:   def remove_avatar
 83:     if is_admin? && !params[:id].blank?
 84:       @user = User.find(params[:id])
 85:     else
 86:       @user = current_user
 87:     end
 88:     
 89:     @user.avatar = nil
 90:     
 91:     if @user.save
 92:       flash[:notice] = t(:avatar_successfully_removed)
 93:       respond_to do |format|
 94:         format.html { redirect_to edit_user_path(@user) }
 95:         format.js
 96:       end
 97:     else
 98:       flash[:error] = t(:error_removing_avatar)
 99:       redirect_to edit_user_path(@user)
100:     end
101:   end

[Source]

    # File app/controllers/users_controller.rb, line 17
17:   def show
18:     if !params[:id].blank? && params[:id] != 'current'
19:       @user = User.find(params[:id])
20:     else
21:       @user = current_user
22:     end
23:     @mypostings = @user.postings.descend_by_updated_at.paginate(:page => params[:page], :per_page => POSTINGS_PER_PAGE)
24:   end

[Source]

    # File app/controllers/users_controller.rb, line 66
66:   def update
67:      if is_admin? && !params[:id].blank?
68:        @user = User.find(params[:id])
69:      else
70:        @user = current_user
71:      end    
72:      @user.is_admin = params[:user][:is_admin] if is_admin?
73:      @user.invitations_left = params[:user][:invitations_left] if is_admin?
74:      if @user.update_attributes(params[:user])
75:       flash[:notice] = t(:profile_successfully_updated)
76:       redirect_to root_url
77:     else
78:       render :action => 'edit'
79:     end
80:   end

[Validate]