adherent 0.3.0 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 89036065575320fa31e190a7d4032261d8083b6a
4
- data.tar.gz: 160e89736ef978f9693bb031e5c5fe95d62f11d8
3
+ metadata.gz: 8b29d8528df12db718332171265a6d754d2a3b26
4
+ data.tar.gz: 0353753b7acdacf51c0df287ad6dfd1a363486c7
5
5
  SHA512:
6
- metadata.gz: 06a8c253866a1ad145ec36ad6c5f52454e0448ce75f4644d36f8b4a577966500039627dd363ae58e8257139977898736ac1ad444d92378c46cd610001efcd3d8
7
- data.tar.gz: 08077bfd6a803c8a94a292891a4c910e0b790013a9f1458b3b583a6fe03817413f820ce7cc9393d08060310ee3c9e5b15c84253630e133fe474a480fdd240c9f
6
+ metadata.gz: 0a1a9653e134225fca9188be266d377c12c48504e475e886e1ba0cde0cdda131ed9c2275f2e55971fc82dbb196e63d4bb86b9a62a8b9502134d6687f89f724ec
7
+ data.tar.gz: de93d76ed685af67d41d2dbc56b26bf4bba1c4c97b46cf24a763351f0caa70d51f440c5ca76f638685b1547bf0060d19d7ef6116ac74d38964955fb7759b051f
@@ -74,7 +74,7 @@ module Adherent
74
74
  protected
75
75
 
76
76
  def find_member
77
- @member = Member.find(params[:member_id])
77
+ @member = @organism.members.find(params[:member_id])
78
78
  end
79
79
 
80
80
  private
@@ -5,7 +5,7 @@ require_dependency "adherent/application_controller"
5
5
  module Adherent
6
6
  class CoordsController < ApplicationController
7
7
 
8
- before_filter :find_member, :except=>[:index]
8
+ before_filter :find_member, :except=>[:index]
9
9
 
10
10
  # GET /coords/1
11
11
  # GET /coords/1.json
@@ -74,7 +74,7 @@ module Adherent
74
74
  protected
75
75
 
76
76
  def find_member
77
- @member = Member.find(params[:member_id])
77
+ @member = @organism.members.find(params[:member_id])
78
78
  end
79
79
 
80
80
  def coord_params
@@ -4,14 +4,19 @@ require_dependency "adherent/application_controller"
4
4
 
5
5
  module Adherent
6
6
  class MembersController < ApplicationController
7
+
8
+ before_filter :find_member, :except=>[:index, :create, :new]
9
+
10
+
7
11
  # GET /members
8
12
  # GET /members.json
9
13
  def index
10
14
 
11
- @members = Adherent::QueryMember.query_members(@organism)
15
+
12
16
 
13
17
  respond_to do |format|
14
- format.html # index.html.erb
18
+ format.html {@members = Adherent::QueryMember.query_members(@organism) }
19
+ # index.html.erb
15
20
  format.csv { send_data Adherent::QueryMember.to_csv(@organism),
16
21
  :filename=>"#{@organism.title}-#{dashed_date(Date.today)}-Membres.csv" }
17
22
 
@@ -24,7 +29,7 @@ module Adherent
24
29
  # GET /members/1
25
30
  # GET /members/1.json
26
31
  def show
27
- @member = Member.find(params[:id])
32
+
28
33
 
29
34
  respond_to do |format|
30
35
  format.html # show.html.erb
@@ -45,7 +50,7 @@ module Adherent
45
50
 
46
51
  # GET /members/1/edit
47
52
  def edit
48
- @member = Member.find(params[:id])
53
+
49
54
  end
50
55
 
51
56
  # POST /members
@@ -67,7 +72,7 @@ module Adherent
67
72
  # PUT /members/1
68
73
  # PUT /members/1.json
69
74
  def update
70
- @member = Member.find(params[:id])
75
+
71
76
 
72
77
  respond_to do |format|
73
78
  if @member.update_attributes(member_params)
@@ -83,7 +88,7 @@ module Adherent
83
88
  # DELETE /members/1
84
89
  # DELETE /members/1.json
85
90
  def destroy
86
- @member = Member.find(params[:id])
91
+
87
92
  @member.destroy
88
93
 
89
94
  respond_to do |format|
@@ -70,7 +70,7 @@ module Adherent
70
70
 
71
71
 
72
72
  def find_member
73
- @member = Member.find(params[:member_id])
73
+ @member = @organism.members.find(params[:member_id])
74
74
  end
75
75
 
76
76
  # cette méthode permet à l'application qui intègre le gem adhérent
@@ -11,7 +11,7 @@ module Adherent
11
11
  @payment = Payment.find(params[:payment_id])
12
12
  @member = @payment.member
13
13
  @reglement = @payment.reglements.new(amount:@payment.non_impute)
14
- @unpaid_adhesions = Adhesion.unpaid
14
+ @unpaid_adhesions = @organism.adhesions.unpaid
15
15
  end
16
16
 
17
17
  # TODO voir pour faire les deux approches (succès et échec)
@@ -39,7 +39,7 @@ module Adherent
39
39
 
40
40
  # liste toutes les adhésions qui ne sont pas payées.
41
41
  # pour rappel un where ne fonctionne pas avec un aggrégat obligeant à utiliser la clause having
