X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=portal%2Ftemplates%2Fslice-tab-users-view.html;h=82acd013048cea78101648f688291402c3bfd40b;hb=b9ad9634e8d318e491371b13284e025a35307d9a;hp=103a1ff8d600c85c15f12fc1e6e401a390cfb781;hpb=7c531a6449b59e8e65f6bbc78e51992c882a1f03;p=myslice.git diff --git a/portal/templates/slice-tab-users-view.html b/portal/templates/slice-tab-users-view.html index 103a1ff8..82acd013 100644 --- a/portal/templates/slice-tab-users-view.html +++ b/portal/templates/slice-tab-users-view.html @@ -6,7 +6,10 @@ function get_users_in_slice(authority_hrn){ console.log(authority_hrn); $("table#user-tab").html("+/-EmailUser hrn"); - var slice_users = []; + var slice_users = []; + var slice_users_removed = []; + var slice_users_emails = []; + var slice_users_emails_removed = []; $.post("/rest/user/",{'filters':{'parent_authority': authority_hrn}}, function( data ) { var list_users = []; var table_users = []; @@ -43,15 +46,45 @@ $("div#user-tab-loading").css("display","none"); $("input:checkbox.user").click(function() { user_hrn = $(this).closest('tr').find('td:eq(2)').html(); + user_email = $(this).closest('tr').find('td:eq(1)').html(); if(this.checked){ var record_id = this.id; slice_users.push (user_hrn); + slice_users_removed.splice($.inArray(user_hrn, slice_users_removed),1); + slice_users_emails.push (user_email); + slice_users_emails_removed.splice($.inArray(user_email, slice_users_emails_removed),1); + }else{ - console.log(slice_users); + slice_users_removed.push (user_hrn); + slice_users.splice($.inArray(user_hrn, slice_users),1); + slice_users_emails_removed.push (user_email); + // this one is removing from the list wrong user when u uncheck + //slice_users_emails.splice($.inArray(user_email, slice_users_emails),1); + //this one is still buggy cz it still keeps users in both arrays + // but it's ok for the moment + slice_users_emails; + } }); - }); // post rest/user - } + }); // post rest/use + + $('button#addusers').click(function() { + $.post("/update/slice/",{'filters':{'slice_hrn':'{{slice}}'},'params':{'users':slice_users}}, function(data) { + if(data.success){ + // TODO: highlight row after success + //$('tr[id="'+record_id+'"]').highlight(); + mysliceAlert('Success: slice updated','success', true); + }else{ + mysliceAlert('Rest Error for: '+data.error,'warning', true); + } + }); // post update slice + emails = slice_users_emails.concat(slice_users_emails_removed); + $.post("/credentials/clear/",{'emails':emails}, function(data) { + }); // post credentials clear + + }); // button#addusers click + + } // get_users_in_slice $(document).ready(function() { // TODO: Add a filter based on the list of authorities @@ -80,21 +113,6 @@ get_users_in_slice("{{user_details.parent_authority}}"); - $('button#addusers').click(function() { - $.post("/update/slice/",{'filters':{'slice_hrn':'{{slice}}'},'params':{'users':slice_users}}, function(data) { - if(data.success){ - // TODO: highlight row after success - //$('tr[id="'+record_id+'"]').highlight(); - mysliceAlert('Success: slice updated','success', true); - }else{ - mysliceAlert('Rest Error for: '+data.error,'warning', true); - } - }); // post update slice - - // TODO: refresh table - //window.location="/portal/institution#slices"; - - }); // button#addusers click $('[title!=""]').qtip(); }); // document ready @@ -124,8 +142,6 @@ - {% if 'is_pi' in pi %} - {%endif%}