コード例 #1
0
ファイル: views.py プロジェクト: mariusbaumann/munkiwebadmin
def catalog_view(request, catalog_name=None, item_index=None):
    view = request.COOKIES.get('view_catalogs')
    if not view:
        view = "grid"

    catalog_list = Catalog.list()
    if request.is_ajax():
        return HttpResponse(json.dumps(catalog_list),
                            mimetype='application/json')
    catalog = None
    catalog_item = None
    if not catalog_name:
        catalog_name = "all"

    catalog = Catalog.detail(catalog_name)

    catalog_items = list()
    for item in catalog:
        if 'display_name' not in item:
            item['display_name'] = item['name']
        if item.display_name not in catalog_items:
            catalog_items.append(item.display_name)
    catalog_items_json = json.dumps(catalog_items)

    if item_index:
        catalog_item = Catalog.item_detail(catalog_name, item_index)

    # get icon
    counter = 0
    for item in catalog:
        if "icon_name" in item:
            icon = Catalog.get_icon(item.icon_name)
        else:
            icon = Catalog.get_icon(item.name)
        catalog[counter].icon_name = icon
        counter += 1

    c = RequestContext(request,{'catalog_list': catalog_list,
                                'catalog_name': catalog_name,
                                'catalog': catalog,
                                'item_index': item_index,
                                'catalog_item': catalog_item,
                                'catalog_items': catalog_items_json,
                                'user': request.user,
                                'view': view,
                                'page': 'catalogs'})
    c.update(csrf(request))
    return render_to_response('catalogs/catalog.html', c)