def _process_DELETE(self): if EditingRevisionFile.query.with_parent(self.file_type).has_rows(): raise UserValueError(_('Cannot delete file type which already has files')) if self.file_type.review_conditions: raise UserValueError(_('Cannot delete file type which is used in a review condition')) if self.file_type.publishable: is_last = not (EditingFileType.query .with_parent(self.event) .filter(EditingFileType.publishable, EditingFileType.id != self.file_type.id) .has_rows()) if is_last: raise UserValueError(_('Cannot delete the only publishable file type')) delete_file_type(self.file_type) return '', 204
def _process_DELETE(self): if EditingRevisionFile.query.with_parent(self.file_type).has_rows(): raise ExpectedError( _('Cannot delete file type which already has files')) review_conditions = editing_settings.get(self.event, 'review_conditions') if any(self.file_type.id in cond for cond in review_conditions): raise ExpectedError( _('Cannot delete file type which is used in a review condition' )) if self.file_type.publishable: is_last = not (EditingFileType.query.with_parent( self.event).filter( EditingFileType.publishable, EditingFileType.id != self.file_type.id).has_rows()) if is_last: raise ExpectedError( _('Cannot delete the only publishable file type')) delete_file_type(self.file_type) return '', 204