1234567891011121314151617181920212223242526 |
- from uuid import uuid1
- from pycs.observable import ObservableDict
- from pycs.projects.MediaFile import MediaFile
- from pycs.util.RecursiveDictionary import set_recursive
- from os import path
- class Project(ObservableDict):
- def __init__(self, obj: dict, parent):
- # save data as MediaFile objects
- for key in obj['data'].keys():
- obj['data'][key] = MediaFile(obj['data'][key], self)
- # initialize super
- super().__init__(obj, parent)
- def update_properties(self, update):
- set_recursive(update, self)
- def new_media_file_path(self):
- return path.join('projects', self['id'], 'data'), str(uuid1())
- def add_media_file(self, file):
- file = MediaFile(file, self)
- self['data'][file['id']] = file
|