changeset 2613:ad3573d744ef beta

added option to remove members added using autocomplete widget from pull request
author Marcin Kuzminski <marcin@python-works.com>
date Sun, 15 Jul 2012 19:17:00 +0200
parents 9364776d1331
children 3f50a5e8fc4d
files rhodecode/public/js/rhodecode.js rhodecode/templates/pullrequests/pullrequest.html
diffstat 2 files changed, 17 insertions(+), 8 deletions(-) [+]
line wrap: on
line diff
--- a/rhodecode/public/js/rhodecode.js	Sun Jul 15 18:49:11 2012 +0200
+++ b/rhodecode/public/js/rhodecode.js	Sun Jul 15 19:17:00 2012 +0200
@@ -628,6 +628,12 @@
     }	
 }
 
+var removeReviewer = function(reviewer_id){
+	var el = YUD.get('reviewer_{0}'.format(reviewer_id));
+	if (el.parentNode !== undefined){
+		el.parentNode.removeChild(el);
+	}
+}
 
 var fileBrowserListeners = function(current_url, node_list_url, url_base){
 	
@@ -1381,11 +1387,12 @@
             		return
             	}
 
-            	var tmpl = '<li>'+
+            	var tmpl = '<li id="reviewer_{2}">'+
 		                      '<div class="reviewers_member">'+
 		                        '<div class="gravatar"><img alt="gravatar" src="{0}"/> </div>'+
 		                        '<div style="float:left">{1}</div>'+
 		                        '<input type="hidden" value="{2}" name="review_members" />'+
+		                        '<span class="delete_icon action_button" onclick="removeReviewer({2})"></span>'+
 		                      '</div>'+
 		                   '</li>'
 
@@ -1393,6 +1400,7 @@
             	var element = tmpl.format(oData.gravatar_lnk,displayname,oData.id);
             	members.innerHTML += element;
             	myAC.dataSource.cache.push(oData.id);
+            	YUD.get('user').value = '' 
             }
     	});        
     }
--- a/rhodecode/templates/pullrequests/pullrequest.html	Sun Jul 15 18:49:11 2012 +0200
+++ b/rhodecode/templates/pullrequests/pullrequest.html	Sun Jul 15 19:17:00 2012 +0200
@@ -73,13 +73,14 @@
           <div class="group_members_wrap">
             <ul id="review_members" class="group_members">
             %for member in c.review_members:
-                  <li>
-                    <div class="reviewers_member">
-                      <div class="gravatar"><img alt="gravatar" src="${h.gravatar_url(member.email,14)}"/> </div>
-                      <div style="float:left">${member.full_name} (${_('owner')})</div>
-                      <input type="hidden" value="${member.user_id}" name="review_members" />
-                    </div>
-                 </li>
+              <li id="reviewer_${member.user_id}">
+                <div class="reviewers_member">
+                  <div class="gravatar"><img alt="gravatar" src="${h.gravatar_url(member.email,14)}"/> </div>
+                  <div style="float:left">${member.full_name} (${_('owner')})</div>
+                  <input type="hidden" value="${member.user_id}" name="review_members" />
+                  <span class="delete_icon action_button" onclick="removeReviewer(${member.user_id})"></span>
+                </div>
+              </li>
             %endfor
             </ul>
           </div>