layout 'site'
before_filter :authorize, :only => [:preferences, :api_details, :api_gpx_files]
- before_filter :authorize_web, :only => [:edit, :account, :go_public, :view, :diary, :make_friend]
- before_filter :require_user, :only => [:edit, :set_home, :account, :go_public, :make_friend]
+ before_filter :authorize_web, :only => [:account, :go_public, :view, :diary, :make_friend]
+ before_filter :require_user, :only => [:set_home, :account, :go_public, :make_friend]
def save
@user = User.new(params[:user])
end
end
- def edit
+ def account
if params[:user] and params[:user][:display_name] and params[:user][:description]
home_lat = params[:user][:home_lat]
home_lon = params[:user][:home_lon]
@user.display_name = params[:user][:display_name]
+ if params[:user][:pass_crypt].length > 0 or params[:user][:pass_crypt_confirmation].length > 0
+ @user.pass_crypt = params[:user][:pass_crypt]
+ @user.pass_crypt_confirmation = params[:user][:pass_crypt_confirmation]
+ end
@user.description = params[:user][:description]
@user.home_lat = home_lat.to_f
@user.home_lon = home_lon.to_f
if @user.save
flash[:notice] = "User information updated successfully."
- redirect_to :controller => 'user', :action => 'account'
+ else
+ flash.delete(:notice)
end
end
end
u.timeout = 1.day.from_now
u.save
session[:token] = u.token
- if params[:next_controller] and params[:next_action]
- redirect_to :controller => params[:next_controller], :action => params[:next_action]
+ if params[:referer]
+ redirect_to params[:referer]
else
redirect_to :controller => 'site', :action => 'index'
end
end
end
session[:token] = nil
- if params[:next_controller] and params[:next_action]
- redirect_to :controller => params[:next_controller], :action => params[:next_action]
+ if params[:referer]
+ redirect_to params[:referer]
else
redirect_to :controller => 'site', :action => 'index'
end
@user = User.find_by_token(params[:confirm_string])
if @user && @user.active == 0
@user.active = true
+ @user.token = User.make_token
+ @user.timeout = 1.day.from_now
@user.save
flash[:notice] = 'Confirmed your account, thanks for signing up!'
-
- #FIXME: login the person magically
-
- redirect_to :action => 'login'
+ session[:token] = @user.token
+ redirect_to :action => 'account', :display_name => @user.display_name
else
flash[:notice] = 'Something went wrong confirming that user.'
end