Пример #1
0
def last_items_feed(count=5):
    lang = 'ru'
    items_list = list(ItemContent.objects.prefetch_related('item').filter(item__publicated=True, lang=lang).order_by(
        '-item__create_date')[:count])
    nd = {}

    for item in items_list:
        nd[item.item.id_in_catalog] = item

    records_ids = []
    for items_lis in items_list:
        records_ids.append(items_lis.item.id_in_catalog)

    saved_documents = mydocs_models.SavedDocument.objects.values('gen_id').filter(gen_id__in=records_ids)

    for saved_document in saved_documents:
        item_content = nd.get(saved_document.get('gen_id'))
        if item_content:
            item_content.in_favorite = True

    for record in get_records(records_ids):
        item_content = nd.get(record.gen_id)
        if item_content:
            nd[record.gen_id].attrs = xml_doc_to_dict(record.content)

    return ({
        'items_list': items_list,
        'MEDIA_URL': settings.MEDIA_URL,
        'STATIC_URL': settings.STATIC_URL
    })
Пример #2
0
def index(request):
    cur_language = translation.get_language()

    items_page = get_page(
        request,
        ItemContent.objects.prefetch_related('item')
            .filter(item__publicated=True, lang=cur_language)
            .order_by('-item__create_date')
    )

    nd = {}

    for item in items_page.object_list:
        nd[item.item.id_in_catalog] = item

    records_ids = []
    for items_lis in items_page.object_list:
        records_ids.append(items_lis.item.id_in_catalog)

    records = get_records(records_ids)
    for record in records:
        doc = utils.xml_doc_to_dict(record.content)
        item = nd.get(record.gen_id)
        if item is not None:
            item.cover = doc.get('cover', [''])[0]

    return render(request, 'newinlib/frontend/list.html', {
        'items_page': items_page,
    })
Пример #3
0
def index(request):
    cur_language = translation.get_language()

    items_page = get_page(
        request,
        ItemContent.objects.prefetch_related('item').filter(
            item__publicated=True,
            lang=cur_language).order_by('-item__create_date'))

    nd = {}

    for item in items_page.object_list:
        nd[item.item.id_in_catalog] = item

    records_ids = []
    for items_lis in items_page.object_list:
        records_ids.append(items_lis.item.id_in_catalog)

    records = get_records(records_ids)
    for record in records:
        doc = utils.xml_doc_to_dict(record.content)
        item = nd.get(record.gen_id)
        if item is not None:
            item.cover = doc.get('cover', [''])[0]

    return render(request, 'newinlib/frontend/list.html', {
        'items_page': items_page,
    })
Пример #4
0
def get_bib_records(gen_ids):
    records = get_records(gen_ids)
    bib_records = []
    for record in records:
        doc_tree = etree.XML(record.content)
        bib_tree = xslt_bib_draw_transformer(doc_tree)
        bib_dump = etree.tostring(bib_tree, encoding='utf-8')
        bib_records.append({
            'record': record,
            'card': beautify(bib_dump.replace('<b/>', '')),
        })

    return bib_records
Пример #5
0
def get_bib_records(gen_ids):
    records = get_records(gen_ids)
    bib_records = []
    for record in records:
        doc_tree = etree.XML(record.content)
        bib_tree = xslt_bib_draw_transformer(doc_tree)
        bib_dump = etree.tostring(bib_tree, encoding='utf-8')
        bib_records.append({
            'record': record,
            'card': beautify(bib_dump.replace('<b/>', '')),
        })

    return bib_records
Пример #6
0
def get_bib_records(question):
    bib_ids = []
    if question.bib_ids:
        bib_ids = question.bib_ids.replace(u"\r", '').split("\n")
        bib_ids = map(lambda x: x.strip(), bib_ids)

    bib_records = []

    if bib_ids:
        records = get_records(bib_ids)
        for record in records:
            doc_tree = etree.XML(record.content)
            bib_tree = xslt_bib_draw_transformer(doc_tree)
            bib_dump = etree.tostring(bib_tree, encoding='utf-8')
            bib_records.append({
                'record': record,
                'card': beautify(bib_dump.replace('<b/>', '')),
            })

    return bib_records
Пример #7
0
def get_bib_records(question):
    bib_ids = []
    if question.bib_ids:
        bib_ids = question.bib_ids.replace(u"\r", '').split("\n")
        bib_ids = map(lambda x: x.strip(), bib_ids)

    bib_records = []

    if bib_ids:
        records = get_records(bib_ids)
        for record in records:
            doc_tree = etree.XML(record.content)
            bib_tree = xslt_bib_draw_transformer(doc_tree)
            bib_dump = etree.tostring(bib_tree, encoding='utf-8')
            bib_records.append({
                'record': record,
                'card': beautify(bib_dump.replace('<b/>', '')),
            })

    return bib_records
Пример #8
0
def last_items_feed(count=5):
    lang = 'ru'
    items_list = list(
        ItemContent.objects.prefetch_related('item').filter(
            item__publicated=True,
            lang=lang).order_by('-item__create_date')[:count])
    nd = {}

    for item in items_list:
        nd[item.item.id_in_catalog] = item

    records_ids = []
    for items_lis in items_list:
        records_ids.append(items_lis.item.id_in_catalog)

    records = get_records(records_ids)
    for record in records:
        doc = utils.xml_doc_to_dict(record.content)
        item = nd.get(record.gen_id)
        if item is not None:
            item.cover = doc.get('cover', [''])[0]
    # saved_documents = mydocs_models.SavedDocument.objects.values('gen_id').filter(gen_id__in=records_ids)
    #
    # for saved_document in saved_documents:
    #     item_content = nd.get(saved_document.get('gen_id'))
    #     if item_content:
    #         item_content.in_favorite = True
    #
    # for record in get_records(records_ids):
    #     item_content = nd.get(record.gen_id)
    #     if item_content:
    #         nd[record.gen_id].attrs = xml_doc_to_dict(record.content)

    return ({
        'items_list': items_list,
        'MEDIA_URL': settings.MEDIA_URL,
        'STATIC_URL': settings.STATIC_URL
    })