Redirect to previous page after login

Closes #24
This commit is contained in:
ricola 2026-01-09 17:19:18 -06:00
parent d55dc53ade
commit 35f8c3f392
3 changed files with 9 additions and 2 deletions

View file

@ -134,7 +134,11 @@ post '/login' do
session.clear
session[:user_id] = user.id
session[:timezone] = params[:timezone]
if params[:r]
redirect params[:r]
else
redirect '/'
end
else
@error = _("Incorrect email or password.")
erb :login
@ -598,10 +602,11 @@ helpers do
end
def require_login
redirect '/login' unless current_user
redirect "/login?r=#{request.path}" unless current_user
end
def require_admin
require_login
redirect '/' unless is_admin
end

View file

@ -14,6 +14,7 @@
<input type="password" name="password" class="form-control">
</div>
<button type="submit" class="btn btn-primary"><%= _("Login") %></button>
<input type="hidden" name="r" value="<%= @params[:r] %>">
<input type="hidden" name="timezone" value="UTC">
</form>
<p><a href="/signup"><%= _("Create account") %></a></p>

View file

@ -14,6 +14,7 @@
<input type="password" name="password" class="form-control">
</div>
<button type="submit" class="btn btn-primary"><%= _("Login") %></button>
<input type="hidden" name="r" value="votes/<%= @vote.secure_id %>">
<input type="hidden" name="timezone" value="UTC">
</form>