diff --git a/Gemfile b/Gemfile index e445969d..19c858b4 100644 --- a/Gemfile +++ b/Gemfile @@ -45,6 +45,7 @@ gem 'bcrypt', '~> 3.1.7' # gem 'jbuilder', '~> 1.2' gem "bootstrap-sass", "3.3.3" +gem "font-awesome-sass", "~> 4.5.0" group :development do gem "spring" diff --git a/Gemfile.lock b/Gemfile.lock index bc840560..05283aaa 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -98,6 +98,8 @@ GEM factory_girl (~> 4.5.0) railties (>= 3.0.0) ffi (1.9.6) + font-awesome-sass (4.5.0) + sass (>= 3.2) gherkin (2.12.2) multi_json (~> 1.3) hike (1.2.3) @@ -251,6 +253,7 @@ DEPENDENCIES cucumber-rails database_cleaner factory_girl_rails + font-awesome-sass (~> 4.5.0) htmlentities jquery-rails jquery-ui-rails diff --git a/app/assets/images/system-search.png b/app/assets/images/system-search.png deleted file mode 100644 index fd7f0b07..00000000 Binary files a/app/assets/images/system-search.png and /dev/null differ diff --git a/app/assets/stylesheets/application.css.scss b/app/assets/stylesheets/application.css.scss index a8233655..222ff520 100644 --- a/app/assets/stylesheets/application.css.scss +++ b/app/assets/stylesheets/application.css.scss @@ -18,6 +18,8 @@ @import "jquery-ui/dialog"; @import "jquery-ui/sortable"; +@import "icons"; + .legacy-ui { @import "../../../vendor/assets/stylesheets/superfish-navbar"; @import "../../../vendor/assets/stylesheets/superfish-vertical"; diff --git a/app/assets/stylesheets/icons.scss b/app/assets/stylesheets/icons.scss new file mode 100644 index 00000000..001bc336 --- /dev/null +++ b/app/assets/stylesheets/icons.scss @@ -0,0 +1,2 @@ +@import "font-awesome-sprockets"; +@import "font-awesome"; diff --git a/app/assets/stylesheets/tracks.css.scss b/app/assets/stylesheets/tracks.css.scss index 71dbcaa6..26730968 100644 --- a/app/assets/stylesheets/tracks.css.scss +++ b/app/assets/stylesheets/tracks.css.scss @@ -9,6 +9,10 @@ height:26px; border-radius: 2px; } + + .fa { + line-height: inherit; + } } .footer { diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index f7b6aeaf..f0c30f64 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -22,10 +22,6 @@ module ApplicationHelper {:class => "container_toggle", :id => id} ) end - def navigation_link(name, options = {}, html_options = nil, *parameters_for_method_reference) - link_to name, options, html_options - end - # Check due date in comparison to today's date Flag up date appropriately with # a 'traffic light' colour code # diff --git a/app/helpers/icon_helper.rb b/app/helpers/icon_helper.rb new file mode 100644 index 00000000..3fb817fa --- /dev/null +++ b/app/helpers/icon_helper.rb @@ -0,0 +1,15 @@ +module IconHelper + include FontAwesome::Sass::Rails::ViewHelpers + + def icon_fw(icon, text = nil, html_options = {}) + text, html_options = nil, text if text.is_a?(Hash) + + if html_options.key?(:class) + html_options[:class] = "fa-fw #{html_options[:class]}" + else + html_options[:class] = "fa-fw" + end + + icon(icon, text, html_options) + end +end diff --git a/app/views/shared/_navbar.html.erb b/app/views/shared/_navbar.html.erb index 4f814a9d..8099c124 100644 --- a/app/views/shared/_navbar.html.erb +++ b/app/views/shared/_navbar.html.erb @@ -11,24 +11,24 @@ <% if @count -%> <%= @count %> <% end -%> - <%= l(Time.zone.today, :format => current_user.prefs.title_date_format) %> + <%= content_tag :span, l(Time.zone.today, format: current_user.prefs.title_date_format), class: 'visible-lg-inline' %>
diff --git a/config/locales/en.yml b/config/locales/en.yml index f6907f02..98f7969f 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -428,6 +428,7 @@ en: show_empty_containers_project: "Show empty projects" show_empty_containers_context: "Show empty contexts" show_empty_containers_title: "Show or hide the empty projects or contexts" + options: Options footer: send_feedback: Send feedback on %{version} sidebar: diff --git a/features/logging_in.feature b/features/logging_in.feature index 1962bf0e..ef74a8f7 100644 --- a/features/logging_in.feature +++ b/features/logging_in.feature @@ -31,24 +31,24 @@ Feature: Existing user logging in Examples: | page | next page | logout | - | home page | home page | Logout (Test User) | - | contexts page | contexts page | Logout (Test User) | - | projects page | projects page | Logout (Test User) | - | notes page | notes page | Logout (Test User) | - | recurring todos page | recurring todos page | Logout (Test User) | - | statistics page | statistics page | Logout (Test User) | - | manage users page | manage users page | 401 Unauthorized | - | integrations page | integrations page | Logout (Test User) | - | starred page | starred page | Logout (Test User) | - | tickler page | tickler page | Logout (Test User) | - | calendar page | calendar page | Logout (Test User) | - | feeds page | feeds page | Logout (Test User) | - | preference page | preference page | Logout (Test User) | - | export page | export page | Logout (Test User) | - | rest api docs page | rest api docs page | Logout (Test User) | - | search page | search page | Logout (Test User) | - | "top secret" project for user "testuser" | "top secret" project for user "testuser" | Logout (Test User) | - | context page for "@secret location" for user "testuser" | context page for "@secret location" for user "testuser" | Logout (Test User) | + | home page | home page | Logout | + | contexts page | contexts page | Logout | + | projects page | projects page | Logout | + | notes page | notes page | Logout | + | recurring todos page | recurring todos page | Logout | + | statistics page | statistics page | Logout | + | manage users page | manage users page | 401 Unauthorized | + | integrations page | integrations page | Logout | + | starred page | starred page | Logout | + | tickler page | tickler page | Logout | + | calendar page | calendar page | Logout | + | feeds page | feeds page | Logout | + | preference page | preference page | Logout | + | export page | export page | Logout | + | rest api docs page | rest api docs page | Logout | + | search page | search page | Logout | + | "top secret" project for user "testuser" | "top secret" project for user "testuser" | Logout | + | context page for "@secret location" for user "testuser" | context page for "@secret location" for user "testuser" | Logout | @javascript Scenario: When session expires, you should be logged out @@ -56,4 +56,4 @@ Feature: Existing user logging in And I submit the login form as user "testuser" with password "secret" Then I should be on the home page When my session expires - Then I should be on the login page \ No newline at end of file + Then I should be on the login page diff --git a/features/preferences.feature b/features/preferences.feature index 801b9b47..dddc2c0b 100644 --- a/features/preferences.feature +++ b/features/preferences.feature @@ -36,6 +36,6 @@ Feature: Manage preferences Scenario: I can edit preferences When I go to the preferences page - Then I should see "Logout (testuser)" + Then I should see "testuser Preferences" When I edit my last name to "Tester" - Then I should see "Logout (Tester)" \ No newline at end of file + Then I should see "Tester Preferences" diff --git a/test/helpers/icon_helper_test.rb b/test/helpers/icon_helper_test.rb new file mode 100644 index 00000000..5ab2e43f --- /dev/null +++ b/test/helpers/icon_helper_test.rb @@ -0,0 +1,13 @@ +require 'test_helper' + +class IconHelperTest < ActionView::TestCase + include IconHelper + + test 'icon_fw generates fixed-width class' do + assert_equal '', icon_fw('gear') + end + + test 'icon_fw accepts an additional class' do + assert_equal '', icon_fw('gear', class: 'myclass') + end +end