Matchu
7b17f70635
Turns out ~22% of our users initially land on a trade list. We like to keep the campaign off the pages where space is at a premium, so we try to whitelist it to major landing pages in order to avoid accidentally creating a bad experience on some page :)
133 lines
No EOL
6.6 KiB
Text
133 lines
No EOL
6.6 KiB
Text
- content_for :before_title, advertise_campaign_progress(@campaign)
|
|
|
|
- unless public_perspective?
|
|
- title t('.title_for.you')
|
|
- add_body_class 'current-user'
|
|
- 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
|
|
- else
|
|
- title t('.title_for.another_user', :user_name => @user.name)
|
|
- secondary_nav do
|
|
%span#toggle-compare Compare with Your Items
|
|
|
|
- canonical_path user_closet_hangers_path(@user)
|
|
|
|
- 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),
|
|
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'
|
|
- 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')
|
|
|
|
- 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
|
|
#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}
|
|
|
|
= 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('.import_from.neopets_user'), new_neopets_user_path
|
|
= link_to t('.export_to.petpage'), petpage_user_closet_hangers_path(@user)
|
|
|
|
#closet-hangers{:class => public_perspective? ? nil : 'current-user'}
|
|
- [true, false].each do |owned|
|
|
.closet-hangers-group{'data-owned' => owned.to_s, :id => "closet-hangers-group-#{owned}"}
|
|
%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'
|
|
.closet-hangers-group-content
|
|
= 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
|
|
= form_tag user_closet_hangers_path(@user), method: :delete do
|
|
= hidden_field_tag :list_id, owned
|
|
= submit_tag t('.remove_all.submit'), confirm: t('.remove_all.confirm')
|
|
- 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}
|
|
.closet-list-content
|
|
.closet-list-hangers
|
|
= render_unlisted_closet_hangers(owned)
|
|
%span.empty-list= t '.unlisted.empty'
|
|
|
|
- if user_signed_in?
|
|
- localized_cache action_suffix: 'tmpls' do
|
|
%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'}
|
|
= form_tag templated_hanger_path, method: :delete, authenticity_token: false, class: 'closet-hanger-destroy' do
|
|
= submit_tag t('closet_hangers.closet_hanger.delete')
|
|
|
|
- content_for :stylesheets do
|
|
= stylesheet_link_tag 'http://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',
|
|
'placeholder', 'closet_hangers/index' |