42
- #
42
+ # FIXME doit être filtré par un organisme
43
43
  scope :unpaid, -> {select('adherent_adhesions.*, sum(adherent_reglements.amount) as reglements_amount').
44
44
  joins('left join adherent_reglements on adherent_adhesions.id = adherent_reglements.adhesion_id').
45
45
  group('adherent_adhesions.id').
@@ -1,11 +1,18 @@
1
1
  module Adherent
2
2
  class Coord < ActiveRecord::Base
3
3
  belongs_to :member
4
-
5
-
6
-
4
+
7
5
  validates :member_id, :presence=>true
8
-
6
+ validates :tel, :format=>{with:NAME_REGEX},
7
+ :length=>{:maximum=>LONG_NAME_LENGTH_MAX}, :allow_blank=>true
8
+ validates :gsm, :format=>{with:NAME_REGEX},
9
+ :length=>{:maximum=>LONG_NAME_LENGTH_MAX}, :allow_blank=>true
10
+ validates :office, :format=>{with:NAME_REGEX},
11
+ :length=>{:maximum=>LONG_NAME_LENGTH_MAX}, :allow_blank=>true
12
+ validates :zip, :format=>{with:NAME_REGEX},
13
+ :length=>{:maximum=>LONG_NAME_LENGTH_MAX}, :allow_blank=>true
14
+ validates :city, :format=>{with:NAME_REGEX},
15
+ :length=>{:maximum=>LONG_NAME_LENGTH_MAX}, :allow_blank=>true
9
16
 
10
17
  end
11
18
  end
@@ -13,8 +13,11 @@ module Adherent
13
13
 
14
14
  # TODO rajouter un before_destroy sur les paiements
15
15
 
16
- validates :number, :name, :forname , :organism_id, :presence=>true
16
+ validates :organism_id, :presence=>true
17
+ validates :number, :format=>{with:NAME_REGEX}, :length=>{:within=>NAME_LENGTH_LIMITS}, :presence=>true
17
18
  validates_uniqueness_of :number, :scope=>:organism_id
19
+ validates :name, presence:true, :format=>{with:NAME_REGEX}, :length=>{:maximum=>LONG_NAME_LENGTH_MAX}
20
+ validates :forname, presence:true, :format=>{with:NAME_REGEX}, :length=>{:maximum=>LONG_NAME_LENGTH_MAX}
18
21
 
19
22
  # arel des adhésions impayées par ordre de date
20
23
  def unpaid_adhesions
@@ -3,6 +3,7 @@ class Organism < ActiveRecord::Base
3
3
 
4
4
  has_many :members, class_name:'Adherent::Member'
5
5
  has_many :payments, through: :members, class_name:'Adherent::Payment'
6
+ has_many :adhesions, through: :members, class_name:'Adherent::Adhesion'
6
7
 
7
8
  # méthode devant être surchargée dans l'application principale
8
9
  # pour avoir une capacité à gerer les limites de dates lors de la saisie des
@@ -13,10 +14,6 @@ class Organism < ActiveRecord::Base
13
14
  #
14
15
  # Dans l'appli compta, on redéfinit range_date pour avoir les dates
15
16
  # correspondants aux exercices ouverts.
16
- #
17
- # TODO revoir ce sujet pour introduire un fichier de configuration
18
- # permettant d'indiquer les limites de dates
19
- #
20
17
  def range_date
21
18
  Date.today.<<(3)..Date.today.>>(3)
22
19
  end
@@ -16,6 +16,6 @@ module Adherent
16
16
  # VERSION = '0.2.3' # Ajout d'un champ comment pour les paiements
17
17
  # VERSION = '0.2.8' # Insertion icone et action export csv xls pour members
18
18
  # VERSION = '0.2.9' # Mémorisation choix longueur liste des dataTables
19
- VERSION = '0.3.0' # Passage à Rails 4.1
20
-
21
- end
19
+ # VERSION = '0.3.0' # Passage à Rails 4.1
20
+ VERSION = '0.3.1' # Modifications pour le passage de flc à noschema
21
+ end
@@ -2,21 +2,28 @@
2
2
 
3
3
  require 'rails_helper'
4
4
 
5
+ RSpec.configure do |c|
6
+ # c.exclusion_filter = {js:true}
7
+ # c.filter = {wip:true}
8
+ end
9
+
5
10
  describe Adherent::CoordsController, :type => :controller do
6
11
 
7
12
  before(:each) do
8
13
  @routes = Adherent::Engine.routes
9
14
  @member = double(Adherent::Member)
10
- allow(Adherent::Member).to receive(:find).with(@member.to_param).and_return @member
15
+ allow(@controller).to receive(:find_member)
16
+ @controller.instance_variable_set('@member', @member)
11
17
  end
12
18
 
13
19
 
14
20
 
15
21
 
16
22
  describe "GET show" do
17
- it 'appelle le coord' do
23
+ it 'appelle le coord' , wip:true do
18
24
  expect(@member).to receive(:coord).and_return(double(Adherent::Coord))
19
- get :show, member_id:@member.to_param
25
+ get :show, {member_id:@member.to_param}
26
+ assigns.each {|h| puts "#{h.inspect }"}
20
27
  end
21
28
 
22
29
  it 'assigne le membre et rend la vue' do
@@ -6,6 +6,6 @@ class ApplicationController < ActionController::Base
6
6
  protected
7
7
 
8
8
  def find_organism
9
- @organism = Organism.find_or_create_by(title:'Mon association')
9
+ @organism = Organism.find_by_id(session[:organism])
10
10
  end
11
11
  end