[senscritique] fix bug : channels and programs parameters are not set in get_event

As a result in non interactive mode we are not able to find an event returned by list command
This commit is contained in:
Bezleputh 2014-07-11 17:01:09 +02:00
commit f4ca4e2f69
2 changed files with 8 additions and 4 deletions

View file

@ -114,10 +114,11 @@ class SenscritiqueBackend(BaseBackend, CapCalendarEvent):
items.sort(key=lambda o:o.start_date)
return items
def get_event(self, _id):
return self.browser.get_event(_id)
def get_event(self, _id, event=None):
package, channels = self.get_package_and_channels()
return self.browser.get_event(_id, event, package=package, channels=channels)
def fill_obj(self, event, fields):
return self.browser.get_event(event.id, event)
return self.get_event(event.id, event)
OBJECTS = {SensCritiquenCalendarEvent: fill_obj}

View file

@ -101,13 +101,16 @@ class SenscritiqueBrowser(PagesBrowser):
page_nb += 1
def get_event(self, _id, event=None):
def get_event(self, _id, event=None, package=None, channels=None):
if not event:
self._setup_session(Firefox())
self.program_page.go()
page_nb = 1
self.set_ajax_header()
if package and channels:
self.set_package_settings(package, channels)
while True:
self.DATA['page'] = '%d' % page_nb
page = self.ajax_page.open(data=self.DATA)