{"action":"created","comment":{"url":"https://api.github.com/repos/PrestaShop/PrestaShop/pulls/comments/222203987","pull_request_review_id":161032531,"id":222203987,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIyMjIwMzk4Nw==","diff_hunk":"@@ -0,0 +1,138 @@\n+<?php\n+/**\n+ * 2007-2018 PrestaShop.\n+ *\n+ * NOTICE OF LICENSE\n+ *\n+ * This source file is subject to the Open Software License (OSL 3.0)\n+ * that is bundled with this package in the file LICENSE.txt.\n+ * It is also available through the world-wide-web at this URL:\n+ * https://opensource.org/licenses/OSL-3.0\n+ * If you did not receive a copy of the license and are unable to\n+ * obtain it through the world-wide-web, please send an email\n+ * to license@prestashop.com so we can send you a copy immediately.\n+ *\n+ * DISCLAIMER\n+ *\n+ * Do not edit or add to this file if you wish to upgrade PrestaShop to newer\n+ * versions in the future. If you wish to customize PrestaShop for your\n+ * needs please refer to http://www.prestashop.com for more information.\n+ *\n+ * @author    PrestaShop SA <contact@prestashop.com>\n+ * @copyright 2007-2018 PrestaShop SA\n+ * @license   https://opensource.org/licenses/OSL-3.0 Open Software License (OSL 3.0)\n+ * International Registered Trademark & Property of PrestaShop SA\n+ */\n+\n+namespace PrestaShop\\PrestaShop\\Core\\Grid\\Query;\n+\n+use Doctrine\\DBAL\\Connection;\n+use Doctrine\\DBAL\\Query\\QueryBuilder;\n+use PrestaShop\\PrestaShop\\Core\\Grid\\Search\\SearchCriteriaInterface;\n+\n+/**\n+ * Class ContactsQueryBuilder is responsible for building queries for Contacts grid data.\n+ */\n+final class ContactsQueryBuilder extends AbstractDoctrineQueryBuilder\n+{\n+    /**\n+     * @var DoctrineSearchCriteriaApplicatorInterface\n+     */\n+    private $searchCriteriaApplicator;\n+\n+    /**\n+     * @var int\n+     */\n+    private $languageId;\n+\n+    /**\n+     * @var array\n+     */\n+    private $contextShopsIds;\n+\n+    /**\n+     * @param Connection $connection\n+     * @param string $dbPrefix\n+     * @param DoctrineSearchCriteriaApplicatorInterface $searchCriteriaApplicator\n+     * @param int $languageId\n+     * @param array $contextShopsIds\n+     */\n+    public function __construct(\n+        Connection $connection,\n+        $dbPrefix,\n+        DoctrineSearchCriteriaApplicatorInterface $searchCriteriaApplicator,\n+        $languageId,\n+        array $contextShopsIds\n+    ) {\n+        parent::__construct($connection, $dbPrefix);\n+\n+        $this->searchCriteriaApplicator = $searchCriteriaApplicator;\n+        $this->languageId = $languageId;\n+        $this->contextShopsIds = $contextShopsIds;\n+    }\n+\n+    /**\n+     * {@inheritdoc}\n+     */\n+    public function getSearchQueryBuilder(SearchCriteriaInterface $searchCriteria)\n+    {\n+        $qb = $this->getQueryBuilder($searchCriteria->getFilters());\n+        $qb->select('c.id_contact, c.email, cl.name, cl.description');\n+\n+        $this->searchCriteriaApplicator\n+            ->applySorting($searchCriteria, $qb)\n+            ->applyPagination($searchCriteria, $qb)\n+        ;\n+\n+        return $qb;\n+    }\n+\n+    /**\n+     * {@inheritdoc}\n+     */\n+    public function getCountQueryBuilder(SearchCriteriaInterface $searchCriteria)\n+    {\n+        $qb = $this->getQueryBuilder($searchCriteria->getFilters())\n+            ->select('SQL_CALC_FOUND_ROWS')\n+            ->select('FOUND_ROWS()')\n+        ;\n+\n+        return $qb;\n+    }\n+\n+    /**\n+     * Get generic query builder.\n+     *\n+     * @param array $filters\n+     *\n+     * @return QueryBuilder\n+     */\n+    private function getQueryBuilder(array $filters)\n+    {\n+        $qb = $this->connection\n+            ->createQueryBuilder()\n+            ->from($this->dbPrefix . 'contact', 'c')\n+            ->innerJoin('c', $this->dbPrefix . 'contact_lang', 'cl', 'c.id_contact = cl.id_contact')\n+            ->innerJoin('c', $this->dbPrefix . 'contact_shop', 'cs', 'c.id_contact = cs.id_contact')\n+            ->andWhere('cl.`id_lang`= :language')\n+            ->andWhere('cs.`id_shop` IN (:shops)')\n+            ->setParameter('language', $this->languageId)\n+            ->setParameter('shops', $this->contextShopsIds, Connection::PARAM_INT_ARRAY)\n+            ->groupBy('c.id_contact')\n+        ;\n+\n+        foreach ($filters as $name => $value) {\n+            if ('id_contact' === $name) {\n+                $qb->andWhere('c.`id_contact` = :' . $name);\n+                $qb->setParameter($name, $value);\n+\n+                continue;\n+            }\n+\n+            $qb->andWhere(\"$name LIKE :$name\");","path":"src/Core/Grid/Query/ContactsQueryBuilder.php","position":132,"original_position":132,"commit_id":"fbb8c0a4694196cb1e33aea94ab26af38443bd6c","original_commit_id":"fbb8c0a4694196cb1e33aea94ab26af38443bd6c","user":{"login":"PierreRambaud","id":1462701,"node_id":"MDQ6VXNlcjE0NjI3MDE=","avatar_url":"https://avatars0.githubusercontent.com/u/1462701?v=4","gravatar_id":"","url":"https://api.github.com/users/PierreRambaud","html_url":"https://github.com/PierreRambaud","followers_url":"https://api.github.com/users/PierreRambaud/followers","following_url":"https://api.github.com/users/PierreRambaud/following{/other_user}","gists_url":"https://api.github.com/users/PierreRambaud/gists{/gist_id}","starred_url":"https://api.github.com/users/PierreRambaud/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PierreRambaud/subscriptions","organizations_url":"https://api.github.com/users/PierreRambaud/orgs","repos_url":"https://api.github.com/users/PierreRambaud/repos","events_url":"https://api.github.com/users/PierreRambaud/events{/privacy}","received_events_url":"https://api.github.com/users/PierreRambaud/received_events","type":"User","site_admin":false},"body":"using backquotes not completlty protect against sqli here. more if the `$name` contains a string like this: \r\n```\r\nname` OR 1=1 OR `name\r\n```\r\n\r\nThe secure way is to define each field you want to use, or check if these fields exist in ObjectModel","created_at":"2018-10-03T07:10:10Z","updated_at":"2018-10-03T07:10:10Z","html_url":"https://github.com/PrestaShop/PrestaShop/pull/10777#discussion_r222203987","pull_request_url":"https://api.github.com/repos/PrestaShop/PrestaShop/pulls/10777","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/PrestaShop/PrestaShop/pulls/comments/222203987"},"html":{"href":"https://github.com/PrestaShop/PrestaShop/pull/10777#discussion_r222203987"},"pull_request":{"href":"https://api.github.com/repos/PrestaShop/PrestaShop/pulls/10777"}},"in_reply_to_id":221998338},"pull_request":{"url":"https://api.github.com/repos/PrestaShop/PrestaShop/pulls/10777","id":219203377,"node_id":"MDExOlB1bGxSZXF1ZXN0MjE5MjAzMzc3","html_url":"https://github.com/PrestaShop/PrestaShop/pull/10777","diff_url":"https://github.com/PrestaShop/PrestaShop/pull/10777.diff","patch_url":"https://github.com/PrestaShop/PrestaShop/pull/10777.patch","issue_url":"https://api.github.com/repos/PrestaShop/PrestaShop/issues/10777","number":10777,"state":"open","locked":false,"title":"Migration of Shop parameters > Contact > Contacts page.","user":{"login":"rokaszygmantas","id":6286794,"node_id":"MDQ6VXNlcjYyODY3OTQ=","avatar_url":"https://avatars0.githubusercontent.com/u/6286794?v=4","gravatar_id":"","url":"https://api.github.com/users/rokaszygmantas","html_url":"https://github.com/rokaszygmantas","followers_url":"https://api.github.com/users/rokaszygmantas/followers","following_url":"https://api.github.com/users/rokaszygmantas/following{/other_user}","gists_url":"https://api.github.com/users/rokaszygmantas/gists{/gist_id}","starred_url":"https://api.github.com/users/rokaszygmantas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rokaszygmantas/subscriptions","organizations_url":"https://api.github.com/users/rokaszygmantas/orgs","repos_url":"https://api.github.com/users/rokaszygmantas/repos","events_url":"https://api.github.com/users/rokaszygmantas/events{/privacy}","received_events_url":"https://api.github.com/users/rokaszygmantas/received_events","type":"User","site_admin":false},"body":"| Questions     | Answers\r\n| ------------- | -------------------------------------------------------\r\n| Branch?       | develop\r\n| Description?  | This PR migrates the contacts list page (Shop parameters > Contact > Contacts).\r\n| Type?         | improvement\r\n| Category?     | CO\r\n| BC breaks?    | no\r\n| Deprecations? | no\r\n| Fixed ticket? | https://github.com/PrestaShop/PrestaShop/issues/10622\r\n| How to test?  | Compare to the legacy AdminContacts controller. Only the listing page is migrated, edit/add new form is not migrated by this PR.\r\n\r\n<!-- Click the form's \"Preview\" button to make sure the table is functional in GitHub. Thank you! -->\r\n\r\n<!-- Reviewable:start -->\r\n---\r\nThis change is [<img src=\"https://reviewable.io/review_button.svg\" height=\"34\" align=\"absmiddle\" alt=\"Reviewable\"/>](https://reviewable.io/reviews/prestashop/prestashop/10777)\r\n<!-- Reviewable:end -->\r\n","created_at":"2018-09-30T12:48:33Z","updated_at":"2018-10-03T07:10:10Z","closed_at":null,"merged_at":null,"merge_commit_sha":"31e9ac4c9fca3b7e49ee8f7a0a238d93a0527917","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[{"id":19737371,"node_id":"MDU6TGFiZWwxOTczNzM3MQ==","url":"https://api.github.com/repos/PrestaShop/PrestaShop/labels/Improvement","name":"Improvement","color":"d4c5f9","default":false},{"id":904910825,"node_id":"MDU6TGFiZWw5MDQ5MTA4MjU=","url":"https://api.github.com/repos/PrestaShop/PrestaShop/labels/develop","name":"develop","color":"6270ea","default":false},{"id":1039184119,"node_id":"MDU6TGFiZWwxMDM5MTg0MTE5","url":"https://api.github.com/repos/PrestaShop/PrestaShop/labels/migration","name":"migration","color":"06e032","default":false}],"milestone":null,"commits_url":"https://api.github.com/repos/PrestaShop/PrestaShop/pulls/10777/commits","review_comments_url":"https://api.github.com/repos/PrestaShop/PrestaShop/pulls/10777/comments","review_comment_url":"https://api.github.com/repos/PrestaShop/PrestaShop/pulls/comments{/number}","comments_url":"https://api.github.com/repos/PrestaShop/PrestaShop/issues/10777/comments","statuses_url":"https://api.github.com/repos/PrestaShop/PrestaShop/statuses/fbb8c0a4694196cb1e33aea94ab26af38443bd6c","head":{"label":"rokaszygmantas:migration/contacts_list","ref":"migration/contacts_list","sha":"fbb8c0a4694196cb1e33aea94ab26af38443bd6c","user":{"login":"rokaszygmantas","id":6286794,"node_id":"MDQ6VXNlcjYyODY3OTQ=","avatar_url":"https://avatars0.githubusercontent.com/u/6286794?v=4","gravatar_id":"","url":"https://api.github.com/users/rokaszygmantas","html_url":"https://github.com/rokaszygmantas","followers_url":"https://api.github.com/users/rokaszygmantas/followers","following_url":"https://api.github.com/users/rokaszygmantas/following{/other_user}","gists_url":"https://api.github.com/users/rokaszygmantas/gists{/gist_id}","starred_url":"https://api.github.com/users/rokaszygmantas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rokaszygmantas/subscriptions","organizations_url":"https://api.github.com/users/rokaszygmantas/orgs","repos_url":"https://api.github.com/users/rokaszygmantas/repos","events_url":"https://api.github.com/users/rokaszygmantas/events{/privacy}","received_events_url":"https://api.github.com/users/rokaszygmantas/received_events","type":"User","site_admin":false},"repo":{"id":126335407,"node_id":"MDEwOlJlcG9zaXRvcnkxMjYzMzU0MDc=","name":"PrestaShop","full_name":"rokaszygmantas/PrestaShop","private":false,"owner":{"login":"rokaszygmantas","id":6286794,"node_id":"MDQ6VXNlcjYyODY3OTQ=","avatar_url":"https://avatars0.githubusercontent.com/u/6286794?v=4","gravatar_id":"","url":"https://api.github.com/users/rokaszygmantas","html_url":"https://github.com/rokaszygmantas","followers_url":"https://api.github.com/users/rokaszygmantas/followers","following_url":"https://api.github.com/users/rokaszygmantas/following{/other_user}","gists_url":"https://api.github.com/users/rokaszygmantas/gists{/gist_id}","starred_url":"https://api.github.com/users/rokaszygmantas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rokaszygmantas/subscriptions","organizations_url":"https://api.github.com/users/rokaszygmantas/orgs","repos_url":"https://api.github.com/users/rokaszygmantas/repos","events_url":"https://api.github.com/users/rokaszygmantas/events{/privacy}","received_events_url":"https://api.github.com/users/rokaszygmantas/received_events","type":"User","site_admin":false},"html_url":"https://github.com/rokaszygmantas/PrestaShop","description":"PrestaShop offers a free, fully scalable, Open Source e-commerce solution.","fork":true,"url":"https://api.github.com/repos/rokaszygmantas/PrestaShop","forks_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/forks","keys_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/keys{/key_id}","collaborators_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/teams","hooks_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/hooks","issue_events_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/issues/events{/number}","events_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/events","assignees_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/assignees{/user}","branches_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/branches{/branch}","tags_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/tags","blobs_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/git/refs{/sha}","trees_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/git/trees{/sha}","statuses_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/statuses/{sha}","languages_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/languages","stargazers_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/stargazers","contributors_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/contributors","subscribers_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/subscribers","subscription_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/subscription","commits_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/commits{/sha}","git_commits_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/git/commits{/sha}","comments_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/comments{/number}","issue_comment_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/issues/comments{/number}","contents_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/contents/{+path}","compare_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/compare/{base}...{head}","merges_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/merges","archive_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/downloads","issues_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/issues{/number}","pulls_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/pulls{/number}","milestones_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/milestones{/number}","notifications_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/labels{/name}","releases_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/releases{/id}","deployments_url":"https://api.github.com/repos/rokaszygmantas/PrestaShop/deployments","created_at":"2018-03-22T12:57:41Z","updated_at":"2018-09-29T21:58:08Z","pushed_at":"2018-09-30T19:36:47Z","git_url":"git://github.com/rokaszygmantas/PrestaShop.git","ssh_url":"git@github.com:rokaszygmantas/PrestaShop.git","clone_url":"https://github.com/rokaszygmantas/PrestaShop.git","svn_url":"https://github.com/rokaszygmantas/PrestaShop","homepage":"http://www.prestashop.com/","size":341640,"stargazers_count":0,"watchers_count":0,"language":"PHP","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"other","name":"NOASSERTION","spdx_id":"NOASSERTION","url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":0,"open_issues":0,"watchers":0,"default_branch":"develop"}},"base":{"label":"PrestaShop:develop","ref":"develop","sha":"c7928afffbc2234c59d3024c417de14bc4459f65","user":{"login":"PrestaShop","id":2815696,"node_id":"MDEyOk9yZ2FuaXphdGlvbjI4MTU2OTY=","avatar_url":"https://avatars3.githubusercontent.com/u/2815696?v=4","gravatar_id":"","url":"https://api.github.com/users/PrestaShop","html_url":"https://github.com/PrestaShop","followers_url":"https://api.github.com/users/PrestaShop/followers","following_url":"https://api.github.com/users/PrestaShop/following{/other_user}","gists_url":"https://api.github.com/users/PrestaShop/gists{/gist_id}","starred_url":"https://api.github.com/users/PrestaShop/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PrestaShop/subscriptions","organizations_url":"https://api.github.com/users/PrestaShop/orgs","repos_url":"https://api.github.com/users/PrestaShop/repos","events_url":"https://api.github.com/users/PrestaShop/events{/privacy}","received_events_url":"https://api.github.com/users/PrestaShop/received_events","type":"Organization","site_admin":false},"repo":{"id":6763587,"node_id":"MDEwOlJlcG9zaXRvcnk2NzYzNTg3","name":"PrestaShop","full_name":"PrestaShop/PrestaShop","private":false,"owner":{"login":"PrestaShop","id":2815696,"node_id":"MDEyOk9yZ2FuaXphdGlvbjI4MTU2OTY=","avatar_url":"https://avatars3.githubusercontent.com/u/2815696?v=4","gravatar_id":"","url":"https://api.github.com/users/PrestaShop","html_url":"https://github.com/PrestaShop","followers_url":"https://api.github.com/users/PrestaShop/followers","following_url":"https://api.github.com/users/PrestaShop/following{/other_user}","gists_url":"https://api.github.com/users/PrestaShop/gists{/gist_id}","starred_url":"https://api.github.com/users/PrestaShop/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PrestaShop/subscriptions","organizations_url":"https://api.github.com/users/PrestaShop/orgs","repos_url":"https://api.github.com/users/PrestaShop/repos","events_url":"https://api.github.com/users/PrestaShop/events{/privacy}","received_events_url":"https://api.github.com/users/PrestaShop/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/PrestaShop/PrestaShop","description":"PrestaShop offers a fully scalable open source ecommerce solution.","fork":false,"url":"https://api.github.com/repos/PrestaShop/PrestaShop","forks_url":"https://api.github.com/repos/PrestaShop/PrestaShop/forks","keys_url":"https://api.github.com/repos/PrestaShop/PrestaShop/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PrestaShop/PrestaShop/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PrestaShop/PrestaShop/teams","hooks_url":"https://api.github.com/repos/PrestaShop/PrestaShop/hooks","issue_events_url":"https://api.github.com/repos/PrestaShop/PrestaShop/issues/events{/number}","events_url":"https://api.github.com/repos/PrestaShop/PrestaShop/events","assignees_url":"https://api.github.com/repos/PrestaShop/PrestaShop/assignees{/user}","branches_url":"https://api.github.com/repos/PrestaShop/PrestaShop/branches{/branch}","tags_url":"https://api.github.com/repos/PrestaShop/PrestaShop/tags","blobs_url":"https://api.github.com/repos/PrestaShop/PrestaShop/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PrestaShop/PrestaShop/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PrestaShop/PrestaShop/git/refs{/sha}","trees_url":"https://api.github.com/repos/PrestaShop/PrestaShop/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PrestaShop/PrestaShop/statuses/{sha}","languages_url":"https://api.github.com/repos/PrestaShop/PrestaShop/languages","stargazers_url":"https://api.github.com/repos/PrestaShop/PrestaShop/stargazers","contributors_url":"https://api.github.com/repos/PrestaShop/PrestaShop/contributors","subscribers_url":"https://api.github.com/repos/PrestaShop/PrestaShop/subscribers","subscription_url":"https://api.github.com/repos/PrestaShop/PrestaShop/subscription","commits_url":"https://api.github.com/repos/PrestaShop/PrestaShop/commits{/sha}","git_commits_url":"https://api.github.com/repos/PrestaShop/PrestaShop/git/commits{/sha}","comments_url":"https://api.github.com/repos/PrestaShop/PrestaShop/comments{/number}","issue_comment_url":"https://api.github.com/repos/PrestaShop/PrestaShop/issues/comments{/number}","contents_url":"https://api.github.com/repos/PrestaShop/PrestaShop/contents/{+path}","compare_url":"https://api.github.com/repos/PrestaShop/PrestaShop/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PrestaShop/PrestaShop/merges","archive_url":"https://api.github.com/repos/PrestaShop/PrestaShop/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PrestaShop/PrestaShop/downloads","issues_url":"https://api.github.com/repos/PrestaShop/PrestaShop/issues{/number}","pulls_url":"https://api.github.com/repos/PrestaShop/PrestaShop/pulls{/number}","milestones_url":"https://api.github.com/repos/PrestaShop/PrestaShop/milestones{/number}","notifications_url":"https://api.github.com/repos/PrestaShop/PrestaShop/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PrestaShop/PrestaShop/labels{/name}","releases_url":"https://api.github.com/repos/PrestaShop/PrestaShop/releases{/id}","deployments_url":"https://api.github.com/repos/PrestaShop/PrestaShop/deployments","created_at":"2012-11-19T16:41:31Z","updated_at":"2018-10-02T16:36:50Z","pushed_at":"2018-10-03T07:03:51Z","git_url":"git://github.com/PrestaShop/PrestaShop.git","ssh_url":"git@github.com:PrestaShop/PrestaShop.git","clone_url":"https://github.com/PrestaShop/PrestaShop.git","svn_url":"https://github.com/PrestaShop/PrestaShop","homepage":"http://www.prestashop.com/","size":369597,"stargazers_count":3200,"watchers_count":3200,"language":"PHP","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2914,"mirror_url":null,"archived":false,"open_issues_count":1123,"license":{"key":"other","name":"NOASSERTION","spdx_id":"NOASSERTION","url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":2914,"open_issues":1123,"watchers":3200,"default_branch":"develop"}},"_links":{"self":{"href":"https://api.github.com/repos/PrestaShop/PrestaShop/pulls/10777"},"html":{"href":"https://github.com/PrestaShop/PrestaShop/pull/10777"},"issue":{"href":"https://api.github.com/repos/PrestaShop/PrestaShop/issues/10777"},"comments":{"href":"https://api.github.com/repos/PrestaShop/PrestaShop/issues/10777/comments"},"review_comments":{"href":"https://api.github.com/repos/PrestaShop/PrestaShop/pulls/10777/comments"},"review_comment":{"href":"https://api.github.com/repos/PrestaShop/PrestaShop/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/PrestaShop/PrestaShop/pulls/10777/commits"},"statuses":{"href":"https://api.github.com/repos/PrestaShop/PrestaShop/statuses/fbb8c0a4694196cb1e33aea94ab26af38443bd6c"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"PierreRambaud"}}