def manage_category(request, category_id, template_name="manage/category/manage_category.html"): """Displays the form to manage the category with given category id. """ category = Category.objects.get(pk=category_id) return render_to_response( template_name, RequestContext( request, { "categories_portlet": manage_categories_portlet(request, category_id), "category": category, "data": category_data(request, category_id), "seo": SEOView(Category).render(request, category), "view": category_view(request, category_id), "portlets": portlets_inline(request, category), "dialog_message": _("Do you really want to delete the category <b>'%(name)s'</b> and all its sub categories?" ) % { "name": category.name }, }))
def edit_category_data(request, category_id, template_name="manage/category/data.html"): """Updates the category data. """ category = Category.objects.get(pk=category_id) form = CategoryForm(instance=category, data=request.POST, files=request.FILES) if form.is_valid(): form.save() message = _(u"Category data have been saved.") else: message = _(u"Please correct the indicated errors.") # Delete image if request.POST.get("delete_image"): category.image.delete() html = [ ["#data", category_data(request, category.id)], [ "#categories-portlet", manage_categories_portlet(request, category.id) ], ] result = simplejson.dumps({ "message": message, "html": html, }, cls=LazyEncoder) return HttpResponse(result)
def edit_category_data(request, category_id, template_name="manage/category/data.html"): """Updates the category data. """ category = Category.objects.get(pk=category_id) form = CategoryForm(instance=category, data=request.POST, files=request.FILES) if form.is_valid(): form.save() message = _(u"Category data have been saved.") else: message = _(u"Please correct the indicated errors.") # Delete image if request.POST.get("delete_image"): category.image.delete() html = [ ["#data", category_data(request, category.id)], ["#categories-portlet", manage_categories_portlet(request, category.id)], ] result = json.dumps({ "message": message, "html": html, }, cls=LazyEncoder) return HttpResponse(result, content_type='application/json')
def edit_category_data(request, category_id, template_name="manage/category/data.html"): """Updates the category data. """ category = Category.objects.get(pk=category_id) form = CategoryForm(instance=category, data=request.POST, files=request.FILES) if form.is_valid(): obj = form.save() group, created = PropertyGroup.objects.get_or_create(name=category.name) if not created: last_group = Property.objects.filter(groups=group) #GroupsPropertiesRelation.objects.filter(group_id=group.id) new_group = obj.properties.all() interception = set(last_group) & set(new_group) delete = list(set(last_group) - interception) create = list(set(new_group) - interception) GroupsPropertiesRelation.objects.filter(property__in=delete).delete() for property in create: GroupsPropertiesRelation.objects.create( group_id=group.id, property_id=property.id, ) # Case where the property group doesn't exist and # should be created. else: properties = obj.properties.all() group.categories.add(category) for property in properties: GroupsPropertiesRelation.objects.create( group_id=group.id, property_id=property.id ) message = _(u"Category data have been saved.") else: message = _(u"Please correct the indicated errors.") # Delete image if request.POST.get("delete_image"): category.image.delete() html = [ ["#data", category_data(request, category.id)], ["#categories-portlet", manage_categories_portlet(request, category.id)], ] result = simplejson.dumps({ "message": message, "html" : html, }, cls=LazyEncoder) return HttpResponse(result)
def manage_category(request, category_id, template_name="manage/category/manage_category.html"): """Displays the form to manage the category with given category id. """ category = Category.objects.get(pk=category_id) return render(request, template_name, { "categories_portlet": manage_categories_portlet(request, category_id), "category": category, "data": category_data(request, category_id), "seo": SEOView(Category).render(request, category), "view": category_view(request, category_id), "portlets": portlets_inline(request, category), "dialog_message": _("Do you really want to delete the category <b>'%(name)s'</b> and all its sub categories?") % {"name": category.name}, })