iro/model/offer.py
branchdevel
changeset 158 e045e628a519
parent 157 0192f9107870
child 160 f4e4f4ba25fb
equal deleted inserted replaced
157:0192f9107870 158:e045e628a519
     4 import schema
     4 import schema
     5 from ..config import config
     5 from ..config import config
     6 from ..offer import getProvider, Offer
     6 from ..offer import getProvider, Offer
     7 
     7 
     8 @dbdefer
     8 @dbdefer
     9 def extendProvider(session, user, typ, providers):
     9 def extendProvider(session, user, typ, ps):
    10     user = session.merge(user)
    10     user = session.merge(user)
    11     ret = []
    11     ret = []
    12     for p in providers:
    12     for p in ps:
    13         if p not in ret and user.has_right(typ, offer_name = p): 
    13         if p not in ret and user.has_right(typ, offer_name = p): 
    14                 ret.append(p)
    14                 ret.append(p)
    15         elif user.providers(typ).filter(schema.Offer.provider==p).first():
    15         elif user.providers(typ).filter(schema.Offer.provider==p).first():
    16             for r in offers[p].routes:
    16             for r in providers[p].routes:
    17                 n = user.has_right(typ, provider=p, route=r)
    17                 n = user.has_right(typ, provider=p, route=r)
    18                 if n and n not in ret:
    18                 if n and n not in ret:
    19                     ret.append(n)
    19                     ret.append(n)
    20     return ret
    20     return ret
    21 
    21