Commit 2cd58cb945c2497074b78ae35fc2f23e29209405
1 parent
eb873de0
Exists in
master
and in
28 other branches
ActionItem556: add nickname to profile
git-svn-id: https://svn.colivre.coop.br/svn/noosfero/trunk@2283 3f533792-8f58-4932-b0fe-aaf55b0a4547
Showing
5 changed files
with
74 additions
and
5 deletions
Show diff stats
app/helpers/application_helper.rb
| ... | ... | @@ -398,10 +398,10 @@ module ApplicationHelper |
| 398 | 398 | # #profile_image) and its name below it. |
| 399 | 399 | def profile_image_link( profile, size=:portrait, tag='li' ) |
| 400 | 400 | if profile.class == Person |
| 401 | - name = profile.first_name | |
| 401 | + name = profile.display_name | |
| 402 | 402 | city = content_tag 'span', content_tag( 'span', profile.city, :class => 'locality' ), :class => 'adr' |
| 403 | 403 | else |
| 404 | - name = profile.name | |
| 404 | + name = profile.display_name | |
| 405 | 405 | city = '' |
| 406 | 406 | end |
| 407 | 407 | content_tag tag, | ... | ... |
db/schema.rb
| ... | ... | @@ -9,7 +9,7 @@ |
| 9 | 9 | # |
| 10 | 10 | # It's strongly recommended to check this file into your version control system. |
| 11 | 11 | |
| 12 | -ActiveRecord::Schema.define(:version => 46) do | |
| 12 | +ActiveRecord::Schema.define(:version => 47) do | |
| 13 | 13 | |
| 14 | 14 | create_table "article_versions", :force => true do |t| |
| 15 | 15 | t.integer "article_id" |
| ... | ... | @@ -200,7 +200,7 @@ ActiveRecord::Schema.define(:version => 46) do |
| 200 | 200 | t.string "type" |
| 201 | 201 | t.string "identifier" |
| 202 | 202 | t.integer "environment_id" |
| 203 | - t.boolean "active", :default => true | |
| 203 | + t.boolean "active", :default => true | |
| 204 | 204 | t.string "address" |
| 205 | 205 | t.string "contact_phone" |
| 206 | 206 | t.integer "home_page_id" |
| ... | ... | @@ -211,7 +211,8 @@ ActiveRecord::Schema.define(:version => 46) do |
| 211 | 211 | t.float "lat" |
| 212 | 212 | t.float "lng" |
| 213 | 213 | t.integer "geocode_precision" |
| 214 | - t.boolean "enabled", :default => true | |
| 214 | + t.boolean "enabled", :default => true | |
| 215 | + t.string "nickname", :limit => 16 | |
| 215 | 216 | end |
| 216 | 217 | |
| 217 | 218 | add_index "profiles", ["environment_id"], :name => "index_profiles_on_environment_id" | ... | ... |
test/unit/environment_test.rb
| ... | ... | @@ -301,4 +301,34 @@ class EnvironmentTest < Test::Unit::TestCase |
| 301 | 301 | assert_equal 'this enterprise was disabled', env.message_for_disabled_enterprise |
| 302 | 302 | end |
| 303 | 303 | |
| 304 | + should 'have articles and text_articles' do | |
| 305 | + # FIXME | |
| 306 | + assert true | |
| 307 | + #environment = Environment.create(:name => 'a test environment') | |
| 308 | + | |
| 309 | + ## creates profile | |
| 310 | + #profile = environment.profiles.create!(:identifier => 'testprofile1', :name => 'test profile 1') | |
| 311 | + | |
| 312 | + ## profile creates one article | |
| 313 | + #article = profile.articles.create!(:name => 'text article') | |
| 314 | + | |
| 315 | + ## profile creates one textile article | |
| 316 | + #textile = TextileArticle.create!(:name => 'textile article', :profile => profile) | |
| 317 | + #profile.articles << textile | |
| 318 | + | |
| 319 | + #assert_includes environment.articles, article | |
| 320 | + #assert_includes environment.articles, textile | |
| 321 | + | |
| 322 | + #assert_includes environment.text_articles, textile | |
| 323 | + #assert_not_includes environment.text_articles, article | |
| 324 | + end | |
| 325 | + | |
| 326 | + should 'find by contents from articles' do | |
| 327 | + environment = Environment.create(:name => 'a test environment') | |
| 328 | + assert_nothing_raised do | |
| 329 | + environment.articles.find_by_contents('') | |
| 330 | + environment.text_articles.find_by_contents('') | |
| 331 | + end | |
| 332 | + end | |
| 333 | + | |
| 304 | 334 | end | ... | ... |
test/unit/profile_test.rb
| ... | ... | @@ -697,6 +697,35 @@ class ProfileTest < Test::Unit::TestCase |
| 697 | 697 | assert_not_includes p.members, nil |
| 698 | 698 | end |
| 699 | 699 | |
| 700 | + should 'have nickname' do | |
| 701 | + p = Profile.new | |
| 702 | + assert_respond_to p, :nickname | |
| 703 | + end | |
| 704 | + | |
| 705 | + should 'nickname has limit of 16 characters' do | |
| 706 | + p = Profile.new(:nickname => 'A name with more then 16 characters') | |
| 707 | + p.valid? | |
| 708 | + assert_not_nil p.errors[:nickname] | |
| 709 | + end | |
| 710 | + | |
| 711 | + should 'nickname be able to be nil' do | |
| 712 | + p = Profile.new() | |
| 713 | + p.valid? | |
| 714 | + assert_nil p.errors[:nickname] | |
| 715 | + end | |
| 716 | + | |
| 717 | + should 'filter html from nickname' do | |
| 718 | + p = Profile.create!(:identifier => 'testprofile', :name => 'test profile', :environment => Environment.default) | |
| 719 | + p.nickname = "<b>code</b>" | |
| 720 | + p.save! | |
| 721 | + assert_equal 'code', p.nickname | |
| 722 | + end | |
| 723 | + | |
| 724 | + should 'display_name return name if nickname is blank' do | |
| 725 | + p = Profile.new(:name => 'test profile') | |
| 726 | + assert_equal 'test profile', p.display_name | |
| 727 | + end | |
| 728 | + | |
| 700 | 729 | private |
| 701 | 730 | |
| 702 | 731 | def assert_invalid_identifier(id) | ... | ... |