{"action":"created","comment":{"url":"https://api.github.com/repos/OCA/management-system/pulls/comments/68394186","id":68394186,"diff_hunk":"@@ -20,163 +20,224 @@\n ##############################################################################\n \n from openerp.tools.translate import _\n-from openerp.osv import fields, orm\n-from urllib import urlencode\n-from urlparse import urljoin\n+from openerp import fields, models, api\n \n+from openerp.tools import (\n+    DEFAULT_SERVER_DATETIME_FORMAT as DATETIME_FORMAT,\n+    DEFAULT_SERVER_DATE_FORMAT as DATE_FORMAT,\n+)\n \n-class mgmtsystem_audit(orm.Model):\n+from datetime import datetime\n+import time\n+\n+\n+def _own_company(self):\n+    \"\"\"Return the user company id.\"\"\"\n+    return self.env.user.company_id.id\n+\n+\n+class MgmtSystemAudit(models.Model):\n+    \"\"\"Model class that manage audit.\"\"\"\n     _name = \"mgmtsystem.audit\"\n     _description = \"Audit\"\n     _inherit = ['mail.thread']\n-    _columns = {\n-        'name': fields.char('Name', size=50),\n-        'reference': fields.char(\n-            'Reference',\n-            size=64,\n-            required=True,\n-            readonly=True,\n-        ),\n-        'date': fields.datetime('Date'),\n-        'line_ids': fields.one2many(\n-            'mgmtsystem.verification.line',\n-            'audit_id',\n-            'Verification List',\n-        ),\n-        'user_id': fields.many2one('res.users', 'Audit Manager'),\n-        'auditor_user_ids': fields.many2many(\n-            'res.users',\n-            'mgmtsystem_auditor_user_rel',\n-            'user_id',\n-            'mgmtsystem_audit_id',\n-            'Auditors',\n-        ),\n-        'auditee_user_ids': fields.many2many(\n-            'res.users',\n-            'mgmtsystem_auditee_user_rel',\n-            'user_id',\n-            'mgmtsystem_audit_id',\n-            'Auditees',\n-        ),\n-        'strong_points': fields.text('Strong Points'),\n-        'to_improve_points': fields.text('Points To Improve'),\n-        'imp_opp_ids': fields.many2many(\n-            'mgmtsystem.action',\n-            'mgmtsystem_audit_imp_opp_rel',\n-            'mgmtsystem_action_id',\n-            'mgmtsystem_audit_id',\n-            'Improvement Opportunities',\n-        ),\n-        'nonconformity_ids': fields.many2many(\n-            'mgmtsystem.nonconformity',\n-            string='Nonconformities',\n-        ),\n-        'state': fields.selection(\n-            [\n-                ('open', 'Open'),\n-                ('done', 'Closed'),\n-            ],\n-            'State',\n-        ),\n-        'system_id': fields.many2one('mgmtsystem.system', 'System'),\n-        'company_id': fields.many2one('res.company', 'Company')\n-    }\n-\n-    _defaults = {\n-        'company_id': (\n-            lambda self, cr, uid, c:\n-            self.pool.get('res.users').browse(cr, uid, uid, c).company_id.id),\n-        'reference': 'NEW',\n-        'state': 'open'\n-    }\n-\n-    def create(self, cr, uid, vals, context=None):\n+    name = fields.Char('Name', size=50)\n+\n+    reference = fields.Char(\n+        'Reference',\n+        size=64,\n+        required=True,\n+        readonly=True,\n+        default='NEW'\n+    )\n+    date = fields.Datetime('Date')\n+    line_ids = fields.One2many(\n+        'mgmtsystem.verification.line',\n+        'audit_id',\n+        'Verification List',\n+    )\n+    quantity = fields.Integer('Number of audits', readonly=True, default=1)\n+    number_of_nonconformities = fields.Integer(\n+        'Number of nonconformities',\n+        compute='_number_of_nonconformity', readonly=True)\n+    number_of_questions_in_verification_list = fields.Integer(\n+        'Number of questions in verification list',\n+        compute='_number_of_questions_in_verification_list', readonly=True)\n+    number_of_improvements_opportunity = fields.Integer(\n+        'Number of improvements Opportunities',\n+        compute='_number_of_improvement_opportunity', readonly=True)\n+\n+    closing_date = fields.Datetime('Closing Date', readonly=True)\n+\n+    age = fields.Integer('Age', readonly=True, compute='_get_age')\n+\n+    def _get_age(self):\n+        \"\"\"Get audit current age.\"\"\"\n+        return (\n+            datetime.now() - datetime.strptime(self.date, \"%Y-%m-%d %H:%M:%S\")\n+        ).days\n+\n+    number_of_exceeding_days = fields.Integer(\n+        '# of exceeding days', readonly=True,\n+        compute='_get_number_of_exceeding_days')\n+\n+    def _get_number_of_exceeding_days(self):\n+        \"\"\"Get number of exceeding days.\"\"\"\n+        return (\n+            datetime.now() - datetime.strptime(self.date, \"%Y-%m-%d %H:%M:%S\")\n+        ).days\n+    number_of_days_to_close = fields.Integer(\n+        '# of days to close', readonly=True)\n+\n+    user_id = fields.Many2one('res.users', 'Audit Manager')\n+    auditor_user_ids = fields.Many2many(\n+        'res.users',\n+        'mgmtsystem_auditor_user_rel',\n+        'user_id',\n+        'mgmtsystem_audit_id',\n+        'Auditors',\n+    )\n+    auditee_user_ids = fields.Many2many(\n+        'res.users',\n+        'mgmtsystem_auditee_user_rel',\n+        'user_id',\n+        'mgmtsystem_audit_id',\n+        'Auditees',\n+    )\n+    strong_points = fields.Text('Strong Points')\n+    to_improve_points = fields.Text('Points To Improve')\n+    imp_opp_ids = fields.Many2many(\n+        'mgmtsystem.action',\n+        'mgmtsystem_audit_imp_opp_rel',\n+        'mgmtsystem_action_id',\n+        'mgmtsystem_audit_id',\n+        'Improvement Opportunities',\n+    )\n+\n+    nonconformity_ids = fields.Many2many(\n+        'mgmtsystem.nonconformity',\n+        string='Nonconformities',\n+    )\n+    state = fields.Selection(\n+        [\n+            ('open', 'Open'),\n+            ('done', 'Closed'),\n+        ],\n+        'State',\n+        default=\"open\"\n+    )\n+    system_id = fields.Many2one('mgmtsystem.system', 'System')\n+    company_id = fields.Many2one(\n+        'res.company', 'Company', default=_own_company)\n+\n+    def _number_of_nonconformity(self):\n+        \"\"\"Count number of nonconformities.\"\"\"\n+        number = 0\n+        for id in self.nonconformity_ids:\n+            number = number + 1\n+        return number\n+\n+    def _number_of_improvement_opportunity(self):\n+        \"\"\"Count number of improvements Opportunities.\"\"\"\n+        number = 0\n+        for id in self.imp_opp_ids:\n+            number = number + 1\n+        return number\n+\n+    def _number_of_questions_in_verification_list(self):\n+        number = 0\n+        for id in self.line_ids:\n+            number = number + 1\n+        return number\n+\n+    @api.model\n+    def create(self, vals):\n+        \"\"\"Audit creation.\"\"\"\n         vals.update({\n-            'reference': self.pool.get('ir.sequence').get(\n-                cr, uid, 'mgmtsystem.audit'\n+            'reference': self.env['ir.sequence'].next_by_code(\n+                'mgmtsystem.audit'\n             )\n         })\n-        return super(mgmtsystem_audit, self).create(\n-            cr, uid, vals, context=context)\n+        if vals.get('closing_date'):\n+            vals['closing_date'] = None\n+        return super(MgmtSystemAudit, self).create(vals)\n \n-    def button_close(self, cr, uid, ids, context=None):\n+    @api.model\n+    def button_close(self):\n         \"\"\"When Audit is closed, post a message to followers' chatter.\"\"\"\n-        self.message_post(cr, uid, ids, _(\"Audit closed\"), context=context)\n-        return self.write(cr, uid, ids, {'state': 'done'})\n+        self.message_post(_(\"Audit closed\"))\n+        number_of_days_to_close = (\n+            datetime.now() - datetime.strptime(self.date, \"%Y-%m-%d %H:%M:%S\")\n+        ).days\n+        return self.write({'state': 'done',\n+                           'closing_date': time.strftime(DATETIME_FORMAT),\n+                           'number_of_days_to_close': number_of_days_to_close})\n \n-    def message_auto_subscribe(\n-            self, cr, uid, ids, updated_fields, context=None, values=None):\n+    @api.multi\n+    def message_auto_subscribe1(self, updated_fields, values=None):\n         \"\"\"Automatically add the Auditors, Auditees and Audit Manager\n         to the follow list\n         \"\"\"\n-        for o in self.browse(cr, uid, ids, context=context):\n-            user_ids = [o.user_id.id]\n-            user_ids += [a.id for a in o.auditor_user_ids]\n-            user_ids += [a.id for a in o.auditee_user_ids]\n-            self.message_subscribe_users(\n-                cr, uid, ids, user_ids=user_ids, subtype_ids=None,\n-                context=context\n-            )\n-        return super(mgmtsystem_audit, self).message_auto_subscribe(\n-            cr, uid, ids, updated_fields, context=context, values=values\n+        self.ensure_one()\n+        user_ids = [self.user_id.id]\n+        user_ids += [a.id for a in self.auditor_user_ids]\n+        user_ids += [a.id for a in self.auditee_user_ids]\n+\n+        self.message_subscribe_users(user_ids=user_ids, subtype_ids=None)\n+\n+        return super(MgmtSystemAudit, self).message_auto_subscribe(\n+            updated_fields=updated_fields,\n+            values=values\n         )\n \n-    def get_audit_url(self, cr, uid, ids, context=None):\n+    def get_action_url(self):\n         \"\"\"\n         Return a short link to the audit form view\n         eg. http://localhost:8069/?db=prod#id=1&model=mgmtsystem.audit\n         \"\"\"\n-        assert len(ids) == 1\n-        audit = self.browse(cr, uid, ids[0], context=context)\n-        base_url = self.pool.get('ir.config_parameter').get_param(\n-            cr, uid, 'web.base.url', default='http://localhost:8069',\n-            context=context,\n+\n+        base_url = self.env['ir.config_parameter'].get_param(\n+            'web.base.url',\n+            default='http://localhost:8069'\n         )\n-        query = {'db': cr.dbname}\n-        fragment = {'id': audit.id, 'model': self._name}\n-        return urljoin(\n-            base_url, \"?%s#%s\" %\n-            (urlencode(query), urlencode(fragment))\n+        url = ('{}/web#db={}&id={}&model={}').format(\n+            base_url,\n+            self.env.cr.dbname,\n+            self.id,\n+            self._name\n         )\n+        return url\n \n \n-class mgmtsystem_verification_line(orm.Model):\n+class MgmtSystemVerificationLine(models.Model):\n+    \"\"\"Class to manage verification's Line.\"\"\"\n     _name = \"mgmtsystem.verification.line\"\n     _description = \"Verification Line\"\n-    _columns = {\n-        'name': fields.char('Question', size=300, required=True),\n-        'audit_id': fields.many2one(\n-            'mgmtsystem.audit',\n-            'Audit',\n-            ondelete='cascade',\n-            select=True,\n-        ),\n-        'procedure_id': fields.many2one(\n-            'document.page',\n-            'Procedure',\n-            ondelete='cascade',\n-            select=True,\n-        ),\n-        'is_conformed': fields.boolean('Is conformed'),\n-        'comments': fields.text('Comments'),\n-        'seq': fields.integer('Sequence'),\n-        'company_id': fields.many2one('res.company', 'Company')\n-    }\n-\n     _order = \"seq\"\n-    _defaults = {\n-        'company_id': (\n-            lambda self, cr, uid, c:\n-            self.pool.get('res.users').browse(cr, uid, uid, c).company_id.id\n-        ),\n-        'is_conformed': False\n-    }\n+\n+    name = fields.Char('Question', size=300, required=True)","path":"mgmtsystem_audit/models/mgmtsystem_audit.py","position":323,"original_position":323,"commit_id":"4509b851559471f1fe41e26830acbb2c3b170aa1","original_commit_id":"4509b851559471f1fe41e26830acbb2c3b170aa1","user":{"login":"dreispt","id":1246629,"avatar_url":"https://avatars.githubusercontent.com/u/1246629?v=3","gravatar_id":"","url":"https://api.github.com/users/dreispt","html_url":"https://github.com/dreispt","followers_url":"https://api.github.com/users/dreispt/followers","following_url":"https://api.github.com/users/dreispt/following{/other_user}","gists_url":"https://api.github.com/users/dreispt/gists{/gist_id}","starred_url":"https://api.github.com/users/dreispt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dreispt/subscriptions","organizations_url":"https://api.github.com/users/dreispt/orgs","repos_url":"https://api.github.com/users/dreispt/repos","events_url":"https://api.github.com/users/dreispt/events{/privacy}","received_events_url":"https://api.github.com/users/dreispt/received_events","type":"User","site_admin":false},"body":"remove size from char fields","created_at":"2016-06-24T13:00:50Z","updated_at":"2016-06-24T13:00:50Z","html_url":"https://github.com/OCA/management-system/pull/143#discussion_r68394186","pull_request_url":"https://api.github.com/repos/OCA/management-system/pulls/143","_links":{"self":{"href":"https://api.github.com/repos/OCA/management-system/pulls/comments/68394186"},"html":{"href":"https://github.com/OCA/management-system/pull/143#discussion_r68394186"},"pull_request":{"href":"https://api.github.com/repos/OCA/management-system/pulls/143"}}},"pull_request":{"url":"https://api.github.com/repos/OCA/management-system/pulls/143","id":75047506,"html_url":"https://github.com/OCA/management-system/pull/143","diff_url":"https://github.com/OCA/management-system/pull/143.diff","patch_url":"https://github.com/OCA/management-system/pull/143.patch","issue_url":"https://api.github.com/repos/OCA/management-system/issues/143","number":143,"state":"open","locked":false,"title":"mgmtsystem_audit progress","user":{"login":"naousse","id":1227654,"avatar_url":"https://avatars.githubusercontent.com/u/1227654?v=3","gravatar_id":"","url":"https://api.github.com/users/naousse","html_url":"https://github.com/naousse","followers_url":"https://api.github.com/users/naousse/followers","following_url":"https://api.github.com/users/naousse/following{/other_user}","gists_url":"https://api.github.com/users/naousse/gists{/gist_id}","starred_url":"https://api.github.com/users/naousse/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/naousse/subscriptions","organizations_url":"https://api.github.com/users/naousse/orgs","repos_url":"https://api.github.com/users/naousse/repos","events_url":"https://api.github.com/users/naousse/events{/privacy}","received_events_url":"https://api.github.com/users/naousse/received_events","type":"User","site_admin":false},"body":"","created_at":"2016-06-24T00:14:33Z","updated_at":"2016-06-24T13:00:50Z","closed_at":null,"merged_at":null,"merge_commit_sha":"e223109d6d475535d8daaf9bfb03c4a6f9c9b285","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/OCA/management-system/pulls/143/commits","review_comments_url":"https://api.github.com/repos/OCA/management-system/pulls/143/comments","review_comment_url":"https://api.github.com/repos/OCA/management-system/pulls/comments{/number}","comments_url":"https://api.github.com/repos/OCA/management-system/issues/143/comments","statuses_url":"https://api.github.com/repos/OCA/management-system/statuses/4509b851559471f1fe41e26830acbb2c3b170aa1","head":{"label":"naousse:9.0-mgmtsystem_audit","ref":"9.0-mgmtsystem_audit","sha":"4509b851559471f1fe41e26830acbb2c3b170aa1","user":{"login":"naousse","id":1227654,"avatar_url":"https://avatars.githubusercontent.com/u/1227654?v=3","gravatar_id":"","url":"https://api.github.com/users/naousse","html_url":"https://github.com/naousse","followers_url":"https://api.github.com/users/naousse/followers","following_url":"https://api.github.com/users/naousse/following{/other_user}","gists_url":"https://api.github.com/users/naousse/gists{/gist_id}","starred_url":"https://api.github.com/users/naousse/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/naousse/subscriptions","organizations_url":"https://api.github.com/users/naousse/orgs","repos_url":"https://api.github.com/users/naousse/repos","events_url":"https://api.github.com/users/naousse/events{/privacy}","received_events_url":"https://api.github.com/users/naousse/received_events","type":"User","site_admin":false},"repo":{"id":44720976,"name":"management-system","full_name":"naousse/management-system","owner":{"login":"naousse","id":1227654,"avatar_url":"https://avatars.githubusercontent.com/u/1227654?v=3","gravatar_id":"","url":"https://api.github.com/users/naousse","html_url":"https://github.com/naousse","followers_url":"https://api.github.com/users/naousse/followers","following_url":"https://api.github.com/users/naousse/following{/other_user}","gists_url":"https://api.github.com/users/naousse/gists{/gist_id}","starred_url":"https://api.github.com/users/naousse/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/naousse/subscriptions","organizations_url":"https://api.github.com/users/naousse/orgs","repos_url":"https://api.github.com/users/naousse/repos","events_url":"https://api.github.com/users/naousse/events{/privacy}","received_events_url":"https://api.github.com/users/naousse/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/naousse/management-system","description":"Odoo for ISO Management Systems","fork":true,"url":"https://api.github.com/repos/naousse/management-system","forks_url":"https://api.github.com/repos/naousse/management-system/forks","keys_url":"https://api.github.com/repos/naousse/management-system/keys{/key_id}","collaborators_url":"https://api.github.com/repos/naousse/management-system/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/naousse/management-system/teams","hooks_url":"https://api.github.com/repos/naousse/management-system/hooks","issue_events_url":"https://api.github.com/repos/naousse/management-system/issues/events{/number}","events_url":"https://api.github.com/repos/naousse/management-system/events","assignees_url":"https://api.github.com/repos/naousse/management-system/assignees{/user}","branches_url":"https://api.github.com/repos/naousse/management-system/branches{/branch}","tags_url":"https://api.github.com/repos/naousse/management-system/tags","blobs_url":"https://api.github.com/repos/naousse/management-system/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/naousse/management-system/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/naousse/management-system/git/refs{/sha}","trees_url":"https://api.github.com/repos/naousse/management-system/git/trees{/sha}","statuses_url":"https://api.github.com/repos/naousse/management-system/statuses/{sha}","languages_url":"https://api.github.com/repos/naousse/management-system/languages","stargazers_url":"https://api.github.com/repos/naousse/management-system/stargazers","contributors_url":"https://api.github.com/repos/naousse/management-system/contributors","subscribers_url":"https://api.github.com/repos/naousse/management-system/subscribers","subscription_url":"https://api.github.com/repos/naousse/management-system/subscription","commits_url":"https://api.github.com/repos/naousse/management-system/commits{/sha}","git_commits_url":"https://api.github.com/repos/naousse/management-system/git/commits{/sha}","comments_url":"https://api.github.com/repos/naousse/management-system/comments{/number}","issue_comment_url":"https://api.github.com/repos/naousse/management-system/issues/comments{/number}","contents_url":"https://api.github.com/repos/naousse/management-system/contents/{+path}","compare_url":"https://api.github.com/repos/naousse/management-system/compare/{base}...{head}","merges_url":"https://api.github.com/repos/naousse/management-system/merges","archive_url":"https://api.github.com/repos/naousse/management-system/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/naousse/management-system/downloads","issues_url":"https://api.github.com/repos/naousse/management-system/issues{/number}","pulls_url":"https://api.github.com/repos/naousse/management-system/pulls{/number}","milestones_url":"https://api.github.com/repos/naousse/management-system/milestones{/number}","notifications_url":"https://api.github.com/repos/naousse/management-system/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/naousse/management-system/labels{/name}","releases_url":"https://api.github.com/repos/naousse/management-system/releases{/id}","deployments_url":"https://api.github.com/repos/naousse/management-system/deployments","created_at":"2015-10-22T03:55:15Z","updated_at":"2015-10-22T03:55:17Z","pushed_at":"2016-06-24T04:28:13Z","git_url":"git://github.com/naousse/management-system.git","ssh_url":"git@github.com:naousse/management-system.git","clone_url":"https://github.com/naousse/management-system.git","svn_url":"https://github.com/naousse/management-system","homepage":"http://odoo-community.org/project/26","size":4037,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"9.0"}},"base":{"label":"OCA:9.0","ref":"9.0","sha":"18b9b4c33d20ca149763b03b5c63a696b5ce44f9","user":{"login":"OCA","id":7600578,"avatar_url":"https://avatars.githubusercontent.com/u/7600578?v=3","gravatar_id":"","url":"https://api.github.com/users/OCA","html_url":"https://github.com/OCA","followers_url":"https://api.github.com/users/OCA/followers","following_url":"https://api.github.com/users/OCA/following{/other_user}","gists_url":"https://api.github.com/users/OCA/gists{/gist_id}","starred_url":"https://api.github.com/users/OCA/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/OCA/subscriptions","organizations_url":"https://api.github.com/users/OCA/orgs","repos_url":"https://api.github.com/users/OCA/repos","events_url":"https://api.github.com/users/OCA/events{/privacy}","received_events_url":"https://api.github.com/users/OCA/received_events","type":"Organization","site_admin":false},"repo":{"id":20894503,"name":"management-system","full_name":"OCA/management-system","owner":{"login":"OCA","id":7600578,"avatar_url":"https://avatars.githubusercontent.com/u/7600578?v=3","gravatar_id":"","url":"https://api.github.com/users/OCA","html_url":"https://github.com/OCA","followers_url":"https://api.github.com/users/OCA/followers","following_url":"https://api.github.com/users/OCA/following{/other_user}","gists_url":"https://api.github.com/users/OCA/gists{/gist_id}","starred_url":"https://api.github.com/users/OCA/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/OCA/subscriptions","organizations_url":"https://api.github.com/users/OCA/orgs","repos_url":"https://api.github.com/users/OCA/repos","events_url":"https://api.github.com/users/OCA/events{/privacy}","received_events_url":"https://api.github.com/users/OCA/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/OCA/management-system","description":"Odoo for Management Systems (ISO, IEC, BS)","fork":false,"url":"https://api.github.com/repos/OCA/management-system","forks_url":"https://api.github.com/repos/OCA/management-system/forks","keys_url":"https://api.github.com/repos/OCA/management-system/keys{/key_id}","collaborators_url":"https://api.github.com/repos/OCA/management-system/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/OCA/management-system/teams","hooks_url":"https://api.github.com/repos/OCA/management-system/hooks","issue_events_url":"https://api.github.com/repos/OCA/management-system/issues/events{/number}","events_url":"https://api.github.com/repos/OCA/management-system/events","assignees_url":"https://api.github.com/repos/OCA/management-system/assignees{/user}","branches_url":"https://api.github.com/repos/OCA/management-system/branches{/branch}","tags_url":"https://api.github.com/repos/OCA/management-system/tags","blobs_url":"https://api.github.com/repos/OCA/management-system/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/OCA/management-system/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/OCA/management-system/git/refs{/sha}","trees_url":"https://api.github.com/repos/OCA/management-system/git/trees{/sha}","statuses_url":"https://api.github.com/repos/OCA/management-system/statuses/{sha}","languages_url":"https://api.github.com/repos/OCA/management-system/languages","stargazers_url":"https://api.github.com/repos/OCA/management-system/stargazers","contributors_url":"https://api.github.com/repos/OCA/management-system/contributors","subscribers_url":"https://api.github.com/repos/OCA/management-system/subscribers","subscription_url":"https://api.github.com/repos/OCA/management-system/subscription","commits_url":"https://api.github.com/repos/OCA/management-system/commits{/sha}","git_commits_url":"https://api.github.com/repos/OCA/management-system/git/commits{/sha}","comments_url":"https://api.github.com/repos/OCA/management-system/comments{/number}","issue_comment_url":"https://api.github.com/repos/OCA/management-system/issues/comments{/number}","contents_url":"https://api.github.com/repos/OCA/management-system/contents/{+path}","compare_url":"https://api.github.com/repos/OCA/management-system/compare/{base}...{head}","merges_url":"https://api.github.com/repos/OCA/management-system/merges","archive_url":"https://api.github.com/repos/OCA/management-system/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/OCA/management-system/downloads","issues_url":"https://api.github.com/repos/OCA/management-system/issues{/number}","pulls_url":"https://api.github.com/repos/OCA/management-system/pulls{/number}","milestones_url":"https://api.github.com/repos/OCA/management-system/milestones{/number}","notifications_url":"https://api.github.com/repos/OCA/management-system/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/OCA/management-system/labels{/name}","releases_url":"https://api.github.com/repos/OCA/management-system/releases{/id}","deployments_url":"https://api.github.com/repos/OCA/management-system/deployments","created_at":"2014-06-16T17:53:24Z","updated_at":"2016-06-14T03:45:18Z","pushed_at":"2016-06-24T04:28:13Z","git_url":"git://github.com/OCA/management-system.git","ssh_url":"git@github.com:OCA/management-system.git","clone_url":"https://github.com/OCA/management-system.git","svn_url":"https://github.com/OCA/management-system","homepage":"http://odoo-community.org/project/26","size":4808,"stargazers_count":26,"watchers_count":26,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":63,"mirror_url":null,"open_issues_count":19,"forks":63,"open_issues":19,"watchers":26,"default_branch":"9.0"}},"_links":{"self":{"href":"https://api.github.com/repos/OCA/management-system/pulls/143"},"html":{"href":"https://github.com/OCA/management-system/pull/143"},"issue":{"href":"https://api.github.com/repos/OCA/management-system/issues/143"},"comments":{"href":"https://api.github.com/repos/OCA/management-system/issues/143/comments"},"review_comments":{"href":"https://api.github.com/repos/OCA/management-system/pulls/143/comments"},"review_comment":{"href":"https://api.github.com/repos/OCA/management-system/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/OCA/management-system/pulls/143/commits"},"statuses":{"href":"https://api.github.com/repos/OCA/management-system/statuses/4509b851559471f1fe41e26830acbb2c3b170aa1"}}}}
{"actor":{"display_login":"dreispt"}}