I think we can avoid adding styling in custom.scss by putting spans
inside h2 elements in user card. Notes Inline. Otherwise works great.
On 10/05/2011 10:46 AM, jzigmund(a)redhat.com wrote:
From: Jozef Zigmund<jzigmund(a)redhat.com>
---
src/app/stylesheets/custom.scss | 11 +++++++++++
src/app/views/users/_form.haml | 26 ++++++++++++++++++++++----
src/app/views/users/edit.haml | 7 ++++---
src/app/views/users/new.haml | 28 +++++++++++++++++++++++++---
4 files changed, 62 insertions(+), 10 deletions(-)
diff --git a/src/app/stylesheets/custom.scss b/src/app/stylesheets/custom.scss
index 7b8d2cd..bda2eb3 100644
--- a/src/app/stylesheets/custom.scss
+++ b/src/app/stylesheets/custom.scss
@@ -51,3 +51,14 @@ ul.deployment-array.small li.deployment {
.hidden {
display: none;
}
+
+div#user_card header.user-card-header h2#first_name {
+ color: white;
+ padding: 15px 10px 10px 60px;
+ background: transparent url('../../images/user_card_icon.png') no-repeat
12px 10px;
+}
+
+div#user_card header.user-card-header h2#first_name + h2#last_name {
+ padding: 0px;
+ background: transparent;
+}
\ No newline at end of file
diff --git a/src/app/views/users/_form.haml b/src/app/views/users/_form.haml
index 43f49f8..ca43636 100644
--- a/src/app/views/users/_form.haml
+++ b/src/app/views/users/_form.haml
@@ -4,17 +4,17 @@
%fieldset
%p
= form.label :first_name, t(:first_name)
- = form.text_field :first_name
+ = form.text_field :first_name, :class =>"check_change"
%p
= form.label :last_name, t(:last_name)
- = form.text_field :last_name
+ = form.text_field :last_name, :class =>"check_change"
%p
= form.label :email, t(:email)
- = form.text_field :email
+ = form.text_field :email, :class =>"check_change"
%fieldset
%p
= form.label :login, t(:choose_name)
- = form.text_field :login, :class => "em"
+ = form.text_field :login, :class => "em check_change"
%p
= form.label :password, form.object.new_record? ? t(:choose_password) :
t(:change_password)
= form.password_field :password
@@ -48,3 +48,21 @@
%fieldset.options
= form.submit "Save User", :class => "submit button pill"
+
+:javascript
+ $('.check_change').change(function(){
+ switch(this.id){
+ case 'user_last_name':
+ $('h2#last_name').text(this.value);
$('span#last_name').text(this.value);
+ break;
+ case 'user_first_name':
+ $('h2#first_name').text(this.value);
$('span#first_name').text(this.value);
+ break;
+ case 'user_email':
+ $('dd#email').text(this.value);
+ break;
+ case 'user_login':
+ $('dd#login').text(this.value);
+ break;
+ }
+ });
diff --git a/src/app/views/users/edit.haml b/src/app/views/users/edit.haml
index ddbb891..aebcfd7 100644
--- a/src/app/views/users/edit.haml
+++ b/src/app/views/users/edit.haml
@@ -12,12 +12,13 @@
.content
#user_card.user_form_card
%header.user-card-header
- %h2= @user.name
+ %h2#first_name= @user.first_name
+ %h2#last_name= @user.last_name
%h2
span#first_name= @user.first_name
span#last_name= @user.last_name
.user-card-content
%dl
%dt E-mail Address
- %dd= @user.email
+ %dd#email= @user.email
%dt Username
- %dd= @user.login
+ %dd#login= @user.login
= form_for @user, :url => user_path(@user), :html => { :method => :put,
:class => 'generic' } do |f|
= render :partial => "form", :locals => { :form => f,
:cancel_path => users_path }
diff --git a/src/app/views/users/new.haml b/src/app/views/users/new.haml
index d5d76d9..ac47b65 100644
--- a/src/app/views/users/new.haml
+++ b/src/app/views/users/new.haml
@@ -14,15 +14,37 @@
%br
#user_card.user_form_card
%header.user-card-header
- %h2 Kenneth Keiter
+ %h2#first_name
+ %h2#last_name
%h2
span#first_name=
span#last_name=
.user-card-content
%dl
%dt E-mail Address
- %dd kkeiter(a)redhat.com
+ %dd#email
%dt Username
- %dd kkeiter
+ %dd#login
= form_for @user, :url => users_path, :html => {:class =>
'generic'} do |f|
-if current_user
= render :partial => "form", :locals => { :form => f }
-else
= render :partial => "form", :locals => { :form => f }
+
+:javascript
+ if ($('input:text#user_first_name').val() != "")
+ {
+ $('h2#first_name').text($('input:text#user_first_name').val());
$('span#first_name').text($('input:text#user_first_name').val());
+ }
+
+ if ($('input:text#user_last_name').val() != "")
+ {
+ $('h2#last_name').text($('input:text#user_last_name').val());
$('span#last_name').text($('input:text#user_last_name').val());
+ }
+
+ if ($('input:text#user_email').val() != "")
+ {
+ $('dd#email').text($('input:text#user_email').val());
+ }
+
+ if ($('input:text#user_login').val() != "")
+ {
+ $('dd#login').text($('input:text#user_login').val());
+ }
Jirka