def update_role(self, user_id, role): if not self.auth.guard("admin"): raise ActionDeniedError() if role == "owner": raise ActionDeniedError() if self.user.user_id == user_id: raise ActionDeniedError() return self.user.update_role(role, user_id)
def gen_zip(self, project_id, by_name=True, workspace="/tmp", title="photos_result", needs_download_url=True, needs_include_hierarchy=False, needs_make_dir=True, needs_date=False, char_enc="utf_8", needs_all_photos=False): if not self.auth.guard("admin"): raise ActionDeniedError() return self.gen.gen_zip( project_id, by_name=by_name, workspace=workspace, title=title, needs_download_url=needs_download_url, needs_include_hierarchy=needs_include_hierarchy, needs_make_dir=needs_make_dir, needs_date=needs_date, char_enc=char_enc, needs_all_photos=needs_all_photos )
def create( self, template_type, template_data, name, description, property_title, property_hierarchy, property_date): if not self.auth.guard("admin"): raise ActionDeniedError() if template_type == "user": parent_id = self.user_id elif template_type == "project": parent_id = self.project_id else: raise ValueError return self.tmpl.create( template_type=template_type, template_data=template_data, parent_id=parent_id, name=name, description=description, property_title=property_title, property_hierarchy=property_hierarchy, property_date=property_date, base64enc=True )
def delete_place(self, place_id=None): if not self.auth.guard("admin"): raise ActionDeniedError() children = self.list_children(place_id) if children["places"] or children["targets"]: raise NotMeetRequirementsToDeleteError() return self.place.delete(place_id)
def get(self, template_id): if not self.auth.guard("admin"): raise ActionDeniedError() url = self.tmpl.get( template_id=template_id, needs_download_url=True ) return {"download_url": url }
def list(self, user_id=None, project_id=None): if not self.auth.guard("admin"): raise ActionDeniedError() if not user_id: user_id = self.user_id if not project_id: project_id = self.project_id return self.tmpl.list(user_id, project_id)
def list_children(self, parent_place_id): if not self.auth.guard(): raise ActionDeniedError() places = self.place.list_children(parent_place_id) targets = self.target.list_children(parent_place_id) return { "places": places, "targets": targets }
def gen_excel_doc(self, project_id, needs_sort=True, needs_include_hierarchy=False, needs_date=False, needs_print_settings=False, workspace="/tmp", template_id="basic_1.xlsx", title="photos_result", needs_download_url=True): if not self.auth.guard("admin"): raise ActionDeniedError() return self.gen.gen_excel_doc( project_id=project_id, needs_sort=needs_sort, needs_include_hierarchy=needs_include_hierarchy, needs_date=needs_date, needs_print_settings=needs_print_settings, template_id=template_id, title=title, needs_download_url=needs_download_url )
def gen_download_url(self, generated_file_id): if not self.auth.guard("admin"): raise ActionDeniedError() return self.gen.gen_download_url(generated_file_id)
def create_photo(self, target_id, type, data): if not self.auth.guard("reporter"): raise ActionDeniedError() return self.photo.create(target_id, type, data)
def reject_user(self, user_id): if not self.auth.guard("admin"): raise ActionDeniedError() return self.user.reject(user_id)
def show_user(self, user_id): if not self.auth.guard("admin"): raise ActionDeniedError() return self.user.show(user_id)
def show_place(self): if not self.auth.guard(): raise ActionDeniedError() return self.place.show()
def update_place(self, name, place_id=None): if not self.auth.guard("worker"): raise ActionDeniedError() return self.place.update_name(name)
def show_photo(self, photo_id, encode=True): if not self.auth.guard(): raise ActionDeniedError() return self.photo.show(photo_id, encode=encode)
def delete_photo(self, target_id, photo_id): if not self.auth.guard("admin"): raise ActionDeniedError() return self.photo.delete(target_id, photo_id)
def update_photo(self, target_id, type, photo_id): if not self.auth.guard("worker"): raise ActionDeniedError() return self.photo.update_adopt(target_id, type, photo_id)
def delete(self, template_id): if not self.auth.guard("admin"): raise ActionDeniedError() return self.tmpl.delete(template_id)
def list_users(self): if not self.auth.guard("admin"): raise ActionDeniedError() return self.user.list()
def create_target(self, name, place_id=None): if not self.auth.guard("worker"): raise ActionDeniedError() return self.target.create(name, place_id)
def delete_user(self, user_id): if not self.auth.guard("admin"): raise ActionDeniedError() return self.user.delete(user_id)
def delete_target(self, target_id): if not self.auth.guard("admin"): raise ActionDeniedError() return self.target.delete(target_id)
def update_target(self, name): if not self.auth.guard("worker"): raise ActionDeniedError() return self.target.update_name(name)
def show_target(self): if not self.auth.guard(): raise ActionDeniedError() return self.target.show()