[cpif] r140 - in trunk: backend frontend-web

svn at argo.es svn at argo.es
Sat Jun 9 19:59:06 CEST 2007


Author: jcea
Date: Sat Jun  9 19:59:05 2007
New Revision: 140

Log:
Movemos logica al backend, donde le corresponde.



Modified:
   trunk/backend/database.py
   trunk/frontend-web/url_.py
   trunk/frontend-web/url_indice.py
   trunk/frontend-web/url_nuevo_hilo_POST.py
   trunk/frontend-web/url_nuevo_post_POST.py
   trunk/frontend-web/url_todo_leido.py

Modified: trunk/backend/database.py
==============================================================================
--- trunk/backend/database.py	(original)
+++ trunk/backend/database.py	Sat Jun  9 19:59:05 2007
@@ -312,3 +312,16 @@
 
   posicion_hilos_no_leidos.clear()
 
+def user_has_metatag_access(conn,usuario,metatag) :
+  return metatag in conn.get_root()["usuarios"]["usuarios"][normaliza_nick(usuario)]["punto de lectura no leidos"]
+
+def get_metatags(conn,usuario) :
+  metatags=[]
+  root=conn.get_root()
+  plnl=root["usuarios"]["usuarios"][normaliza_nick(usuario)]["punto de lectura no leidos"]
+  for i,j in root["metatags"]["metatags"].iteritems() :
+    plnl2=plnl.get(i)
+    if plnl2!=None :
+      metatags.append((i,j["nombre"], True if plnl2 else False))
+  return metatags
+

Modified: trunk/frontend-web/url_.py
==============================================================================
--- trunk/frontend-web/url_.py	(original)
+++ trunk/frontend-web/url_.py	Sat Jun  9 19:59:05 2007
@@ -7,9 +7,7 @@
   if len(path)!=1 : return None
 
   import database
-  root=conn.get_root()
   database.actualiza_no_leidos(conn,usuario)
-  plnl=root["usuarios"]["usuarios"][database.normaliza_nick(usuario)]["punto de lectura no leidos"]
   
   import skins
   pagina = skins.Skin()
@@ -17,13 +15,8 @@
 
   d = {
       "page_title": "cpif - listado de subforos",
-      "metatags":[]
+      "metatags":database.get_metatags(conn,usuario)
       }
-
-  for i,j in root["metatags"]["metatags"].iteritems() :
-    plnl2=plnl.get(i)
-    if plnl2!=None :
-      d["metatags"].append((i,j["nombre"], True if plnl2 else False))
 
   pagina.load_dict(d)
 

Modified: trunk/frontend-web/url_indice.py
==============================================================================
--- trunk/frontend-web/url_indice.py	(original)
+++ trunk/frontend-web/url_indice.py	Sat Jun  9 19:59:05 2007
@@ -25,6 +25,9 @@
   except :
     return None
 
+  if not database.user_has_metatag_access(conn,usuario,metatag) :
+    return None
+
   if l==3 :
     try :
       fecha_max=fecha
@@ -60,8 +63,7 @@
   database.actualiza_no_leidos(conn,usuario)
   texto=[]
   num_hilos=0
-  punto_no_leido=root["usuarios"]["usuarios"][database.normaliza_nick(usuario)]["punto de lectura no leidos"].get(metatag)
-  if punto_no_leido==None : return None
+  punto_no_leido=root["usuarios"]["usuarios"][database.normaliza_nick(usuario)]["punto de lectura no leidos"][metatag]
 
   d["metatag_title"] = root["metatags"]["metatags"][metatag]["nombre"]
   while (num_hilos<50) and (fecha>=fecha_min) :

Modified: trunk/frontend-web/url_nuevo_hilo_POST.py
==============================================================================
--- trunk/frontend-web/url_nuevo_hilo_POST.py	(original)
+++ trunk/frontend-web/url_nuevo_hilo_POST.py	Sat Jun  9 19:59:05 2007
@@ -10,7 +10,7 @@
     metatag=int(path[1])
   except :
     return None
-  if metatag not in conn.get_root()["usuarios"]["usuarios"][database.normaliza_nick(usuario)]["punto de lectura no leidos"] :
+  if not database.user_has_metatag_access(conn,usuario,metatag) :
     return None
 
   import cgi

Modified: trunk/frontend-web/url_nuevo_post_POST.py
==============================================================================
--- trunk/frontend-web/url_nuevo_post_POST.py	(original)
+++ trunk/frontend-web/url_nuevo_post_POST.py	Sat Jun  9 19:59:05 2007
@@ -11,7 +11,7 @@
   except :
     return None
   import database
-  if metatag not in conn.get_root()["usuarios"]["usuarios"][database.normaliza_nick(usuario)]["punto de lectura no leidos"] :
+  if not database.user_has_metatag_access(conn,usuario,metatag) :
     return None
 
   import cgi

Modified: trunk/frontend-web/url_todo_leido.py
==============================================================================
--- trunk/frontend-web/url_todo_leido.py	(original)
+++ trunk/frontend-web/url_todo_leido.py	Sat Jun  9 19:59:05 2007
@@ -8,8 +8,9 @@
   import database
   try :
     metatag=int(path[1])
-    assert metatag in conn.get_root()["usuarios"]["usuarios"][database.normaliza_nick(usuario)]["punto de lectura no leidos"]
   except :
+    return None
+  if not database.user_has_metatag_access(conn,usuario,metatag) :
     return None
   database.marca_todo_leido(conn,database.normaliza_nick(usuario),metatag)
   return (302,"/indice/%d" %metatag,"")



More information about the cpif mailing list