{"action":"closed","number":522,"pull_request":{"url":"https://api.github.com/repos/kickstarter/ios-oss/pulls/522","id":237439661,"node_id":"MDExOlB1bGxSZXF1ZXN0MjM3NDM5NjYx","html_url":"https://github.com/kickstarter/ios-oss/pull/522","diff_url":"https://github.com/kickstarter/ios-oss/pull/522.diff","patch_url":"https://github.com/kickstarter/ios-oss/pull/522.patch","issue_url":"https://api.github.com/repos/kickstarter/ios-oss/issues/522","number":522,"state":"closed","locked":false,"title":"Fix disappearing email button, fix banner not showing after multiple taps","user":{"login":"ifbarrera","id":3156796,"node_id":"MDQ6VXNlcjMxNTY3OTY=","avatar_url":"https://avatars2.githubusercontent.com/u/3156796?v=4","gravatar_id":"","url":"https://api.github.com/users/ifbarrera","html_url":"https://github.com/ifbarrera","followers_url":"https://api.github.com/users/ifbarrera/followers","following_url":"https://api.github.com/users/ifbarrera/following{/other_user}","gists_url":"https://api.github.com/users/ifbarrera/gists{/gist_id}","starred_url":"https://api.github.com/users/ifbarrera/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ifbarrera/subscriptions","organizations_url":"https://api.github.com/users/ifbarrera/orgs","repos_url":"https://api.github.com/users/ifbarrera/repos","events_url":"https://api.github.com/users/ifbarrera/events{/privacy}","received_events_url":"https://api.github.com/users/ifbarrera/received_events","type":"User","site_admin":false},"body":"# 📲 What\r\n\r\nThis PR fixes the following bugs:\r\n\r\n- change password in landscape mode is too wide\r\n- error message banner stops appearing after multiple \"Save\" actions\r\n- send verification email button disappears when moving into landscape mode\r\n\r\n# 🤔 Why\r\n\r\nCleanup all the bugs around Settings V2.\r\n\r\n# 🛠 How\r\n\r\n- Cleaned up all the constraints in Change Email and Change Password, which should have been made relative to the safe area, not the superview.\r\n- the `sendEmailVerification` button was being manually hidden in `bindStyles`, which gets re-called when you move to landscape mode. In order to achieve the same thing, we can merge the `viewDidLoadProperty` signal to always hide the `resendEmailVerificationView` when the view loads\r\n- the banner view had a bunch of logic in the view controller that was based on the `isAnimating` bool. I realized that we don't actually need that logic because the view model already filters repeating signals (via `skipRepeats()`). Removing that unnecessary logic fixes the banner bug.\r\n\r\n# 👀 See\r\n\r\n![vtc5rccjlm](https://user-images.githubusercontent.com/3156796/49756242-cc1c6e80-fc87-11e8-9285-48bbee64e614.gif)\r\n![teiswjone5](https://user-images.githubusercontent.com/3156796/49756251-ce7ec880-fc87-11e8-9c52-bf24c7d50400.gif)\r\n\r\n\r\n# ✅ Acceptance criteria\r\n\r\n- [x] go to the change password screen, turn your phone to landscape mode and see that it is the correct size\r\n- [x] go to the change email screen, turn your phone to landscape mode: the `Send email verification` button should not disappear\r\n- [x] go to the change password screen, enter the wrong `current password` and then any password in the `new password` fields. Hit Save, then continue to hit save (~ 10 times). The banner should always re-appear after disappearing.\r\n","created_at":"2018-12-10T19:32:03Z","updated_at":"2018-12-14T17:58:47Z","closed_at":"2018-12-14T17:58:47Z","merged_at":"2018-12-14T17:58:47Z","merge_commit_sha":"202472064bdb8e3dbba71b688bd70e539dfe049f","assignee":{"login":"cdolm92","id":11362005,"node_id":"MDQ6VXNlcjExMzYyMDA1","avatar_url":"https://avatars3.githubusercontent.com/u/11362005?v=4","gravatar_id":"","url":"https://api.github.com/users/cdolm92","html_url":"https://github.com/cdolm92","followers_url":"https://api.github.com/users/cdolm92/followers","following_url":"https://api.github.com/users/cdolm92/following{/other_user}","gists_url":"https://api.github.com/users/cdolm92/gists{/gist_id}","starred_url":"https://api.github.com/users/cdolm92/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cdolm92/subscriptions","organizations_url":"https://api.github.com/users/cdolm92/orgs","repos_url":"https://api.github.com/users/cdolm92/repos","events_url":"https://api.github.com/users/cdolm92/events{/privacy}","received_events_url":"https://api.github.com/users/cdolm92/received_events","type":"User","site_admin":false},"assignees":[{"login":"cdolm92","id":11362005,"node_id":"MDQ6VXNlcjExMzYyMDA1","avatar_url":"https://avatars3.githubusercontent.com/u/11362005?v=4","gravatar_id":"","url":"https://api.github.com/users/cdolm92","html_url":"https://github.com/cdolm92","followers_url":"https://api.github.com/users/cdolm92/followers","following_url":"https://api.github.com/users/cdolm92/following{/other_user}","gists_url":"https://api.github.com/users/cdolm92/gists{/gist_id}","starred_url":"https://api.github.com/users/cdolm92/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cdolm92/subscriptions","organizations_url":"https://api.github.com/users/cdolm92/orgs","repos_url":"https://api.github.com/users/cdolm92/repos","events_url":"https://api.github.com/users/cdolm92/events{/privacy}","received_events_url":"https://api.github.com/users/cdolm92/received_events","type":"User","site_admin":false}],"requested_reviewers":[],"requested_teams":[],"labels":[{"id":925804105,"node_id":"MDU6TGFiZWw5MjU4MDQxMDU=","url":"https://api.github.com/repos/kickstarter/ios-oss/labels/needs%20review","name":"needs review","color":"fcd753","default":false}],"milestone":null,"commits_url":"https://api.github.com/repos/kickstarter/ios-oss/pulls/522/commits","review_comments_url":"https://api.github.com/repos/kickstarter/ios-oss/pulls/522/comments","review_comment_url":"https://api.github.com/repos/kickstarter/ios-oss/pulls/comments{/number}","comments_url":"https://api.github.com/repos/kickstarter/ios-oss/issues/522/comments","statuses_url":"https://api.github.com/repos/kickstarter/ios-oss/statuses/0c0cadf256024d4090b857e83ea00627d0d8fba5","head":{"label":"kickstarter:misc-bugfixes","ref":"misc-bugfixes","sha":"0c0cadf256024d4090b857e83ea00627d0d8fba5","user":{"login":"kickstarter","id":120676,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEyMDY3Ng==","avatar_url":"https://avatars1.githubusercontent.com/u/120676?v=4","gravatar_id":"","url":"https://api.github.com/users/kickstarter","html_url":"https://github.com/kickstarter","followers_url":"https://api.github.com/users/kickstarter/followers","following_url":"https://api.github.com/users/kickstarter/following{/other_user}","gists_url":"https://api.github.com/users/kickstarter/gists{/gist_id}","starred_url":"https://api.github.com/users/kickstarter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kickstarter/subscriptions","organizations_url":"https://api.github.com/users/kickstarter/orgs","repos_url":"https://api.github.com/users/kickstarter/repos","events_url":"https://api.github.com/users/kickstarter/events{/privacy}","received_events_url":"https://api.github.com/users/kickstarter/received_events","type":"Organization","site_admin":false},"repo":{"id":75432091,"node_id":"MDEwOlJlcG9zaXRvcnk3NTQzMjA5MQ==","name":"ios-oss","full_name":"kickstarter/ios-oss","private":false,"owner":{"login":"kickstarter","id":120676,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEyMDY3Ng==","avatar_url":"https://avatars1.githubusercontent.com/u/120676?v=4","gravatar_id":"","url":"https://api.github.com/users/kickstarter","html_url":"https://github.com/kickstarter","followers_url":"https://api.github.com/users/kickstarter/followers","following_url":"https://api.github.com/users/kickstarter/following{/other_user}","gists_url":"https://api.github.com/users/kickstarter/gists{/gist_id}","starred_url":"https://api.github.com/users/kickstarter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kickstarter/subscriptions","organizations_url":"https://api.github.com/users/kickstarter/orgs","repos_url":"https://api.github.com/users/kickstarter/repos","events_url":"https://api.github.com/users/kickstarter/events{/privacy}","received_events_url":"https://api.github.com/users/kickstarter/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/kickstarter/ios-oss","description":"Kickstarter for iOS. Bring new ideas to life, anywhere.","fork":false,"url":"https://api.github.com/repos/kickstarter/ios-oss","forks_url":"https://api.github.com/repos/kickstarter/ios-oss/forks","keys_url":"https://api.github.com/repos/kickstarter/ios-oss/keys{/key_id}","collaborators_url":"https://api.github.com/repos/kickstarter/ios-oss/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/kickstarter/ios-oss/teams","hooks_url":"https://api.github.com/repos/kickstarter/ios-oss/hooks","issue_events_url":"https://api.github.com/repos/kickstarter/ios-oss/issues/events{/number}","events_url":"https://api.github.com/repos/kickstarter/ios-oss/events","assignees_url":"https://api.github.com/repos/kickstarter/ios-oss/assignees{/user}","branches_url":"https://api.github.com/repos/kickstarter/ios-oss/branches{/branch}","tags_url":"https://api.github.com/repos/kickstarter/ios-oss/tags","blobs_url":"https://api.github.com/repos/kickstarter/ios-oss/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/kickstarter/ios-oss/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/kickstarter/ios-oss/git/refs{/sha}","trees_url":"https://api.github.com/repos/kickstarter/ios-oss/git/trees{/sha}","statuses_url":"https://api.github.com/repos/kickstarter/ios-oss/statuses/{sha}","languages_url":"https://api.github.com/repos/kickstarter/ios-oss/languages","stargazers_url":"https://api.github.com/repos/kickstarter/ios-oss/stargazers","contributors_url":"https://api.github.com/repos/kickstarter/ios-oss/contributors","subscribers_url":"https://api.github.com/repos/kickstarter/ios-oss/subscribers","subscription_url":"https://api.github.com/repos/kickstarter/ios-oss/subscription","commits_url":"https://api.github.com/repos/kickstarter/ios-oss/commits{/sha}","git_commits_url":"https://api.github.com/repos/kickstarter/ios-oss/git/commits{/sha}","comments_url":"https://api.github.com/repos/kickstarter/ios-oss/comments{/number}","issue_comment_url":"https://api.github.com/repos/kickstarter/ios-oss/issues/comments{/number}","contents_url":"https://api.github.com/repos/kickstarter/ios-oss/contents/{+path}","compare_url":"https://api.github.com/repos/kickstarter/ios-oss/compare/{base}...{head}","merges_url":"https://api.github.com/repos/kickstarter/ios-oss/merges","archive_url":"https://api.github.com/repos/kickstarter/ios-oss/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/kickstarter/ios-oss/downloads","issues_url":"https://api.github.com/repos/kickstarter/ios-oss/issues{/number}","pulls_url":"https://api.github.com/repos/kickstarter/ios-oss/pulls{/number}","milestones_url":"https://api.github.com/repos/kickstarter/ios-oss/milestones{/number}","notifications_url":"https://api.github.com/repos/kickstarter/ios-oss/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/kickstarter/ios-oss/labels{/name}","releases_url":"https://api.github.com/repos/kickstarter/ios-oss/releases{/id}","deployments_url":"https://api.github.com/repos/kickstarter/ios-oss/deployments","created_at":"2016-12-02T21:24:40Z","updated_at":"2018-12-14T13:05:22Z","pushed_at":"2018-12-14T17:58:47Z","git_url":"git://github.com/kickstarter/ios-oss.git","ssh_url":"git@github.com:kickstarter/ios-oss.git","clone_url":"https://github.com/kickstarter/ios-oss.git","svn_url":"https://github.com/kickstarter/ios-oss","homepage":"https://www.kickstarter.com/mobile","size":1377888,"stargazers_count":6432,"watchers_count":6432,"language":"Swift","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":936,"mirror_url":null,"archived":false,"open_issues_count":7,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":936,"open_issues":7,"watchers":6432,"default_branch":"master"}},"base":{"label":"kickstarter:master","ref":"master","sha":"817f5f36596a0bd7b110164e1d77e798ca33165e","user":{"login":"kickstarter","id":120676,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEyMDY3Ng==","avatar_url":"https://avatars1.githubusercontent.com/u/120676?v=4","gravatar_id":"","url":"https://api.github.com/users/kickstarter","html_url":"https://github.com/kickstarter","followers_url":"https://api.github.com/users/kickstarter/followers","following_url":"https://api.github.com/users/kickstarter/following{/other_user}","gists_url":"https://api.github.com/users/kickstarter/gists{/gist_id}","starred_url":"https://api.github.com/users/kickstarter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kickstarter/subscriptions","organizations_url":"https://api.github.com/users/kickstarter/orgs","repos_url":"https://api.github.com/users/kickstarter/repos","events_url":"https://api.github.com/users/kickstarter/events{/privacy}","received_events_url":"https://api.github.com/users/kickstarter/received_events","type":"Organization","site_admin":false},"repo":{"id":75432091,"node_id":"MDEwOlJlcG9zaXRvcnk3NTQzMjA5MQ==","name":"ios-oss","full_name":"kickstarter/ios-oss","private":false,"owner":{"login":"kickstarter","id":120676,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEyMDY3Ng==","avatar_url":"https://avatars1.githubusercontent.com/u/120676?v=4","gravatar_id":"","url":"https://api.github.com/users/kickstarter","html_url":"https://github.com/kickstarter","followers_url":"https://api.github.com/users/kickstarter/followers","following_url":"https://api.github.com/users/kickstarter/following{/other_user}","gists_url":"https://api.github.com/users/kickstarter/gists{/gist_id}","starred_url":"https://api.github.com/users/kickstarter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kickstarter/subscriptions","organizations_url":"https://api.github.com/users/kickstarter/orgs","repos_url":"https://api.github.com/users/kickstarter/repos","events_url":"https://api.github.com/users/kickstarter/events{/privacy}","received_events_url":"https://api.github.com/users/kickstarter/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/kickstarter/ios-oss","description":"Kickstarter for iOS. Bring new ideas to life, anywhere.","fork":false,"url":"https://api.github.com/repos/kickstarter/ios-oss","forks_url":"https://api.github.com/repos/kickstarter/ios-oss/forks","keys_url":"https://api.github.com/repos/kickstarter/ios-oss/keys{/key_id}","collaborators_url":"https://api.github.com/repos/kickstarter/ios-oss/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/kickstarter/ios-oss/teams","hooks_url":"https://api.github.com/repos/kickstarter/ios-oss/hooks","issue_events_url":"https://api.github.com/repos/kickstarter/ios-oss/issues/events{/number}","events_url":"https://api.github.com/repos/kickstarter/ios-oss/events","assignees_url":"https://api.github.com/repos/kickstarter/ios-oss/assignees{/user}","branches_url":"https://api.github.com/repos/kickstarter/ios-oss/branches{/branch}","tags_url":"https://api.github.com/repos/kickstarter/ios-oss/tags","blobs_url":"https://api.github.com/repos/kickstarter/ios-oss/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/kickstarter/ios-oss/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/kickstarter/ios-oss/git/refs{/sha}","trees_url":"https://api.github.com/repos/kickstarter/ios-oss/git/trees{/sha}","statuses_url":"https://api.github.com/repos/kickstarter/ios-oss/statuses/{sha}","languages_url":"https://api.github.com/repos/kickstarter/ios-oss/languages","stargazers_url":"https://api.github.com/repos/kickstarter/ios-oss/stargazers","contributors_url":"https://api.github.com/repos/kickstarter/ios-oss/contributors","subscribers_url":"https://api.github.com/repos/kickstarter/ios-oss/subscribers","subscription_url":"https://api.github.com/repos/kickstarter/ios-oss/subscription","commits_url":"https://api.github.com/repos/kickstarter/ios-oss/commits{/sha}","git_commits_url":"https://api.github.com/repos/kickstarter/ios-oss/git/commits{/sha}","comments_url":"https://api.github.com/repos/kickstarter/ios-oss/comments{/number}","issue_comment_url":"https://api.github.com/repos/kickstarter/ios-oss/issues/comments{/number}","contents_url":"https://api.github.com/repos/kickstarter/ios-oss/contents/{+path}","compare_url":"https://api.github.com/repos/kickstarter/ios-oss/compare/{base}...{head}","merges_url":"https://api.github.com/repos/kickstarter/ios-oss/merges","archive_url":"https://api.github.com/repos/kickstarter/ios-oss/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/kickstarter/ios-oss/downloads","issues_url":"https://api.github.com/repos/kickstarter/ios-oss/issues{/number}","pulls_url":"https://api.github.com/repos/kickstarter/ios-oss/pulls{/number}","milestones_url":"https://api.github.com/repos/kickstarter/ios-oss/milestones{/number}","notifications_url":"https://api.github.com/repos/kickstarter/ios-oss/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/kickstarter/ios-oss/labels{/name}","releases_url":"https://api.github.com/repos/kickstarter/ios-oss/releases{/id}","deployments_url":"https://api.github.com/repos/kickstarter/ios-oss/deployments","created_at":"2016-12-02T21:24:40Z","updated_at":"2018-12-14T13:05:22Z","pushed_at":"2018-12-14T17:58:47Z","git_url":"git://github.com/kickstarter/ios-oss.git","ssh_url":"git@github.com:kickstarter/ios-oss.git","clone_url":"https://github.com/kickstarter/ios-oss.git","svn_url":"https://github.com/kickstarter/ios-oss","homepage":"https://www.kickstarter.com/mobile","size":1377888,"stargazers_count":6432,"watchers_count":6432,"language":"Swift","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":936,"mirror_url":null,"archived":false,"open_issues_count":7,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":936,"open_issues":7,"watchers":6432,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/kickstarter/ios-oss/pulls/522"},"html":{"href":"https://github.com/kickstarter/ios-oss/pull/522"},"issue":{"href":"https://api.github.com/repos/kickstarter/ios-oss/issues/522"},"comments":{"href":"https://api.github.com/repos/kickstarter/ios-oss/issues/522/comments"},"review_comments":{"href":"https://api.github.com/repos/kickstarter/ios-oss/pulls/522/comments"},"review_comment":{"href":"https://api.github.com/repos/kickstarter/ios-oss/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/kickstarter/ios-oss/pulls/522/commits"},"statuses":{"href":"https://api.github.com/repos/kickstarter/ios-oss/statuses/0c0cadf256024d4090b857e83ea00627d0d8fba5"}},"author_association":"CONTRIBUTOR","merged":true,"mergeable":null,"rebaseable":null,"mergeable_state":"unknown","merged_by":{"login":"ifbarrera","id":3156796,"node_id":"MDQ6VXNlcjMxNTY3OTY=","avatar_url":"https://avatars2.githubusercontent.com/u/3156796?v=4","gravatar_id":"","url":"https://api.github.com/users/ifbarrera","html_url":"https://github.com/ifbarrera","followers_url":"https://api.github.com/users/ifbarrera/followers","following_url":"https://api.github.com/users/ifbarrera/following{/other_user}","gists_url":"https://api.github.com/users/ifbarrera/gists{/gist_id}","starred_url":"https://api.github.com/users/ifbarrera/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ifbarrera/subscriptions","organizations_url":"https://api.github.com/users/ifbarrera/orgs","repos_url":"https://api.github.com/users/ifbarrera/repos","events_url":"https://api.github.com/users/ifbarrera/events{/privacy}","received_events_url":"https://api.github.com/users/ifbarrera/received_events","type":"User","site_admin":false},"comments":2,"review_comments":4,"maintainer_can_modify":false,"commits":5,"additions":37,"deletions":47,"changed_files":5}}
{"actor":{"display_login":"ifbarrera"}}