philomena/lib/philomena_web/templates/layout/_header.html.slime
KoloMl 9dd26f2f87 Added separate property to control autocompletion mode
This is better than using hardcoded field name.
2024-06-02 19:58:01 +04:00

121 lines
6.1 KiB
Text

header.header
.flex.flex--centered.flex--start-bunched.flex--maybe-wrap
.flex.flex--centered
#js-burger-toggle.hide-desktop
a.header__link href="#"
i.fa.fa-bars
a.header__link href="/"
i.fa.fw.favicon-home
span.fa__text.hide-limited-desktop.hide-mobile
' Derpibooru
a.header__link.hide-mobile href="/images/new" title="Upload"
i.fa.fa-upload
= form_for @conn, Routes.search_path(@conn, :index), [method: "get", class: "header__search flex flex--no-wrap flex--centered", enforce_utf8: false], fn f ->
input.input.header__input.header__input--search#q name="q" title="For terms all required, separate with ',' or 'AND'; also supports 'OR' for optional terms and '-' or 'NOT' for negation. Search with a blank query for more options or click the ? for syntax help." value=@conn.params["q"] placeholder="Search" autocapitalize="none" autocomplete="off" data-ac="true" data-ac-min-length="3" data-ac-source="/autocomplete/tags?term=" data-ac-mode="search"
= if present?(@conn.params["sf"]) do
input type="hidden" name="sf" value=@conn.params["sf"]
= if present?(@conn.params["sd"]) do
input type="hidden" name="sd" value=@conn.params["sd"]
= if present?(@conn.params["hidden"]) do
input type="hidden" name="hidden" value=@conn.params["hidden"]
= if hides_images?(@conn) do
= select f, :del, [{"-D", ""}, {"+D", 1}, {"*D", "deleted"}, {"DO", "only"}], name: "del", class: "input header__input js-staff-action", autocomplete: "off"
button.header__search__button type="submit" title="Search"
i.fas.fa-search
a.header__search__button href="/search/reverse" title="Search using an image"
i.fa-search-button.fas.fa-camera
a.header__search__button href="/pages/search_syntax" title="Search syntax help"
i.fa-search-button.fas.fa-question
.flex.flex--centered.flex--no-wrap.header__force-right
= if @current_user do
a.header__link href="/notifications" title="Notifications"
i.fas.fa-bell>
span.js-notification-ticker.fa__text.header__counter data-notification-count=@notification_count = @notification_count
a.header__link href="/conversations" title="Conversations"
= if @conversation_count > 0 do
i.fa-unread-icon.fas.fa-envelope-open>
span.header__counter
= @conversation_count
- else
i.fas.fa-envelope>
span.header__counter.hidden
| 0
a.header__link.hide-mobile href="/filters" title="Filters"
i.fa.fa-filter
span.hide-limited-desktop< Filters
= form_for @user_changeset, Routes.filter_current_path(@conn, :update), [class: "header__filter-form", id: "filter-quick-form"], fn f ->
= select f, :current_filter_id, @available_filters, name: "id", id: "filter-quick-menu", class: "input header__input", data: [change_submit: "#filter-quick-form"], autocomplete: "off"
= form_for @user_changeset, Routes.filter_spoiler_type_path(@conn, :update), [class: "header__filter-form hide-mobile hide-limited-desktop", id: "spoiler-quick-form"], fn f ->
= select f, :spoiler_type, @spoiler_types, id: "spoiler-quick-menu", class: "input header__input", data: [change_submit: "#spoiler-quick-form"], autocomplete: "off"
.dropdown.header__dropdown
a.header__link.header__link-user href=Routes.profile_path(@conn, :show, @current_user)
= render PhilomenaWeb.UserAttributionView, "_user_avatar.html", object: %{user: @current_user}, class: "avatar--28px"
span.header__link-user__dropdown-arrow.hide-mobile data-click-preventdefault="true"
nav.dropdown__content.dropdown__content-right.hide-mobile.js-burger-links
a.header__link href=Routes.profile_path(@conn, :show, @current_user)
= @current_user.name
a.header__link href="/search?q=my:watched"
i.fa.fa-fw.fa-eye>
| Watched
a.header__link href="/search?q=my:faves"
i.fa.fa-fw.fa-star>
| Faves
a.header__link href="/search?q=my:upvotes"
i.fa.fa-fw.fa-arrow-up>
| Upvotes
a.header__link href=Routes.gallery_path(@conn, :index, gallery: [creator: @current_user.name])
i.fa.fa-fw.fa-image>
| Galleries
a.header__link href="/search?q=my:uploads"
i.fa.fa-fw.fa-upload>
| Uploads
a.header__link href="/comments?cq=my:comments"
i.fa.fa-fw.fa-comments>
| Comments
a.header__link href="/posts?pq=my:posts"
i.fas.fa-fw.fa-pen-square>
| Posts
a.header__link href=Routes.profile_artist_link_path(@conn, :index, @current_user)
i.fa.fa-fw.fa-link>
| Links
a.header__link href="/settings/edit"
i.fa.fa-fw.fa-cogs>
| Settings
a.header__link href="/conversations"
i.fa.fa-fw.fa-envelope>
| Messages
a.header__link href=Routes.registration_path(@conn, :edit)
i.fa.fa-fw.fa-user>
| Account
a.header__link href=Routes.session_path(@conn, :delete) data-method="delete"
i.fa.fa-fw.fa-sign-out-alt>
| Logout
- else
a.header__link.hide-mobile href="/filters"
| Filters (
= @current_filter.name
| )
span.js-burger-links.hide-mobile
a.header__link href="/settings/edit"
i.fa.fa-fw.fa-cogs.hide-desktop>
| Settings
a.header__link href=Routes.registration_path(@conn, :new)
| Register
a.header__link href=Routes.session_path(@conn, :new)
| Login
nav.header.header--secondary
.flex.flex--centered.flex--spaced-out.flex--wrap
= render PhilomenaWeb.LayoutView, "_header_navigation.html", assigns
= if !is_nil(@current_user) and @current_user.role != "user" do
= render PhilomenaWeb.LayoutView, "_header_staff_links.html", assigns