impress/app/views/closet_hangers/index.html.haml

171 lines
7.8 KiB
Text
Raw Normal View History

- content_for :before_title, advertise_campaign_progress(@campaign)
- unless public_perspective?
- title t('.title_for.you')
2011-07-22 11:02:04 -07:00
- add_body_class 'current-user'
2011-07-29 07:52:04 -07:00
- secondary_nav do
%span#toggle-help= t('.toggle_help')
= form_tag items_path, :method => :get, :id => 'closet-hangers-items-search', 'data-current-user-id' => current_user.id do
= text_field_tag :q, nil, :placeholder => t('.item_search_placeholder')
= submit_tag t('.item_search_submit'), :name => nil
2011-07-12 17:03:04 -07:00
- else
- title t('.title_for.another_user', :user_name => @user.name)
- secondary_nav do
%span#toggle-compare Compare with Your Items
2011-07-26 15:56:14 -07:00
- canonical_path user_closet_hangers_path(@user)
2011-07-20 12:16:22 -07:00
- content_for :before_flashes do
#closet-hangers-contact
- if public_perspective?
- if @user.contact_neopets_username?
= link_to t('.send_neomail', neopets_username: @user.contact_neopets_username),
2014-05-15 22:34:00 -07:00
send_neomail_url(@user.contact_neopets_username),
:class => 'neomail'
= link_to t('.lookup',
neopets_username: @user.contact_neopets_username),
neopets_lookup_url(@user.contact_neopets_username),
:class => 'lookup'
2011-07-20 12:16:22 -07:00
- else
= form_for @user do |f|
= f.label :contact_neopets_connection_id
= f.collection_select :contact_neopets_connection_id, @user.neopets_connections, :id, :neopets_username, {include_blank: true}, 'data-new-text' => t('.neopets_username.new'), 'data-new-prompt' => t('.neopets_username.prompt')
= f.submit t('.neopets_username.submit')
2011-07-22 14:55:05 -07:00
- unless public_perspective?
%noscript
%p.warning
Managing your items is a lot easier with Javascript. With Javascript
disabled, you'll have to click each item you want to manage, update the
quantities for each list on the item page, and refresh this page
manually once you want to see your changes. It still works, but consider
enabling Javascript to make your life easier.
= render :partial => 'help', :locals => {:user => @user}
#closet-hangers-extras
2011-07-31 16:24:06 -07:00
#closet-hangers-share
%label{:for => 'closet-hangers-share-box'}= t '.public_url_label'
%input#closet-hangers-share-box{:type => 'text',
:value => user_closet_hangers_url(@user),
:readonly => true}
2011-07-31 16:24:06 -07:00
2015-07-27 10:25:24 -07:00
= link_to t('.import_from.closet'), new_neopets_page_import_task_path(page_type: 'closet', expected_index: 1)
= link_to t('.import_from.safety_deposit'), new_neopets_page_import_task_path(page_type: 'safety_deposit', expected_index: 1)
= link_to t('.import_from.gallery'), new_neopets_page_import_task_path(page_type: 'gallery', expected_index: 1)
= link_to t('.export_to.petpage'), petpage_user_closet_hangers_path(@user)
2011-07-31 16:24:06 -07:00
#closet-hangers{:class => public_perspective? ? nil : 'current-user'}
- unless public_perspective?
-# TODO: i18n
.bulk-actions{'data-target-count' => 0}
.bulk-actions-intro
Manage items in bulk! Select an item by clicking its thumbnail, or choose
a list and Select All.
.bulk-actions-form
.bulk-actions-target-desc
%span.bulk-actions-target-desc-singular
With the 1 selected item:
%span.bulk-actions-target-desc-plural
With the
%span.bulk-actions-target-count 0
selected items:
%ul.bulk-actions-options
%li
= form_tag user_closet_hangers_path(@user), method: :put, class: 'bulk-actions-move-all' do
= select_tag 'list_id', options_for_select(destination_options)
%button Move
%li
= form_tag user_closet_hangers_path(@user), method: :delete, class: 'bulk-actions-remove-all' do
%button Remove all
%li
%button.bulk-actions-deselect-all Deselect all
2011-07-22 14:55:05 -07:00
- [true, false].each do |owned|
%section.closet-hangers-group{'data-owned' => owned.to_s, :id => "closet-hangers-group-#{owned}"}
2011-07-22 15:06:46 -07:00
%header
%h3= closet_lists_group_name(closet_hangers_subject(@user), owned)
%span.toggle.show= t '.toggle_group.show'
%span.toggle.hide= t '.toggle_group.hide'
- unless public_perspective?
= link_to_add_closet_list t('.add_list'), :owned => owned, :class => 'add-closet-list'
2011-07-22 14:55:05 -07:00
.closet-hangers-group-content
2011-07-29 07:52:04 -07:00
= render_closet_lists(@closet_lists_by_owned[owned])
- if !public_perspective? || unlisted_hangers_count(owned) > 0
.closet-list.unlisted{'data-hangers-count' => unlisted_hangers_count(owned)}
%header
- unless public_perspective?
= form_for @user, :html => {:class => 'visibility-form'} do |f|
= f.select hangers_group_visibility_field_name(owned),
closet_visibility_choices(:human_name)
= f.submit t('.unlisted.submit')
= closet_visibility_descriptions
.closet-list-controls
2015-09-26 14:22:11 -07:00
= form_tag user_closet_hangers_path(@user), method: :delete, class: 'remove-all' do
= hidden_field_tag :list_id, owned
= submit_tag t('.remove_all.submit'), confirm: t('.remove_all.confirm')
2015-09-26 14:22:11 -07:00
%button.select-all= t('.select_all')
- if has_lists?(owned)
%h4= t '.unlisted.header'
- if !@public_perspective
= render partial: 'closet_lists/trading_neomail_warning', locals: {list: @user.null_closet_list(owned), user: @user}
- cache unlisted_hangers_cache_key(owned) do
.closet-list-content
.closet-list-hangers
= render_unlisted_closet_hangers(owned)
%span.empty-list= t '.unlisted.empty'
2011-07-12 17:03:04 -07:00
- if user_signed_in?
%script#autocomplete-item-tmpl{type: 'text/x-jquery-tmpl'}
%a
= t '.autocomplete.add_item_html', item_name: '${item_name}'
%script#autocomplete-add-to-list-tmpl{type: 'text/x-jquery-tmpl'}
%a
= t '.autocomplete.add_to_list_html', list_name: '${list_name}'
%script#autocomplete-add-to-group-tmpl{type: 'text/x-jquery-tmpl'}
%a
= t '.autocomplete.add_to_group_html', group_name: '${group_name}'
%script#autocomplete-already-in-collection-tmpl{type: 'text/x-jquery-tmpl'}
%span
= t '.autocomplete.already_in_collection_html',
collection_name: '${collection_name}'
-# Gotta do this weird subbing in the path, since the braces will be
-# escaped if they themselves are inserted. Probably deserves a more legit
-# method, especially if we ever need it again.
- templated_hanger_path = user_closet_hanger_path(user_id: '$0', id: '$1').sub('$0', '${user_id}').sub('$1', '${closet_hanger_id}')
%script#closet-hanger-update-tmpl{type: 'text/x-jquery-tmpl'}
= form_tag templated_hanger_path, method: :put, authenticity_token: false, class: 'closet-hanger-update' do
= hidden_field_tag 'closet_hanger[list_id]', '${list_id}'
= hidden_field_tag 'closet_hanger[owned]', '${owned}'
= number_field_tag 'closet_hanger[quantity]', '${quantity}',
min: 0, required: true
%script#closet-hanger-destroy-tmpl{type: 'text/x-jquery-tmpl'}
-# TODO: remove me?
2013-06-22 15:45:59 -07:00
- content_for :stylesheets do
= stylesheet_link_tag 'https://ajax.googleapis.com/ajax/libs/jqueryui/1.9.0/themes/south-street/jquery-ui.css'
- content_for :javascripts do
= include_javascript_libraries :jquery, :jquery_tmpl
= javascript_include_tag 'ajax_auth', 'jquery.ui', 'jquery.jgrowl',
defer: true
- content_for :javascripts_body do
= javascript_include_tag 'closet_hangers/index', defer: true
- if public_perspective? && user_signed_in?
- content_for :meta do
%meta{
name: "trade-matches-owns",
value: @items.select(&:owned?).map(&:id).join(",")
}
%meta{
name: "trade-matches-wants",
value: @items.select(&:wanted?).map(&:id).join(",")
}