Add Album.set_thumbnail_photo.
This commit is contained in:
		
							parent
							
								
									53eaf8b815
								
							
						
					
					
						commit
						e77a2209eb
					
				
					 1 changed files with 22 additions and 0 deletions
				
			
		|  | @ -576,6 +576,28 @@ class Album(ObjectBase, GroupableMixin): | ||||||
|         for photo in remove_photos: |         for photo in remove_photos: | ||||||
|             self._remove_photo(photo) |             self._remove_photo(photo) | ||||||
| 
 | 
 | ||||||
|  |     @decorators.required_feature('album.edit') | ||||||
|  |     @decorators.transaction | ||||||
|  |     def set_thumbnail_photo(self, photo): | ||||||
|  |         if photo is None: | ||||||
|  |             photo_id = None | ||||||
|  |         elif isinstance(photo, str): | ||||||
|  |             photo = self.photodb.get_photo(photo) | ||||||
|  |             photo_id = photo.id | ||||||
|  |         elif isinstance(photo, Photo): | ||||||
|  |             photo.__reinit__() | ||||||
|  |             photo.assert_not_deleted() | ||||||
|  |             photo_id = photo.id | ||||||
|  |         else: | ||||||
|  |             raise TypeError(f'Must be {Photo}, not {type(photo)}.') | ||||||
|  | 
 | ||||||
|  |         pairs = { | ||||||
|  |             'id': self.id, | ||||||
|  |             'thumbnail_photo': photo_id, | ||||||
|  |         } | ||||||
|  |         self.photodb.sql_update(table='albums', pairs=pairs, where_key='id') | ||||||
|  |         self._thumbnail_photo = photo | ||||||
|  | 
 | ||||||
|     def sum_bytes(self, recurse=True): |     def sum_bytes(self, recurse=True): | ||||||
|         query = stringtools.collapse_whitespace(''' |         query = stringtools.collapse_whitespace(''' | ||||||
|         SELECT SUM(bytes) FROM photos |         SELECT SUM(bytes) FROM photos | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue