コード例 #1
0
 def rebuild_fans(self, session, pipe):
     from seplis.api.base.show import Show        
     fans = session.query(models.Show_fan).all()
     for fan in fans:
         Show.cache_fan(
             show_id=fan.show_id,
             user_id=fan.user_id,
             pipe=pipe,
         )
コード例 #2
0
ファイル: show.py プロジェクト: jonathan1994/seplis
 def get(self, show_id):
     per_page = int(self.get_argument('per_page', constants.PER_PAGE))
     page = int(self.get_argument('page', 1))
     show = Show.get(show_id)
     if not show:
         raise exceptions.Show_unknown()
     self.write_object(show.get_fans(page=page, per_page=per_page))
コード例 #3
0
ファイル: show.py プロジェクト: jonathan1994/seplis
 def delete(self, user_id, show_id):
     if int(user_id) != self.current_user.id:
         self.check_edit_another_user_right()
     show = Show.get(show_id)
     if not show:
         raise exceptions.Show_unknown()
     show.unfan(user_id)
コード例 #4
0
ファイル: show.py プロジェクト: jonathan1994/seplis
 def _get(self, title, value):
     show_id = Show.get_id_by_external(title, value)
     if not show_id:
         raise exceptions.Not_found(
             'show not found with external: {} with id: {}'.format(
                 title, value))
     return show_id
コード例 #5
0
ファイル: show.py プロジェクト: jonathan1994/seplis
 def delete(self, user_id, show_id):            
     if int(user_id) != self.current_user.id:
         self.check_edit_another_user_right()
     show = Show.get(show_id)
     if not show:
         raise exceptions.Show_unknown()
     show.unfan(
         user_id
     )
コード例 #6
0
ファイル: show.py プロジェクト: jonathan1994/seplis
 def get(self, show_id):
     per_page = int(self.get_argument('per_page', constants.PER_PAGE))
     page = int(self.get_argument('page', 1))
     show = Show.get(show_id)
     if not show:
         raise exceptions.Show_unknown()
     self.write_object(
         show.get_fans(page=page, per_page=per_page)
     )
コード例 #7
0
 def rebuild_shows(self, session, pipe):
     from seplis.api.base.show import Show
     to_es = []
     for item in session.query(models.Show).yield_per(10000):
         a = Show._format_from_row(item)
         to_es.append({
             '_index': 'shows',
             '_type': 'show',
             '_id': a.id,
             '_source': utils.json_dumps(a),
         })
     helpers.bulk(database.es, to_es)
コード例 #8
0
ファイル: show.py プロジェクト: jonathan1994/seplis
 def post(self, show_id=None):
     yield self._post()
     if show_id:
         raise exceptions.Parameter_must_not_be_set_exception(
             'show_id must not be set when creating a new one')
     show_id = Show.create()
     self.set_status(201)
     if self.request.body:
         show = yield self._update(show_id, validate_show=False)
         self.write_object(show)
     else:
         self.write_object({
             'id': show_id,
         })
コード例 #9
0
ファイル: show.py プロジェクト: jonathan1994/seplis
 def post(self, show_id=None):
     yield self._post()
     if show_id:
         raise exceptions.Parameter_must_not_be_set_exception(
             'show_id must not be set when creating a new one'
         )
     show_id = Show.create()
     self.set_status(201)
     if self.request.body:
         show = yield self._update(
             show_id, 
             validate_show=False
         )
         self.write_object(show)
     else:
         self.write_object({
             'id': show_id,
         })
コード例 #10
0
ファイル: show.py プロジェクト: jonathan1994/seplis
 def _update(self, show_id, validate_show=True, overwrite=False):
     if validate_show:
         self.validate(schemas.Show_schema)
     show = Show.get(show_id)
     if not show:
         raise exceptions.Show_unknown()
     self._update_keys(
         keys=self.update_keys,
         data=show.__dict__,
         new_data=self.request.body,
         overwrite=overwrite,
     )
     if 'description' in self.request.body:
         desc = self.request.body['description']
         if desc:
             if 'text' in desc:
                 show.description.text = desc['text']
             if 'title' in desc:
                 show.description.title = desc['title']
             if 'url' in desc:
                 show.description.url = desc['url']
     if 'poster_image_id' in self.request.body:
         show.add_poster_image(self.request.body['poster_image_id'])
     if overwrite:
         for index, externals in constants.INDEX_TYPES:
             if index not in show.indices:
                 show.indices[index] = None
     if 'episodes' in self.request.body:
         self.patch_episodes(
             show_id,
             self.request.body['episodes'],
         )
     show.save()
     if show.poster_image:
         show.poster_image = self.image_format(
             show.poster_image.__dict__
         )
     return show
コード例 #11
0
ファイル: show.py プロジェクト: jonathan1994/seplis
 def _update(self, show_id, validate_show=True, overwrite=False):
     if validate_show:
         self.validate(schemas.Show_schema)
     show = Show.get(show_id)
     if not show:
         raise exceptions.Show_unknown()
     self._update_keys(
         keys=self.update_keys,
         data=show.__dict__,
         new_data=self.request.body,
         overwrite=overwrite,
     )
     if 'description' in self.request.body:
         desc = self.request.body['description']
         if desc:
             if 'text' in desc:
                 show.description.text = desc['text']
             if 'title' in desc:
                 show.description.title = desc['title']
             if 'url' in desc:
                 show.description.url = desc['url']
     if 'poster_image_id' in self.request.body:
         show.add_poster_image(self.request.body['poster_image_id'])
     if overwrite:
         for index, externals in constants.INDEX_TYPES:
             if index not in show.indices:
                 show.indices[index] = None
     if 'episodes' in self.request.body:
         self.patch_episodes(
             show_id,
             self.request.body['episodes'],
         )
     show.save()
     if show.poster_image:
         show.poster_image = self.image_format(show.poster_image.__dict__)
     return show
コード例 #12
0
ファイル: show.py プロジェクト: jonathan1994/seplis
 def _get(self, title, value):
     show_id = Show.get_id_by_external(title, value)
     if not show_id:   
         raise exceptions.Not_found('show not found with external: {} with id: {}'.format(title, value))
     return show_id