Commit b9f0eff9 authored by Phil Hughes's avatar Phil Hughes

Merge branch 'update-ui-admin-appearance' into 'master'

Update UI of admin appearance settings

See merge request gitlab-org/gitlab-ce!24685
parents 70b92fb3 fd1f61c0
= form_for @appearance, url: admin_appearances_path do |f| = form_for @appearance, url: admin_appearances_path, html: { class: 'prepend-top-default' } do |f|
= form_errors(@appearance) = form_errors(@appearance)
%fieldset.app_logo
%legend
Navigation bar:
.form-group.row
= f.label :header_logo, 'Header logo', class: 'col-sm-2 col-form-label pt-0'
.col-sm-10
- if @appearance.header_logo?
= image_tag @appearance.header_logo_path, class: 'appearance-light-logo-preview'
- if @appearance.persisted?
%br
= link_to 'Remove header logo', header_logos_admin_appearances_path, data: { confirm: "Header logo will be removed. Are you sure?"}, method: :delete, class: "btn btn-inverted btn-remove btn-sm remove-logo"
%hr
= f.hidden_field :header_logo_cache
= f.file_field :header_logo, class: ""
.hint
Maximum file size is 1MB. Pages are optimized for a 28px tall header logo
%fieldset.app_logo .row
%legend .col-lg-4.profile-settings-sidebar
Favicon: %h4.prepend-top-0 Navigation bar
.form-group.row
= f.label :favicon, 'Favicon', class: 'col-sm-2 col-form-label pt-0' .col-lg-8
.col-sm-10 .form-group
- if @appearance.favicon? = f.label :header_logo, 'Header logo', class: 'col-form-label label-bold pt-0'
= image_tag @appearance.favicon_path, class: 'appearance-light-logo-preview' %p
- if @appearance.persisted? - if @appearance.header_logo?
%br = image_tag @appearance.header_logo_path, class: 'appearance-light-logo-preview'
= link_to 'Remove favicon', favicon_admin_appearances_path, data: { confirm: "Favicon will be removed. Are you sure?"}, method: :delete, class: "btn btn-inverted btn-remove btn-sm remove-logo" - if @appearance.persisted?
%hr %br
= f.hidden_field :favicon_cache = link_to 'Remove header logo', header_logos_admin_appearances_path, data: { confirm: "Header logo will be removed. Are you sure?"}, method: :delete, class: "btn btn-inverted btn-remove btn-sm remove-logo"
= f.file_field :favicon, class: '' %hr
.hint = f.hidden_field :header_logo_cache
Maximum file size is 1MB. Image size must be 32x32px. Allowed image formats are #{favicon_extension_whitelist}. = f.file_field :header_logo, class: ""
%br .hint
Images with incorrect dimensions are not resized automatically, and may result in unexpected behavior. Maximum file size is 1MB. Pages are optimized for a 28px tall header logo
%hr
.row
.col-lg-4.profile-settings-sidebar
%h4.prepend-top-0 Favicon
.col-lg-8
.form-group
= f.label :favicon, 'Favicon', class: 'col-form-label label-bold pt-0'
%p
- if @appearance.favicon?
= image_tag @appearance.favicon_path, class: 'appearance-light-logo-preview'
- if @appearance.persisted?
%br
= link_to 'Remove favicon', favicon_admin_appearances_path, data: { confirm: "Favicon will be removed. Are you sure?"}, method: :delete, class: "btn btn-inverted btn-remove btn-sm remove-logo"
%hr
= f.hidden_field :favicon_cache
= f.file_field :favicon, class: ''
.hint
Maximum file size is 1MB. Image size must be 32x32px. Allowed image formats are #{favicon_extension_whitelist}.
%br
Images with incorrect dimensions are not resized automatically, and may result in unexpected behavior.
%fieldset.sign-in
%legend
Sign in/Sign up pages:
.form-group.row
= f.label :title, class: 'col-sm-2 col-form-label'
.col-sm-10
= f.text_field :title, class: "form-control"
.form-group.row
= f.label :description, class: 'col-sm-2 col-form-label'
.col-sm-10
= f.text_area :description, class: "form-control", rows: 10
.hint
Description parsed with #{link_to "GitLab Flavored Markdown", help_page_path('user/markdown'), target: '_blank'}.
.form-group.row
= f.label :logo, class: 'col-sm-2 col-form-label pt-0'
.col-sm-10
- if @appearance.logo?
= image_tag @appearance.logo_path, class: 'appearance-logo-preview'
- if @appearance.persisted?
%br
= link_to 'Remove logo', logo_admin_appearances_path, data: { confirm: "Logo will be removed. Are you sure?"}, method: :delete, class: "btn btn-inverted btn-remove btn-sm remove-logo"
%hr
= f.hidden_field :logo_cache
= f.file_field :logo, class: ""
.hint
Maximum file size is 1MB. Pages are optimized for a 640x360 px logo.
%fieldset %hr
%legend .row
New project pages: .col-lg-4.profile-settings-sidebar
.form-group.row %h4.prepend-top-0 Sign in/Sign up pages
= f.label :new_project_guidelines, class: 'col-sm-2 col-form-label'
.col-sm-10
= f.text_area :new_project_guidelines, class: "form-control", rows: 10
.hint
Guidelines parsed with #{link_to "GitLab Flavored Markdown", help_page_path('user/markdown'), target: '_blank'}.
.form-actions .col-lg-8
= f.submit 'Save', class: 'btn btn-success append-right-10' .form-group
- if @appearance.persisted? = f.label :title, class: 'col-form-label label-bold'
Preview last save: = f.text_field :title, class: "form-control"
= link_to 'Sign-in page', preview_sign_in_admin_appearances_path, class: 'btn', target: '_blank', rel: 'noopener noreferrer' .form-group
= link_to 'New project page', new_project_path, class: 'btn', target: '_blank', rel: 'noopener noreferrer' = f.label :description, class: 'col-form-label label-bold'
= f.text_area :description, class: "form-control", rows: 10
.hint
Description parsed with #{link_to "GitLab Flavored Markdown", help_page_path('user/markdown'), target: '_blank'}.
.form-group
= f.label :logo, class: 'col-form-label label-bold pt-0'
%p
- if @appearance.logo?
= image_tag @appearance.logo_path, class: 'appearance-logo-preview'
- if @appearance.persisted?
%br
= link_to 'Remove logo', logo_admin_appearances_path, data: { confirm: "Logo will be removed. Are you sure?"}, method: :delete, class: "btn btn-inverted btn-remove btn-sm remove-logo"
%hr
= f.hidden_field :logo_cache
= f.file_field :logo, class: ""
.hint
Maximum file size is 1MB. Pages are optimized for a 640x360 px logo.
%hr
.row
.col-lg-4.profile-settings-sidebar
%h4.prepend-top-0 New project pages
.col-lg-8
.form-group
= f.label :new_project_guidelines, class: 'col-form-label label-bold'
%p
= f.text_area :new_project_guidelines, class: "form-control", rows: 10
.hint
Guidelines parsed with #{link_to "GitLab Flavored Markdown", help_page_path('user/markdown'), target: '_blank'}.
.prepend-top-default.append-bottom-default
= f.submit 'Update appearance settings', class: 'btn btn-success'
- if @appearance.persisted?
Preview last save:
= link_to 'Sign-in page', preview_sign_in_admin_appearances_path, class: 'btn', target: '_blank', rel: 'noopener noreferrer'
= link_to 'New project page', new_project_path, class: 'btn', target: '_blank', rel: 'noopener noreferrer'
- if @appearance.updated_at - if @appearance.updated_at
%span.float-right %span.float-right
Last edit #{time_ago_with_tooltip(@appearance.updated_at)} Last edit #{time_ago_with_tooltip(@appearance.updated_at)}
- page_title "Appearance" - page_title "Appearance"
- @content_class = "limit-container-width" unless fluid_layout
%h3.page-title
Appearance settings
%p.light
You can modify the look and feel of GitLab here
%hr
= render 'form' = render 'form'
---
title: Update UI for admin appearance settings
merge_request: 24685
author:
type: other
...@@ -10,10 +10,10 @@ describe 'Admin Appearance' do ...@@ -10,10 +10,10 @@ describe 'Admin Appearance' do
fill_in 'appearance_title', with: 'MyCompany' fill_in 'appearance_title', with: 'MyCompany'
fill_in 'appearance_description', with: 'dev server' fill_in 'appearance_description', with: 'dev server'
fill_in 'appearance_new_project_guidelines', with: 'Custom project guidelines' fill_in 'appearance_new_project_guidelines', with: 'Custom project guidelines'
click_button 'Save' click_button 'Update appearance settings'
expect(current_path).to eq admin_appearances_path expect(current_path).to eq admin_appearances_path
expect(page).to have_content 'Appearance settings' expect(page).to have_content 'Appearance'
expect(page).to have_field('appearance_title', with: 'MyCompany') expect(page).to have_field('appearance_title', with: 'MyCompany')
expect(page).to have_field('appearance_description', with: 'dev server') expect(page).to have_field('appearance_description', with: 'dev server')
...@@ -57,7 +57,7 @@ describe 'Admin Appearance' do ...@@ -57,7 +57,7 @@ describe 'Admin Appearance' do
visit admin_appearances_path visit admin_appearances_path
attach_file(:appearance_logo, logo_fixture) attach_file(:appearance_logo, logo_fixture)
click_button 'Save' click_button 'Update appearance settings'
expect(page).to have_css(logo_selector) expect(page).to have_css(logo_selector)
click_link 'Remove logo' click_link 'Remove logo'
...@@ -69,7 +69,7 @@ describe 'Admin Appearance' do ...@@ -69,7 +69,7 @@ describe 'Admin Appearance' do
visit admin_appearances_path visit admin_appearances_path
attach_file(:appearance_header_logo, logo_fixture) attach_file(:appearance_header_logo, logo_fixture)
click_button 'Save' click_button 'Update appearance settings'
expect(page).to have_css(header_logo_selector) expect(page).to have_css(header_logo_selector)
click_link 'Remove header logo' click_link 'Remove header logo'
...@@ -81,7 +81,7 @@ describe 'Admin Appearance' do ...@@ -81,7 +81,7 @@ describe 'Admin Appearance' do
visit admin_appearances_path visit admin_appearances_path
attach_file(:appearance_favicon, logo_fixture) attach_file(:appearance_favicon, logo_fixture)
click_button 'Save' click_button 'Update appearance settings'
expect(page).to have_css('.appearance-light-logo-preview') expect(page).to have_css('.appearance-light-logo-preview')
...@@ -91,7 +91,7 @@ describe 'Admin Appearance' do ...@@ -91,7 +91,7 @@ describe 'Admin Appearance' do
# allowed file types # allowed file types
attach_file(:appearance_favicon, Rails.root.join('spec', 'fixtures', 'sanitized.svg')) attach_file(:appearance_favicon, Rails.root.join('spec', 'fixtures', 'sanitized.svg'))
click_button 'Save' click_button 'Update appearance settings'
expect(page).to have_content 'Favicon You are not allowed to upload "svg" files, allowed types: png, ico' expect(page).to have_content 'Favicon You are not allowed to upload "svg" files, allowed types: png, ico'
end end
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment