Mercurial > kallithea
changeset 5439:b9c9216d6fa7
pull requests: make owner editable with auto completion
author | Mads Kiilerich <madski@unity3d.com> |
---|---|
date | Wed, 26 Aug 2015 17:28:59 +0200 |
parents | 68011c4e6f33 |
children | 568785df959c |
files | kallithea/controllers/pullrequests.py kallithea/model/forms.py kallithea/templates/pullrequests/pullrequest_show.html kallithea/tests/functional/test_pullrequests.py |
diffstat | 4 files changed, 15 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/kallithea/controllers/pullrequests.py Wed Aug 26 17:28:59 2015 +0200 +++ b/kallithea/controllers/pullrequests.py Wed Aug 26 17:28:59 2015 +0200 @@ -61,6 +61,7 @@ from kallithea.controllers.changeset import _ignorews_url, _context_url from kallithea.controllers.compare import CompareController from kallithea.lib.graphmod import graph_data +from kallithea.model.db import User ### FIXME log = logging.getLogger(__name__) @@ -497,6 +498,7 @@ old_description = pull_request.description pull_request.title = _form['pullrequest_title'] pull_request.description = _form['pullrequest_desc'].strip() or _('No description') + pull_request.owner = User.get_by_username(_form['owner']) try: PullRequestModel().mention_from_description(pull_request, old_description) PullRequestModel().update_reviewers(pull_request_id, reviewers_ids)
--- a/kallithea/model/forms.py Wed Aug 26 17:28:59 2015 +0200 +++ b/kallithea/model/forms.py Wed Aug 26 17:28:59 2015 +0200 @@ -518,6 +518,8 @@ pullrequest_desc = v.UnicodeString(strip=True, required=False) review_members = v.Set() updaterev = v.UnicodeString(strip=True, required=False, if_missing=None) + owner = All(v.UnicodeString(strip=True, required=True), + v.ValidRepoUser()) return _PullRequestPostForm
--- a/kallithea/templates/pullrequests/pullrequest_show.html Wed Aug 26 17:28:59 2015 +0200 +++ b/kallithea/templates/pullrequests/pullrequest_show.html Wed Aug 26 17:28:59 2015 +0200 @@ -38,7 +38,7 @@ <label>${_('Description')}:</label> %if editable: <div style="margin: 5px"> - <a class="btn btn-small" onclick="$('#pr-edit-form').show();$('.pr-not-edit').hide()">${_("Edit")}</a> + <a class="btn btn-small" onclick="$('.pr-do-edit').show();$('.pr-not-edit').hide()">${_("Edit")}</a> </div> %endif </div> @@ -48,7 +48,7 @@ </div> %if editable: - <div id="pr-edit-form" style="display:none"> + <div class="pr-do-edit" style="display:none"> <div class="field"> <div class="label-summary"> <label for="pullrequest_title">${_('Title')}:</label> @@ -153,13 +153,17 @@ <div class="label-summary"> <label>${_('Owner')}:</label> </div> - <div class="input"> + <div class="input pr-not-edit"> <div class="gravatar"> ${h.gravatar(c.pull_request.owner.email, size=20)} </div> <span>${c.pull_request.owner.full_name_and_username}</span><br/> <span><a href="mailto:${c.pull_request.owner.email}">${c.pull_request.owner.email}</a></span><br/> </div> + <div class="input pr-do-edit ac" style="display:none"> + ${h.text('owner', class_="large", value=c.pull_request.owner.username, placeholder=_('Username'))} + <div id="owner_completion_container"></div> + </div> </div> <div class="field"> @@ -373,6 +377,7 @@ <script type="text/javascript"> $(document).ready(function(){ PullRequestAutoComplete($('#user'), $('#reviewers_container'), _USERS_AC_DATA); + SimpleUserAutoComplete($('#owner'), $('#owner_completion_container'), _USERS_AC_DATA); $('.code-difftable').on('click', '.add-bubble', function(e){ show_comment_form($(this)); @@ -391,7 +396,7 @@ }); var $org_review_members = $('#review_members').clone(); $('#pr-form-reset').click(function(e){ - $('#pr-edit-form').hide(); + $('.pr-do-edit').hide(); $('.pr-not-edit').show(); $('#pr-form-save').prop('disabled',false); $('#pr-form-clone').prop('disabled',true);
--- a/kallithea/tests/functional/test_pullrequests.py Wed Aug 26 17:28:59 2015 +0200 +++ b/kallithea/tests/functional/test_pullrequests.py Wed Aug 26 17:28:59 2015 +0200 @@ -100,6 +100,7 @@ 'updaterev': 'default', 'pullrequest_title': 'title', 'pullrequest_desc': 'description', + 'owner': TEST_USER_ADMIN_LOGIN, '_authentication_token': self.authentication_token(), 'review_members': invalid_user_id, }, @@ -135,6 +136,7 @@ { 'pullrequest_title': 'title', 'pullrequest_desc': 'description', + 'owner': TEST_USER_ADMIN_LOGIN, '_authentication_token': self.authentication_token(), 'review_members': invalid_user_id, },