From f45e8922f0e0dea46c3b9783bd7a3fcaf4852f79 Mon Sep 17 00:00:00 2001 From: Clement Verna Date: May 11 2016 08:53:15 +0000 Subject: Possibility to add the creation date of an issue or a comment This is usefull for the git ticket hooks --- diff --git a/pagure/lib/__init__.py b/pagure/lib/__init__.py index 62beb52..19e1afb 100644 --- a/pagure/lib/__init__.py +++ b/pagure/lib/__init__.py @@ -206,7 +206,7 @@ def create_user_ssh_keys_on_disk(user, gitolite_keydir): def add_issue_comment(session, issue, comment, user, ticketfolder, - notify=True): + notify=True, date_created=None): ''' Add a comment to an issue. ''' user_obj = __get_user(session, user) @@ -214,6 +214,7 @@ def add_issue_comment(session, issue, comment, user, ticketfolder, issue_uid=issue.uid, comment=comment, user_id=user_obj.id, + date_created=date_created, ) session.add(issue_comment) # Make sure we won't have SQLAlchemy error before we continue @@ -1060,7 +1061,7 @@ def new_project(session, user, name, blacklist, allowed_prefix, def new_issue(session, repo, title, content, user, ticketfolder, issue_id=None, issue_uid=None, private=False, status=None, - notify=True): + notify=True, date_created=None): ''' Create a new issue for the specified repo. ''' user_obj = __get_user(session, user) @@ -1072,6 +1073,7 @@ def new_issue(session, repo, title, content, user, ticketfolder, user_id=user_obj.id, uid=issue_uid or uuid.uuid4().hex, private=private, + date_created=date_created, ) if status is not None: diff --git a/pagure/lib/git.py b/pagure/lib/git.py index 6745c63..b354a35 100644 --- a/pagure/lib/git.py +++ b/pagure/lib/git.py @@ -441,6 +441,8 @@ def update_ticket_from_git( issue_uid=issue_uid, private=json_data.get('private'), status=json_data.get('status'), + date_created=datetime.datetime.utcfromtimestamp( + float(json_data.get('date_created'))), notify=False, ) @@ -496,6 +498,8 @@ def update_ticket_from_git( user=user.username, ticketfolder=None, notify=False, + date_created=datetime.datetime.utcfromtimestamp( + float(comment['date_created'])), ) session.commit()