* A couple of tweaks in response to Tom's feedback
authorPeter Amstutz <peter.amstutz@clinicalfuture.com>
Thu, 26 Dec 2013 15:07:18 +0000 (10:07 -0500)
committerPeter Amstutz <peter.amstutz@clinicalfuture.com>
Thu, 26 Dec 2013 15:07:18 +0000 (10:07 -0500)
* Additional styling
* Added Dax

apps/workbench/app/controllers/application_controller.rb
apps/workbench/app/views/users/home.html.erb
apps/workbench/app/views/users/welcome.html.erb

index 08a83e498634c6aa7d6ccd4a18e44e1ac897aa4b..6629454b17c8a71285ab5b42b0b4058c37688e67 100644 (file)
@@ -174,24 +174,25 @@ class ApplicationController < ActionController::Base
         logger.debug "No token received, session is #{session.inspect}"
       end
       if try_redirect_to_login
-        respond_to do |f|
-          f.html {
-            if request.method == 'GET'
-              if login_optional
-                Thread.current[:arvados_api_token] = nil
-                yield
-              else
+        unless login_optional
+          respond_to do |f|
+            f.html {
+              if request.method == 'GET'
                 redirect_to $arvados_api_client.arvados_login_url(return_to: request.url)
+              else
+                flash[:error] = "Either you are not logged in, or your session has timed out. I can't automatically log you in and re-attempt this request."
+                redirect_to :back
               end
-            else
-              flash[:error] = "Either you are not logged in, or your session has timed out. I can't automatically log you in and re-attempt this request."
-              redirect_to :back
-            end
-          }
-          f.json {
-            @errors = ['You do not seem to be logged in. You did not supply an API token with this request, and your session (if any) has timed out.']
-            self.render_error status: 422
-          }
+            }
+            f.json {
+              @errors = ['You do not seem to be logged in. You did not supply an API token with this request, and your session (if any) has timed out.']
+              self.render_error status: 422
+            }
+          end
+        else
+          # login is optional for this route so go on to the regular controller
+          Thread.current[:arvados_api_token] = nil
+          yield
         end
       end
     ensure
index e2fe131280b2b9cd7fa126b0f207e715932e91ba..8a211c848557c80f6b70f07ed5a66debf31cefb2 100644 (file)
     </div>
   </div>
 </div>
-<% else %>
 
-<h1>Welcome to Arvados, <%= current_user.first_name %></h1>
-<div class="row-fluid">
-<div class="col">
-  <h4>Your account status</h4>
-<div class="well clearfix">
-  <p><strong>New / inactive</strong></p>
-  <p>
-  Your account must be activated by an Arvados administrator.  If this
-  is your first time accessing Arvados and would like to request
-  access, or you believe you are seeing the page in error, please 
-<%= link_to "contact us", Rails.configuration.activation_contact_link %>.  You should receive an email at the address you used to log in when
-  your account is activated.  In the mean time, you can <%= link_to "learn more about Arvados", "https://arvados.org/projects/arvados/wiki/Introduction_to_Arvados" %>,
-  and <%= link_to "read the Arvados user guide", "http://doc.arvados.org/user" %>.
-</p>
-  <p>
-  <%= link_to raw('Contact us &#x2709;'),
-  Rails.configuration.activation_contact_link, class: "pull-right btn btn-primary" %></p>
-</div>
-</div>
-</div>
+<% elsif current_user %>
+  <%= image_tag "dax.png", style: "float: right; max-width: 25%; margin-left: 2em" %>
+  <h1>Welcome to Arvados, <%= current_user.first_name %>!</h1>
+  <div class="row-fluid">
+    <div class="col span8">
+      <h4>Your account status</h4>
+      <div class="well clearfix">
+       <p><strong>New / inactive</strong></p>
+       <p>
+         Your account must be activated by an Arvados administrator.  If this
+         is your first time accessing Arvados and would like to request
+         access, or you believe you are seeing the page in error, please 
+         <%= link_to "contact us", Rails.configuration.activation_contact_link %>.  
+         You should receive an email at the address you used to log in when
+         your account is activated.  In the mean time, you can 
+         <%= link_to "learn more about Arvados", "https://arvados.org/projects/arvados/wiki/Introduction_to_Arvados" %>,
+         and <%= link_to "read the Arvados user guide", "http://doc.arvados.org/user" %>.
+       </p>
+       <p>
+         <%= link_to raw('Contact us &#x2709;'),
+             Rails.configuration.activation_contact_link, class: "pull-right btn btn-primary" %></p>
+      </div>
+    </div>
+  </div>
 <% end %>
index 05f71573debc417bc7170b89b06b752d4f48c8c0..ced69c48e3aed97dfe4c0c27f53745e5a1f6dcee 100644 (file)
@@ -1,9 +1,20 @@
-<h1>Please log in to use Arvados Workbench.</h1>
-</p>
-<p style="margin-top: 1em">
-When you click on the button below you will be taken to a Google sign-in page.  After entering your information, you will be redirected back to the Arvados Workbench.  If you have never used Arvados before, logging in for the first time will also create a new user account.  Arvados uses Google services for only for identification, and will never access any personal information.
-</p>
-<p style="margin-top: 1em">
-  <a  class="btn btn-primary" href="<%= $arvados_api_client.arvados_login_url(return_to: request.url) %>">Click here to log in to Arvados Workbench with a Google account</a>
-</p>
+<%= image_tag "dax.png", style: "float: right; max-width: 25%; margin-left: 2em" %>
+<h1>Hi there!  Please log in to use Arvados Workbench.</h1>
+<div class="row-fluid">
+  <div class="col span8" style="margin-top: 1em">
+    <div class="well clearfix">
+      <p>When you click on the button below you will be taken to a Google sign-in page.
+       After entering your information, you will be redirected back to the Arvados
+       Workbench.  If you have never used Arvados before, logging in for the first
+       time will also create a new user account.  Arvados uses your your name and
+       email address from Google services only for identification, and will never
+       access any personal information.</p>
+      <p>
+       <a  class="pull-right btn btn-primary" href="<%= $arvados_api_client.arvados_login_url(return_to: request.url) %>">
+         Click here to log in to Arvados Workbench with a Google account</a>
+      </p>
+    </div>
+  </div>
+</div>
+