equal
deleted
inserted
replaced
11 ret = [] |
11 ret = [] |
12 for p in ps: |
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 providers[p].routes: |
16 for r in providers[p].typs[typ]: |
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 |
23 def loadOffers(session): |
23 def loadOffers(session): |
24 offers.clear() |
24 offers.clear() |
25 providers.clear() |
25 providers.clear() |
26 for provider in ( s for s in config.sections() if not s in ["main",]): |
26 for provider in ( s for s in config.sections() if not s in ["main",]): |
27 p=getProvider(provider,config.get(provider,"typ"),config.items(provider)) |
27 p=getProvider(provider,config.get(provider,"typ"),config.items(provider)) |
28 for r in p.routes: |
28 for t in p.typs: |
29 for o in session.query(schema.Offer.name, schema.Offer.typ).filter(and_(schema.Offer.provider==provider, |
29 for r in p.typs[t]: |
30 schema.Offer.route==r)): |
30 n = session.query(schema.Offer.name).filter(and_(schema.Offer.provider==provider, schema.Offer.route==r, schema.Offer.typ==t)).scalar() |
31 offers[o[0]]=Offer(provider=p,route=r,typ=o[1],name=o[0]) |
31 offers[n]=Offer(provider=p,route=r,typ=t,name=n) |
32 providers[provider]=p |
32 providers[provider]=p |
33 |
33 |
34 offers={} |
34 offers={} |
35 providers={} |
35 providers={} |
36 |
36 |