From 1777a0e57215bd6148fac0fea6230460478e3f8e Mon Sep 17 00:00:00 2001 From: Martin Lensment Date: Thu, 18 Sep 2014 17:15:54 +0300 Subject: [PATCH] Contacts index view --- app/controllers/admin/contacts_controller.rb | 6 ++++ app/views/admin/contacts/index.haml | 34 ++++++++++++++++++++ app/views/layouts/application.html.haml | 2 ++ config/locales/en.yml | 1 + 4 files changed, 43 insertions(+) create mode 100644 app/views/admin/contacts/index.haml diff --git a/app/controllers/admin/contacts_controller.rb b/app/controllers/admin/contacts_controller.rb index 6220d5143..8d55a0009 100644 --- a/app/controllers/admin/contacts_controller.rb +++ b/app/controllers/admin/contacts_controller.rb @@ -1,4 +1,10 @@ class Admin::ContactsController < ApplicationController + + def index + @q = Contact.search(params[:q]) + @contacts = @q.result.page(params[:page]) + end + def search render json: Contact.search_by_query(params[:q]) end diff --git a/app/views/admin/contacts/index.haml b/app/views/admin/contacts/index.haml new file mode 100644 index 000000000..c920d0bbe --- /dev/null +++ b/app/views/admin/contacts/index.haml @@ -0,0 +1,34 @@ +.row + .col-sm-6 + %h2.text-center-xs= t('shared.contacts') + .col-sm-6 + %h2.text-right.text-center-xs + = link_to(t('shared.add'), new_admin_contact_path, class: 'btn btn-primary') +%hr +.row + .col-md-12 + .table-responsive + %table.table.table-hover.table-bordered.table-condensed + %thead + %tr + %th{class: 'col-xs-2'} + = sort_link(@q, 'international_address_name', t('shared.name')) + %th{class: 'col-xs-2'} + = sort_link(@q, 'code', t('shared.code')) + %th{class: 'col-xs-2'} + = sort_link(@q, 'ident', t('shared.identity_code')) + %th{class: 'col-xs-1'} + = sort_link(@q, 'email', t('shared.email')) + %th{class: 'col-xs-1'} + = t('shared.action') + %tbody + - @contacts.each do |x| + %tr + %td= link_to(x, admin_contact_path(x)) + %td= x.code + %td= x.ident + %td= x.email + %td= link_to(t('shared.edit'), edit_admin_contact_path(x), class: 'btn btn-primary btn-xs') +.row + .col-md-12 + = paginate @contacts diff --git a/app/views/layouts/application.html.haml b/app/views/layouts/application.html.haml index 939904227..9dbb8c723 100644 --- a/app/views/layouts/application.html.haml +++ b/app/views/layouts/application.html.haml @@ -29,6 +29,8 @@ = link_to t('shared.registrars'), root_path %li = link_to t('shared.domains'), admin_domains_path + %li + = link_to t('shared.contacts'), admin_contacts_path %li.dropdown %a.dropdown-toggle{"data-toggle" => "dropdown", href: "#"} = t('shared.settings') diff --git a/config/locales/en.yml b/config/locales/en.yml index ee0a9e5b0..8e62b9135 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -243,3 +243,4 @@ en: domain_status_prohibits_deleting: 'Domain status prohibits deleting' domain_deleted: 'Domain deleted!' failed_to_delete_domain: 'Failed to delete domain!' + email: 'Email'