adherent 0.2.8 → 0.2.9
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/javascripts/adherent/application.js +1 -0
- data/app/assets/javascripts/adherent/datatableinit.js +125 -0
- data/app/assets/javascripts/adherent/members.js +1 -96
- data/app/assets/stylesheets/adherent/print.css.scss +1 -1
- data/app/models/adherent/query_member.rb +3 -3
- data/app/views/adherent/members/index.html.erb +1 -1
- data/lib/adherent/version.rb +2 -1
- data/spec/dummy/log/development.log +730 -0
- data/spec/dummy/log/test.log +30168 -0
- data/spec/dummy/tmp/cache/assets/development/sass/be6a31d2c99b18f66f4f3f1b46bb0b8c5ef54ab1/print.css.scssc +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/0d215f323ff7a120168496bc58ed75a3 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/20a218b05c2726d14bd025c36ba31ddd +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/22948c5cb4a59a4c252888f75cdf387a +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/2c60d0f2e80cc940437007413465285a +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/3f2a439772fcd9cd0f434f723837ae51 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/7566b213016e5bc90381985bbae7e445 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/850d92cf676cc2c2c662ee8dc328f82c +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/8e3cd5dcbc6987a1bab580133dd4091a +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/992d715e0153da278420d380aa63b412 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/c35251b000451b1b9f7274e0ae471704 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/d27d4e6bd84d0108fc54a21959181335 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/d88c0d3362ebdb47849b797a3ec1b355 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/dce67637c5015fb918e48897a4e6c96a +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/e17667e7004e5cfc7f733b8762f47c3f +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/fca89522784c8592001dc314a2361344 +0 -0
- data/spec/dummy/tmp/cache/assets/test/sass/be6a31d2c99b18f66f4f3f1b46bb0b8c5ef54ab1/print.css.scssc +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/20a218b05c2726d14bd025c36ba31ddd +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/22948c5cb4a59a4c252888f75cdf387a +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/3f2a439772fcd9cd0f434f723837ae51 +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/850d92cf676cc2c2c662ee8dc328f82c +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/8e3cd5dcbc6987a1bab580133dd4091a +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/992d715e0153da278420d380aa63b412 +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/c35251b000451b1b9f7274e0ae471704 +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/d27d4e6bd84d0108fc54a21959181335 +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/d88c0d3362ebdb47849b797a3ec1b355 +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/dce67637c5015fb918e48897a4e6c96a +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/e17667e7004e5cfc7f733b8762f47c3f +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/fca89522784c8592001dc314a2361344 +0 -0
- data/spec/dummy/tmp/pids/server.pid +1 -0
- data/spec/features/js_spec.rb +1 -1
- data/spec/models/adherent/query_member_spec.rb +43 -33
- metadata +15 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4fc4e1c5fcfff3af9d55327498e90855fd126fd0
|
4
|
+
data.tar.gz: 9d488474b4b5f9a30519c88efc97423e80efd17d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4e6de3a70084139395871e88b3145e5bc495f61ca7e1c5c19e37f91f211323274552352914752d20169b7316a9846fe7899f620719c048addb24df1415106e2d
|
7
|
+
data.tar.gz: e0e2251bf5f412dc5eb7fb0aad6f92837844dc60edff756b693a32de146face7fc6159390e36b56c3ad34e074acbd914349c5219e97a239ecc2771a0724d2575
|
@@ -0,0 +1,125 @@
|
|
1
|
+
/*
|
2
|
+
* Ce fichier apporte les éléments globaux de dataTable, définition du
|
3
|
+
* style français, des types de colonnes numeric-comma, des méthodes de
|
4
|
+
* tri de ces colonnes, de tri des dates au format européen
|
5
|
+
*/
|
6
|
+
|
7
|
+
|
8
|
+
var frenchdatatable = {
|
9
|
+
"sProcessing": "Traitement en cours...",
|
10
|
+
"sLengthMenu": "Afficher _MENU_ éléments",
|
11
|
+
"sZeroRecords": "Aucun élément à afficher",
|
12
|
+
"sInfo": "Affichage de l'élement _START_ à _END_ sur _TOTAL_ éléments",
|
13
|
+
"sInfoEmpty": "Affichage de l'élement 0 à 0 sur 0 éléments",
|
14
|
+
"sInfoFiltered": "(filtré de _MAX_ éléments au total)",
|
15
|
+
"sInfoPostFix": "",
|
16
|
+
"sSearch": "Rechercher :",
|
17
|
+
"sUrl": "",
|
18
|
+
"oPaginate": {
|
19
|
+
"sFirst": "Premier",
|
20
|
+
"sPrevious": "Précédent",
|
21
|
+
"sNext": "Suivant",
|
22
|
+
"sLast": "Dernier"
|
23
|
+
},
|
24
|
+
"oAria": {
|
25
|
+
"sSortAscending": ": activer pour trier la colonne par ordre croissant",
|
26
|
+
"sSortDescending": ": activer pour trier la colonne par ordre décroissant"
|
27
|
+
}
|
28
|
+
};
|
29
|
+
|
30
|
+
//plug in permettant d'ajouter le type comma-decimals aux colonnes'
|
31
|
+
// cette méthode qui pourrait être utilisée pour les dates
|
32
|
+
// permet à datatable d'identifier de lui même le type de la colonne
|
33
|
+
jQuery.fn.dataTableExt.aTypes.unshift(
|
34
|
+
function ( sData )
|
35
|
+
{
|
36
|
+
var sValidChars = "0123456789-,";
|
37
|
+
var Char;
|
38
|
+
var bDecimal = false;
|
39
|
+
|
40
|
+
/* Check the numeric part */
|
41
|
+
for ( i=0 ; i<sData.length ; i++ )
|
42
|
+
{
|
43
|
+
Char = sData.charAt(i);
|
44
|
+
if (sValidChars.indexOf(Char) == -1)
|
45
|
+
{
|
46
|
+
return null;
|
47
|
+
}
|
48
|
+
|
49
|
+
/* Only allowed one decimal place... */
|
50
|
+
if ( Char == "," )
|
51
|
+
{
|
52
|
+
if ( bDecimal )
|
53
|
+
{
|
54
|
+
return null;
|
55
|
+
}
|
56
|
+
bDecimal = true;
|
57
|
+
}
|
58
|
+
}
|
59
|
+
|
60
|
+
return 'numeric-comma';
|
61
|
+
}
|
62
|
+
);
|
63
|
+
|
64
|
+
// Gestion du tri des colonnes de montant
|
65
|
+
// fonctions de tri pour des nombres avec une virgule comme séparateur décimal
|
66
|
+
jQuery.fn.dataTableExt.oSort['numeric-comma-asc'] = function(a,b) {
|
67
|
+
var x = (a == "-") ? 0 : a.replace( /,/, "." );
|
68
|
+
var y = (b == "-") ? 0 : b.replace( /,/, "." );
|
69
|
+
x = parseFloat( x );
|
70
|
+
y = parseFloat( y );
|
71
|
+
return ((x < y) ? -1 : ((x > y) ? 1 : 0));
|
72
|
+
};
|
73
|
+
|
74
|
+
jQuery.fn.dataTableExt.oSort['numeric-comma-desc'] = function(a,b) {
|
75
|
+
var x = (a == "-") ? 0 : a.replace( /,/, "." );
|
76
|
+
var y = (b == "-") ? 0 : b.replace( /,/, "." );
|
77
|
+
x = parseFloat( x );
|
78
|
+
y = parseFloat( y );
|
79
|
+
return ((x < y) ? 1 : ((x > y) ? -1 : 0));
|
80
|
+
};
|
81
|
+
|
82
|
+
// dateHeight transforme une date au format français en un chiffre
|
83
|
+
// ce qui permet les comparaisons pour le tri des tables
|
84
|
+
// dateStr est au format jj/mm/aaaa
|
85
|
+
function dateHeight(dateStr) {
|
86
|
+
// on cherche les 4 derniers chiffres
|
87
|
+
var arr = dateStr.split('/');
|
88
|
+
var val = arr[2] + arr[1] + arr[0];
|
89
|
+
return parseInt(val);
|
90
|
+
}
|
91
|
+
|
92
|
+
// Les colonnes qui doivent être triées selon les dates au format français
|
93
|
+
// doivent avoir comme classe date-euro (%th.date-euro).
|
94
|
+
// Dans la fonction datatable il suffit alors d'indiquer que les colonne
|
95
|
+
// sont de type date-euro (sType: date-euro, aTargets: [date-euro]
|
96
|
+
jQuery.fn.dataTableExt.oSort['date-euro-asc'] = function(a, b) {
|
97
|
+
var x = dateHeight(a);
|
98
|
+
var y = dateHeight(b);
|
99
|
+
var z = ((x < y) ? -1 : ((x > y) ? 1 : 0));
|
100
|
+
return z;
|
101
|
+
};
|
102
|
+
|
103
|
+
jQuery.fn.dataTableExt.oSort['date-euro-desc'] = function(a, b) {
|
104
|
+
var x = dateHeight(a);
|
105
|
+
var y = dateHeight(b);
|
106
|
+
var z = ((x < y) ? 1 : ((x > y) ? -1 : 0));
|
107
|
+
return z;
|
108
|
+
};
|
109
|
+
|
110
|
+
// Valeurs par défaut pour les dataTables pour avoir la mise en page
|
111
|
+
// voulue pour les 4 accessoires (search, pagination,...)
|
112
|
+
$.extend($.fn.dataTable.defaults, {
|
113
|
+
"sDom": "<'col-lg-6'l>frt<'col-lg-6'i><'col-lg-6'p>",
|
114
|
+
"oLanguage": frenchdatatable,
|
115
|
+
"iDisplayLength": 10,
|
116
|
+
"aLengthMenu": [[10, 25, 50, -1], [10, 25, 50, "Tous"]],
|
117
|
+
"bStateSave": true, // pour pouvoir sauvegarder l'état de la table
|
118
|
+
"fnStateSave": function (oSettings, oData) { //localStorage avec un chemin pour que les
|
119
|
+
// paramètres spécifiques aux cash_lines soient mémorisés.
|
120
|
+
localStorage.setItem('DataTables_' + window.location.pathname, JSON.stringify(oData));
|
121
|
+
},
|
122
|
+
"fnStateLoad": function (oSettings) {
|
123
|
+
return JSON.parse(localStorage.getItem('DataTables_' + window.location.pathname));
|
124
|
+
}
|
125
|
+
});
|
@@ -1,26 +1,7 @@
|
|
1
|
-
|
2
|
-
// All this logic will automatically be available in application.js.
|
3
|
-
var frenchdatatable = {
|
4
|
-
"sProcessing": "Traitement en cours...",
|
5
|
-
"sLengthMenu": "Afficher _MENU_ éléments",
|
6
|
-
"sZeroRecords": "Aucun élément à afficher",
|
7
|
-
"sInfo": "Affichage de l'élement _START_ à _END_ sur _TOTAL_ éléments",
|
8
|
-
"sInfoEmpty": "Affichage de l'élement 0 à 0 sur 0 éléments",
|
9
|
-
"sInfoFiltered": "(filtré de _MAX_ éléments au total)",
|
10
|
-
"sInfoPostFix": "",
|
11
|
-
"sSearch": "Rechercher :",
|
12
|
-
"sUrl": "",
|
13
|
-
"oPaginate": {
|
14
|
-
"sFirst": "Premier",
|
15
|
-
"sPrevious": "Précédent",
|
16
|
-
"sNext": "Suivant",
|
17
|
-
"sLast": "Dernier"
|
18
|
-
}
|
19
|
-
};
|
1
|
+
|
20
2
|
|
21
3
|
$(document).ready( function () {
|
22
4
|
$('#members').dataTable({
|
23
|
-
"oLanguage": frenchdatatable,
|
24
5
|
"aoColumnDefs": [
|
25
6
|
{
|
26
7
|
"sType": "date-euro",
|
@@ -34,85 +15,9 @@ $(document).ready( function () {
|
|
34
15
|
});
|
35
16
|
} );
|
36
17
|
|
37
|
-
// dateHeight transforme une date au format français en un chiffre
|
38
|
-
// ce qui permet les comparaisons pour le tri des tables
|
39
|
-
// dateStr est au format jj/mm/aaaa
|
40
|
-
function dateHeight(dateStr) {
|
41
|
-
// on cherche les 4 derniers chiffres
|
42
|
-
var arr = dateStr.split('/');
|
43
|
-
var val = arr[2] + arr[1] + arr[0];
|
44
|
-
return parseInt(val)
|
45
|
-
}
|
46
|
-
|
47
|
-
|
48
|
-
// Les colonnes qui doivent être triées selon les dates au format français
|
49
|
-
// doivent avoir comme classe date-euro (%th.date-euro).
|
50
|
-
// Dans la fonction datatable il suffit alors d'indiquer que les colonne
|
51
|
-
// sont de type date-euro (sType: date-euro, aTargets: [date-euro]
|
52
|
-
jQuery.fn.dataTableExt.oSort['date-euro-asc'] = function(a, b) {
|
53
|
-
var x = dateHeight(a);
|
54
|
-
var y = dateHeight(b);
|
55
|
-
var z = ((x < y) ? -1 : ((x > y) ? 1 : 0));
|
56
|
-
return z;
|
57
|
-
};
|
58
|
-
|
59
|
-
jQuery.fn.dataTableExt.oSort['date-euro-desc'] = function(a, b) {
|
60
|
-
var x = dateHeight(a);
|
61
|
-
var y = dateHeight(b);
|
62
|
-
var z = ((x < y) ? 1 : ((x > y) ? -1 : 0));
|
63
|
-
return z;
|
64
|
-
};
|
65
18
|
|
66
|
-
// Gestion du tri des colonnes de montant
|
67
|
-
// fonctions de tri pour des nombres avec une virgule comme séparateur décimal
|
68
|
-
jQuery.fn.dataTableExt.oSort['numeric-comma-asc'] = function(a,b) {
|
69
|
-
var x = (a == "-") ? 0 : a.replace( /,/, "." );
|
70
|
-
var y = (b == "-") ? 0 : b.replace( /,/, "." );
|
71
|
-
x = parseFloat( x );
|
72
|
-
y = parseFloat( y );
|
73
|
-
return ((x < y) ? -1 : ((x > y) ? 1 : 0));
|
74
|
-
};
|
75
19
|
|
76
|
-
jQuery.fn.dataTableExt.oSort['numeric-comma-desc'] = function(a,b) {
|
77
|
-
var x = (a == "-") ? 0 : a.replace( /,/, "." );
|
78
|
-
var y = (b == "-") ? 0 : b.replace( /,/, "." );
|
79
|
-
x = parseFloat( x );
|
80
|
-
y = parseFloat( y );
|
81
|
-
return ((x < y) ? 1 : ((x > y) ? -1 : 0));
|
82
|
-
};
|
83
20
|
|
84
21
|
|
85
22
|
|
86
|
-
//plug in permettant d'ajouter le type comma-decimals aux colonnes'
|
87
|
-
// cette méthode qui pourrait être utilisée pour les dates
|
88
|
-
// permet à datatable d'identifier de lui même le type de la colonne
|
89
|
-
jQuery.fn.dataTableExt.aTypes.unshift(
|
90
|
-
function ( sData )
|
91
|
-
{
|
92
|
-
var sValidChars = "0123456789-,";
|
93
|
-
var Char;
|
94
|
-
var bDecimal = false;
|
95
|
-
|
96
|
-
/* Check the numeric part */
|
97
|
-
for ( i=0 ; i<sData.length ; i++ )
|
98
|
-
{
|
99
|
-
Char = sData.charAt(i);
|
100
|
-
if (sValidChars.indexOf(Char) == -1)
|
101
|
-
{
|
102
|
-
return null;
|
103
|
-
}
|
104
|
-
|
105
|
-
/* Only allowed one decimal place... */
|
106
|
-
if ( Char == "," )
|
107
|
-
{
|
108
|
-
if ( bDecimal )
|
109
|
-
{
|
110
|
-
return null;
|
111
|
-
}
|
112
|
-
bDecimal = true;
|
113
|
-
}
|
114
|
-
}
|
115
23
|
|
116
|
-
return 'numeric-comma';
|
117
|
-
}
|
118
|
-
);
|
@@ -13,9 +13,7 @@ module Adherent
|
|
13
13
|
# jour de ses paiements (méthode #a_jour?)
|
14
14
|
#
|
15
15
|
class QueryMember < ActiveRecord::Base
|
16
|
-
|
17
|
-
|
18
|
-
|
16
|
+
|
19
17
|
def self.columns() @columns ||= []; end
|
20
18
|
|
21
19
|
def self.column(name, sql_type = nil, default = nil, null = true)
|
@@ -26,6 +24,8 @@ module Adherent
|
|
26
24
|
column :organism_id, :integer
|
27
25
|
column :number, :string
|
28
26
|
column :name, :string
|
27
|
+
column :mail, :string
|
28
|
+
column :tel, :string
|
29
29
|
column :forname, :string
|
30
30
|
column :birthdate, :date
|
31
31
|
column :m_to_date, :date
|
@@ -36,7 +36,7 @@
|
|
36
36
|
<td><%= member.birthdate %></td>
|
37
37
|
<td><%= member.mail %></td>
|
38
38
|
<td><%= member.tel %></td>
|
39
|
-
<td class="numeric"><%=
|
39
|
+
<td class="numeric"><%= number_with_precision member.montant_du, precision:2 %></td>
|
40
40
|
<td><%= member.m_to_date %></td>
|
41
41
|
<td>
|
42
42
|
<%= icon_to 'card-address.png', member_coord_path(member), title:'Coordonnées', id:"coord_member_#{member.id}" %>
|
data/lib/adherent/version.rb
CHANGED
@@ -14,5 +14,6 @@ module Adherent
|
|
14
14
|
# VERSION = "0.2.2.3" # adaptation à la précompilation des assets
|
15
15
|
# VERSION = "0.2.2.4" # correction des références des assets data_tables
|
16
16
|
# VERSION = '0.2.3' # Ajout d'un champ comment pour les paiements
|
17
|
-
VERSION = '0.2.8' # Insertion icone et action export csv xls pour members
|
17
|
+
# VERSION = '0.2.8' # Insertion icone et action export csv xls pour members
|
18
|
+
VERSION = '0.2.9' # Mémorisation choix longueur liste des dataTables
|
18
19
|
end
|