diff --git a/app/assets/stylesheets/application.css b/app/assets/stylesheets/application.css index ac76fc2..3305272 100644 --- a/app/assets/stylesheets/application.css +++ b/app/assets/stylesheets/application.css @@ -28,3 +28,12 @@ table.noborder { border: 0; margin: 0; } nav ul { display: flex; flex-wrap: wrap; padding: 10px; list-style-type: none; gap: 20px; } nav ul li { margin: 0; padding: 0; } + +.contribution-actions { + list-style-type: none; + padding: 0px; + display: flex; + flex-wrap: wrap; + gap: 0 20px; +} +.contribution-actions li { padding: 0; } diff --git a/app/controllers/concerns/member_filter.rb b/app/controllers/concerns/member_filter.rb index 4820416..263b7ff 100644 --- a/app/controllers/concerns/member_filter.rb +++ b/app/controllers/concerns/member_filter.rb @@ -4,7 +4,7 @@ module MemberFilter def filtered_members members = Member.all.order(sort_params.merge(number: :asc)) - filters = params.permit(:prefers_postal, :display_name, :email, :identification_number, status: [], category: []) + filters = params.permit(:prefers_postal, :display_name, :legal_name, :email, :identification_number, status: [], category: []) Rails.logger.info filters @@ -18,6 +18,7 @@ module MemberFilter members.ransack( display_name_i_cont: filters[:display_name], + legal_name_i_cont: filters[:legal_name], email_i_cont: filters[:email], identification_number_i_cont: filters[:identification_number], ).result @@ -27,7 +28,7 @@ module MemberFilter field, direction = params.fetch(:sort, "").split(".") directions = %w[ asc desc ] - fields = %w[ number expires_on joined_on email status display_name ] + fields = %w[ number expires_on joined_on email status display_name legal_name ] if directions.include?(direction) && fields.include?(field) { field => direction } diff --git a/app/controllers/members_controller.rb b/app/controllers/members_controller.rb index a047256..dcaec8f 100644 --- a/app/controllers/members_controller.rb +++ b/app/controllers/members_controller.rb @@ -64,6 +64,6 @@ class MembersController < ApplicationController # Only allow a list of trusted parameters through. def member_params - params.fetch(:member, {}).permit(:display_name, :email, :identification_number, :category, :address, :joined_on, :expires_on, :wants_mailing_list, :prefers_postal) + params.fetch(:member, {}).permit(:display_name, :legal_name, :pronouns, :email, :identification_number, :category, :address, :joined_on, :expires_on, :wants_mailing_list, :prefers_postal) end end diff --git a/app/models/member.rb b/app/models/member.rb index 4e99ba2..8b04518 100644 --- a/app/models/member.rb +++ b/app/models/member.rb @@ -20,6 +20,8 @@ class Member < ApplicationRecord update( excluded: true, display_name: "", + legal_name: "", + pronouns: "", email: nil, identification_number: "", category: "", diff --git a/app/views/members/edit.html.erb b/app/views/members/edit.html.erb index 7250e70..2a029d3 100644 --- a/app/views/members/edit.html.erb +++ b/app/views/members/edit.html.erb @@ -18,6 +18,14 @@ <%= form.text_field :display_name, required: true %> + + + <%= form.text_field :legal_name, required: true %> + + + + <%= form.text_field :pronouns, required: true %> + <%= form.email_field :email, required: true %> diff --git a/app/views/members/index.html.erb b/app/views/members/index.html.erb index 2417481..726d591 100644 --- a/app/views/members/index.html.erb +++ b/app/views/members/index.html.erb @@ -13,6 +13,10 @@ <%= t 'members.attributes.display_name' %> <%= form.text_field :display_name, value: params[:display_name] %> + + <%= t 'members.attributes.legal_name' %> + <%= form.text_field :legal_name, value: params[:legal_name] %> + <%= t 'members.attributes.email' %> <%= form.text_field :email, value: params[:email] %> diff --git a/app/views/members/new.html.erb b/app/views/members/new.html.erb index cb0280b..72cdfe1 100644 --- a/app/views/members/new.html.erb +++ b/app/views/members/new.html.erb @@ -15,6 +15,8 @@ + + diff --git a/app/views/members/show.html.erb b/app/views/members/show.html.erb index 75f9186..3d23b5a 100644 --- a/app/views/members/show.html.erb +++ b/app/views/members/show.html.erb @@ -4,6 +4,8 @@
<%= form.text_field :display_name, required: true %>
<%= form.text_field :legal_name, required: true %>
<%= form.text_field :pronouns %>
<%= form.email_field :email, required: true %>
<%= form.select :category, %w{student retired unemployed employed} %>
<%= form.text_field :identification_number %>
+ + @@ -40,7 +42,7 @@
<%= t('members.attributes.display_name') %><%= @member.number %>. <%= @member.display_name %>
<%= t('members.attributes.legal_name') %><%= @member.legal_name %>
<%= t('members.attributes.pronouns') %><%= @member.pronouns %>
<%= t('members.attributes.email') %><%= @member.email %>
<%= t('members.attributes.category') %><%= @member.category %>
<%= t('members.attributes.identification_number') %><%= @member.identification_number %>
<%= contribution.payment_reference %> €<%= contribution.eurocents %> -
    +
    • <%= link_to t('members.show.actions.edit_contribution'), edit_contribution_path(contribution) %>
    • <%= link_to t('members.show.actions.delete_contribution'), delete_contribution_path(contribution) %>
    diff --git a/app/views/notification_mailer/_payment.html.erb b/app/views/notification_mailer/_payment.html.erb index 531c9e0..0f04c9a 100644 --- a/app/views/notification_mailer/_payment.html.erb +++ b/app/views/notification_mailer/_payment.html.erb @@ -10,8 +10,8 @@

