{"action":"created","issue":{"url":"https://api.github.com/repos/c2corg/v6_ui/issues/728","repository_url":"https://api.github.com/repos/c2corg/v6_ui","labels_url":"https://api.github.com/repos/c2corg/v6_ui/issues/728/labels{/name}","comments_url":"https://api.github.com/repos/c2corg/v6_ui/issues/728/comments","events_url":"https://api.github.com/repos/c2corg/v6_ui/issues/728/events","html_url":"https://github.com/c2corg/v6_ui/pull/728","id":182603966,"number":728,"title":"[WIP] Add user profile page","user":{"login":"asaunier","id":1192331,"avatar_url":"https://avatars.githubusercontent.com/u/1192331?v=3","gravatar_id":"","url":"https://api.github.com/users/asaunier","html_url":"https://github.com/asaunier","followers_url":"https://api.github.com/users/asaunier/followers","following_url":"https://api.github.com/users/asaunier/following{/other_user}","gists_url":"https://api.github.com/users/asaunier/gists{/gist_id}","starred_url":"https://api.github.com/users/asaunier/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/asaunier/subscriptions","organizations_url":"https://api.github.com/users/asaunier/orgs","repos_url":"https://api.github.com/users/asaunier/repos","events_url":"https://api.github.com/users/asaunier/events{/privacy}","received_events_url":"https://api.github.com/users/asaunier/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":24,"created_at":"2016-10-12T18:50:25Z","updated_at":"2016-10-20T07:34:10Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/c2corg/v6_ui/pulls/728","html_url":"https://github.com/c2corg/v6_ui/pull/728","diff_url":"https://github.com/c2corg/v6_ui/pull/728.diff","patch_url":"https://github.com/c2corg/v6_ui/pull/728.patch"},"body":"Fixes https://github.com/c2corg/v6_ui/issues/335\r\n\r\n\r\nUser profile contains:\r\n* [x] a document-like part with attributes and description.\r\n* [ ] support map if geom is provided\r\n * [ ] icon for profiles (see https://github.com/c2corg/v6_ui/issues/390#issuecomment-254819356)\r\n* [ ] show images (but associated images are not provided by the API, see https://github.com/c2corg/v6_api/issues/389)\r\n* [ ] a user-filtered activity feed, similar to the homepage activity feed (see https://github.com/c2corg/v6_ui/issues/625)\r\n\r\n* [x] User profile pages have a special access system (owners can mark them as not public). Here is the solution that has been discussed for managing the page access:\r\n * When you open e.g. \"/profile/123\" the browser makes an unauthenticated request to the ui server-side.  The ui server-side returns a page without the actual content (only header/footer, similar to the edit pages).\r\n * On the client-side we make an authenticated AJAX request to ui server-side (not the API) to fetch the actual content.\r\n * The ui server-side makes a request to the API, forwarding the authentication token to get the required data. The API checks the permission.\r\n * The ui server-side renders the content as HTML.\r\n * On the client-side you insert the received HTML in the page.\r\n\r\n* [x] Manage 404 errors\r\n* [x] Display error when trying to view a not public profile\r\n\r\n* [ ] Show edit/images/history buttons only to the owner of the profile and to moderators\r\n* [ ] ~~User profile pages must provide a \"follow\" button~~, see https://github.com/c2corg/v6_ui/issues/640\r\n\r\n* [x] Add a \"make profile public\" checkbox in the \"account\" page\r\n* [x] cache the base UI page?\r\n* [x] get only selected lang for profile locale (supported by the API?). See also https://github.com/c2corg/v6_api/issues/429\r\n* [x] update user profile link in the outings and history, diff pages\r\n* [ ] update user profile link in the feed items\r\n* [ ] styling fixes (for instance when there is no map)\r\n* [x] page title\r\n\r\nQUESTIONS:\r\n* [ ] ~~have a profile list page (advanced search page)?~~\r\n* [ ] support of v5 URLs (``users/234567/fr``) in addition to v6 URLs (``profiles/234567/fr``)? or done with other v5>v6 redirections?\r\n* [x] remove the comments in user profiles? See https://github.com/c2corg/v6_forum/issues/47"},"comment":{"url":"https://api.github.com/repos/c2corg/v6_ui/issues/comments/255030910","html_url":"https://github.com/c2corg/v6_ui/pull/728#issuecomment-255030910","issue_url":"https://api.github.com/repos/c2corg/v6_ui/issues/728","id":255030910,"user":{"login":"asaunier","id":1192331,"avatar_url":"https://avatars.githubusercontent.com/u/1192331?v=3","gravatar_id":"","url":"https://api.github.com/users/asaunier","html_url":"https://github.com/asaunier","followers_url":"https://api.github.com/users/asaunier/followers","following_url":"https://api.github.com/users/asaunier/following{/other_user}","gists_url":"https://api.github.com/users/asaunier/gists{/gist_id}","starred_url":"https://api.github.com/users/asaunier/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/asaunier/subscriptions","organizations_url":"https://api.github.com/users/asaunier/orgs","repos_url":"https://api.github.com/users/asaunier/repos","events_url":"https://api.github.com/users/asaunier/events{/privacy}","received_events_url":"https://api.github.com/users/asaunier/received_events","type":"User","site_admin":false},"created_at":"2016-10-20T07:34:10Z","updated_at":"2016-10-20T07:34:10Z","body":"OK thanks, that was so simple :)"}}
{"actor":{"display_login":"asaunier"}}