Skip to content

New user profile#3415

Merged
josepjaume merged 3 commits intomasterfrom
feature/user_profile
May 18, 2018
Merged

New user profile#3415
josepjaume merged 3 commits intomasterfrom
feature/user_profile

Conversation

@oriolgual
Copy link
Copy Markdown
Contributor

@oriolgual oriolgual commented May 15, 2018

🎩 What? Why?

Implements the new user profile. It doesn't include notifications filters (will be done in another PR) and only lists following users, since we need to wait on having cards for other entities.

📌 Related Issues

📋 Subtasks

  • Add CHANGELOG entry
  • Add tests
  • Mark all as read notifications
  • New user menu
  • Change notifications link to new profile section
  • Remove old notifications views & controller
  • Update notifications tests
  • Split ProfilesController into different cells
  • Use user cards
  • Change notification title/header to event type, not event resource type

📷 Screenshots

image

image

@oriolgual oriolgual added this to the Release v.0.12.0 milestone May 15, 2018
@ghost ghost assigned oriolgual May 15, 2018
@ghost ghost added the status: WIP label May 15, 2018
@oriolgual oriolgual changed the title News user profile New user profile May 15, 2018
Decidim::Follow.where(user: self, followable: followable).any?
end

def following
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Docs

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can't you use a polymorphic through association for this?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nope, Rails does not allow it 😞

<h5>
<div><strong><%= profile_user.name %></strong></div>
<span class="text-small"><%= user.nickname %></span>
</h5>
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add officialized badge

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add new conversation link

Copy link
Copy Markdown
Contributor

@josepjaume josepjaume left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good job!

end

resources :profiles, only: [:show], param: :nickname
get "/profiles/:nickname/notifications", to: "profiles#show", as: "profile_notifications", active: "notifications"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What about using a scope to group them?

scope '/profiles/:nickname' do
  get 'notifications', to: "profiles#show", as: "profile_notifications", active: "notifications"
  # ...
end

@oriolgual oriolgual force-pushed the feature/user_profile branch 2 times, most recently from a536278 to a88614b Compare May 15, 2018 13:49
mrcasals
mrcasals previously approved these changes May 15, 2018
@oriolgual oriolgual force-pushed the feature/user_profile branch from a88614b to ff3bd89 Compare May 15, 2018 14:45
@ghost ghost added the status: WIP label May 15, 2018
@ghost ghost assigned mrcasals May 16, 2018
@oriolgual oriolgual force-pushed the feature/user_profile branch from c5aebd1 to 45634ba Compare May 17, 2018 12:53
@dep dep bot added the dependent label May 17, 2018
@oriolgual oriolgual force-pushed the feature/user_profile branch from 45634ba to c0caed3 Compare May 17, 2018 13:42
@josepjaume josepjaume merged commit ff9b31c into master May 18, 2018
@josepjaume josepjaume deleted the feature/user_profile branch May 18, 2018 13:30
isaacmg410 pushed a commit that referenced this pull request May 25, 2018
* Fix user cell

* Update user profile with new design

* Update CHANGELOG
isaacmg410 pushed a commit to CodiTramuntana/decidim that referenced this pull request May 25, 2018
* Fix user cell

* Update user profile with new design

* Update CHANGELOG
mrcasals pushed a commit that referenced this pull request May 25, 2018
…3438)

* take into account when space is private and transparent

* Initial Commit