- Caso queiras usufruir da quota reduzida de 6.00€ para estudantes, - desempregados e reformados, pedimos que nos envies um comprovativo desse + Caso queiras usufruir da quota reduzida de 6.00€ para estudantes, pessoas + desempregadas ou reformadas, pedimos que nos envies um comprovativo desse estatuto e faças o pagamento por transferência bancária.

diff --git a/app/views/notification_mailer/_payment.text.erb b/app/views/notification_mailer/_payment.text.erb index 1b1f838..7aee751 100644 --- a/app/views/notification_mailer/_payment.text.erb +++ b/app/views/notification_mailer/_payment.text.erb @@ -5,8 +5,8 @@ MBWAY: * Transferência bancária: PT50 0035 2178 00027478430 14 * Multibanco ou MBWAY: <%= @link %> -Caso queiras usufruir da quota reduzida de 6.00€ para estudantes, -desempregados e reformados, pedimos que nos envies um comprovativo desse +Caso queiras usufruir da quota reduzida de 6.00€ para estudantes, pessoas +desempregadas e reformadas, pedimos que nos envies um comprovativo desse estatuto e faças o pagamento por transferência bancária. Se optares pelo método de transferência bancária, pedimos que envies o diff --git a/config/locales/en.yml b/config/locales/en.yml index f19d7be..8d447ba 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -30,6 +30,8 @@ en: status: "Status" email: "Email address" display_name: "Display name" + legal_name: "Legal name" + pronouns: "Pronouns" joined_on: "Joined on" expires_on: "Expires on" category: "Category" diff --git a/config/locales/pt.yml b/config/locales/pt.yml index 7fa2731..74aad33 100644 --- a/config/locales/pt.yml +++ b/config/locales/pt.yml @@ -51,7 +51,9 @@ pt: number: "#" status: "Estado" email: "Endereço de correio electrónico" - display_name: "Nome" + display_name: "Nome social" + legal_name: "Nome legal" + pronouns: "Pronomes" joined_on: "Data de inscrição" expires_on: "Data de expiração" category: "Categoria" @@ -109,7 +111,7 @@ pt: subject: "ANSOL - Suspensão de inscrição iminente" cancelled: subject: "ANSOL - Inscrição cancelada" - greetings: "Caro(a) %{display_name}" + greetings: "Car(a/o/e) %{display_name}" sessions: new: title: "Entrar" diff --git a/db/migrate/20230331005733_add_member_legal_name_and_pronouns.rb b/db/migrate/20230331005733_add_member_legal_name_and_pronouns.rb new file mode 100644 index 0000000..46ef11b --- /dev/null +++ b/db/migrate/20230331005733_add_member_legal_name_and_pronouns.rb @@ -0,0 +1,8 @@ +class AddMemberLegalNameAndPronouns < ActiveRecord::Migration[7.0] + def change + change_table :members do |t| + t.string :legal_name + t.string :pronouns + end + end +end diff --git a/db/schema.rb b/db/schema.rb index 6cc02b2..5f63c0f 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -10,7 +10,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema[7.0].define(version: 2022_06_26_100610) do +ActiveRecord::Schema[7.0].define(version: 2023_03_31_005733) do # These are extensions that must be enabled in order to support this database enable_extension "pgcrypto" enable_extension "plpgsql" @@ -43,6 +43,8 @@ ActiveRecord::Schema[7.0].define(version: 2022_06_26_100610) do t.boolean "excluded", default: false t.boolean "wants_mailing_list", default: false, null: false t.boolean "prefers_postal", default: false, null: false + t.string "legal_name" + t.string "pronouns" t.index ["email"], name: "index_members_on_email", unique: true t.index ["number"], name: "index_members_on_number", unique: true end