"Add a new user" link uses setup method to create a "loaded" user.
authorradhika chippada <radhika@radhika.curoverse>
Wed, 2 Apr 2014 22:52:04 +0000 (18:52 -0400)
committerTom Clegg <tom@curoverse.com>
Tue, 8 Apr 2014 17:40:44 +0000 (13:40 -0400)
apps/workbench/app/controllers/users_controller.rb
apps/workbench/app/views/application/index.html.erb
apps/workbench/app/views/users/_setup_popup.html.erb
apps/workbench/config/routes.rb

index 3696eccedf6385e1c3d8f9a61033eca6d468bd13..5ace8d68193d50cd278d87167fdfaede3194c8c5 100644 (file)
@@ -149,13 +149,16 @@ class UsersController < ApplicationController
     respond_to do |format|
       if current_user.andand.is_admin
         setup_params = {}
-        if params['uuid'] && params['uuid'].size>0
-          setup_params[:uuid] = params['uuid']
+        if params['user_uuid'] && params['user_uuid'].size>0
+          setup_params[:uuid] = params['user_uuid']
         end
         if params['email'] && params['email'].size>0
-          user = {email: params['email'], openid_prefix: params['openid_prefix']}
+          user = {email: params['email']}
           setup_params[:user] = user
         end
+        if params['openid_prefix'] && params['openid_prefix'].size>0
+          setup_params[:openid_prefix] = params['openid_prefix']
+        end
         if params['repo_name'] && params['repo_name'].size>0
           setup_params[:repo_name] = params['repo_name']
         end
index 67b50040a49702266f37c09e28b30a3ef05b743a..d45644317f080ea25c55d011a9c948b3c824a562 100644 (file)
@@ -5,9 +5,16 @@
 <% content_for :tab_line_buttons do %>
 
 <% if controller.model_class.creatable? %>
-<%= button_to "Add a new #{controller.model_class.to_s.underscore.gsub '_', ' '}", 
-    { action: 'create', return_to: request.url }, 
-    { class: 'btn btn-primary pull-right' } %>
+  <% if controller.model_class.name != 'User' %>
+    <%= button_to "Add a new #{controller.model_class.to_s.underscore.gsub '_', ' '}", 
+      { action: 'create', return_to: request.url }, 
+      { class: 'btn btn-primary pull-right' } %>
+  <% else %>
+    <%= link_to "Add a new #{controller.model_class.to_s.underscore.gsub '_', ' '}", setup_user_popup_path,  
+      {class: 'btn btn-primary pull-right', :remote => true, 'data-toggle' =>  "modal", 'data-target' => '#modal-window'}  %>
+    <div id="modal-window" class="modal fade" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"></div>
+  <% end %>
+
 <% end %>
 
 <% end %>
index 5711d95943f6f33016e7516010b80519e3e28ace..f1c15db3df32080835c0521b6374bf17c61a8e2d 100644 (file)
@@ -1,18 +1,23 @@
   <div class="modal-body">
-    <% uuid = @object.uuid %>
-    <% disable_email =  @object.uuid? %>
+    <% if @object%>
+      <% uuid = @object.uuid %>
+      <% email = @object.email %>
+    <% end %>
+    <% disable_email = uuid != nil %>
     <% identity_url_prefix = @current_selections[:identity_url_prefix] %>
     <% disable_url_prefix = (identity_url_prefix != nil) %>
     <% selected_repo = @current_selections[:repo_name] %>
     <% selected_vm = @current_selections[:vm_uuid] %>
     
-    <%= form_tag setup_user_url(id: uuid), {id: 'setup_form', name: 'setup_form', method: 'get', class: 'form-search', remote: true, onSubmit: "validate(); return false;"} do %>    
+<% puts "\n\n **************** setup_user_url = #{setup_user_url.inspect}" %>
+    <%= form_tag setup_user_path, {id: 'setup_form', name: 'setup_form', method: 'get', class: 'form-search', remote: true} do %>
+      <input id="user_uuid" maxlength="250" name="user_uuid" type="hidden" value="<%=uuid%>">
       <div>
         <table><tbody>
           <tr>
             <% if disable_email %>
               <td> Email </td>
-              <td> <input id="email" maxlength="250" name="email" type="text" value="<%=@object.email%>" disabled=true > </td>
+              <td> <input id="email" maxlength="250" name="email" type="text" value="<%=email%>" disabled=true > </td>
             <% else %>
               <td> Email </td>
               <td> <input id="email" maxlength="250" name="email" type="text" > </td>
index 43e9bfa1621a70444f693e7f6a49bb3fff14c623..8c8923889da322d84e4ea387aa41991d3a1ca79a 100644 (file)
@@ -7,6 +7,8 @@ ArvadosWorkbench::Application.routes.draw do
     get 'signatures', on: :collection
   end
   get '/user_agreements/signatures' => 'user_agreements#signatures'
+  get "users/setup_popup" => 'users#setup_popup', :as => :setup_user_popup
+  get "users/setup" => 'users#setup', :as => :setup_user
   resources :nodes
   resources :humans
   resources :traits
@@ -24,7 +26,6 @@ ArvadosWorkbench::Application.routes.draw do
     get 'activity', :on => :collection
     post 'sudo', :on => :member
     post 'unsetup', :on => :member
-    get 'setup', :on => :member
     get 'setup_popup', :on => :member
   end
   resources :logs