def mutate_and_get_payload(cls, args, context, info): user = context.user work_experience_id = args.get('id', None) work_experience = get_node(work_experience_id, context, info, WorkExperience) if not work_experience: raise Exception("Invalid Work Experience id") if work_experience.user != user: raise Exception("Invalid Access to Work Experience") organization_id = args.get('organization_id', None) organization = get_node(organization_id, context, info, Organization) if organization: args['organization'] = organization.id # update work experience form = WorkExperienceForm(args, instance=work_experience) if form.is_valid(): form.save() else: raise Exception(str(form.errors)) return UpdateWorkExperienceMutation(work_experience=work_experience)
def mutate_and_get_payload(cls, input, context, info): user = context.user picture_id = input.get('id') picture = get_node(picture_id, context, info, Picture) if not picture: raise ResponseError("Invalid Picture", code='invalid_picture') if not picture.product.owner.validate_user(user): raise ResponseError("Invalid Owner", code='invalid_owner') media_id = input.get('picture_id') media = get_node(media_id, context, info, Media) if not media or not media.identity.validate_user(user): raise ResponseError("Invalid Media", code='invalid_media') # update picture picture.picture = media form = PictureForm(input, instance=picture) if form.is_valid(): form.save() else: raise FormError(form.errors) return UpdateProductPictureMutation(picture=picture)
def mutate_and_get_payload(cls, input, context, info): # check user check_superuser(context) category_field_id = input.get('id') category_field = get_node( category_field_id, context, info, CategoryField) if not category_field: raise ResponseError( "Invalid Category Field", code='invalid_category_field') category_id = input.get('category_id') category = get_node(category_id, context, info, Category) if not category: raise ResponseError( "Invalid Category", code='invalid_category') # update category field form = CategoryFieldForm(input, instance=category_field) if form.is_valid(): form.save() category_field.category = category category_field.save() else: raise FormError(form.errors) return UpdateCategoryFieldMutation(category_field=category_field)
def mutate_and_get_payload(cls, input, context, info): user = context.user organization_id = input.get('organization_id', None) organization = get_node(organization_id, context, info, Organization) if not organization: raise Exception("Invalid Organization") if organization.owner != user: raise Exception("Invalid Access to Organization") media_id = input.get('picture_id') media = get_node(media_id, context, info, Media) if not media: raise Exception("Invalid Media") if not media.identity.validate_organization(organization): raise Exception("Invalid Media Identiy") # create picture form = PictureForm(input, context.FILES) if form.is_valid(): new_picture = form.save(commit=False) new_picture.organization = organization new_picture.picture = media new_picture.save() else: raise Exception(str(form.errors)) return CreatePictureMutation(picture=new_picture)
def mutate_and_get_payload(cls, input, context, info): user = context.user organization_id = input.get('id', None) organization = get_node(organization_id, context, info, Organization) if not organization: raise Exception("Invalid Organization") if organization.owner != user: raise Exception("Invalid Access to Organization") logo_id = input.get('logo_id') logo = get_node(logo_id, context, info, Media) # update logo organization.logo = logo # update organization form = OrganizationForm(input, instance=organization) if form.is_valid(): add_admins(organization, input, context, info) organization.save() else: raise Exception(str(form.errors)) return UpdateOrganizationMutation(organization=organization)
def mutate_and_get_payload(cls, input, context, info): user = context.user product_id = input.get('id') product = get_node(product_id, context, info, Product) if not product: raise ResponseError("Invalid Product", code='invalid_product') if not product.owner.validate_user(user): raise ResponseError("Invalid Owner", code='invalid_owner') category_id = input.get('category_id') category = get_node(category_id, context, info, Category) if not category or not category.creatable: raise ResponseError("Invalid Category", code='invalid_category') # update product form = ProductForm(input, instance=product) form.data['attrs'] = add_attrs(input.get('attrs'), category) form.data['custom_attrs'] = add_custom_attrs(input.get('custom_attrs')) if form.is_valid(): product = form.save(commit=False) product.category = category product.save() else: raise FormError(form.errors) return UpdateProductMutation(product=product)
def mutate_and_get_payload(cls, input, context, info): user = context.user picture_id = input.get('id') picture = get_node(picture_id, context, info, Picture) if not picture: raise Exception("Invalid Picture") media_id = input.get('picture_id') media = get_node(media_id, context, info, Media) if not media: raise Exception("Invalid Media") if not media.identity.validate_organization(picture.organization): raise Exception("Invalid Media Identiy") if picture.organization.owner != user: raise Exception("Invalid Access to Organization") # update picture picture.picture = media form = PictureForm(input, context.FILES, instance=picture) if form.is_valid(): form.save() else: raise Exception(str(form.errors)) return UpdatePictureMutation(picture=picture)
def mutate_and_get_payload(cls, input, context, info): user = context.user product_id = input.get('product_id') product = get_node(product_id, context, info, Product) if not product: raise ResponseError("Invalid Product", code='invalid_product') if not product.owner.validate_user(user): raise ResponseError("Invalid Owner", code='invalid_owner') media_id = input.get('picture_id') media = get_node(media_id, context, info, Media) if not media or not media.identity.validate_user(user): raise ResponseError("Invalid Media", code='invalid_media') # create picture form = PictureForm(input, context.FILES) if form.is_valid(): new_picture = form.save(commit=False) new_picture.product = product new_picture.picture = media new_picture.save() else: raise FormError(form.errors) return CreateProductPictureMutation(picture=new_picture)
def mutate_and_get_payload(cls, input, context, info): user = context.user identity_id = input.get('identity_id') identity = get_node(identity_id, context, info, Identity) if not identity or not identity.validate_user(user): raise Exception("Invalid Identity") if not 'file' in context.FILES: raise Exception("File Does Not Exists") if not context.user.is_authenticated(): raise Exception("Login required") media_form = MediaForm({'uploader': user.pk}, context.FILES) if media_form.is_valid(): media = media_form.save(commit=False) media.identity = identity media.save() else: raise Exception(str(media_form.errors)) return CreateMediaMutation(media=media)
def add_admins(organization, input, context, info): admins_id = input.get('admins_id', None) admins_pk = [] if admins_id: for id in admins_id: admin = get_node(id, context, info, User) if admin: organization.admins.add(admin) admins_pk.append(admin.pk) for extra_admin in User.objects.filter(organ_admins=organization).exclude( pk__in=admins_pk): organization.admins.remove(extra_admin)
def mutate_and_get_payload(cls, input, context, info): user = context.user comment_id = input.get('id') comment = get_node(comment_id, context, info, Comment) if not comment or comment.user != user: raise ResponseError("Invalid Comment", code='invalid_comment') # delete comment comment.delete() return DeleteCommentMutation(deleted_id=comment_id)
def mutate_and_get_payload(cls, input, context, info): # check user check_superuser(context) category_id = input.get('id', None) category = get_node(category_id, context, info, Category) if not category: raise ResponseError("Invalid Category", code='invalid_category') # delete category category.delete() return DeleteCategoryMutation(deleted_id=category_id)
def mutate_and_get_payload(cls, input, context, info): user = context.user certificate_id = input.get('id', None) certificate = get_node(certificate_id, context, info, Certificate) if not certificate: raise Exception("Invalid Certificate") if certificate.user != user: raise Exception("Invalid Access to Certificate") # delete certificate certificate.delete() return DeleteCertificateMutation(deleted_id=id)
def mutate_and_get_payload(cls, input, context, info): # check user check_superuser(context) category_id = input.get('id', None) category = get_node(category_id, context, info, Category) if not category: raise ResponseError("Invalid Category", code='invalid_category') parent_id = input.get('parent_id') parent = get_node(parent_id, context, info, Category) # update category form = CategoryForm(input, instance=category) if form.is_valid(): form.save() category.parent = parent category.save() else: raise FormError(form.errors) return UpdateCategoryMutation(category=category)
def mutate_and_get_payload(cls, input, context, info): user = context.user certificate_id = input.get('id', None) certificate = get_node(certificate_id, context, info, Certificate) if not certificate: raise Exception("Invalid Certificate") if certificate.user != user: raise Exception("Invalid Access to Certificate") picture_id = input.get('picture_id') picture = get_node(picture_id, context, info, Media) # update certificate certificate.picture = picture form = CertificateForm(input, context.FILES, instance=certificate) if form.is_valid(): form.save() else: raise Exception(str(form.errors)) return UpdateCertificateMutation(certificate=certificate)
def mutate_and_get_payload(cls, input, context, info): user = context.user owner_id = input.get('owner_id') owner = get_node(owner_id, context, info, Identity) if not owner or not owner.validate_user(user): raise ResponseError("Invalid Owner", code='invalid_owner') category_id = input.get('category_id') category = get_node(category_id, context, info, Category) if not category or not category.creatable: raise ResponseError("Invalid Category", code='invalid_category') # create product form = ProductForm(input) if form.is_valid(): new_product = form.save(commit=False) new_product.owner = owner new_product.category = category new_product.save() else: raise FormError(form.errors) return CreateProductMutation(product=new_product)
def mutate_and_get_payload(cls, input, context, info): user = context.user skill_id = input.get('id', None) skill = get_node(skill_id, context, info, Skill) if not skill: raise Exception("Invalid Skill") if skill.user != user: raise Exception("Invalid Access to Skill") # delete skill skill.delete() return DeleteSkillMutation(deleted_id=id)
def mutate_and_get_payload(cls, input, context, info): user = context.user research_id = input.get('id', None) research = get_node(research_id, context, info, Research) if not research: raise Exception("Invalid Research") if research.user != user: raise Exception("Invalid Access to Research") # delete research research.delete() return DeleteResearchMutation(deleted_id=id)
def mutate_and_get_payload(cls, input, context, info): user = context.user staff_count_id = input.get('id') staff_count = get_node(staff_count_id, context, info, StaffCount) if not staff_count: raise Exception("Invalid Staff Count") if staff_count.organization.owner != user: raise Exception("Invalid Access to Organization") # delete staff count staff_count.delete() return DeleteStaffCountMutation(deleted_id=id)
def mutate_and_get_payload(cls, input, context, info): user = context.user organization_id = input.get('id', None) organization = get_node(organization_id, context, info, Organization) if not organization: raise Exception("Invalid Organization") if organization.owner != user: raise Exception("Invalid Access to Organization") # delete organization organization.delete() return DeleteOrganizationMutation(deleted_id=id)
def mutate_and_get_payload(cls, input, context, info): user = context.user picture_id = input.get('id') picture = get_node(picture_id, context, info, Picture) if not picture: raise ResponseError("Invalid Picture", code='invalid_picture') if not picture.product.owner.validate_user(user): raise ResponseError("Invalid Owner", code='invalid_owner') # delete product picture.delete() return DeleteProductPictureMutation(deleted_id=picture_id)
def mutate_and_get_payload(cls, input, context, info): user = context.user education_id = input.get('id', None) education = get_node(education_id, context, info, Education) if not education: raise Exception("Invalid Education") if education.user != user: raise Exception("Invalid Access to Education") # delete education education.delete() return DeleteEducationMutation(deleted_id=id)
def mutate_and_get_payload(cls, input, context, info): user = context.user price_id = input.get('id', None) price = get_node(price_id, context, info, Price) if not price: raise ResponseError("Invalid Price", code='invalid_price') if not price.product.owner.validate_user(user): raise ResponseError("Invalid Owner", code='invalid_owner') # delete price price.delete() return DeletePriceMutation(deleted_id=price_id)
def mutate_and_get_payload(cls, args, context, info): user = context.user work_experience_id = args.get('id', None) work_experience = get_node(work_experience_id, context, info, WorkExperience) if not work_experience: raise Exception("Invalid Work Experience") if work_experience.user != user: raise Exception("Invalid Access to Work Experience") # delete work experience work_experience.delete() return DeleteWorkExperienceMutation(deleted_id=id)
def mutate_and_get_payload(cls, input, context, info): user = context.user comment_id = input.get('id') comment = get_node(comment_id, context, info, Comment) if not comment or comment.user != user: raise ResponseError("Invalid Comment", code='invalid_comment') # update comment form = CommentForm(input, instance=comment) if form.is_valid(): form.save() else: raise FormError(form.errors) return UpdateCommentMutation(comment=comment)
def mutate_and_get_payload(cls, input, context, info): user = context.user picture_id = input.get('picture_id') picture = get_node(picture_id, context, info, Media) # create certificate form = CertificateForm(input, context.FILES) if form.is_valid(): new_certificate = form.save(commit=False) new_certificate.user = user new_certificate.picture = picture new_certificate.save() else: raise Exception(str(form.errors)) return CreateCertificateMutation(certificate=new_certificate)
def mutate_and_get_payload(cls, input, context, info): # check user check_superuser(context) parent_id = input.get('parent_id') parent = get_node(parent_id, context, info, Category) # create category form = CategoryForm(input) if form.is_valid(): new_category = form.save(commit=False) new_category.parent = parent new_category.save() else: raise FormError(form.errors) return CreateCategoryMutation(category=new_category)
def mutate_and_get_payload(cls, input, context, info): user = context.user picture_id = input.get('id') picture = get_node(picture_id, context, info, Picture) if not picture: raise Exception("Invalid Picture") if picture.organization.owner != user: raise Exception("Invalid Access to Organization") # delete picture in media model picture.picture.delete() # delete picture picture.delete() return DeletePictureMutation(deleted_id=id)
def mutate_and_get_payload(cls, args, context, info): user = context.user organization_id = args.get('organization_id', None) organization = get_node(organization_id, context, info, Organization) if organization: args['organization'] = organization.id # create work experience form = WorkExperienceForm(args) if form.is_valid(): new_work_experience = form.save(commit=False) new_work_experience.user = user new_work_experience.save() else: raise Exception(str(form.errors)) return CreateWorkExperienceMutation( work_experience=new_work_experience)
def mutate_and_get_payload(cls, input, context, info): user = context.user education_id = input.get('id', None) education = get_node(education_id, context, info, Education) if not education: raise Exception("Invalid Education") if education.user != user: raise Exception("Invalid Access to Education") # update education form = EducationForm(input, instance=education) if form.is_valid(): education.save() else: raise Exception(str(form.errors)) return UpdateEducationMutation(education=education)