From dedae62f47b60867e72fda5aae1ad497636c1478 Mon Sep 17 00:00:00 2001 From: Daniela Soares Feitosa Date: Sat, 16 Nov 2013 23:58:41 +0000 Subject: [PATCH] Added options for target on model to avoid repetition --- app/models/link_list_block.rb | 6 ++++++ app/views/box_organizer/_link_list_block.rhtml | 11 ++++++----- test/unit/link_list_block_test.rb | 4 ++++ 3 files changed, 16 insertions(+), 5 deletions(-) diff --git a/app/models/link_list_block.rb b/app/models/link_list_block.rb index 7ef1677..115a489 100644 --- a/app/models/link_list_block.rb +++ b/app/models/link_list_block.rb @@ -33,6 +33,12 @@ class LinkListBlock < Block ['chat', N_('Chat')] ] + TARGET_OPTIONS = [ + [N_('Same page'), '_self'], + [N_('New tab'), '_blank'], + [N_('New window'), '_new'], + ] + settings_items :links, Array, :default => [] before_save do |block| diff --git a/app/views/box_organizer/_link_list_block.rhtml b/app/views/box_organizer/_link_list_block.rhtml index 15b7146..20b06f0 100644 --- a/app/views/box_organizer/_link_list_block.rhtml +++ b/app/views/box_organizer/_link_list_block.rhtml @@ -9,9 +9,9 @@ <%= text_field_tag 'block[links][][name]', link[:name], :class => 'link-name', :maxlength => 20 %> <%= text_field_tag 'block[links][][address]', link[:address], :class => 'link-address' %> - - <%= select_tag('block[links][][target]', options_for_select([[_('Same page'), '_self'], [_('New tab'), '_blank'], [_('New window'), '_new']], link[:target].blank? ? '_self' : link[:target])) %> - + + <%= select_tag('block[links][][target]', options_for_select(LinkListBlock::TARGET_OPTIONS, link[:target])) %> + <% end %> @@ -21,8 +21,9 @@ page.insert_html :bottom, 'links', content_tag('tr', content_tag('td', icon_selector('ok')) + content_tag('td', text_field_tag('block[links][][name]', '', :maxlength => 20)) + - content_tag('td', text_field_tag('block[links][][address]', nil, :class => 'cel-address')) + - content_tag('td', select_tag('block[links][][target]',options_for_select([['Mesma pagina', '_self'], ['Nova aba', '_blank'], ['Nova Janela', '_new']], '_self'))) + content_tag('td', text_field_tag('block[links][][address]', nil, :class => 'link-address'), :class => 'cel-address') + + content_tag('td', select_tag('block[links][][target]', +options_for_select(LinkListBlock::TARGET_OPTIONS, link[:target]))) ) + javascript_tag("$('edit-link-list-block').scrollTop = $('edit-link-list-block').scrollHeight") end %> diff --git a/test/unit/link_list_block_test.rb b/test/unit/link_list_block_test.rb index c7dca8a..74ea9fb 100644 --- a/test/unit/link_list_block_test.rb +++ b/test/unit/link_list_block_test.rb @@ -83,4 +83,8 @@ class LinkListBlockTest < ActiveSupport::TestCase assert_equal 'always', block.display end + should 'have options for links target' do + assert_equivalent LinkListBlock::TARGET_OPTIONS.map {|t|t[1]}, ['_self', '_blank', '_new'] + end + end -- libgit2 0.21.2