Move jsonify methods to the objects instead of separate file.
This commit is contained in:
		
							parent
							
								
									65fdae97da
								
							
						
					
					
						commit
						9c5fb4fec1
					
				
					 5 changed files with 34 additions and 34 deletions
				
			
		|  | @ -89,14 +89,14 @@ def post_add_channel(): | |||
|             return jsonify.make_json_response({}, status=404) | ||||
| 
 | ||||
|     channel = common.ycdldb.add_channel(channel_id, get_videos=True) | ||||
|     return jsonify.make_json_response(ycdl.jsonify.channel(channel)) | ||||
|     return jsonify.make_json_response(channel.jsonify()) | ||||
| 
 | ||||
| @site.route('/channel/<channel_id>/delete', methods=['POST']) | ||||
| def post_delete_channel(channel_id): | ||||
|     try: | ||||
|         channel = common.ycdldb.get_channel(channel_id) | ||||
|     except ycdl.exceptions.NoSuchChannel as exc: | ||||
|         return jsonify.make_json_response(ycdl.jsonify.exception(exc), status=404) | ||||
|         return jsonify.make_json_response(exc.jsonify(), status=404) | ||||
| 
 | ||||
|     channel.delete() | ||||
|     return jsonify.make_json_response({}) | ||||
|  | @ -108,10 +108,10 @@ def post_refresh_channel(channel_id): | |||
|     try: | ||||
|         channel = common.ycdldb.get_channel(channel_id) | ||||
|     except ycdl.exceptions.NoSuchChannel as exc: | ||||
|         return jsonify.make_json_response(ycdl.jsonify.exception(exc), status=404) | ||||
|         return jsonify.make_json_response(exc.jsonify(), status=404) | ||||
| 
 | ||||
|     channel.refresh(force=force) | ||||
|     return jsonify.make_json_response(ycdl.jsonify.channel(channel)) | ||||
|     return jsonify.make_json_response(channel.jsonify()) | ||||
| 
 | ||||
| @site.route('/refresh_all_channels', methods=['POST']) | ||||
| def post_refresh_all_channels(): | ||||
|  |  | |||
|  | @ -1,5 +1,4 @@ | |||
| from . import exceptions | ||||
| from . import helpers | ||||
| from . import jsonify | ||||
| from . import ycdldb | ||||
| from . import ytapi | ||||
|  |  | |||
|  | @ -35,6 +35,14 @@ class YCDLException(Exception, metaclass=ErrorTypeAdder): | |||
|     def __str__(self): | ||||
|         return self.error_type + '\n' + self.error_message | ||||
| 
 | ||||
|     def jsonify(self): | ||||
|         j = { | ||||
|             'type': 'error', | ||||
|             'error_type': self.error_type, | ||||
|             'error_message': self.error_message, | ||||
|         } | ||||
|         return j | ||||
| 
 | ||||
| # NO SUCH ########################################################################################## | ||||
| 
 | ||||
| class NoSuchChannel(YCDLException): | ||||
|  |  | |||
|  | @ -1,29 +0,0 @@ | |||
| def channel(c): | ||||
|     j = { | ||||
|         'id': c.id, | ||||
|         'name': c.name, | ||||
|         'automark': c.automark, | ||||
|     } | ||||
|     return j | ||||
| 
 | ||||
| def exception(e): | ||||
|     j = { | ||||
|         'type': 'error', | ||||
|         'error_type': e.error_type, | ||||
|         'error_message': e.error_message, | ||||
|     } | ||||
|     return j | ||||
| 
 | ||||
| def video(v): | ||||
|     j = { | ||||
|         'id': v.id, | ||||
|         'published': v.published, | ||||
|         'author_id': v.author_id, | ||||
|         'title': v.title, | ||||
|         'description': v.description, | ||||
|         'duration': v.duration, | ||||
|         'views': v.views, | ||||
|         'thumbnail': v.thumbnail, | ||||
|         'state': v.state, | ||||
|     } | ||||
|     return j | ||||
|  | @ -60,6 +60,14 @@ class Channel(Base): | |||
|         bindings = [self.id] | ||||
|         return self.ycdldb.sql_select_one(query, bindings) is not None | ||||
| 
 | ||||
|     def jsonify(self): | ||||
|         j = { | ||||
|             'id': self.id, | ||||
|             'name': self.name, | ||||
|             'automark': self.automark, | ||||
|         } | ||||
|         return j | ||||
| 
 | ||||
|     def refresh(self, *, force=False, rss_assisted=True, commit=True): | ||||
|         self.ycdldb.log.info('Refreshing %s.', self.id) | ||||
| 
 | ||||
|  | @ -181,6 +189,20 @@ class Video(Base): | |||
|         if commit: | ||||
|             self.ycdldb.commit() | ||||
| 
 | ||||
|     def jsonify(self): | ||||
|         j = { | ||||
|             'id': self.id, | ||||
|             'published': self.published, | ||||
|             'author_id': self.author_id, | ||||
|             'title': self.title, | ||||
|             'description': self.description, | ||||
|             'duration': self.duration, | ||||
|             'views': self.views, | ||||
|             'thumbnail': self.thumbnail, | ||||
|             'state': self.state, | ||||
|         } | ||||
|         return j | ||||
| 
 | ||||
|     def mark_state(self, state, commit=True): | ||||
|         ''' | ||||
|         Mark the video as ignored, pending, or downloaded. | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue