<%= form_tag rodauth.authorize_path, method: :post do %> <% if rodauth.oauth_application[rodauth.oauth_applications_logo_uri_column] %> <%= image_tag rodauth.oauth_application[rodauth.oauth_applications_logo_uri_column] %> <% end %> <% application_uri = rodauth.oauth_application[rodauth.oauth_applications_homepage_url_column] %> <% application_name = application_uri ? link_to(rodauth.oauth_application[rodauth.oauth_applications_name_column], application_uri) : rodauth.oauth_application[rodauth.oauth_applications_name_column] %>

<%= rodauth.authorize_page_lead(name: application_name) %>

<% if rodauth.oauth_application[rodauth.oauth_applications_tos_uri_column] %> <%= link_to rodauth.oauth_applications_tos_uri_label, rodauth.oauth_application[rodauth.oauth_applications_tos_uri_column], class: "list-group-item" %> <% end %> <% if rodauth.oauth_application[rodauth.oauth_applications_policy_uri_column] %> <%= link_to rodauth.oauth_applications_policy_uri_label, rodauth.oauth_application[rodauth.oauth_applications_policy_uri_column], class: "list-group-item" %> <% end %>
<% if rodauth.oauth_application[rodauth.oauth_applications_contacts_column] %>

<%= rodauth.oauth_applications_contacts_label %>

<% rodauth.oauth_application[rodauth.oauth_applications_contacts_column].split(/ +/).each do |contact| %>
<%= contact %>
<% end %>
<% end %>

<%= rodauth.oauth_grants_scopes_label %>

<% rodauth.authorize_scopes.each do |scope| %> <% if rodauth.features.include?(:oidc) && scope == "offline_access" %> <%= hidden_field_tag "scope[]", scope %> <% else %>
<%= check_box_tag "scope[]", scope, id: scope, class: "form-check-input" %> <%= label_tag scope, scope, class: "form-check-label" %>
<% end %> <% end %> <%= hidden_field_tag :client_id, rodauth.param_or_nil("client_id") %> <% %w[access_type response_type response_mode state redirect_uri].each do |oauth_param| %> <% if rodauth.param_or_nil(oauth_param) %> <%= hidden_field_tag oauth_param, rodauth.param_or_nil(oauth_param) %> <% end %> <% end %> <% if rodauth.features.include?(:oauth_resource_indicators) && rodauth.resource_indicators %> <% rodauth.resource_indicators.each do |resource| %> <%= hidden_field_tag "resource", resource %> <% end %> <% end %> <% if rodauth.features.include?(:oauth_pkce) %> <% if rodauth.param_or_nil("code_challenge") %> <%= hidden_field_tag :code_challenge, rodauth.param_or_nil("code_challenge") %> <% end %> <% if rodauth.param_or_nil("code_challenge_method") %> <%= hidden_field_tag :code_challenge_method, rodauth.param_or_nil("code_challenge_method") %> <% end %> <% end %> <% if rodauth.features.include?(:oidc) %> <% if rodauth.param_or_nil("prompt") %> <%= hidden_field_tag :prompt, rodauth.param_or_nil("prompt") %> <% end %> <% if rodauth.param_or_nil("nonce") %> <%= hidden_field_tag :nonce, rodauth.param_or_nil("nonce") %> <% end %> <% if rodauth.param_or_nil("ui_locales") %> <%= hidden_field_tag :ui_locales, rodauth.param_or_nil("ui_locales") %> <% end %> <% if rodauth.param_or_nil("claims_locales") %> <%= hidden_field_tag :claims_locales, rodauth.param_or_nil("claims_locales") %> <% end %> <% if rodauth.param_or_nil("claims") %> <%= hidden_field_tag :claims, sanitize(rodauth.param_or_nil("claims")) %> <% end %> <% if rodauth.param_or_nil("acr_values") %> <%= hidden_field_tag :acr_values, rodauth.param_or_nil("acr_values") %> <% end %> <% if rodauth.param_or_nil("registration") %> <%= hidden_field_tag :registration, rodauth.param_or_nil("registration") %> <% end %> <% end %>

<%= submit_tag rodauth.oauth_authorize_button, class: "btn btn-outline-primary" %> <%= link_to rodauth.oauth_cancel_button, "#{rodauth.redirect_uri}?error=access_denied&error_description=The+resource+owner+or+authorization+server+denied+the+request#{"&state=\#{CGI.escape(rodauth.state)}" if rodauth.param_or_nil("state") }", class: "btn btn-outline-danger" %>

<% end %>