about summary refs log tree commit diff
path: root/app/views/layouts/application.html.haml
blob: aa3c560cb2a62731838764256d463eb77ec98774 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
!!! 5
%html{ lang: I18n.locale }
  %head
    %meta{ charset: 'utf-8' }/
    %meta{ name: 'viewport', content: 'width=device-width, initial-scale=1' }/

    - if cdn_host?
      %link{ rel: 'dns-prefetch', href: cdn_host }/

    - if storage_host?
      %link{ rel: 'dns-prefetch', href: storage_host }/

    %link{ rel: 'icon', href: favicon_path, type: 'image/x-icon' }/
    %link{ rel: 'apple-touch-icon', sizes: '180x180', href: '/apple-touch-icon.png' }/
    %link{ rel: 'mask-icon', href: '/mask-icon.svg', color: '#2B90D9' }/
    %link{ rel: 'manifest', href: '/manifest.json' }/
    %meta{ name: 'msapplication-config', content: '/browserconfig.xml' }/
    %meta{ name: 'theme-color', content: '#282c37' }/
    %meta{ name: 'apple-mobile-web-app-capable', content: 'yes' }/

    %title= content_for?(:page_title) ? safe_join([yield(:page_title).chomp.html_safe, title], ' - ') : title

    = javascript_pack_tag "locales", integrity: true, crossorigin: 'anonymous'
    - if @theme
      - if @theme[:supported_locales].include? I18n.locale.to_s
        = javascript_pack_tag "locales/#{@theme[:flavour]}/#{I18n.locale}", integrity: true, crossorigin: 'anonymous'
      - elsif @theme[:supported_locales].include? 'en'
        = javascript_pack_tag "locales/#{@theme[:flavour]}/en", integrity: true, crossorigin: 'anonymous'
    = csrf_meta_tags
    %meta{ name: 'style-nonce', content: request.content_security_policy_nonce }

    = stylesheet_link_tag '/inert.css', skip_pipeline: true, media: 'all', id: 'inert-style'

    = yield :header_tags

    -#  These must come after :header_tags to ensure our initial state has been defined.
    = render partial: 'layouts/theme', object: @core
    = render partial: 'layouts/theme', object: @theme

    - if Setting.custom_css.present?
      = stylesheet_link_tag custom_css_path, media: 'all'

    - if current_account&.user&.setting_style_dashed_nest
      :css
        div[data-nest-level] {
          border-style: dashed;
        }

    - if current_account&.user&.setting_style_underline_a
      :css
        .status__content__text a,
        .reply-indicator__content a,
        .composer--reply > .content a,
        .account__header__content a
        {
          text-decoration: underline;          
        }

        .status__content__text a:hover,
        .reply-indicator__content a:hover,
        .composer--reply > .content a:hover,
        .account__header__content a:hover
        {
          text-decoration: none;          
        }

  %body{ class: body_classes }
    = content_for?(:content) ? yield(:content) : yield

    .logo-resources
      = render file: Rails.root.join('app', 'javascript', 'images', 'logo_transparent.svg')
      = render file: Rails.root.join('app', 'javascript', 'images', 'logo_full.svg')