{"action":"created","comment":{"url":"https://api.github.com/repos/owncloud/core/pulls/comments/31499731","id":31499731,"diff_hunk":"@@ -0,0 +1,206 @@\n+/* This Source Code Form is subject to the terms of the Mozilla Public\n+ * License, v. 2.0. If a copy of the MPL was not distributed with this\n+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */\n+\n+// @license magnet:?xt=urn:btih:3877d6d54b3accd4bc32f8a48bf32ebc0901502a&dn=mpl-2.0.txt MPL 2.0\n+(function () {\n+    'use strict';\n+    /**\n+     * 'Share' widget for GNU social\n+     * http://code.chromic.org/project/view/2/\n+     *\n+     * We make a few assumptions about the target instance:\n+     *   1) The API root is in the default location\n+     *   2) Fancy URLs are enabled\n+     *   3) CORS is allowed\n+     *   4) The Bookmark plugin is enabled\n+     *\n+     * If 1), 3) or 4) are wrong, we fall back to a regular\n+     * notice (instead of a bookmark notice)\n+     *\n+     * If 2) is wrong the user will be directed to a 404 :(\n+     */\n+\n+    // TODO: input sanitation [1], [2]\n+    // TODO: server-side fallback if JS is disabled\n+\n+    var createForm,\n+        bindClicks,\n+        frm,\n+        shareAsNotice,\n+        shareAsBookmark,\n+        extractURLParams,\n+        shareURL,\n+        shareTitle,\n+        closest,\n+        i18n = window.i18n;\n+\n+    /**\n+     * Internationalization\n+     */\n+    if (i18n === undefined) {\n+        i18n = {\n+            invalidId: 'The account id provided is invalid',\n+            yourAcctId: 'Your account ID:',\n+            idPlaceholder: 'user@example.org',\n+            shareAsBookmark: 'Share as a bookmark'\n+        };\n+    }\n+\n+    shareAsNotice = function (title, url, domain) {\n+        window.open('http://' + domain + '/notice/new?status_textarea=' + title + ' ' + url); // [1]\n+    };\n+\n+    shareAsBookmark = function (title, url, domain) {\n+        window.open('http://' + domain + '/main/bookmark/new?url=' + url + '&title=' + title); // [2]\n+    };\n+\n+    /**\n+     * Extract parameters from query string\n+     *\n+     * ex:\n+     *   ?foo=bar&baz=test\n+     * will return:\n+     *   {foo: 'bar', baz: 'test'}\n+     */\n+    extractURLParams = function (queryStr) {\n+        var parts = queryStr.substr(1).split('&'),\n+            i, len, keyVal, params = {};\n+\n+        for (i = 0, len = parts.length; i < len; i += 1) {\n+            keyVal = parts[i].split('=');\n+            params[keyVal[0]] = keyVal[1];\n+        }\n+\n+        return params;\n+    };\n+\n+    // Create the form that we'll re-use throughout the page\n+    createForm = function () {\n+        var err = document.createElement('div');\n+        err.setAttribute('class', 'gs-share-err');\n+        err.setAttribute('tabindex', '-1');\n+        err.setAttribute('aria-hidden', 'true');\n+        err.textContent = i18n.invalidId;\n+\n+        frm = document.createElement('form');\n+\n+        frm.setAttribute('class', 'gs-share-form');\n+        frm.setAttribute('tabindex', '-1');\n+        frm.setAttribute('aria-hidden', 'true');\n+\n+        frm.innerHTML = '<label for=\"gs-account\">' + i18n.yourAcctId + '</label>' +\n+            '<input type=\"text\" id=\"gs-account\" placeholder=\"' + i18n.idPlaceholder + '\" />' +\n+            '<input type=\"checkbox\" id=\"gs-bookmark\" /> <label for=\"gs-bookmark\">' + i18n.shareAsBookmark + '</label>' +\n+            '<input type=\"submit\" value=\"Share\"/>';\n+        frm.insertBefore(err, frm.firstChild);\n+\n+        // Submit handler\n+        frm.addEventListener('submit', function (e) {\n+            e.preventDefault();\n+\n+            var accountParts = document.getElementById('gs-account').value.split('@'),\n+                username, domain, xhr, bookmarkURL;\n+\n+            if (accountParts.length === 2) {\n+                err.setAttribute('aria-hidden', 'true');\n+\n+                username = accountParts[0];\n+                domain = accountParts[1];\n+                bookmarkURL = 'http://' + domain + '/api/bookmarks/' + username + '.json';\n+\n+                // Try bookmark\n+                if (document.getElementById('gs-bookmark').checked) {\n+                    xhr = new XMLHttpRequest();\n+\n+                    xhr.onreadystatechange = function () {\n+                        if (xhr.readyState === 4) {\n+                            if (xhr.status === 200) { // Success\n+                                shareAsBookmark(shareTitle, shareURL, domain);\n+                            } else { // Failure, fallback to regular notice\n+                                shareAsNotice(shareTitle, shareURL, domain);\n+                            }\n+                        }\n+                    };\n+\n+                    xhr.open('GET', bookmarkURL, true);\n+                    xhr.send();\n+                } else { // Regular notice\n+                    shareAsNotice(shareTitle, shareURL, domain);\n+                }\n+            } else { // Invalid account id\n+                err.setAttribute('aria-hidden', 'false');\n+                err.focus();\n+            }\n+        });\n+\n+        // Keydown handler\n+        frm.addEventListener('keydown', function (e) {\n+            if (e.keyCode === 27) { // Escape key closes the dialog\n+                frm.parentElement.getElementsByClassName('js-gs-share')[0].focus();\n+                frm.setAttribute('aria-hidden', 'true');\n+            }\n+        });\n+\n+        document.body.appendChild(frm);\n+    };\n+\n+    /**\n+     * Something similar to jQuery.closest\n+     *\n+     * Given `elm`, return the closest parent with class `cls`\n+     * or false if there is no matching ancestor.\n+     */\n+    closest = function (elm, cls) {\n+        while (elm !== document) {\n+            if (elm.classList.contains(cls)) {\n+                return elm;\n+            }\n+\n+            elm = elm.parentNode;\n+        }\n+\n+        return false;\n+    };\n+\n+    bindClicks = function () {\n+        document.addEventListener('click', function (e) {\n+            var target = e.target,\n+                urlParams,\n+                lnk = closest(target, 'js-gs-share');\n+\n+            // Don't do anything on right/middle click or if ctrl or shift was pressed while left-clicking\n+            if (!e.button && !e.ctrlKey && !e.shiftKey && lnk) {\n+                e.preventDefault();\n+\n+                // Check for submission information in href first\n+                if (lnk.search !== undefined) {\n+                    urlParams = extractURLParams(lnk.search);\n+                    shareURL   = urlParams.url;\n+                    shareTitle = urlParams.title;\n+                } else { // If it's not there, try data-* attributes. If not, use current document url and title\n+                    shareURL   = lnk.getAttribute('data-url') || window.location.href;\n+                    shareTitle = lnk.getAttribute('data-title') || document.title;\n+                }\n+\n+                // Move form after the clicked link\n+                lnk.parentNode.appendChild(frm);\n+\n+                // Show form\n+\t\t\t\tfrm.setAttribute('aria-hidden', 'false');\n+\n+                // Focus on form\n+                frm.focus();\n+            } else if (!frm.contains(target)) {\n+                frm.setAttribute('aria-hidden', 'true');\n+            }\n+        });\n+    };\n+\n+    // Flag that js is enabled\n+    document.body.classList.add('js-gs-share-enabled');","path":"apps/files_sharing/js/3rdparty/gs-share/gs-share.js","position":201,"original_position":201,"commit_id":"0b38561de86532aab391951e712c1bfacc0df104","original_commit_id":"0b38561de86532aab391951e712c1bfacc0df104","user":{"login":"schiesbn","id":1589737,"avatar_url":"https://avatars.githubusercontent.com/u/1589737?v=3","gravatar_id":"","url":"https://api.github.com/users/schiesbn","html_url":"https://github.com/schiesbn","followers_url":"https://api.github.com/users/schiesbn/followers","following_url":"https://api.github.com/users/schiesbn/following{/other_user}","gists_url":"https://api.github.com/users/schiesbn/gists{/gist_id}","starred_url":"https://api.github.com/users/schiesbn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/schiesbn/subscriptions","organizations_url":"https://api.github.com/users/schiesbn/orgs","repos_url":"https://api.github.com/users/schiesbn/repos","events_url":"https://api.github.com/users/schiesbn/events{/privacy}","received_events_url":"https://api.github.com/users/schiesbn/received_events","type":"User","site_admin":false},"body":"I played a little bit around with it. The easiest solution is to replace the anonymous function https://github.com/owncloud/core/pull/16649/files#diff-0cbad039e5e139bd1c90416bbc85194fR6 which wrap the whole code with a ````$(document).ready(function() {...````\r\n\r\nI will change this with the next commit and propose it upstream. A more clean solution would be probably to also move the functions out of document.ready to it's own class. But I don't want to re-write the whole plugin at this point in time, especially because I'm not the fastest if it comes to JavaScript. :wink: ","created_at":"2015-06-02T08:00:05Z","updated_at":"2015-06-02T08:00:05Z","html_url":"https://github.com/owncloud/core/pull/16649#discussion_r31499731","pull_request_url":"https://api.github.com/repos/owncloud/core/pulls/16649","_links":{"self":{"href":"https://api.github.com/repos/owncloud/core/pulls/comments/31499731"},"html":{"href":"https://github.com/owncloud/core/pull/16649#discussion_r31499731"},"pull_request":{"href":"https://api.github.com/repos/owncloud/core/pulls/16649"}}},"pull_request":{"url":"https://api.github.com/repos/owncloud/core/pulls/16649","id":36608086,"html_url":"https://github.com/owncloud/core/pull/16649","diff_url":"https://github.com/owncloud/core/pull/16649.diff","patch_url":"https://github.com/owncloud/core/pull/16649.patch","issue_url":"https://api.github.com/repos/owncloud/core/issues/16649","number":16649,"state":"open","locked":false,"title":" add social media buttons to share your federated cloud id","user":{"login":"schiesbn","id":1589737,"avatar_url":"https://avatars.githubusercontent.com/u/1589737?v=3","gravatar_id":"","url":"https://api.github.com/users/schiesbn","html_url":"https://github.com/schiesbn","followers_url":"https://api.github.com/users/schiesbn/followers","following_url":"https://api.github.com/users/schiesbn/following{/other_user}","gists_url":"https://api.github.com/users/schiesbn/gists{/gist_id}","starred_url":"https://api.github.com/users/schiesbn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/schiesbn/subscriptions","organizations_url":"https://api.github.com/users/schiesbn/orgs","repos_url":"https://api.github.com/users/schiesbn/repos","events_url":"https://api.github.com/users/schiesbn/events{/privacy}","received_events_url":"https://api.github.com/users/schiesbn/received_events","type":"User","site_admin":false},"body":"add federated cloud ID to the personal settings and the possibility to share it on various social networks.\r\n\r\nYou can already give it a try. Just the social network buttons are missing at the moment, so it is quite some text (the alt-text instead of the actual image) but you can try the social network integration and the overall design.\r\n\r\n@jancborchardt I need some nice buttons for the social networks from you and a banner/button we want to provide for the users homepage.\r\n\r\n@jospoortvliet the url http://owncloud.org/federation doesn't work yet, is it the right one? \r\n\r\nState:\r\n\r\n- [x] Twitter -> works\r\n- [x] Diaspora works, if the solution is acceptable? Should we try to add the dialog directly to the ownCloud or to owncloud.org or is it acceptable to link to a 3rdparty site to chose your pod and forward the message?\r\n- [x] Facebook it seems that it is only possible to share links but not predefined messages (see: https://developers.facebook.com/blog/post/510/ -> unless someone has a better idea the current implementation is the best we can offer.\r\n- [x] Goggle+ same like Facebook, seems not to be possible to share predefined messages.  -> unless someone has a better idea the current implementation is the best we can offer.\r\n- [x] I found a nice GNU Social button (formally identi.ca/status.net), https://github.com/chimo/gs-share and added it to the list. What do you think? \r\n-  [ ] need nice buttons for the social networks (Diaspora, Facebook, Google+, Twitter, GNU Social (if the defaul one doesn't fit with the other))\r\n- [ ] need a banner/button people can add to their homepage\r\n\r\ncc @karlitschek do you have any opinion on the questions above?\r\n\r\nfix https://github.com/owncloud/core/issues/16190","created_at":"2015-06-01T08:33:10Z","updated_at":"2015-06-02T08:00:05Z","closed_at":null,"merged_at":null,"merge_commit_sha":"ea6f977d41ae971e3f49e0f54afba08c7171bd3a","assignee":null,"milestone":{"url":"https://api.github.com/repos/owncloud/core/milestones/31","html_url":"https://github.com/owncloud/core/milestones/8.1-current","labels_url":"https://api.github.com/repos/owncloud/core/milestones/31/labels","id":912160,"number":31,"title":"8.1-current","description":"","creator":{"login":"MorrisJobke","id":245432,"avatar_url":"https://avatars.githubusercontent.com/u/245432?v=3","gravatar_id":"","url":"https://api.github.com/users/MorrisJobke","html_url":"https://github.com/MorrisJobke","followers_url":"https://api.github.com/users/MorrisJobke/followers","following_url":"https://api.github.com/users/MorrisJobke/following{/other_user}","gists_url":"https://api.github.com/users/MorrisJobke/gists{/gist_id}","starred_url":"https://api.github.com/users/MorrisJobke/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MorrisJobke/subscriptions","organizations_url":"https://api.github.com/users/MorrisJobke/orgs","repos_url":"https://api.github.com/users/MorrisJobke/repos","events_url":"https://api.github.com/users/MorrisJobke/events{/privacy}","received_events_url":"https://api.github.com/users/MorrisJobke/received_events","type":"User","site_admin":false},"open_issues":89,"closed_issues":1294,"state":"open","created_at":"2014-12-22T12:04:01Z","updated_at":"2015-06-02T07:37:32Z","due_on":"2015-04-02T22:00:00Z","closed_at":null},"commits_url":"https://api.github.com/repos/owncloud/core/pulls/16649/commits","review_comments_url":"https://api.github.com/repos/owncloud/core/pulls/16649/comments","review_comment_url":"https://api.github.com/repos/owncloud/core/pulls/comments{/number}","comments_url":"https://api.github.com/repos/owncloud/core/issues/16649/comments","statuses_url":"https://api.github.com/repos/owncloud/core/statuses/0b38561de86532aab391951e712c1bfacc0df104","head":{"label":"owncloud:social_media_buttons","ref":"social_media_buttons","sha":"0b38561de86532aab391951e712c1bfacc0df104","user":{"login":"owncloud","id":1645051,"avatar_url":"https://avatars.githubusercontent.com/u/1645051?v=3","gravatar_id":"","url":"https://api.github.com/users/owncloud","html_url":"https://github.com/owncloud","followers_url":"https://api.github.com/users/owncloud/followers","following_url":"https://api.github.com/users/owncloud/following{/other_user}","gists_url":"https://api.github.com/users/owncloud/gists{/gist_id}","starred_url":"https://api.github.com/users/owncloud/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/owncloud/subscriptions","organizations_url":"https://api.github.com/users/owncloud/orgs","repos_url":"https://api.github.com/users/owncloud/repos","events_url":"https://api.github.com/users/owncloud/events{/privacy}","received_events_url":"https://api.github.com/users/owncloud/received_events","type":"Organization","site_admin":false},"repo":{"id":5550552,"name":"core","full_name":"owncloud/core","owner":{"login":"owncloud","id":1645051,"avatar_url":"https://avatars.githubusercontent.com/u/1645051?v=3","gravatar_id":"","url":"https://api.github.com/users/owncloud","html_url":"https://github.com/owncloud","followers_url":"https://api.github.com/users/owncloud/followers","following_url":"https://api.github.com/users/owncloud/following{/other_user}","gists_url":"https://api.github.com/users/owncloud/gists{/gist_id}","starred_url":"https://api.github.com/users/owncloud/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/owncloud/subscriptions","organizations_url":"https://api.github.com/users/owncloud/orgs","repos_url":"https://api.github.com/users/owncloud/repos","events_url":"https://api.github.com/users/owncloud/events{/privacy}","received_events_url":"https://api.github.com/users/owncloud/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/owncloud/core","description":"The ownCloud core","fork":false,"url":"https://api.github.com/repos/owncloud/core","forks_url":"https://api.github.com/repos/owncloud/core/forks","keys_url":"https://api.github.com/repos/owncloud/core/keys{/key_id}","collaborators_url":"https://api.github.com/repos/owncloud/core/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/owncloud/core/teams","hooks_url":"https://api.github.com/repos/owncloud/core/hooks","issue_events_url":"https://api.github.com/repos/owncloud/core/issues/events{/number}","events_url":"https://api.github.com/repos/owncloud/core/events","assignees_url":"https://api.github.com/repos/owncloud/core/assignees{/user}","branches_url":"https://api.github.com/repos/owncloud/core/branches{/branch}","tags_url":"https://api.github.com/repos/owncloud/core/tags","blobs_url":"https://api.github.com/repos/owncloud/core/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/owncloud/core/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/owncloud/core/git/refs{/sha}","trees_url":"https://api.github.com/repos/owncloud/core/git/trees{/sha}","statuses_url":"https://api.github.com/repos/owncloud/core/statuses/{sha}","languages_url":"https://api.github.com/repos/owncloud/core/languages","stargazers_url":"https://api.github.com/repos/owncloud/core/stargazers","contributors_url":"https://api.github.com/repos/owncloud/core/contributors","subscribers_url":"https://api.github.com/repos/owncloud/core/subscribers","subscription_url":"https://api.github.com/repos/owncloud/core/subscription","commits_url":"https://api.github.com/repos/owncloud/core/commits{/sha}","git_commits_url":"https://api.github.com/repos/owncloud/core/git/commits{/sha}","comments_url":"https://api.github.com/repos/owncloud/core/comments{/number}","issue_comment_url":"https://api.github.com/repos/owncloud/core/issues/comments{/number}","contents_url":"https://api.github.com/repos/owncloud/core/contents/{+path}","compare_url":"https://api.github.com/repos/owncloud/core/compare/{base}...{head}","merges_url":"https://api.github.com/repos/owncloud/core/merges","archive_url":"https://api.github.com/repos/owncloud/core/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/owncloud/core/downloads","issues_url":"https://api.github.com/repos/owncloud/core/issues{/number}","pulls_url":"https://api.github.com/repos/owncloud/core/pulls{/number}","milestones_url":"https://api.github.com/repos/owncloud/core/milestones{/number}","notifications_url":"https://api.github.com/repos/owncloud/core/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/owncloud/core/labels{/name}","releases_url":"https://api.github.com/repos/owncloud/core/releases{/id}","created_at":"2012-08-25T10:32:48Z","updated_at":"2015-06-02T01:47:19Z","pushed_at":"2015-06-02T07:36:54Z","git_url":"git://github.com/owncloud/core.git","ssh_url":"git@github.com:owncloud/core.git","clone_url":"https://github.com/owncloud/core.git","svn_url":"https://github.com/owncloud/core","homepage":"https://owncloud.org/","size":1049381,"stargazers_count":3352,"watchers_count":3352,"language":"PHP","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":1069,"mirror_url":null,"open_issues_count":1850,"forks":1069,"open_issues":1850,"watchers":3352,"default_branch":"master"}},"base":{"label":"owncloud:master","ref":"master","sha":"b522baaaa6ec1b33cb63b2cb992bccd83cb88c50","user":{"login":"owncloud","id":1645051,"avatar_url":"https://avatars.githubusercontent.com/u/1645051?v=3","gravatar_id":"","url":"https://api.github.com/users/owncloud","html_url":"https://github.com/owncloud","followers_url":"https://api.github.com/users/owncloud/followers","following_url":"https://api.github.com/users/owncloud/following{/other_user}","gists_url":"https://api.github.com/users/owncloud/gists{/gist_id}","starred_url":"https://api.github.com/users/owncloud/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/owncloud/subscriptions","organizations_url":"https://api.github.com/users/owncloud/orgs","repos_url":"https://api.github.com/users/owncloud/repos","events_url":"https://api.github.com/users/owncloud/events{/privacy}","received_events_url":"https://api.github.com/users/owncloud/received_events","type":"Organization","site_admin":false},"repo":{"id":5550552,"name":"core","full_name":"owncloud/core","owner":{"login":"owncloud","id":1645051,"avatar_url":"https://avatars.githubusercontent.com/u/1645051?v=3","gravatar_id":"","url":"https://api.github.com/users/owncloud","html_url":"https://github.com/owncloud","followers_url":"https://api.github.com/users/owncloud/followers","following_url":"https://api.github.com/users/owncloud/following{/other_user}","gists_url":"https://api.github.com/users/owncloud/gists{/gist_id}","starred_url":"https://api.github.com/users/owncloud/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/owncloud/subscriptions","organizations_url":"https://api.github.com/users/owncloud/orgs","repos_url":"https://api.github.com/users/owncloud/repos","events_url":"https://api.github.com/users/owncloud/events{/privacy}","received_events_url":"https://api.github.com/users/owncloud/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/owncloud/core","description":"The ownCloud core","fork":false,"url":"https://api.github.com/repos/owncloud/core","forks_url":"https://api.github.com/repos/owncloud/core/forks","keys_url":"https://api.github.com/repos/owncloud/core/keys{/key_id}","collaborators_url":"https://api.github.com/repos/owncloud/core/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/owncloud/core/teams","hooks_url":"https://api.github.com/repos/owncloud/core/hooks","issue_events_url":"https://api.github.com/repos/owncloud/core/issues/events{/number}","events_url":"https://api.github.com/repos/owncloud/core/events","assignees_url":"https://api.github.com/repos/owncloud/core/assignees{/user}","branches_url":"https://api.github.com/repos/owncloud/core/branches{/branch}","tags_url":"https://api.github.com/repos/owncloud/core/tags","blobs_url":"https://api.github.com/repos/owncloud/core/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/owncloud/core/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/owncloud/core/git/refs{/sha}","trees_url":"https://api.github.com/repos/owncloud/core/git/trees{/sha}","statuses_url":"https://api.github.com/repos/owncloud/core/statuses/{sha}","languages_url":"https://api.github.com/repos/owncloud/core/languages","stargazers_url":"https://api.github.com/repos/owncloud/core/stargazers","contributors_url":"https://api.github.com/repos/owncloud/core/contributors","subscribers_url":"https://api.github.com/repos/owncloud/core/subscribers","subscription_url":"https://api.github.com/repos/owncloud/core/subscription","commits_url":"https://api.github.com/repos/owncloud/core/commits{/sha}","git_commits_url":"https://api.github.com/repos/owncloud/core/git/commits{/sha}","comments_url":"https://api.github.com/repos/owncloud/core/comments{/number}","issue_comment_url":"https://api.github.com/repos/owncloud/core/issues/comments{/number}","contents_url":"https://api.github.com/repos/owncloud/core/contents/{+path}","compare_url":"https://api.github.com/repos/owncloud/core/compare/{base}...{head}","merges_url":"https://api.github.com/repos/owncloud/core/merges","archive_url":"https://api.github.com/repos/owncloud/core/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/owncloud/core/downloads","issues_url":"https://api.github.com/repos/owncloud/core/issues{/number}","pulls_url":"https://api.github.com/repos/owncloud/core/pulls{/number}","milestones_url":"https://api.github.com/repos/owncloud/core/milestones{/number}","notifications_url":"https://api.github.com/repos/owncloud/core/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/owncloud/core/labels{/name}","releases_url":"https://api.github.com/repos/owncloud/core/releases{/id}","created_at":"2012-08-25T10:32:48Z","updated_at":"2015-06-02T01:47:19Z","pushed_at":"2015-06-02T07:36:54Z","git_url":"git://github.com/owncloud/core.git","ssh_url":"git@github.com:owncloud/core.git","clone_url":"https://github.com/owncloud/core.git","svn_url":"https://github.com/owncloud/core","homepage":"https://owncloud.org/","size":1049381,"stargazers_count":3352,"watchers_count":3352,"language":"PHP","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":1069,"mirror_url":null,"open_issues_count":1850,"forks":1069,"open_issues":1850,"watchers":3352,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/owncloud/core/pulls/16649"},"html":{"href":"https://github.com/owncloud/core/pull/16649"},"issue":{"href":"https://api.github.com/repos/owncloud/core/issues/16649"},"comments":{"href":"https://api.github.com/repos/owncloud/core/issues/16649/comments"},"review_comments":{"href":"https://api.github.com/repos/owncloud/core/pulls/16649/comments"},"review_comment":{"href":"https://api.github.com/repos/owncloud/core/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/owncloud/core/pulls/16649/commits"},"statuses":{"href":"https://api.github.com/repos/owncloud/core/statuses/0b38561de86532aab391951e712c1bfacc0df104"}}}}