示例#1
0
def get_tip_export(store, user_id, rtip_id):
    rtip = db_access_rtip(store, user_id, rtip_id)

    files = []
    for rf in store.find(models.ReceiverFile, models.ReceiverFile.receivertip_id == rtip_id):
        rf.downloads += 1
        file_dict = serialize_receiver_file(rf)
        file_dict['name'] = 'files/' + file_dict['name']
        files.append(copy.deepcopy(file_dict))

    receiver = rtip.receiver
    user_language = receiver.user.language

    export_dict = {
        'type': u'export_template',
        'node': db_admin_serialize_node(store, user_language),
        'notification': db_get_notification(store, user_language),
        'tip': serialize_rtip(store, rtip, user_language),
        'context': admin_serialize_context(store, rtip.internaltip.context, user_language),
        'receiver': admin_serialize_receiver(receiver, user_language),
        'comments': db_get_comment_list(rtip),
        'messages': db_get_message_list(rtip),
        'files': []
    }

    export_template = Templating().format_template(export_dict['notification']['export_template'], export_dict).encode('utf-8')

    export_dict['files'].append({'buf': export_template, 'name': "data.txt"})

    return export_dict
示例#2
0
def get_tip_export(store, user_id, rtip_id, language):
    rtip = db_access_rtip(store, user_id, rtip_id)

    receiver = rtip.receiver

    export_dict = {
        'type': u'export_template',
        'node': db_admin_serialize_node(store, language),
        'notification': db_get_notification(store, language),
        'tip': serialize_rtip(store, rtip, language),
        'context': admin_serialize_context(store, rtip.internaltip.context, language),
        'receiver': admin_serialize_receiver(receiver, language),
        'comments': db_get_comment_list(rtip),
        'messages': db_get_message_list(rtip),
        'files': []
    }

    export_template = Templating().format_template(export_dict['notification']['export_template'], export_dict).encode('utf-8')

    export_dict['files'].append({'buf': export_template, 'name': "data.txt"})

    for rf in store.find(models.ReceiverFile, models.ReceiverFile.receivertip_id == rtip_id):
        rf.downloads += 1
        file_dict = serialize_receiver_file(rf)
        file_dict['name'] = 'files/' + file_dict['name']
        export_dict['files'].append(copy.deepcopy(file_dict))

    return export_dict
示例#3
0
def get_file_collection(store, user_id, rtip_id):
    rtip = db_access_rtip(store, user_id, rtip_id)

    archive_dict = {'files': [], 'file_counter': 0, 'total_size': 0}

    file_list = []
    for rf in store.find(models.ReceiverFile, models.ReceiverFile.receivertip_id == rtip_id):
        rf.downloads += 1
        file_list.append(serialize_receiver_file(rf))
        archive_dict['file_counter'] += 1
        archive_dict['total_size'] += rf.size
        archive_dict['files'].append(serialize_receiver_file(rf))

    receiver = rtip.receiver
    user_language = receiver.user.language

    data = {
        'type': u'archive_description',
        'node': db_admin_serialize_node(store, user_language),
        'notification': db_get_notification(store, user_language),
        'tip': serialize_rtip(store, rtip, user_language),
        'context': admin_serialize_context(store, rtip.internaltip.context, user_language),
        'receiver': admin_serialize_receiver(receiver, user_language),
        'archive': archive_dict
    }

    archive_description = Templating().format_template(data['notification']['archive_description'], data).encode('utf-8')

    file_list.append(
        {
           'buf': archive_description,
           'name': "COLLECTION_INFO.txt"
        }
    )

    return file_list
示例#4
0
def get_collection_info(store, rtip_id):
    """
    This function return a receiver tip + file information
    """
    rtip = store.find(ReceiverTip, ReceiverTip.id == rtip_id).one()
    if not rtip:
        raise errors.TipIdNotFound

    collection_dict = {'files': [], 'file_counter': 0, 'total_size': 0}

    rfiles = store.find(ReceiverFile, ReceiverFile.receivertip_id == rtip_id)
    for rf in rfiles:
        collection_dict['file_counter'] += 1
        collection_dict['total_size'] += rf.size
        collection_dict['files'].append(serialize_receiver_file(rf))

    return collection_dict
示例#5
0
def get_collection_info(store, rtip_id):
    """
    This function return a receiver tip + file information
    """

    rtip = store.find(ReceiverTip, ReceiverTip.id == rtip_id).one()

    if not rtip:
        log.err("Download of a Zip file without ReceiverTip associated!")
        raise errors.TipIdNotFound

    collection_dict = {'files': [], 'file_counter': 0, 'total_size': 0}

    rfiles = store.find(ReceiverFile, ReceiverFile.receivertip_id == rtip_id)
    for rf in rfiles:
        collection_dict['file_counter'] += 1
        collection_dict['total_size'] += rf.size
        collection_dict['files'].append(serialize_receiver_file(rf))

    return collection_dict
示例#6
0
def get_collection_info(store, rtip_id):
    """
    This function return a receiver tip + file information
    """

    rtip = store.find(ReceiverTip, ReceiverTip.id == rtip_id).one()

    if not rtip:
        log.err("Download of a Zip file without ReceiverTip associated!")
        raise errors.TipIdNotFound

    collection_dict = {}
    collection_dict['files'] = []
    collection_dict['files_number'] = 0
    collection_dict['total_size'] = 0

    rfiles = store.find(ReceiverFile, ReceiverFile.receiver_tip_id == rtip_id)
    for rf in rfiles:
        collection_dict['files_number'] += 1
        collection_dict['total_size'] += rf.size
        collection_dict['files'].append(serialize_receiver_file(rf))

    return collection_dict