Disable the openid_url field when it isn't shown
authorTom Hughes <tom@compton.nu>
Mon, 22 Aug 2011 10:40:08 +0000 (11:40 +0100)
committerTom Hughes <tom@compton.nu>
Mon, 22 Aug 2011 10:40:08 +0000 (11:40 +0100)
app/views/user/new.html.erb

index 59aa7410e667f488ca8096b9aa76d247ca92bb23..f9d77a22bce5c5043e91aeddd7a1c066cfaf4ef9 100644 (file)
@@ -59,7 +59,7 @@
     <tr>
       <td></td>
       <td>
-        <span id="openid_prompt" class="minorNote"><%= link_to_function(t('user.new.use openid', :logo => openid_logo)) { |page| page.hide 'openid_prompt'; page.show 'openid_spacer', 'openid_field', 'openid_note' } %></span>
+        <span id="openid_prompt" class="minorNote"><%= link_to_function(t('user.new.use openid', :logo => openid_logo), "enableOpenID()") %></span>
         <span id="openid_note" class="minorNote"><%= t 'user.new.openid no password' %></span>
       </td>
     </tr>
   </table>
 <% end %>
 
-<%=
-  update_page_tag do |page|
-    if params[:openid] or (@user and @user.openid_url and not @user.openid_url.empty?)
-      page[:openid_prompt].hide
-    else
-      page[:openid_spacer].hide
-      page[:openid_field].hide
-      page[:openid_note].hide
-    end
-  end
-%>
+<script type="text/javascript">
+function enableOpenID()
+{
+  $("openid_prompt").hide();
+
+  $("openid_spacer").show();
+  $("openid_field").show();
+  $("openid_note").show();
+
+  $("openid_url").disabled = false;
+}
+
+function disableOpenID()
+{
+  $("openid_prompt").show();
+
+  $("openid_spacer").hide();
+  $("openid_field").hide();
+  $("openid_note").hide();
+
+  $("openid_url").disabled = true;
+}
+
+<% if params[:openid] or (@user and @user.openid_url and not @user.openid_url.empty?) -%>
+enableOpenID();
+<% else -%>
+disableOpenID();
+<% end -%>
+</script>
 
 <%= javascript_include_tag 'https://ethnio.com/remotes/62786' %>