iro/model/offer.py
branchdevel
changeset 150 c6896c3374c4
parent 148 11e0fdc1a58c
child 152 14c99c89edf4
equal deleted inserted replaced
149:bb3e16224bbd 150:c6896c3374c4
     1 from .dbdefer import dbdefer
     1 from .dbdefer import dbdefer
       
     2 from .schema import Offer as DBOffer
     2 from ..config import config
     3 from ..config import config
     3 
       
     4 def getPossibleOffers(recipient, os):
       
     5     ret = []
       
     6     for offer in os:
       
     7         ret.append(offers[offer])
       
     8     return ret
       
     9 
     4 
    10 @dbdefer
     5 @dbdefer
    11 def extendProvider(session, user, typ, providers):
     6 def extendProvider(session, user, typ, providers):
    12     user = session.merge(user)
     7     user = session.merge(user)
    13     ret = []
     8     ret = []
    14     for p in providers:
     9     for p in providers:
    15         if p in offers.keys() and  p not in ret and user.has_right(typ, offer_name = p): 
    10         if p not in ret and user.has_right(typ, offer_name = p): 
    16                 ret.append(p)
    11                 ret.append(p)
    17         elif user.has_right(typ,provider=p):
    12         elif user.providers(typ).filter(DBOffer.provider==p).first():
    18             rs = [route for route in offers[p].routes if route not in ret]
    13             for r in offers[p].routes:
    19             for r in rs:
       
    20                 n = user.has_right(typ, provider=p, route=r)
    14                 n = user.has_right(typ, provider=p, route=r)
    21                 if n:
    15                 if n and n not in ret:
    22                     ret.append(n)
    16                     ret.append(n)
    23     return ret
    17     return ret
    24 
    18 
    25 def loadOffers():
    19 def loadOffers():
    26     pass
    20     pass
    27 
    21 
    28 offers={}
    22 offers={}
       
    23 providers={}
    29 
    24 
    30 config.registerReload(loadOffers)
    25 config.registerReload(loadOffers)
    31 
    26