{"action":"opened","number":2235,"pull_request":{"url":"https://api.github.com/repos/getgrav/grav/pulls/2235","id":225150001,"node_id":"MDExOlB1bGxSZXF1ZXN0MjI1MTUwMDAx","html_url":"https://github.com/getgrav/grav/pull/2235","diff_url":"https://github.com/getgrav/grav/pull/2235.diff","patch_url":"https://github.com/getgrav/grav/pull/2235.patch","issue_url":"https://api.github.com/repos/getgrav/grav/issues/2235","number":2235,"state":"open","locked":false,"title":"[Bug Fix] - Markdown Processing for Telephone Links","user":{"login":"ScottHamper","id":395192,"node_id":"MDQ6VXNlcjM5NTE5Mg==","avatar_url":"https://avatars3.githubusercontent.com/u/395192?v=4","gravatar_id":"","url":"https://api.github.com/users/ScottHamper","html_url":"https://github.com/ScottHamper","followers_url":"https://api.github.com/users/ScottHamper/followers","following_url":"https://api.github.com/users/ScottHamper/following{/other_user}","gists_url":"https://api.github.com/users/ScottHamper/gists{/gist_id}","starred_url":"https://api.github.com/users/ScottHamper/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ScottHamper/subscriptions","organizations_url":"https://api.github.com/users/ScottHamper/orgs","repos_url":"https://api.github.com/users/ScottHamper/repos","events_url":"https://api.github.com/users/ScottHamper/events{/privacy}","received_events_url":"https://api.github.com/users/ScottHamper/received_events","type":"User","site_admin":false},"body":"Hey All,\r\n\r\nTelephone link URLs use the `+` character to specify a [globally unique number](https://tools.ietf.org/html/rfc3966#section-5.1.4). However, when Grav parses a markdown telephone link, it replaces any `+` characters with spaces.\r\n\r\nFor example, `[Call us](tel:+15551231234)` becomes `<a href=\"tel: 15551231234\">Call us</a>`\r\n\r\nThis replacement is happening because [`inlineLink` in `ParsedownGravTrait` calls `processLinkExcerpt`](https://github.com/getgrav/grav/blob/1.5.3/system/src/Grav/Common/Markdown/ParsedownGravTrait.php#L240), which then [uses `urldecode` on the `href` attribute](https://github.com/getgrav/grav/blob/1.5.3/system/src/Grav/Common/Helpers/Excerpts.php#L120) - `urldecode` replaces all `+` characters with spaces.\r\n\r\nThis pull request attempts to solve the issue by simply changing the call to `urldecode` to [`rawurldecode`](http://php.net/manual/en/function.rawurldecode.php). `rawurldecode` works the same as `urldecode`, except that it does not replace `+` characters.","created_at":"2018-10-23T18:57:20Z","updated_at":"2018-10-23T18:57:20Z","closed_at":null,"merged_at":null,"merge_commit_sha":null,"assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/getgrav/grav/pulls/2235/commits","review_comments_url":"https://api.github.com/repos/getgrav/grav/pulls/2235/comments","review_comment_url":"https://api.github.com/repos/getgrav/grav/pulls/comments{/number}","comments_url":"https://api.github.com/repos/getgrav/grav/issues/2235/comments","statuses_url":"https://api.github.com/repos/getgrav/grav/statuses/9d1dd1eb418081032b10026ce9a94504b9416444","head":{"label":"ScottHamper:bug-fix/telephone-markdown-links","ref":"bug-fix/telephone-markdown-links","sha":"9d1dd1eb418081032b10026ce9a94504b9416444","user":{"login":"ScottHamper","id":395192,"node_id":"MDQ6VXNlcjM5NTE5Mg==","avatar_url":"https://avatars3.githubusercontent.com/u/395192?v=4","gravatar_id":"","url":"https://api.github.com/users/ScottHamper","html_url":"https://github.com/ScottHamper","followers_url":"https://api.github.com/users/ScottHamper/followers","following_url":"https://api.github.com/users/ScottHamper/following{/other_user}","gists_url":"https://api.github.com/users/ScottHamper/gists{/gist_id}","starred_url":"https://api.github.com/users/ScottHamper/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ScottHamper/subscriptions","organizations_url":"https://api.github.com/users/ScottHamper/orgs","repos_url":"https://api.github.com/users/ScottHamper/repos","events_url":"https://api.github.com/users/ScottHamper/events{/privacy}","received_events_url":"https://api.github.com/users/ScottHamper/received_events","type":"User","site_admin":false},"repo":{"id":89949154,"node_id":"MDEwOlJlcG9zaXRvcnk4OTk0OTE1NA==","name":"grav","full_name":"ScottHamper/grav","private":false,"owner":{"login":"ScottHamper","id":395192,"node_id":"MDQ6VXNlcjM5NTE5Mg==","avatar_url":"https://avatars3.githubusercontent.com/u/395192?v=4","gravatar_id":"","url":"https://api.github.com/users/ScottHamper","html_url":"https://github.com/ScottHamper","followers_url":"https://api.github.com/users/ScottHamper/followers","following_url":"https://api.github.com/users/ScottHamper/following{/other_user}","gists_url":"https://api.github.com/users/ScottHamper/gists{/gist_id}","starred_url":"https://api.github.com/users/ScottHamper/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ScottHamper/subscriptions","organizations_url":"https://api.github.com/users/ScottHamper/orgs","repos_url":"https://api.github.com/users/ScottHamper/repos","events_url":"https://api.github.com/users/ScottHamper/events{/privacy}","received_events_url":"https://api.github.com/users/ScottHamper/received_events","type":"User","site_admin":false},"html_url":"https://github.com/ScottHamper/grav","description":"Modern, Crazy Fast, Ridiculously Easy and Amazingly Powerful Flat-File CMS","fork":true,"url":"https://api.github.com/repos/ScottHamper/grav","forks_url":"https://api.github.com/repos/ScottHamper/grav/forks","keys_url":"https://api.github.com/repos/ScottHamper/grav/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ScottHamper/grav/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ScottHamper/grav/teams","hooks_url":"https://api.github.com/repos/ScottHamper/grav/hooks","issue_events_url":"https://api.github.com/repos/ScottHamper/grav/issues/events{/number}","events_url":"https://api.github.com/repos/ScottHamper/grav/events","assignees_url":"https://api.github.com/repos/ScottHamper/grav/assignees{/user}","branches_url":"https://api.github.com/repos/ScottHamper/grav/branches{/branch}","tags_url":"https://api.github.com/repos/ScottHamper/grav/tags","blobs_url":"https://api.github.com/repos/ScottHamper/grav/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ScottHamper/grav/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ScottHamper/grav/git/refs{/sha}","trees_url":"https://api.github.com/repos/ScottHamper/grav/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ScottHamper/grav/statuses/{sha}","languages_url":"https://api.github.com/repos/ScottHamper/grav/languages","stargazers_url":"https://api.github.com/repos/ScottHamper/grav/stargazers","contributors_url":"https://api.github.com/repos/ScottHamper/grav/contributors","subscribers_url":"https://api.github.com/repos/ScottHamper/grav/subscribers","subscription_url":"https://api.github.com/repos/ScottHamper/grav/subscription","commits_url":"https://api.github.com/repos/ScottHamper/grav/commits{/sha}","git_commits_url":"https://api.github.com/repos/ScottHamper/grav/git/commits{/sha}","comments_url":"https://api.github.com/repos/ScottHamper/grav/comments{/number}","issue_comment_url":"https://api.github.com/repos/ScottHamper/grav/issues/comments{/number}","contents_url":"https://api.github.com/repos/ScottHamper/grav/contents/{+path}","compare_url":"https://api.github.com/repos/ScottHamper/grav/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ScottHamper/grav/merges","archive_url":"https://api.github.com/repos/ScottHamper/grav/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ScottHamper/grav/downloads","issues_url":"https://api.github.com/repos/ScottHamper/grav/issues{/number}","pulls_url":"https://api.github.com/repos/ScottHamper/grav/pulls{/number}","milestones_url":"https://api.github.com/repos/ScottHamper/grav/milestones{/number}","notifications_url":"https://api.github.com/repos/ScottHamper/grav/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ScottHamper/grav/labels{/name}","releases_url":"https://api.github.com/repos/ScottHamper/grav/releases{/id}","deployments_url":"https://api.github.com/repos/ScottHamper/grav/deployments","created_at":"2017-05-01T18:09:15Z","updated_at":"2018-10-23T18:36:21Z","pushed_at":"2018-10-23T18:39:32Z","git_url":"git://github.com/ScottHamper/grav.git","ssh_url":"git@github.com:ScottHamper/grav.git","clone_url":"https://github.com/ScottHamper/grav.git","svn_url":"https://github.com/ScottHamper/grav","homepage":"https://getgrav.org","size":10456,"stargazers_count":0,"watchers_count":0,"language":"PHP","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":0,"open_issues":0,"watchers":0,"default_branch":"develop"}},"base":{"label":"getgrav:develop","ref":"develop","sha":"a3caa13c23372ccf5ece98acf62daa4eed0e140e","user":{"login":"getgrav","id":8237355,"node_id":"MDEyOk9yZ2FuaXphdGlvbjgyMzczNTU=","avatar_url":"https://avatars1.githubusercontent.com/u/8237355?v=4","gravatar_id":"","url":"https://api.github.com/users/getgrav","html_url":"https://github.com/getgrav","followers_url":"https://api.github.com/users/getgrav/followers","following_url":"https://api.github.com/users/getgrav/following{/other_user}","gists_url":"https://api.github.com/users/getgrav/gists{/gist_id}","starred_url":"https://api.github.com/users/getgrav/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/getgrav/subscriptions","organizations_url":"https://api.github.com/users/getgrav/orgs","repos_url":"https://api.github.com/users/getgrav/repos","events_url":"https://api.github.com/users/getgrav/events{/privacy}","received_events_url":"https://api.github.com/users/getgrav/received_events","type":"Organization","site_admin":false},"repo":{"id":22553797,"node_id":"MDEwOlJlcG9zaXRvcnkyMjU1Mzc5Nw==","name":"grav","full_name":"getgrav/grav","private":false,"owner":{"login":"getgrav","id":8237355,"node_id":"MDEyOk9yZ2FuaXphdGlvbjgyMzczNTU=","avatar_url":"https://avatars1.githubusercontent.com/u/8237355?v=4","gravatar_id":"","url":"https://api.github.com/users/getgrav","html_url":"https://github.com/getgrav","followers_url":"https://api.github.com/users/getgrav/followers","following_url":"https://api.github.com/users/getgrav/following{/other_user}","gists_url":"https://api.github.com/users/getgrav/gists{/gist_id}","starred_url":"https://api.github.com/users/getgrav/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/getgrav/subscriptions","organizations_url":"https://api.github.com/users/getgrav/orgs","repos_url":"https://api.github.com/users/getgrav/repos","events_url":"https://api.github.com/users/getgrav/events{/privacy}","received_events_url":"https://api.github.com/users/getgrav/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/getgrav/grav","description":"Modern, Crazy Fast, Ridiculously Easy and Amazingly Powerful Flat-File CMS","fork":false,"url":"https://api.github.com/repos/getgrav/grav","forks_url":"https://api.github.com/repos/getgrav/grav/forks","keys_url":"https://api.github.com/repos/getgrav/grav/keys{/key_id}","collaborators_url":"https://api.github.com/repos/getgrav/grav/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/getgrav/grav/teams","hooks_url":"https://api.github.com/repos/getgrav/grav/hooks","issue_events_url":"https://api.github.com/repos/getgrav/grav/issues/events{/number}","events_url":"https://api.github.com/repos/getgrav/grav/events","assignees_url":"https://api.github.com/repos/getgrav/grav/assignees{/user}","branches_url":"https://api.github.com/repos/getgrav/grav/branches{/branch}","tags_url":"https://api.github.com/repos/getgrav/grav/tags","blobs_url":"https://api.github.com/repos/getgrav/grav/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/getgrav/grav/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/getgrav/grav/git/refs{/sha}","trees_url":"https://api.github.com/repos/getgrav/grav/git/trees{/sha}","statuses_url":"https://api.github.com/repos/getgrav/grav/statuses/{sha}","languages_url":"https://api.github.com/repos/getgrav/grav/languages","stargazers_url":"https://api.github.com/repos/getgrav/grav/stargazers","contributors_url":"https://api.github.com/repos/getgrav/grav/contributors","subscribers_url":"https://api.github.com/repos/getgrav/grav/subscribers","subscription_url":"https://api.github.com/repos/getgrav/grav/subscription","commits_url":"https://api.github.com/repos/getgrav/grav/commits{/sha}","git_commits_url":"https://api.github.com/repos/getgrav/grav/git/commits{/sha}","comments_url":"https://api.github.com/repos/getgrav/grav/comments{/number}","issue_comment_url":"https://api.github.com/repos/getgrav/grav/issues/comments{/number}","contents_url":"https://api.github.com/repos/getgrav/grav/contents/{+path}","compare_url":"https://api.github.com/repos/getgrav/grav/compare/{base}...{head}","merges_url":"https://api.github.com/repos/getgrav/grav/merges","archive_url":"https://api.github.com/repos/getgrav/grav/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/getgrav/grav/downloads","issues_url":"https://api.github.com/repos/getgrav/grav/issues{/number}","pulls_url":"https://api.github.com/repos/getgrav/grav/pulls{/number}","milestones_url":"https://api.github.com/repos/getgrav/grav/milestones{/number}","notifications_url":"https://api.github.com/repos/getgrav/grav/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/getgrav/grav/labels{/name}","releases_url":"https://api.github.com/repos/getgrav/grav/releases{/id}","deployments_url":"https://api.github.com/repos/getgrav/grav/deployments","created_at":"2014-08-02T18:29:10Z","updated_at":"2018-10-23T14:40:02Z","pushed_at":"2018-10-23T18:37:11Z","git_url":"git://github.com/getgrav/grav.git","ssh_url":"git@github.com:getgrav/grav.git","clone_url":"https://github.com/getgrav/grav.git","svn_url":"https://github.com/getgrav/grav","homepage":"https://getgrav.org","size":13967,"stargazers_count":9694,"watchers_count":9694,"language":"PHP","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":964,"mirror_url":null,"archived":false,"open_issues_count":266,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":964,"open_issues":266,"watchers":9694,"default_branch":"develop"}},"_links":{"self":{"href":"https://api.github.com/repos/getgrav/grav/pulls/2235"},"html":{"href":"https://github.com/getgrav/grav/pull/2235"},"issue":{"href":"https://api.github.com/repos/getgrav/grav/issues/2235"},"comments":{"href":"https://api.github.com/repos/getgrav/grav/issues/2235/comments"},"review_comments":{"href":"https://api.github.com/repos/getgrav/grav/pulls/2235/comments"},"review_comment":{"href":"https://api.github.com/repos/getgrav/grav/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/getgrav/grav/pulls/2235/commits"},"statuses":{"href":"https://api.github.com/repos/getgrav/grav/statuses/9d1dd1eb418081032b10026ce9a94504b9416444"}},"author_association":"CONTRIBUTOR","merged":false,"mergeable":null,"rebaseable":null,"mergeable_state":"unknown","merged_by":null,"comments":0,"review_comments":0,"maintainer_can_modify":true,"commits":2,"additions":1,"deletions":1,"changed_files":1}}
{"actor":{"display_login":"ScottHamper"}}