pas de filtre possible sur les show()
authorThomas NOEL <thomas@new-dev.(none)>
Tue, 8 Jul 2008 12:26:16 +0000 (08:26 -0400)
committerThomas NOEL <thomas.noel@auf.org>
Tue, 8 Jul 2008 12:26:16 +0000 (08:26 -0400)
document.py
fournisseur.py
utilisateur.py

index ab55ef2..93aa565 100644 (file)
@@ -31,6 +31,7 @@ class Document(Objet):
        # statut par defaut : non-autorisé
         if not 'statut' in self.filters:
             self.sqlwhere = " and (statut = 'non-autorise') " + self.sqlwhere
+           self.filters['status'] = ['non-autorise']
        request = "select top %d * from auf_v_acces_demcom where (code like '%s') %s order by date_modif desc" % ( self.sqllimit, code, self.sqlwhere )
        cursor.execute( request )
        items = []
@@ -41,8 +42,10 @@ class Document(Objet):
            items.append(item)
        index = {}
        index['code'] = code
-       index['filtres'] = self.filters
        index['documents'] = items
+       index['nombre_documents'] = len(items)
+       index['limite_documents'] = self.sqllimit
+       index['filtres'] = self.filters
        index['requete_sql'] = request
        return index
 
@@ -92,6 +95,7 @@ class Document(Objet):
         document = dict_fetchone(cursor)
        if document == None:
            raise ObjetInconnu('document')
+       # TODO : declencher une autre exception ObjetNonUnique si plusieurs résultats ? 
        document['requete_sql'] = request
        document['code_rest'] = coda2rest( document['code'] )
         document['details'] = self._get_details( document['code'], document['numero'] )
index b8e9302..720c710 100644 (file)
@@ -35,16 +35,17 @@ class fournisseur(Objet):
            if item == None: break
            items.append(item)
        index = {}
-       index['filtres'] = self.filters
        index['fournisseurs'] = items
+       index['nombre_fournisseurs'] = len(items)
+       index['limite_fournisseurs'] = self.sqllimit,
+       index['filtres'] = self.filters
        index['requete_sql'] = request
        return index
 
     def _get_fournisseur(self,code):
         """renvoie un fournisseur"""
        cursor = self.cursor()
-       if self.sqlwhere != '': self.sqlwhere = ' and ' + self.sqlwhere
-       request = "select top 1 * from auf_v_acces_fournisseurs where (code like '%s') %s" % (code, self.sqlwhere)
+       request = "select top 1 * from auf_v_acces_fournisseurs where (code = '%s') %s" % code
        cursor.execute( request )
         fournisseur = dict_fetchone(cursor)
        if fournisseur == None:
@@ -61,7 +62,7 @@ class fournisseur(Objet):
 
     def show(self):
         """renvoie un fournisseur formaté"""
-        code = self.environ['wsgiorg.routing_args'][1]['id'].replace('*','%').upper()
+        code = self.environ['wsgiorg.routing_args'][1]['id'].upper()
         template = self.template( 'fournisseur' )
         fournisseur = self._get_fournisseur( code )
         output = template.render( fournisseur )
index c2dfa34..b8c58a2 100644 (file)
@@ -28,16 +28,17 @@ class utilisateur(Objet):
            if item == None: break
            items.append(item)
        index = {}
-       index['filtres'] = self.filters
        index['utilisateurs'] = items
+       index['nombre_utilisateurs'] = len(items)
+       index['limite_utilisateurs'] = self.sqllimit
+       index['filtres'] = self.filters
        index['requete_sql'] = request
        return index
 
     def _get_utilisateur(self,code):
         """renvoie un utilisateur"""
        cursor = self.cursor()
-       if self.sqlwhere != '': self.sqlwhere = ' and ' + self.sqlwhere
-       request = "select top 1 * from auf_v_acces_users where (code like '%s') %s" % (code, self.sqlwhere)
+       request = "select top 1 * from auf_v_acces_users where (code = '%s')" % code
        cursor.execute( request )
         utilisateur = dict_fetchone(cursor)
        if utilisateur == None:
@@ -54,7 +55,7 @@ class utilisateur(Objet):
 
     def show(self):
         """renvoie un utilisateur formaté"""
-        code = self.environ['wsgiorg.routing_args'][1]['id'].replace('*','%').upper()
+        code = self.environ['wsgiorg.routing_args'][1]['id'].upper()
         template = self.template( 'utilisateur' )
         utilisateur = self._get_utilisateur( code )
         output = template.render( utilisateur )