summaryrefslogtreecommitdiff
path: root/app/views/users
diff options
context:
space:
mode:
Diffstat (limited to 'app/views/users')
-rw-r--r--app/views/users/_conferences.html.haml7
-rw-r--r--app/views/users/_fax_accounts.html.haml7
-rw-r--r--app/views/users/_form_core.html.haml2
-rw-r--r--app/views/users/_index_core.html.haml46
-rw-r--r--app/views/users/_listing.html.haml6
-rw-r--r--app/views/users/_phone_books.html.haml7
-rw-r--r--app/views/users/_phones.html.haml7
-rw-r--r--app/views/users/_sip_accounts.html.haml7
-rw-r--r--app/views/users/_tenants.html.haml5
-rw-r--r--app/views/users/_user_groups.html.haml7
-rw-r--r--app/views/users/edit.html.haml2
-rw-r--r--app/views/users/index.html.haml2
-rw-r--r--app/views/users/new.html.haml2
-rw-r--r--app/views/users/show.html.haml136
14 files changed, 132 insertions, 111 deletions
diff --git a/app/views/users/_conferences.html.haml b/app/views/users/_conferences.html.haml
new file mode 100644
index 0000000..b9592b6
--- /dev/null
+++ b/app/views/users/_conferences.html.haml
@@ -0,0 +1,7 @@
+-# Conferences
+-#
+- if (can?( :index, Conference ) && user.conferences.count > 0 ) || can?( :create, Conference )
+ %h2= t('conferences.index.page_title')
+ - if can?( :index, Conference ) && user.conferences.count > 0
+ = render "conferences/index_core", :conferences => user.conferences
+ = render :partial => 'shared/create_link', :locals => {:parent => user, :child_class => Conference} \ No newline at end of file
diff --git a/app/views/users/_fax_accounts.html.haml b/app/views/users/_fax_accounts.html.haml
new file mode 100644
index 0000000..044b8f9
--- /dev/null
+++ b/app/views/users/_fax_accounts.html.haml
@@ -0,0 +1,7 @@
+-# FaxAccount
+-#
+- if (can?( :index, FaxAccount ) && user.fax_accounts.count > 0 ) || can?( :create, FaxAccount )
+ %h2= t('fax_accounts.index.page_title')
+ - if can?( :index, FaxAccount ) && user.fax_accounts.count > 0
+ = render "fax_accounts/index_core", {:fax_accounts => user.fax_accounts, :fax_accountable => user}
+ = render :partial => 'shared/create_link', :locals => {:parent => user, :child_class => FaxAccount} \ No newline at end of file
diff --git a/app/views/users/_form_core.html.haml b/app/views/users/_form_core.html.haml
index 8e18d12..24b15f5 100644
--- a/app/views/users/_form_core.html.haml
+++ b/app/views/users/_form_core.html.haml
@@ -1,6 +1,6 @@
.inputs
- if GuiFunction.display?('name_data_fields_in_user_edit_form', current_user)
- = f.input :male, :collection => [[true, t('users.form.gender.male')], [false, t('users.form.gender.female')]], :label_method => :last, :value_method => :first, :label => t('users.form.male.label'), :hint => conditional_hint('users.form.gender.hint'), :label => t('users.form.gender.label'), :as => :radio
+ = f.input :male, :collection => [[true, t('users.form.gender.male')], [false, t('users.form.gender.female')]], :label_method => :last, :value_method => :first, :label => t('users.form.male.label'), :hint => conditional_hint('users.form.gender.hint'), :label => t('users.form.gender.label'), :as => :radio_buttons
= f.input :first_name, :label => t('users.form.first_name.label'), :hint => conditional_hint('users.form.first_name.hint'), :autofocus => true
= f.input :middle_name, :label => t('users.form.middle_name.label'), :hint => conditional_hint('users.form.middle_name.hint')
= f.input :last_name, :label => t('users.form.last_name.label'), :hint => conditional_hint('users.form.last_name.hint')
diff --git a/app/views/users/_index_core.html.haml b/app/views/users/_index_core.html.haml
index 51c15de..7f2251a 100644
--- a/app/views/users/_index_core.html.haml
+++ b/app/views/users/_index_core.html.haml
@@ -1,18 +1,28 @@
-%table
- %tr
- %th
- %th= t('users.index.user_name')
- %th= t('users.index.email')
- %th= t('users.index.first_name')
- %th= t('users.index.last_name')
-
- - reset_cycle
- - for user in users
- %tr{:class => cycle('odd', 'even')}
- %td
- = image_tag user.image_url(:mini).to_s if user.image_url(:mini)
- %td= user.user_name
- %td= user.email
- %td= user.first_name
- %td= user.last_name
- =render :partial => 'shared/index_view_edit_destroy_part', :locals => {:parent => @tenant, :child => user} \ No newline at end of file
+- cache(['user_table_row_inner_td', I18n.locale, current_user, users.reorder(:updated_at).last, users.count, GsParameter.get('NUMBER_OF_SHOWN_ITEMS')]) do
+ %table{:class => 'table table-striped'}
+ %tr
+ %th
+ %th= t('users.index.user_name')
+ %th= t('users.index.email')
+ %th= t('users.index.first_name')
+ %th= t('users.index.last_name')
+ %th{:colspan => '3'}
+
+ - for user in users
+ - cache(['user_table_row', I18n.locale, current_user, user]) do
+ %tr
+ %td
+ - if user.image?
+ =image_tag(user.image_url(:mini).to_s, :class => 'img-rounded')
+ - else
+ - if user.male?
+ = image_tag 'icons/user-male-16x.png', :class => 'img-rounded'
+ - else
+ = image_tag 'icons/user-female-16x.png', :class => 'img-rounded'
+ %td= user.user_name
+ %td
+ - if !user.email.blank?
+ = mail_to user.email, (Haml::Engine.new("%i.icon-envelope").render + ' ' + user.email)
+ %td= user.first_name
+ %td= user.last_name
+ =render :partial => 'shared/index_view_edit_destroy_part', :locals => {:parent => @tenant, :child => user} \ No newline at end of file
diff --git a/app/views/users/_listing.html.haml b/app/views/users/_listing.html.haml
index 0a97ad1..9b7b653 100644
--- a/app/views/users/_listing.html.haml
+++ b/app/views/users/_listing.html.haml
@@ -1,8 +1,8 @@
- amount_of_users = users.count
- if amount_of_users > 0
- - if amount_of_users < 30
+ - if amount_of_users < GsParameter.get('NUMBER_OF_SHOWN_ITEMS')
= users.map{|user| user}.join(', ')
- else
- = users.limit(15).map{|user| user}.join(', ') + ', '
+ = users.limit((GsParameter.get('NUMBER_OF_SHOWN_ITEMS') / 2).floor).map{|user| user}.join(', ') + ', '
= '[...]'
- = users.offset(amount_of_users - 15).map{|user| user}.join(', ') \ No newline at end of file
+ = users.offset(amount_of_users - (GsParameter.get('NUMBER_OF_SHOWN_ITEMS') / 2).floor).map{|user| user}.join(', ') \ No newline at end of file
diff --git a/app/views/users/_phone_books.html.haml b/app/views/users/_phone_books.html.haml
new file mode 100644
index 0000000..4943bc6
--- /dev/null
+++ b/app/views/users/_phone_books.html.haml
@@ -0,0 +1,7 @@
+-# Phone books
+-#
+- if GuiFunction.display?('show_phone_books_in_user_show_view', current_user)
+ - if can?( :index, PhoneBook )
+ %h2=t("phone_books.index.page_title")
+ = render "phone_books/index_core", :phone_books => phone_books
+ = render :partial => 'shared/create_link', :locals => {:parent => user, :child_class => PhoneBook} \ No newline at end of file
diff --git a/app/views/users/_phones.html.haml b/app/views/users/_phones.html.haml
new file mode 100644
index 0000000..e001eae
--- /dev/null
+++ b/app/views/users/_phones.html.haml
@@ -0,0 +1,7 @@
+-# Phones
+-#
+- if (can?( :index, Phone, :phoneable => user ) && user.phones.count > 0 ) || can?( :create, Phone, :phoneable => user )
+ %h2= t('phones.index.page_title')
+ - if can?( :index, Phone, :phoneable => user ) && user.phones.count > 0
+ = render "phones/index_core", :phones => user.phones
+ = render :partial => 'shared/create_link', :locals => {:parent => user, :child_class => Phone} \ No newline at end of file
diff --git a/app/views/users/_sip_accounts.html.haml b/app/views/users/_sip_accounts.html.haml
new file mode 100644
index 0000000..1861105
--- /dev/null
+++ b/app/views/users/_sip_accounts.html.haml
@@ -0,0 +1,7 @@
+-# SIP accounts
+-#
+- if (can?( :index, SipAccount ) && user.sip_accounts.count > 0 ) || can?( :create, SipAccount )
+ %h2= t('sip_accounts.index.page_title')
+ - if can?( :index, SipAccount ) && user.sip_accounts.count > 0
+ = render "sip_accounts/index_core", :sip_accounts => user.sip_accounts
+ = render :partial => 'shared/create_link', :locals => {:parent => user, :child_class => SipAccount} \ No newline at end of file
diff --git a/app/views/users/_tenants.html.haml b/app/views/users/_tenants.html.haml
new file mode 100644
index 0000000..49a2d9b
--- /dev/null
+++ b/app/views/users/_tenants.html.haml
@@ -0,0 +1,5 @@
+-# Tenants
+-#
+- if can?( :index, Tenant ) && user.tenants.count > 1
+ %h2=t("tenants.index.page_title")
+ = render "tenants/index_core", :tenants => user.tenants \ No newline at end of file
diff --git a/app/views/users/_user_groups.html.haml b/app/views/users/_user_groups.html.haml
new file mode 100644
index 0000000..81191ae
--- /dev/null
+++ b/app/views/users/_user_groups.html.haml
@@ -0,0 +1,7 @@
+-# User groups (only if the current user can edit or destroy them)
+-#
+- if user.user_groups.map{ |x| can?( :edit, x ) || can?( :destroy, x ) }.include?(true)
+ - if can?( :index, UserGroup )
+ %h2=t("user_groups.index.page_title")
+ - if user.user_groups.count > 0
+ = render "user_groups/index_core", :user_groups => user.user_groups.where(:tenant_id => tenant.id).order(:name)
diff --git a/app/views/users/edit.html.haml b/app/views/users/edit.html.haml
index 96272f5..ed79b2c 100644
--- a/app/views/users/edit.html.haml
+++ b/app/views/users/edit.html.haml
@@ -1,3 +1,3 @@
-- title t("users.edit.page_title", :resource => @user)
+- content_for :title, t("users.edit.page_title", :resource => @user)
= render "form"
diff --git a/app/views/users/index.html.haml b/app/views/users/index.html.haml
index 892e035..8a3d1fc 100644
--- a/app/views/users/index.html.haml
+++ b/app/views/users/index.html.haml
@@ -1,4 +1,4 @@
-- title t("users.index.page_title")
+- content_for :title, t("users.index.page_title")
- if @users.count > 0
= render "index_core", :users => @users
diff --git a/app/views/users/new.html.haml b/app/views/users/new.html.haml
index a014611..64fe55f 100644
--- a/app/views/users/new.html.haml
+++ b/app/views/users/new.html.haml
@@ -1,3 +1,3 @@
-- title t("users.new.page_title")
+- content_for :title, t("users.new.page_title")
= render "form"
diff --git a/app/views/users/show.html.haml b/app/views/users/show.html.haml
index 7730447..4c39fd1 100644
--- a/app/views/users/show.html.haml
+++ b/app/views/users/show.html.haml
@@ -1,96 +1,60 @@
-- title "User: #{@user}"
+- content_for :title, "User: #{@user}"
-#user-show
- %aside
- = image_tag @user.image_url(:small).to_s, class: 'display' if @user.image? && @user.image_url(:small)
- %p
- %strong= t('users.show.user_name') + ":"
- = @user.user_name
- %p
- %strong= t('users.show.email') + ":"
- = @user.email
-
- %p.controls
- = render :partial => 'shared/show_edit_destroy_part', :locals => { :parent => @tenant, :child => @user }
-
- - @user.sip_accounts.each do |sip_account|
- - phone_number = sip_account.phone_numbers.order(:number).last
- - if phone_number && !phone_number.number.blank? && phone_number.number[0] != '+'
- %p
- %strong= sip_account.phone_numbers.order(:number).last.number
- %p
- =link_to t("call_histories.index.page_title"), sip_account_call_histories_path(sip_account)
- %br
- =link_to t("voicemail_messages.index.page_title"), sip_account_voicemail_messages_path(sip_account)
- %br
- =link_to t("call_forwards.index.page_title"), phone_number_call_forwards_path(phone_number)
- %br
- =link_to t("voicemail_settings.index.page_title"), sip_account_voicemail_settings_path(sip_account)
- %br
- =link_to t("softkeys.index.page_title"), sip_account_softkeys_path(sip_account)
- %br
- =link_to t("ringtones.show.page_title"), phone_number_ringtones_path(phone_number)
-
- - if @user.conferences.any?
+.row
+ .span3
+ - cache(['user_show_aside', I18n.locale, @user, @user.sip_accounts, @user.conferences]) do
+ = image_tag @user.image_url(:small).to_s, :class => 'img-rounded' if @user.image? && @user.image_url(:small)
+ %p
+ %strong= t('users.show.user_name') + ":"
+ = @user.user_name
%p
- %strong= t("conferences.index.page_title")
- - @user.conferences.each do |conference|
+ %strong= t('users.show.email') + ":"
+ = @user.email
+
+ %p.controls
+ = render :partial => 'shared/show_edit_destroy_part', :locals => { :parent => @tenant, :child => @user }
+
+ - @user.sip_accounts.each do |sip_account|
+ - phone_number = sip_account.phone_numbers.order(:number).last
+ - if phone_number && !phone_number.number.blank? && phone_number.number[0] != '+'
+ %p
+ %strong= sip_account.phone_numbers.order(:number).last.number
+ %p
+ =link_to t("call_histories.index.page_title"), sip_account_call_histories_path(sip_account)
+ %br
+ =link_to t("voicemail_messages.index.page_title"), sip_account_voicemail_messages_path(sip_account)
+ %br
+ =link_to t("call_forwards.index.page_title"), phone_number_call_forwards_path(phone_number)
+ %br
+ =link_to t("voicemail_settings.index.page_title"), sip_account_voicemail_settings_path(sip_account)
+ %br
+ =link_to t("softkeys.index.page_title"), sip_account_softkeys_path(sip_account)
+ %br
+ =link_to t("ringtones.show.page_title"), phone_number_ringtones_path(phone_number)
+
+ - if @user.conferences.any?
%p
- =link_to conference, edit_user_conference_path(@user, conference)
-
+ %strong= t("conferences.index.page_title")
+ - @user.conferences.each do |conference|
+ %p
+ =link_to conference, edit_user_conference_path(@user, conference)
- %section
- -# Phone books
- -#
- - if GuiFunction.display?('show_phone_books_in_user_show_view', current_user)
- - if can?( :index, PhoneBook )
- %h2=t("phone_books.index.page_title")
- = render "phone_books/index_core", :phone_books => @phone_books
- = render :partial => 'shared/create_link', :locals => {:parent => @user, :child_class => PhoneBook}
- -# User groups (only if the current user can edit or destroy them)
- -#
- - if @user.user_groups.map{ |x| can?( :edit, x ) || can?( :destroy, x ) }.include?(true)
- - if can?( :index, UserGroup )
- %h2=t("user_groups.index.page_title")
- - if @user.user_groups.count > 0
- = render "user_groups/index_core", :user_groups => @user.user_groups.where(:tenant_id => @tenant.id).order(:name)
- = render :partial => 'shared/create_link', :locals => {:parent => @tenant, :child_class => UserGroup}
+ .span9
+ = render :partial => 'phone_books', :locals => {:user => @user, :phone_books => @phone_books}
- -# SIP accounts
- -#
- - if (can?( :index, SipAccount ) && @user.sip_accounts.count > 0 ) || can?( :create, SipAccount )
- %h2= t('sip_accounts.index.page_title')
- - if can?( :index, SipAccount ) && @user.sip_accounts.count > 0
- = render "sip_accounts/index_core", :sip_accounts => @user.sip_accounts
- = render :partial => 'shared/create_link', :locals => {:parent => @user, :child_class => SipAccount}
+ - if current_user.user_groups.where(:name => 'Admins').any?
+ - cache(['user_show_user_groups_overview', I18n.locale, @user, @user.user_groups]) do
+ = render :partial => 'user_groups', :locals => {:user => @user, :tenant => @tenant}
- -# Phones
- -#
- - if (can?( :index, Phone, :phoneable => @user ) && @user.phones.count > 0 ) || can?( :create, Phone, :phoneable => @user )
- %h2= t('phones.index.page_title')
- - if can?( :index, Phone, :phoneable => @user ) && @user.phones.count > 0
- = render "phones/index_core", :phones => @user.phones
- = render :partial => 'shared/create_link', :locals => {:parent => @user, :child_class => Phone}
+ - cache(['user_show_sip_accounts_overview', I18n.locale, @user, @user.sip_accounts]) do
+ = render :partial => 'sip_accounts', :locals => {:user => @user}
- -# FaxAccount
- -#
- - if (can?( :index, FaxAccount ) && @user.fax_accounts.count > 0 ) || can?( :create, FaxAccount )
- %h2= t('fax_accounts.index.page_title')
- - if can?( :index, FaxAccount ) && @user.fax_accounts.count > 0
- = render "fax_accounts/index_core", {:fax_accounts => @user.fax_accounts, :fax_accountable => @user}
- = render :partial => 'shared/create_link', :locals => {:parent => @user, :child_class => FaxAccount}
+ - cache(['user_show_phones_overview', I18n.locale, @user, @user.phones]) do
+ = render :partial => 'phones', :locals => {:user => @user}
- -# Conferences
- -#
- - if (can?( :index, Conference ) && @user.conferences.count > 0 ) || can?( :create, Conference )
- %h2= t('conferences.index.page_title')
- - if can?( :index, Conference ) && @user.conferences.count > 0
- = render "conferences/index_core", :conferences => @user.conferences
- = render :partial => 'shared/create_link', :locals => {:parent => @user, :child_class => Conference}
+ - cache(['user_show_fax_accounts_overview', I18n.locale, @user, @user.fax_accounts]) do
+ = render :partial => 'fax_accounts', :locals => {:user => @user}
- -# Tenants
- -#
- - if can?( :index, Tenant ) && @user.tenants.count > 1
- %h2=t("tenants.index.page_title")
- = render "tenants/index_core", :tenants => @user.tenants \ No newline at end of file
+ - cache(['user_show_conferences_overview', I18n.locale, @user, @user.conferences]) do
+ = render :partial => 'conferences', :locals => {:user => @user}