Skip to content
Snippets Groups Projects
Commit 0d8a9f5e authored by pabois's avatar pabois
Browse files

switch devise laypout for extranet

parent 5f545f1f
No related branches found
No related tags found
No related merge requests found
Showing
with 83 additions and 7 deletions
......@@ -26,5 +26,10 @@ module ApplicationController::WithDomain
end
end
helper_method :current_context
def current_mode
current_extranet.present? ? 'extranet' : 'university'
end
helper_method :current_mode
end
end
module Users::LayoutChoice
extend ActiveSupport::Concern
included do
layout :extranet_or_default
end
private
def extranet_or_default
# extranet have their custom devise layout
# university osuny sessions have an "admin" layout for registration edit/update, else default devise layout.
case current_mode
when 'extranet'
'extranet/layouts/devise'
when 'university'
(controller_path == 'users/registrations' && ['edit', 'update'].include?(action_name)) ? 'admin/layouts/application' : 'devise'
end
end
end
class Users::ConfirmationsController < Devise::ConfirmationsController
include Users::AddUniversityToRequestParams
include Users::LayoutChoice
def resend
unless signed_in_resource.confirmed?
......
class Users::OmniauthCallbacksController < Devise::OmniauthCallbacksController
# include Users::AddBrandToRequestParams
# include Users::LayoutChoice
# include I18nHelper
protect_from_forgery except: :saml
before_action :redirect_unless_university_has_sso
skip_before_action :verify_authenticity_token, only: :saml
......
class Users::PasswordsController < Devise::PasswordsController
include Users::AddUniversityToRequestParams
include Users::LayoutChoice
def update
super do |resource|
......
class Users::RegistrationsController < Devise::RegistrationsController
include Users::AddUniversityToRequestParams
layout 'admin/layouts/application', only: [:edit, :update]
include Users::LayoutChoice
before_action :configure_sign_up_params, only: :create
before_action :configure_account_update_params, only: :update
......
class Users::SessionsController < Devise::SessionsController
include Users::AddUniversityToRequestParams
include Users::LayoutChoice
# DELETE /resource/sign_out
def destroy
current_user.invalidate_all_sessions!
super
end
end
class Users::TwoFactorAuthenticationController < Devise::TwoFactorAuthenticationController
include Users::LayoutChoice
end
class Users::UnlocksController < Devise::UnlocksController
include Users::AddUniversityToRequestParams
include Users::LayoutChoice
end
<% hide_logo ||= false %>
<footer class="pt-5">
<div class="container">
<div class="footer-logo pb-5 mb-5 text-center">
<%= render 'logo' %>
</div>
<% unless hide_logo %>
<div class="footer-logo pb-5 mb-5 text-center">
<%= render 'logo' %>
</div>
<% end %>
<div class="row justify-space-between">
<% if current_extranet.about.is_a?(Education::School) %>
<address class="col-md-6" itemscope itemtype="https://schema.org/CollegeOrUniversity">
......
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title><%= yield :title %></title>
<%= csrf_meta_tags %>
<%= csp_meta_tag %>
<%= stylesheet_link_tag 'admin', media: 'all' %>
<%= javascript_include_tag 'admin' %>
<%= favicon_link_tag 'favicon.png' %>
</head>
<body class="<%= body_classes %>">
<div class="container">
<div class="row">
<div class="col-sm-10 mx-auto">
<h1 class="my-5 py-5 text-center">
<%= link_to root_path do %>
<%= render 'logo' %>
<% end %>
</h1>
<div class="card">
<div class="card-body text-start">
<% unless notice.blank? %>
<div class="alert alert-success mt-2" role="alert"><%= notice.html_safe %></div>
<% end %>
<% unless alert.blank? %>
<div class="alert alert-danger mt-2" role="alert"><%= alert.html_safe %></div>
<% end %>
<%= yield %>
</div>
</div>
</div>
</div>
</div>
<%= render 'extranet/application/footer', hide_logo: true %>
<%= render 'gdpr/cookie_consent' %>
<%= render 'bugsnag' %>
</body>
</html>
......@@ -44,7 +44,7 @@ ActiveRecord::Schema.define(version: 2022_10_11_070402) do
t.text "metadata"
t.string "service_name", null: false
t.bigint "byte_size", null: false
t.string "checksum"
t.string "checksum", null: false
t.datetime "created_at", null: false
t.uuid "university_id"
t.index ["key"], name: "index_active_storage_blobs_on_key", unique: true
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment