This commit is contained in:
jomo
2013-10-09 22:06:36 +02:00
parent 292e1ae4bb
commit d4fb20d8c6
7 changed files with 77 additions and 18 deletions

View File

@@ -50,7 +50,6 @@ class BlogpostsController < ApplicationController
redirect_to @post, notice: 'Post has been updated.'
else
flash[:alert] = "There was a problem while updating the post"
raise @post.errors
render action: "edit"
end
end

View File

@@ -12,7 +12,13 @@ class SessionsController < ApplicationController
unless current_user
user = User.find_by_email(params[:email])
if user && user.authenticate(params[:password])
user.last_ip = "#{request.remote_ip} | #{Resolv.getname(request.remote_ip)}"
hostname = ""
begin
hostname = Resolv.getname(request.remote_ip)
rescue
hostname = ""
end
user.last_ip = "#{request.remote_ip} | #{hostname}"
user.last_login = Time.now
user.save
if user.disabled?
@@ -27,7 +33,7 @@ class SessionsController < ApplicationController
end
else
flash[:alert] = "You're doing it wrong!"
redirect_to login_path
render action: 'new'
end
else
redirect_to current_user

View File

@@ -104,14 +104,14 @@ require 'open-uri'
def update
@user = User.find(params[:id])
if (mod? && current_user.role >= @user.role ) || (@user.is?(current_user) && confirmed?)
userdata = params[:user] ? params[:user].slice(:name, :ign, :role, :skype, :skype_public, :youtube, :twitter, :about, :password, :password_confirmation) : {}
if userdata[:role]
role = Role.find(userdata[:role])
userdata = params[:user] ? params[:user].slice(:name, :ign, :role_id, :skype, :skype_public, :youtube, :twitter, :about, :password, :password_confirmation) : {}
if userdata[:role_id]
role = Role.find(userdata[:role_id])
if (mod? && role <= current_user.role)
userdata[:role] = role
userdata[:role_id] = role.id
else
#reset role
userdata[:role] = @user.role
userdata[:role_id] = @user.role.id
end
end
unless userdata[:ign] && (mod? && current_user.role >= @user.role)
@@ -127,7 +127,6 @@ require 'open-uri'
if @user.update_attributes(userdata)
flash[:notice] = 'Profile updated.'
else
raise @user.errors.inspect
flash[:alert] = "There was a problem while updating the profile"
render action: "edit"
return