コード例 #1
0
ファイル: views.py プロジェクト: oraclebill/dsusa
    def step_manufacturer(self, request):
        catalog = Catalog()
        manufacturers = catalog.manufacturers()

        return self.handle_form(
            request,
            ManufacturerForm,
            {
                "manufacturers_json": simplejson.dumps(manufacturers),
                "cabinet_lines": catalog.values(),
                "manufacturers": manufacturers,
                "default_selects": simplejson.dumps(
                    {
                        "id_cabinet_material": ManufacturerForm.DOOR_MATERIALS,
                        "id_finish_type": ManufacturerForm.FINISHES,
                    }
                ),
            },
        )
コード例 #2
0
ファイル: views.py プロジェクト: oraclebill/dsusa
def ajax_manufacturer(request):
    catalog = Catalog()

    def material_data(material, cabinet_line):
        finish_types = cabinet_line.get_primary_finish_types(material)
        finish_types_data = {}
        for finish_type in finish_types:
            colors = cabinet_line.get_primary_finishes(species=material)
            finish_types_data[finish_type] = {"colors": colors}

        return {
            "name": material,
            "door_style": cabinet_line.get_door_styles(material),
            "finish_type": finish_types_data,
            "finish_options": cabinet_line.get_finish_option_types(material),
            "finish_color": cabinet_line.get_primary_finishes(species=material),
        }

    def manufacturer_data(cabinet_line):
        return {
            "name": manufacturer,
            "product_line": cabinet_line.product_lines,
            "material": dict(
                ((material, material_data(material, cabinet_line)) for material in cabinet_line.get_door_materials())
            ),
            "materials_list": cabinet_line.get_door_materials(),
        }

    manufacturer = request.GET.get("manufacturer", None)
    try:
        cabinet_line = catalog.cabinet_line(manufacturer)
    except KeyError:
        res = {"error": "DoesNotExist"}
    else:
        res = manufacturer_data(cabinet_line)

    return HttpResponse(simplejson.dumps(res), mimetype="application/javascript")