* Show next upcoming meeting in assembly card (#3435)

* Show next upcoming meeting in assembly card

* Lint file

* New Crowdin translations (#3432)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Catalan)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Basque)

* New translations en.yml (Catalan)

* New translations en.yml (Dutch)

* New translations en.yml (Finnish)

* New translations en.yml (French)

* New translations en.yml (Galician)

* New translations en.yml (Italian)

* New translations en.yml (Polish)

* New translations en.yml (Portuguese)

* New translations en.yml (Spanish)

* New translations en.yml (Swedish)

* New translations en.yml (Swedish)

* New translations en.yml (Basque)

* New translations en.yml (Catalan)

* New translations en.yml (Dutch)

* New translations en.yml (Finnish)

* New translations en.yml (French)

* New translations en.yml (Galician)

* New translations en.yml (Italian)

* New translations en.yml (Polish)

* New translations en.yml (Portuguese)

* New translations en.yml (Spanish)

* New translations en.yml (Catalan)

* New translations en.yml (Dutch)

* New translations en.yml (Basque)

* New translations en.yml (Catalan)

* New translations en.yml (Finnish)

* New translations en.yml (French)

* New translations en.yml (Galician)

* New translations en.yml (Italian)

* New translations en.yml (Polish)

* New translations en.yml (Portuguese)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Spanish)

* New translations en.yml (Swedish)

* New translations en.yml (Catalan)

* New translations en.yml (Spanish)

* New translations en.yml (Spanish)

* Fix card image when missing (#3439)

* Fix `Resourceable` concern to only find linked resources from published components (#3433)

* Fix the related proposals shown on proposal show when component is unpublished (#3430)

* fix the related proposals showed on proposal show when the component are unpublished

* update gemfile lock app design

* fix gemifile lock generators

* add changelog line and apply requested changes

* update changelog

* Make `sibling_scope` only return resources from published components

* Fix changelog

* Remove N+1

* Improve code readability

* Use array so that query doesn't fail

* Don't seed with random scopes if the existing organization already have. (#3437)

* Refactor global resource manifests (#3416)

* Make ResourceManifests global

* Make Component manifest not required for resources

Some resource might not have a component (those froma  participatory
space, for example).

* Set a name for a resource manifest

* Fix all registered resources

* Update Changelog

* Fix code

* Update docs and tests

* Fix how to find the resource manifests

* Remove outdated test

* Fix `sibling_scope` fetching

* Improve specs

* Automatically set the ComponentManifest for the resources

* Lint file

* New Crowdin translations (#3440)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Catalan)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Basque)

* New translations en.yml (Catalan)

* New translations en.yml (Dutch)

* New translations en.yml (Finnish)

* New translations en.yml (French)

* New translations en.yml (Galician)

* New translations en.yml (Italian)

* New translations en.yml (Polish)

* New translations en.yml (Portuguese)

* New translations en.yml (Spanish)

* New translations en.yml (Swedish)

* New translations en.yml (Swedish)

* New translations en.yml (Basque)

* New translations en.yml (Catalan)

* New translations en.yml (Dutch)

* New translations en.yml (Finnish)

* New translations en.yml (French)

* New translations en.yml (Galician)

* New translations en.yml (Italian)

* New translations en.yml (Polish)

* New translations en.yml (Portuguese)

* New translations en.yml (Spanish)

* New translations en.yml (Catalan)

* New translations en.yml (Dutch)

* New translations en.yml (Basque)

* New translations en.yml (Catalan)

* New translations en.yml (Finnish)

* New translations en.yml (French)

* New translations en.yml (Galician)

* New translations en.yml (Italian)

* New translations en.yml (Polish)

* New translations en.yml (Portuguese)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Spanish)

* New translations en.yml (Swedish)

* New translations en.yml (Catalan)

* New translations en.yml (Spanish)

* New translations en.yml (Spanish)

* New translations en.yml (Spanish)

* Minute management interface (#3377)

* meetings home

* Collaborative editor

* minutes edition

* fix erblint

* fix spanglish

* Replace `high_voltage` with a custom code (#3441)

* Replace `high_voltage` with a custom code

* Fix locales

* Normalize locale files

* Remove old class

* Make method public

* Add user profile card (#3444)

* Register users as a resource

* Add user profile card

* Manually specify the author card

* Add missing locales for another_dummy_authorization_handler (#3447)

* Add missing email format validations (#3446)

* add email format validation to managed user promotion

* add email format validation to meeting user invitation

* Include datepicker locales in front pages too. (#3448)

* [FIX] Consultations question component html error (#3450)

* New user profile (#3415)

* Fix user cell

* Update user profile with new design

* Update CHANGELOG

* Add project card (#3454)

* Add project card

* Normalize locale files

* [FIX] Added remove_introductory_image to Consultations form & command (#3455)

* Rename migrations to avoid duplicated names (#3452)

* Remove text (#3461)

* Fix comments on development (#3459)

* Set default `totalCommentsCount` value

* Use lambdas on interfaces lists

* Move to `ts-loader`

* Update comments bundle

* Fix lint

* Run `erblint` on cells views (#3462)

* [FIX] Use translations for hardcoded text. (#3464)

* [FIX] Use translations for hardcoded text.

* Add changelog entry.

* [FIX] Fixes artificial margin between proposal "header" and list of endorsements. (#3465)

* Add margin to .data-picker (#3463)

* Added margin to .data-picker

* fix variable, lint scss

* Add Stylelinter to development_guide.md (#3472)

* Add initiatives card (#3475)

* Add initiative card

* Improve footer

* Lint files

* Fix i18n specs

* Fix authors list

* Remove extra character

* Extract ProgressBarCell from proposals

* Add progress bar to initiatives cell

* Replace "vote" with "sign"/"signature" on initiatives

* Replace "adhesions" with "signatures"

* Lint erb files

* Lint cells files

* Remove unused file

* Normalize locales file

* Lint more files

* Fix specs

* Update Facebook docs with an example URL (#3474)

* Add label identifier to `card_m` (#3468)

* Add label identifier to card_m

* fix stylelint offenses

* removed offending whitespace (stylelint)

* fix .card_label status scope

* Use `CollapsibleListCell` for proposal endorsements list (#3478)

* Upgrade Rails to 5.2 (#3225)

* Prevent Rails 5.2 deprecation warnings

Like the following, or similar:

```
DEPRECATION WARNING: Dangerous query method (method whose arguments are
used as raw SQL) called with non-attribute argument(s): "name->'en'
ASC". Non-attribute arguments will be disallowed in Rails 6.0. This
method should not be called with user-provided values, such as request
parameters or model attributes. Known-safe values can be passed by
wrapping them in Arel.sql(). (called from index at
/path/to/decidim-admin/app/controllers/decidim/admin/scopes_controller.rb:13)
```

* Only install decidim migrations

This is necessary to ignore activestorage ones on Rails 5.2. This is not
obscure, it's "lo siguiente" :(. The answer is buried deep down in
activerecord's sources:

https://github.com/rails/rails/blob/662ba236d115d3e2152b04dcdefdc0ee6f1f6102/activerecord/lib/active_record/railties/databases.rake#L390

* Tweak bootsnap to play nice with byebug

* Bump Rails to 5.2

* Bootsnap is require in `config/boot.rb` of the default generated
application, so we need to add it to the Gemfile.

* Surveys were calling `save!` on `destroy!`'ed records, that's
(understandably) no longer valid and was only working by chance.

* A transaction block inside `Decidim.traceable` was no longer returning
its last statement, so I needed to add a explicit return. I also removed
a nested transaction block that seemed unnecessary.

* Upgraded papertrail and fixed a deprecation warning about `whodunnit`.

* Oauth's request env no longer has indifferent access. Apparently.

* Try fix hang by not mixin ruby & rails autoloading

* Try fix flaky in system UI

* Add new translations (#3460)

* New translations en.yml (Spanish)

* New translations en.yml (Swedish)

* New translations en.yml (Swedish)

* New translations en.yml (Catalan)

* New translations en.yml (Dutch)

* New translations en.yml (Finnish)

* New translations en.yml (French)

* New translations en.yml (Finnish)

* New translations en.yml (Polish)

* New translations en.yml (Swedish)

* New translations en.yml (Spanish)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese)

* New translations en.yml (Polish)

* New translations en.yml (Spanish)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese)

* New translations en.yml (Catalan)

* New translations en.yml (Catalan)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese)

* New translations en.yml (Polish)

* New translations en.yml (Catalan)

* New translations en.yml (Polish)

* New translations en.yml (Polish)

* New translations en.yml (Swedish)

* New translations en.yml (Spanish)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Polish)

* New translations en.yml (Catalan)

* New translations en.yml (Swedish)

* New translations en.yml (Spanish)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese)

* New translations en.yml (Catalan)

* New translations en.yml (Portuguese)

* New translations en.yml (Swedish)

* New translations en.yml (Spanish)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese)

* New translations en.yml (Polish)

* New translations en.yml (Catalan)

* New translations en.yml (Swedish)

* New translations en.yml (Spanish)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese)

* New translations en.yml (Polish)

* New translations en.yml (Catalan)

* New translations en.yml (Swedish)

* New translations en.yml (Spanish)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese)

* New translations en.yml (Polish)

* New translations en.yml (Catalan)

* New translations en.yml (Catalan)

* New translations en.yml (Catalan)

* New translations en.yml (Swedish)

* New translations en.yml (Spanish)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese)

* New translations en.yml (Polish)

* New translations en.yml (Catalan)

* New translations en.yml (Swedish)

* New translations en.yml (Spanish)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese)

* New translations en.yml (Polish)

* New translations en.yml (Polish)

* New translations en.yml (Swedish)

* New translations en.yml (Spanish)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese)

* New translations en.yml (Polish)

* New translations en.yml (Catalan)

* New translations en.yml (Swedish)

* New translations en.yml (Spanish)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese)

* New translations en.yml (Basque)

* New translations en.yml (Italian)

* New translations en.yml (Galician)

* New translations en.yml (French)

* New translations en.yml (Finnish)

* New translations en.yml (Dutch)

* New translations en.yml (Catalan)

* New translations en.yml (Basque)

* New translations en.yml (Catalan)

* New translations en.yml (Basque)

* New translations en.yml (Italian)

* New translations en.yml (Basque)

* New translations en.yml (Dutch)

* New translations en.yml (French)

* New translations en.yml (Galician)

* New translations en.yml (Galician)

* New translations en.yml (French)

* New translations en.yml (Finnish)

* New translations en.yml (Dutch)

* New translations en.yml (Catalan)

* New translations en.yml (Basque)

* New translations en.yml (Italian)

* New translations en.yml (Galician)

* New translations en.yml (French)

* New translations en.yml (Finnish)

* New translations en.yml (Dutch)

* New translations en.yml (Basque)

* New translations en.yml (Italian)

* New translations en.yml (French)

* New translations en.yml (Finnish)

* New translations en.yml (Dutch)

* New translations en.yml (Catalan)

* New translations en.yml (Basque)

* New translations en.yml (Italian)

* New translations en.yml (Galician)

* New translations en.yml (French)

* New translations en.yml (Finnish)

* New translations en.yml (Dutch)

* New translations en.yml (Catalan)

* New translations en.yml (Basque)

* New translations en.yml (Italian)

* New translations en.yml (Galician)

* New translations en.yml (French)

* New translations en.yml (Galician)

* New translations en.yml (Finnish)

* New translations en.yml (French)

* New translations en.yml (Finnish)

* New translations en.yml (Dutch)

* New translations en.yml (Catalan)

* New translations en.yml (Basque)

* New translations en.yml (Spanish)

* New translations en.yml (Italian)

* New translations en.yml (Galician)

* New translations en.yml (French)

* New translations en.yml (Finnish)

* New translations en.yml (Dutch)

* New translations en.yml (Basque)

* New translations en.yml (Italian)

* New translations en.yml (Spanish)

* New translations en.yml (Italian)

* New translations en.yml (Galician)

* New translations en.yml (French)

* New translations en.yml (Finnish)

* New translations en.yml (Dutch)

* New translations en.yml (Basque)

* New translations en.yml (Galician)

* New translations en.yml (Spanish)

* New translations en.yml (Dutch)

* New translations en.yml (Basque)

* New translations en.yml (Catalan)

* New translations en.yml (Italian)

* New translations en.yml (Galician)

* New translations en.yml (French)

* New translations en.yml (Finnish)

* New translations en.yml (Dutch)

* New translations en.yml (Basque)

* New translations en.yml (Basque)

* New translations en.yml (Spanish)

* New translations en.yml (Italian)

* New translations en.yml (Galician)

* New translations en.yml (French)

* New translations en.yml (Finnish)

* New translations en.yml (Dutch)

* New translations en.yml (Catalan)

* New translations en.yml (Basque)

* New translations en.yml (Italian)

* New translations en.yml (Galician)

* New translations en.yml (French)

* New translations en.yml (Finnish)

* New translations en.yml (Dutch)

* New translations en.yml (Italian)

* New translations en.yml (Spanish)

* New translations en.yml (Spanish)

* New translations en.yml (Spanish)

* New translations en.yml (Spanish)

* New translations en.yml (Spanish)

* New translations en.yml (Spanish)

* New translations en.yml (Spanish)

* New translations en.yml (Spanish)

* New translations en.yml (Galician)

* New translations en.yml (Italian)

* New translations en.yml (Polish)

* New translations en.yml (Portuguese)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Spanish)

* New translations en.yml (Swedish)

* New translations en.yml (Finnish)

* New translations en.yml (French)

* New translations en.yml (Dutch)

* New translations en.yml (Catalan)

* New translations en.yml (Basque)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Basque)

* New translations en.yml (Catalan)

* New translations en.yml (Dutch)

* New translations en.yml (Finnish)

* New translations en.yml (French)

* New translations en.yml (Galician)

* New translations en.yml (Italian)

* New translations en.yml (Polish)

* New translations en.yml (Portuguese)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Spanish)

* New translations en.yml (Swedish)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Basque)

* New translations en.yml (Catalan)

* New translations en.yml (Dutch)

* New translations en.yml (Finnish)

* New translations en.yml (French)

* New translations en.yml (Galician)

* New translations en.yml (Italian)

* New translations en.yml (Polish)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Spanish)

* New translations en.yml (Swedish)

* New translations en.yml (Dutch)

* New translations en.yml (Basque)

* New translations en.yml (Catalan)

* New translations en.yml (Finnish)

* New translations en.yml (French)

* New translations en.yml (Galician)

* New translations en.yml (Italian)

* New translations en.yml (Polish)

* New translations en.yml (Portuguese)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Spanish)

* New translations en.yml (Swedish)

* New translations en.yml (Portuguese)

* Update comments bundle

* Unbundled consent on user registration (#3483)

* Unbundled consent on user registration

* [FEAT] Added RSpec tests for unbundled consent in Registration

* minor fixes

* Add CHANGELOG entry

* fix codeclimate

* Add more cards (#3487)

* Add consultation card

* Normalize locales files

* Lint file

* Add blog post card

* Add changelog entry

* Remove impossible condition

* add changelog and specs

* Newsletter checkbox unchecked by default (#3488)

* [FEAT] Registration newsletter checkbox unchecked by default

* [FEAT] Added Modal to show message and action to user. Tests updated

* [FIX] Corrections to pass tests

* add method can participate to participable concern
@oriolgual oriolgual mentioned this pull request May 28, 2018
6 tasks
@oriolgual oriolgual modified the milestones: Release v.0.12.0, CDP4 Dec 7, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants