Commit graph

121 commits

Author SHA1 Message Date
Daniel STAN
e46d1fe338 ajoute fin_connexion/adhesion_*datetime*
Parce que c'est plus facile à manipuler dans les templates.
2015-08-15 01:00:33 +02:00
Daniel STAN
5b66ae0095 /usr/scripts sans / final 2015-07-23 17:25:11 +02:00
Daniel STAN
f4318415e8 history_gen: garde login dans l'appel récursif 2015-07-23 16:29:56 +02:00
Pierre-Elliott Bécue
f0de8bd515 Supprime ce qui concerne la carte d'étudiant 2015-07-17 09:52:05 -06:00
Daniel STAN
f22c465070 get_mail: pour un club, contacte le respo 2015-06-15 22:45:36 +02:00
Pierre-Elliott Bécue
2b125377d0 _check_respo est plus complexe, il faut passer l'objet tout entier, pas son dn 2015-04-27 16:23:59 +02:00
Pierre-Elliott Bécue
7fe89abfe6 Les respos sont pris en compte dans les droits testés sur les attributs. 2015-04-27 16:13:22 +02:00
Pierre-Elliott Bécue
bfc91573fb Un club peut se modifier lui-même (pour l'instant, ensuite on verra) 2015-04-26 23:53:12 +02:00
Daniel STAN
9738d29d66 solde(): handle absence de solde
Et __float__ pour les attributs
2015-04-20 17:37:43 +02:00
Pierre-Elliott Bécue
666bd33085 Plus de frais dans les factures 2015-04-13 01:42:44 +02:00
Pierre-Elliott Bécue
9498e06024 On proprifie un peu get_mail 2015-04-13 01:41:51 +02:00
Daniel STAN
c80c222805 fusionne update_solde et solde (garde le dernier) 2015-04-03 13:55:16 +02:00
Pierre-Elliott Bécue
e1079463fc Les attributs autres que droits ne doivent pas être non-modifiables par "soi" par défaut.
* En gros, si on met "soi" dans can_modify, l'adh doit pouvoir changer
   seul ledit attribut. droits est la seule exception parce que le test
   qest différent.
2015-03-08 01:19:56 +01:00
Pierre-Elliott Bécue
8eae322ab1 Les clubs et les adhérents ne devraient pas avoir de méthodes différentes
* Les méthodes .clubs et .imprimeur_clubs ne sont utiles qu'aux objets
 adherent, mais leur existence fait que les connexions en tant que club
 sur l'intranet2 ne sont pas possible, car ces méthodes n'existent pas
 dans l'objet club. On met donc des méthodes qui renvoient des listes vides
 sur l'objet proprio et qui sont surchargées dans l'objet adherent.
2015-02-17 17:46:29 +01:00
Pierre-Elliott Bécue
a4042c9c3b Une fonction _id sur les objets pour rendre un peu plus facile leur gestion (bordel) 2015-02-14 14:35:23 +01:00
Pierre-Elliott Bécue
607a691a88 Quelques trucs qui traînent. 2015-02-14 14:14:39 +01:00
Pierre-Elliott Bécue
d0619adcf6 Quand mode='rw' mais que l'objet n'est pas modifiable, on fallback en ro 2015-02-14 14:12:48 +01:00
Valentin Samir
fd85efa178 [objets] Methode replace_id pour remplacer les rid, mid, xif, fid, aid et cie 2014-12-11 12:27:01 +01:00
Valentin Samir
9690a40a97 [__setitems__] check_uniqueness après pose des locks sur les nouvelles valeurs
sinon, il est possible d'avoir des valeurs non globalement unique
2014-12-11 12:03:47 +01:00
Valentin Samir
1b47e03725 [objets] Compte crans et initialisation du solde 2014-12-02 20:14:49 +01:00
Valentin Samir
f64cda3711 [objets] Petits details sur history_gen 2014-12-02 17:40:34 +01:00
Valentin Samir
63555140c5 [objets] En cas d'erreur lors du crédit d'une facture, on la propage 2014-12-02 01:58:55 +01:00
Valentin Samir
f4885baf4d [objets] Pour supprimer un proprio, il faut supprimer ses factures filles 2014-12-02 01:58:29 +01:00
Valentin Samir
133966fd64 [objets] Méthodes .machines() .factures() .certificats() ne plantent pas si l'object ldap n'existe pas (encore). 2014-11-23 20:27:30 +01:00
Valentin Samir
ec8b7b5d50 [objets] carte_controle fonction pour dire si la carte étudiant a été controlé 2014-11-23 20:22:23 +01:00
Valentin Samir
d8bac8d47e Ajout de l'attribut __slots__ aux classes pour économiser de la ram 2014-11-22 22:01:42 +01:00
Valentin Samir
8477760302 [attributs, objets] Une fonction pour générer automatiquement une ligne d'historique
Elle s'appelle history_gen.
Il faut l'appeler explicitement pour le moment, pour éviter de mettre des lignes
en double vu que jusqu'à maintenant, historique était fait à la main.

Il y a 4 niveaux d'historique pour les attributs :
  * full on loggue toutes les modifications
      pour un singlevalue : nom (Durant -> Dupond")
      pour les autres : mailAlias+toto@free.fr-titi@orange.com
  * partial, comme full sauf qu'on limite la longeur de chaque valeur d'attribut
    à au plus 15 caractères
  * info, on signalute juste que l'attribut attribut a été créer, supprimer ou modifier:
  * None, on n'ajoute pas de ligne (par exemple pour l'historique lui même, on le loggue pas
     ses modifications)

Ajoutez en d'autre si vous pensez à des trucs cools
2014-11-22 12:57:46 +01:00
Daniel STAN
f6fe2f78e5 Duplique liste des machines en cas de suppression 2014-11-11 00:07:19 +01:00
Valentin Samir
45c3f68635 [objets] Correction du retour en arrière du commmit 629310d3 sur ressucite
On vérifier que l'objet de la base ldap n'avait pas été modifier entre le moment
où on l'a récupéré etle moment où on acquière le lock. Bien sûr si l'objet n'existe pas
dans la base ldap, il n'y a pas de problème.

Dans le cas où on ressucieterai un objet qui existe déjà dans la base ldap,
ça planterait sans doute. M'enfin, ce cas doit être extrèmement rare compte tenu
du fait que les aid et mid sont croissant (mais hélas, pas strictement).
2014-11-09 15:53:10 +01:00
Valentin Samir
629310d356 [objets, attributs] Vérification de l'absence de modif concurrente après acquisition du lock
et ajout de historique à concurrent=False
2014-11-09 01:36:57 +01:00
Valentin Samir
494cd42d83 [ldap_locks, objets] Juste avant d'écrire dans la base ldap, on vérifie les locks
ils existent toujours et n'ont pas expiré, sinon, il ne faut pas faire
l'enregistrement.
2014-11-08 18:14:12 +01:00
Valentin Samir
24721ddc98 [objets] Libération du lock en cas d'opération involutive sur un attribut non concurrent
Par exemple :
   adh['solde'][0]+=2 # acquisition du lock
   adh['solde'][0]-=2 # libération du lock
2014-11-08 17:40:24 +01:00
Valentin Samir
177134b6c9 [objets] oubli d'import de config.impression 2014-11-08 17:20:39 +01:00
Valentin Samir
c3ac740ca5 [attributs, objets] Des locks pour les attributs sensibles aux modifs concurentes
Pour le moment juste pour l'attribut solde
2014-11-08 17:10:22 +01:00
Pierre-Elliott Bécue
f4645a8a34 Quand on crée un objet, on permet un peu plus de débug si ça foire. 2014-11-05 01:55:16 +01:00
Valentin Samir
fad66402da [objets] Des __repr__ plus jolis 2014-10-30 17:59:38 +01:00
Valentin Samir
ac5f2f17ae [objets, attributs] Ajout d'une classe objet inetOrgPerson
Parce que sinon, ça plante quand je récupère l'inetOrgPerson respbats dans
mon jouet fuse.
2014-10-30 17:57:34 +01:00
Daniel STAN
996950b6df get_mail:les clubs n'ont ni mail ni canonicalAlias 2014-09-28 15:52:47 +02:00
Pierre-Elliott Bécue
7ed1874d62 [lc_ldap] Corrections de bugs, et cohérence de code. 2014-09-22 00:21:54 +02:00
Daniel STAN
6d4d56db72 methode mail: adresse de contact d'un adh 2014-09-21 17:31:21 +02:00
Pierre-Elliott Bécue
a42fa0188d Possibilité d'afficher plus ou moins de blacklistes et d'histo 2014-09-01 03:45:29 +02:00
Pierre-Elliott Bécue
3fdb4b1936 Adh glissantes : on vérifie que le recuPaiement est fourni 2014-08-29 02:42:08 +02:00
Pierre-Elliott Bécue
50f91c63e0 Correctifs sur les adhésions glissantes. 2014-08-25 19:17:10 +02:00
Pierre-Elliott Bécue
7f1ffbeed5 Passage aux adhésions glissantes (partie 2/2, lc_ldap) 2014-08-15 20:27:47 +02:00
Pierre-Elliott Bécue
e47641e756 [objets] Sémantique de carteEtudiant non respectée 2014-08-15 03:30:02 +02:00
Pierre-Elliott Bécue
d66c12c013 [lc_ldap] Adaptations suite aux modifs du schéma et bugfixes 2014-08-15 01:13:04 +02:00
Pierre-Elliott Bécue
aa1c77ce60 [objets] Un peu plus de clarté sur le repr d'un adhérent, et sur __setitem__ 2014-04-14 03:23:47 +02:00
Pierre-Elliott Bécue
c41aac0de0 [objets] Bug en cas d'annulation
* self._modifs = self.attrs met les deux AttrsDict dans le même état,
 ce qui fait qu'une modif de l'un se répercute sur l'autre.
 * On en profite pour créer une fonction .cancel
2014-04-14 03:21:56 +02:00
Pierre-Elliott Bécue
35f9c36461 [lc_ldap/clubs] La mise en place des clubs dans l'intranet a été faite trop tôt.
* Aucun système de droit permettant au responsable de modifier club/machines de club
 n'avait été mis en place. C'est corrigé.
2014-04-03 17:30:09 +02:00
Valentin Samir
13200e9a74 [objets/facture] Factures éditables via lc_ldap modulo l'édition du solde de sont propriétaire
L'idée étant d'essayer d'avoir un fonction 'crediter' qui va éditier le solde de sont parent
puis sauvegarder/creer la facture de la fonçon la plus atomique possible.
Il faudarait voir s'il y a quelque chose de plus propre pour rendre tout ça un peu plus
atomique
2014-03-23 20:38:06 +01:00