{"action":"created","issue":{"url":"https://api.github.com/repos/diaspora/diaspora/issues/6864","repository_url":"https://api.github.com/repos/diaspora/diaspora","labels_url":"https://api.github.com/repos/diaspora/diaspora/issues/6864/labels{/name}","comments_url":"https://api.github.com/repos/diaspora/diaspora/issues/6864/comments","events_url":"https://api.github.com/repos/diaspora/diaspora/issues/6864/events","html_url":"https://github.com/diaspora/diaspora/pull/6864","id":160417169,"number":6864,"title":"[WIP] Refactor  aspects membership dropdown to use handlebars template","user":{"login":"cmrd-senya","id":10187586,"avatar_url":"https://avatars.githubusercontent.com/u/10187586?v=3","gravatar_id":"","url":"https://api.github.com/users/cmrd-senya","html_url":"https://github.com/cmrd-senya","followers_url":"https://api.github.com/users/cmrd-senya/followers","following_url":"https://api.github.com/users/cmrd-senya/following{/other_user}","gists_url":"https://api.github.com/users/cmrd-senya/gists{/gist_id}","starred_url":"https://api.github.com/users/cmrd-senya/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cmrd-senya/subscriptions","organizations_url":"https://api.github.com/users/cmrd-senya/orgs","repos_url":"https://api.github.com/users/cmrd-senya/repos","events_url":"https://api.github.com/users/cmrd-senya/events{/privacy}","received_events_url":"https://api.github.com/users/cmrd-senya/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/diaspora/diaspora/milestones/14","html_url":"https://github.com/diaspora/diaspora/milestones/0.6.0.0","labels_url":"https://api.github.com/repos/diaspora/diaspora/milestones/14/labels","id":1063323,"number":14,"title":"0.6.0.0","description":"","creator":{"login":"jhass","id":141294,"avatar_url":"https://avatars.githubusercontent.com/u/141294?v=3","gravatar_id":"","url":"https://api.github.com/users/jhass","html_url":"https://github.com/jhass","followers_url":"https://api.github.com/users/jhass/followers","following_url":"https://api.github.com/users/jhass/following{/other_user}","gists_url":"https://api.github.com/users/jhass/gists{/gist_id}","starred_url":"https://api.github.com/users/jhass/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jhass/subscriptions","organizations_url":"https://api.github.com/users/jhass/orgs","repos_url":"https://api.github.com/users/jhass/repos","events_url":"https://api.github.com/users/jhass/events{/privacy}","received_events_url":"https://api.github.com/users/jhass/received_events","type":"User","site_admin":false},"open_issues":14,"closed_issues":335,"state":"open","created_at":"2015-04-11T18:44:30Z","updated_at":"2016-07-15T08:44:06Z","due_on":null,"closed_at":null},"comments":7,"created_at":"2016-06-15T13:05:58Z","updated_at":"2016-07-16T13:00:51Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/diaspora/diaspora/pulls/6864","html_url":"https://github.com/diaspora/diaspora/pull/6864","diff_url":"https://github.com/diaspora/diaspora/pull/6864.diff","patch_url":"https://github.com/diaspora/diaspora/pull/6864.patch"},"body":"Aspect membership dropdown is used at the contacts, notifications, getting started pages, people hovercards and at a profile page header.\r\n\r\nBefore there was the [aspect_membership_dropdown](https://github.com/diaspora/diaspora/blob/develop/app/views/aspect_memberships/_aspect_membership_dropdown.haml) template which was used to render the dropdown serverside. Each update to the dropdown required to reload the dropdown using the [controller](https://github.com/diaspora/diaspora/blob/develop/app/controllers/people_controller.rb#L159-L170). Also, there was an AspectMembership backbone view which didn't use templates but rather attached to the DOM generated by serverside rendering.\r\n\r\nThis PR adds a handlebars template for the aspect_membership_dropdown element and refactors the AspectMembership view for using the template.\r\n\r\nI started this job in order to fix #6120. I found out then, that it's not strictly necessary to do all these refactorings to fix #6120, but it is still a nice thing to do.\r\n\r\nCurrently this PR contains changes for profile, contacts and getting started pages, and notifications page is unchanged. I felt, that finishing this getting complicated, so I felt I need to get some feedback to proceed, to be sure that I'm doing the right thing before diving into more complex and large changes. Here is the list of thing left to do to finish the PR IMO:\r\n- [ ] Fix up notifications page to use handlebars template as well\r\n- [x] Fix up peoples' hovercards\r\n- [ ] search pages should use it also\r\n- [x] Fix up jasmine tests for the AspectMembership view component (there are more async stuff now, so it's not too straightforward)\r\n- [ ] Write some tests for the new code\r\n- [ ] Wipe everything left from the serverside rendering.\r\n\r\nAlso, there is a component called [AspectDropdown view](https://github.com/diaspora/diaspora/blob/develop/app/assets/javascripts/app/views/aspects_dropdown_view.js) which previously was a base for the AspectMembership view. The AspectDropdown view is used in the publisher and also renders serverside. This PR makes AspectMembership independent of the AspectDropdown. Maybe it worth making AspectDropdown template based as well and basing AspectMembership on AspectDropdown again since they are definetely related. I can do that as well, but it's some extra work and I'd like to avoid it for a while if it could be separated from this job. However, if you say it's wanted, I could make it."},"comment":{"url":"https://api.github.com/repos/diaspora/diaspora/issues/comments/233129291","html_url":"https://github.com/diaspora/diaspora/pull/6864#issuecomment-233129291","issue_url":"https://api.github.com/repos/diaspora/diaspora/issues/6864","id":233129291,"user":{"login":"svbergerem","id":3798614,"avatar_url":"https://avatars.githubusercontent.com/u/3798614?v=3","gravatar_id":"","url":"https://api.github.com/users/svbergerem","html_url":"https://github.com/svbergerem","followers_url":"https://api.github.com/users/svbergerem/followers","following_url":"https://api.github.com/users/svbergerem/following{/other_user}","gists_url":"https://api.github.com/users/svbergerem/gists{/gist_id}","starred_url":"https://api.github.com/users/svbergerem/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/svbergerem/subscriptions","organizations_url":"https://api.github.com/users/svbergerem/orgs","repos_url":"https://api.github.com/users/svbergerem/repos","events_url":"https://api.github.com/users/svbergerem/events{/privacy}","received_events_url":"https://api.github.com/users/svbergerem/received_events","type":"User","site_admin":false},"created_at":"2016-07-16T13:00:51Z","updated_at":"2016-07-16T13:00:51Z","body":"@cmrd-senya Sounds good to me."}}
{"actor":{"display_login":"svbergerem"}}