<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title><%= page_title %></title>

  <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon">
  <%= render_meta_links @current_item if @current_item.respond_to?(:paginate) %>
  <%= tag.link rel: "canonical", href: canonical_url %>
  <%= tag.link rel: "search", type: "application/opensearchdescription+xml", href: opensearch_url(format: :xml, version: 2), title: "Search posts" %>

  <%= csrf_meta_tag %>
  <% unless CurrentUser.enable_desktop_mode? %>
    <meta name="viewport" content="width=device-width,initial-scale=1">
  <% end %>
  <% if CurrentUser.user.blacklisted_tags.present? %>
    <meta name="blacklisted-tags" content="<%= CurrentUser.user.blacklisted_tags.gsub(/(?:\r|\n)+/, ",") %>">
  <% end %>

  <%# XXX hack to only load Ruffle on Flash posts %>
  <% if controller_name == "posts" && action_name == "show" && @post&.is_flash? %>
    <%= javascript_pack_tag "application", "flash" %>
  <% else %>
    <%= javascript_pack_tag "application" %>
  <% end %>

  <%= stylesheet_pack_tag "application" %>
  <% if CurrentUser.user.custom_style.present? && params.fetch(:css, "true").truthy?  %>
    <%= stylesheet_link_tag custom_style_users_path(md5: Digest::MD5.hexdigest(CurrentUser.user.custom_style)), media: "screen" %>
  <% end %>

  <% if current_page?(root_url) %>
    <%= json_ld_website_data %>
  <% end %>

  <%= tag.meta name: "description", content: meta_description %>
  <%= tag.meta property: "og:type", content: "website" %>
  <%= tag.meta property: "og:site_name", content: Danbooru.config.app_name %>
  <%= tag.meta property: "og:title", content: page_title %>
  <%= tag.meta property: "og:description", content: meta_description %>
  <%= tag.meta property: "og:url", content: request.original_url %>

  <% if Danbooru.config.twitter_username.present? %>
    <%= tag.meta name: "twitter:site", content: "@#{Danbooru.config.twitter_username}" %>
  <% end %>

  <%= tag.meta name: "twitter:title", content: page_title %>
  <%= tag.meta name: "twitter:description", content: meta_description %>

  <%= tag.meta name: "git-hash", content: Rails.application.config.x.git_hash %>
  <%= tag.meta name: "theme-color", content: "hsl(213, 100%, 50%)" %>

  <%= yield :html_header %>
  <%= raw Danbooru.config.custom_html_header_content %>
</head>
<%= tag.body **body_attributes(CurrentUser.user, params, @current_item) do %>
  <%= render "news_updates/listing" %>

  <header id="top">
    <%= link_to Danbooru.config.app_name, root_path, id: "app-name-header", class: "heading" %>

    <div id="maintoggle" class="mobile-only">
      <a href="#"><%= menu_icon(id: "maintoggle-on") %></a>
      <a href="#"><%= close_icon(id: "maintoggle-off", style: "display: none;") %></a>
    </div>

    <nav id="nav">
      <%= render "layouts/main_links" %>
      <% if content_for(:secondary_links).present? %>
        <menu id="subnav-menu">
          <%= yield :secondary_links %>
        </menu>
      <% end %>
    </nav>
  </header>

  <div id="page">
    <%= render "users/verification_notice" %>

    <% if !CurrentUser.is_anonymous? && !CurrentUser.is_gold? && !CurrentUser.user.is_banned? && cookies[:hide_upgrade_account_notice].blank? && params[:action] != "upgrade_information" %>
      <%= render "users/upgrade_notice" %>
    <% end %>

    <%= render "users/ban_notice" %>

    <% if params[:controller] != "dmails" && has_unread_dmails?(CurrentUser.user) %>
      <%= render "users/dmail_notice" %>
    <% end %>

    <div class="notice notice-info" id="notice" style="<%= "display: none;" unless flash[:notice] %>">
      <span class="prose"><%= format_text(flash[:notice], inline: true) %>.</span>
      <a href="#" id="close-notice-link">close</a>
    </div>

    <%= yield :layout %>
  </div>

  <div id="tooltips">
    <div id="post-tooltips"></div>
    <div id="user-tooltips"></div>
    <div id="popup-menus"></div>
  </div>

  <%= render "static/footer" %>
<% end %>
</html>
