Beispiel #1
0
def cma_ajax_get_table_images(request):
    """
    Ajax view for fetching images list.
    """
    if request.method == 'GET':
        rest_data = prep_data({'images_public': ('admin_cm/system_image/get_list/', {'access': image_access['public']}),
                               'images_private': ('admin_cm/system_image/get_list/', {'access': image_access['private']}),
                               'images_group': ('admin_cm/system_image/get_list/', {'access': image_access['group']})}, request.session)

        for item in rest_data['images_public']:
            item['size'] = unicode(filesizeformatmb(item['size']))
            item['type'] = 'public'
            item['stateName'] = image_states_reversed[item['state']]

        list_images = [{'name': unicode(_('Public:')), 'items': rest_data['images_public']}]

        for item in rest_data['images_private']:
            item['size'] = unicode(filesizeformatmb(item['size']))
            item['type'] = 'private'
            item['stateName'] = image_states_reversed[item['state']]

        list_images.append({'name': unicode(_('Private:')), 'items': rest_data['images_private']})

        for group in rest_data['images_group']:
            for item in group['images']:
                item['size'] = unicode(filesizeformatmb(item['size']))
                item['type'] = 'group'
                item['stateName'] = image_states_reversed[item['state']]

            list_images.append({'name': unicode(_('Group:')) + ' ' + group['name'], 'items': group['images']})

        return messages_ajax.success(list_images)
Beispiel #2
0
def cma_ajax_get_cm_data(request):
    """
    Ajax view for fetching CM data (quotas etc.).
    """
    if request.method == "GET":
        rest_data = prep_data(
            {"cm_data": "admin_cm/cluster/get_data/", "nodes": "admin_cm/node/get_list/"}, request.session
        )

        data = rest_data["cm_data"]

        total_cpu = 0
        total_mem = 0
        free_cpu = 0
        free_mem = 0
        for node in rest_data["nodes"]:
            node["stateName"] = unicode(node_states[node["state"]])
            if node["state"] == 1:
                free_cpu += node["cpu_free"]
                free_mem += node["memory_free"]
                total_cpu += node["cpu_total"]
                total_mem += node["memory_total"]

        data["free_cpu"] = free_cpu
        data["free_mem"] = filesizeformatmb(free_mem)
        data["total_cpu"] = total_cpu
        data["total_mem"] = filesizeformatmb(total_mem)

        data["stateName"] = unicode(cm_states[data["state"]])

        return messages_ajax.success(data)
Beispiel #3
0
def cma_ajax_get_cm_data(request):
    """
    Ajax view for fetching CM data (quotas etc.).
    """
    if request.method == 'GET':
        rest_data = prep_data(
            {
                'cm_data': 'admin_cm/cluster/get_data/',
                'nodes': 'admin_cm/node/get_list/'
            }, request.session)

        data = rest_data['cm_data']

        total_cpu = 0
        total_mem = 0
        free_cpu = 0
        free_mem = 0
        for node in rest_data['nodes']:
            node['stateName'] = unicode(node_states[node['state']])
            if node['state'] == 1:
                free_cpu += node['cpu_free']
                free_mem += node['memory_free']
                total_cpu += node['cpu_total']
                total_mem += node['memory_total']

        data['free_cpu'] = free_cpu
        data['free_mem'] = filesizeformatmb(free_mem)
        data['total_cpu'] = total_cpu
        data['total_mem'] = filesizeformatmb(total_mem)

        data['stateName'] = unicode(cm_states[data['state']])

        return messages_ajax.success(data)
Beispiel #4
0
def cma_ajax_get_cm_data(request):
    """
    Ajax view for fetching CM data (quotas etc.).
    """
    if request.method == 'GET':
        rest_data = prep_data({'cm_data': 'admin_cm/cluster/get_data/',
                               'nodes': 'admin_cm/node/get_list/'
                              }, request.session)

        data = rest_data['cm_data']

        total_cpu = 0
        total_mem = 0
        free_cpu = 0
        free_mem = 0
        for node in rest_data['nodes']:
            node['stateName'] = unicode(node_states[node['state']])
            if node['state'] == 1:
                free_cpu += node['cpu_free']
                free_mem += node['memory_free']
                total_cpu += node['cpu_total']
                total_mem += node['memory_total']

        data['free_cpu'] = free_cpu
        data['free_mem'] = filesizeformatmb(free_mem)
        data['total_cpu'] = total_cpu
        data['total_mem'] = filesizeformatmb(total_mem)

        data['stateName'] = unicode(cm_states[data['state']])

        return messages_ajax.success(data)
Beispiel #5
0
def acc_ajax_get_user_quotas(request):
    """
    Ajax view for fetching users' quotas.
    """
    if request.method == 'GET':
        quota = prep_data('user/user/check_quota/', request.session)

        quota['memory'] = filesizeformatmb(quota['memory'])
        quota['used_memory'] = filesizeformatmb(quota['used_memory'])
        quota['storage'] = filesizeformatmb(quota['storage'])
        quota['used_storage'] = filesizeformatmb(quota['used_storage'])

        return messages_ajax.success(quota)
Beispiel #6
0
def acc_ajax_get_user_quotas(request):
    """
    Ajax view for fetching users' quotas.
    """
    if request.method == 'GET':
        quota = prep_data('user/user/check_quota/', request.session)

        quota['memory'] = filesizeformatmb(quota['memory'])
        quota['used_memory'] = filesizeformatmb(quota['used_memory'])
        quota['storage'] = filesizeformatmb(quota['storage'])
        quota['used_storage'] = filesizeformatmb(quota['used_storage'])

        return messages_ajax.success(quota)
Beispiel #7
0
def cma_ajax_get_table_nodes(request):
    """
    Ajax view fetching node list.
    """
    if request.method == 'GET':
        nodes = prep_data('admin_cm/node/get_list/', request.session)
        for item in nodes:
            item['stateName'] = unicode(node_states[item['state']])
            item['memory_free'] = filesizeformatmb(item['memory_free'])
            item['memory_total'] = filesizeformatmb(item['memory_total'])
            item['description'] = item['comment']

        return messages_ajax.success(nodes)
Beispiel #8
0
def img_ajax_get_group_table(request):
    """
    Ajax view for fetching group images list.
    """
    if request.method == 'GET':
        rest_data = prep_data(
            {
                'own_groups':
                'user/group/list_own_groups/',
                'group_images': ('user/system_image/get_list/', {
                    'access': image_access['group']
                }),
            }, request.session)

        leader = parsing.parse_own_groups(rest_data)

        group_list = []
        for group in rest_data['group_images']:

            group_images_list = []
            for item in group['images']:
                item['stateName'] = unicode(
                    image_states_reversed[item['state']])
                item['size'] = filesizeformatmb(item['size'])
                item['mine'] = True if item['user_id'] == request.session[
                    'user'].user_id else False
                item['myGroup'] = True if item['group_id'] in leader else False
                group_images_list.append(item)

            group_list.append({
                'name': group['name'],
                'items': group_images_list,
                'group_id': group['group_id']
            })
        return messages_ajax.success(group_list)
Beispiel #9
0
def parse_disks(data, select_flag=True):
    """
    Returns list of the disks' names.

    @parameter{data,dict}
    @parameter{select_flag,boolean}

    @returns{list} disks' names.
    """
    disks_list = []
    all_disabled = True
    for disk in data['disks']:
        if disk['state'] == image_states['ok']:
            label = '%s (%s)' % (disk['name'], filesizeformatmb(disk['size']))
            if disk['vm_id'] == "":
                disks_list.append([disk['storage_image_id'], label])
                all_disabled = False
            else:
                disks_list.append([disk['storage_image_id'], {'label': label, 'disabled': True}])
    if disks_list == []:
        if select_flag == True:
            disks_list.append((-1, {'label': _('None available'), 'disabled': True}))
        else:
            disks_list.append((-1, _('None available')))
    else:
        if select_flag == False and all_disabled:
            disks_list.insert(0, [-1, _('None available')])

    return disks_list
Beispiel #10
0
def img_ajax_get_group_table(request):
    """
    Ajax view for fetching group images list.
    """
    if request.method == "GET":
        rest_data = prep_data(
            {
                "own_groups": "user/group/list_own_groups/",
                "group_images": ("user/system_image/get_list/", {"access": image_access["group"]}),
            },
            request.session,
        )

        leader = parsing.parse_own_groups(rest_data)

        group_list = []
        for group in rest_data["group_images"]:

            group_images_list = []
            for item in group["images"]:
                item["stateName"] = unicode(image_states_reversed[item["state"]])
                item["size"] = filesizeformatmb(item["size"])
                item["mine"] = True if item["user_id"] == request.session["user"].user_id else False
                item["myGroup"] = True if item["group_id"] in leader else False
                group_images_list.append(item)

            group_list.append({"name": group["name"], "items": group_images_list, "group_id": group["group_id"]})
        return messages_ajax.success(group_list)
Beispiel #11
0
def cma_ajax_get_user_data(request, user_id):
    """
    Ajax view for fetching user data and quotas.
    """
    if request.method == 'GET':
        rest_data = prep_data({'user': ('admin_cm/user/get_by_id/', {'user_id': user_id}),
                               'quota': ('admin_cm/user/check_quota/', {'user_id': user_id}),
                              }, request.session)

        quota = rest_data['quota']
        quota['memory'] = filesizeformatmb(quota['memory'])
        quota['used_memory'] = filesizeformatmb(quota['used_memory'])
        quota['storage'] = filesizeformatmb(quota['storage'])
        quota['used_storage'] = filesizeformatmb(quota['used_storage'])

        rest_data['user']['quota'] = quota

        return messages_ajax.success(rest_data['user'])
Beispiel #12
0
def img_ajax_get_private_table(request):
    """
    Ajax view for fetching user's private images list.
    """
    if request.method == 'GET':
        rest_data = prep_data(
            {
                'images_private': ('user/system_image/get_list/', {
                    'access': image_access['private']
                }),
                'images_group': ('user/system_image/get_list/', {
                    'access': image_access['group']
                })
            }, request.session)

        for item in rest_data['images_private']:
            item['stateName'] = image_states_reversed[item['state']]
            item['type'] = 'private'
            item['size'] = filesizeformatmb(item['size'])

        group_list = [{
            'name': unicode(_('Private')),
            'items': rest_data['images_private']
        }]

        for group in rest_data['images_group']:
            group_images_list = []
            for item in group['images']:
                if item['user_id'] == request.session['user'].user_id:
                    item['stateName'] = image_states_reversed[item['state']]
                    item['size'] = unicode(filesizeformatmb(item['size']))
                    item['type'] = 'group'
                    group_images_list.append(item)

            group_list.append({
                'name':
                unicode(_('Shared to group')) + ' ' + group['name'],
                'items':
                group_images_list,
                'group_id':
                group['group_id']
            })

        return messages_ajax.success(group_list)
Beispiel #13
0
def res_ajax_get_iso_table(request):
    """
    Ajax view returning iso images list.
    """
    if request.method == 'GET':
        rest_data = prep_data('user/iso_image/get_list/', request.session)

        for item in rest_data:
            item['size'] = filesizeformatmb(item['size'])
        return messages_ajax.success(rest_data)
Beispiel #14
0
def res_ajax_get_iso_table(request):
    """
    Ajax view returning iso images list.
    """
    if request.method == 'GET':
        rest_data = prep_data('user/iso_image/get_list/', request.session)

        for item in rest_data:
            item['size'] = filesizeformatmb(item['size'])
        return messages_ajax.success(rest_data)
Beispiel #15
0
def cma_ajax_get_table_iso(request):
    """
    Ajax view for fetching ISO images list.
    """
    if request.method == 'GET':
        iso = prep_data('admin_cm/iso_image/get_list/', request.session)

        for item in iso:
            item['size'] = filesizeformatmb(item['size'])

        return messages_ajax.success(iso)
Beispiel #16
0
def cma_ajax_get_table_disks(request):
    """
    Ajax view for fetching disks list.
    """
    if request.method == 'GET':
        disks = prep_data('admin_cm/storage_image/get_list/', request.session)

        for item in disks:
            item['size'] = filesizeformatmb(item['size'])

        return messages_ajax.success(disks)
Beispiel #17
0
def cma_ajax_get_table_disks(request):
    """
    Ajax view for fetching disks list.
    """
    if request.method == 'GET':
        disks = prep_data('admin_cm/storage_image/get_list/', request.session)

        for item in disks:
            item['size'] = filesizeformatmb(item['size'])

        return messages_ajax.success(disks)
Beispiel #18
0
def cma_ajax_get_table_iso(request):
    """
    Ajax view for fetching ISO images list.
    """
    if request.method == 'GET':
        iso = prep_data('admin_cm/iso_image/get_list/', request.session)

        for item in iso:
            item['size'] = filesizeformatmb(item['size'])

        return messages_ajax.success(iso)
Beispiel #19
0
def res_ajax_get_disk_table(request):
    """
    Ajax view for fetching disk list.
    """
    if request.method == 'GET':
        rest_data = prep_data({'disks': 'user/storage_image/get_list/',
                               'disk_controllers': 'user/storage_image/get_disk_controllers/'}, request.session)

        for item in rest_data['disks']:
            item['size'] = filesizeformatmb(item['size'])
            item['bus'] = get_dict_from_list(rest_data['disk_controllers'], item['disk_controller'])['name']
        return messages_ajax.success(rest_data['disks'])
Beispiel #20
0
def cma_ajax_get_table_templates(request):
    """
    Ajax view fetching template list.
    """
    if request.method == 'GET':
        templates = prep_data('admin_cm/template/get_list/', request.session)

        for item in templates:
            item['ec2name'] = ec2names_reversed[item['ec2name']]
            item['memory'] = filesizeformatmb(item['memory'])

        return messages_ajax.success(templates)
Beispiel #21
0
def cma_ajax_get_table_templates(request):
    """
    Ajax view fetching template list.
    """
    if request.method == 'GET':
        templates = prep_data('admin_cm/template/get_list/', request.session)

        for item in templates:
            item['ec2name'] = ec2names_reversed[item['ec2name']]
            item['memory'] = filesizeformatmb(item['memory'])

        return messages_ajax.success(templates)
Beispiel #22
0
def cma_ajax_get_table_storages(request):
    """
    Ajax view returning storages list.
    """
    if request.method == 'GET':
        storages = prep_data('admin_cm/storage/get_list/', request.session)

        for item in storages:
            item['stateName'] = unicode(storage_states[item['state']])
            item['capacity'] = filesizeformatmb(item['capacity'])

        return messages_ajax.success(storages)
Beispiel #23
0
def cma_ajax_get_table_storages(request):
    """
    Ajax view returning storages list.
    """
    if request.method == 'GET':
        storages = prep_data('admin_cm/storage/get_list/', request.session)

        for item in storages:
            item['stateName'] = unicode(storage_states[item['state']])
            item['capacity'] = filesizeformatmb(item['capacity'])

        return messages_ajax.success(storages)
Beispiel #24
0
def img_ajax_get_public_table(request):
    """
    Ajax view for fetching public images list.
    """
    if request.method == "GET":
        rest_data = prep_data(("user/system_image/get_list/", {"access": image_access["public"]}), request.session)

        for item in rest_data:
            item["stateName"] = image_states_reversed[item["state"]]
            item["size"] = filesizeformatmb(item["size"])

        return messages_ajax.success(rest_data)
Beispiel #25
0
def vms_ajax_get_template_list(request):
    """
    Ajax view fetching template list.
    """
    if request.method == 'GET':
        rest_data = prep_data('user/template/get_list/', request.session)

        for item in rest_data:
            item['memory'] = filesizeformatmb(item['memory'])
            if item['ec2name'] != 0:
                item['ec2fullname'] = ec2names_reversed[item['ec2name']]

        return messages_ajax.success(rest_data)
Beispiel #26
0
def img_ajax_get_private_table(request):
    """
    Ajax view for fetching user's private images list.
    """
    if request.method == "GET":
        rest_data = prep_data(
            {
                "images_private": ("user/system_image/get_list/", {"access": image_access["private"]}),
                "images_group": ("user/system_image/get_list/", {"access": image_access["group"]}),
            },
            request.session,
        )

        for item in rest_data["images_private"]:
            item["stateName"] = image_states_reversed[item["state"]]
            item["type"] = "private"
            item["size"] = filesizeformatmb(item["size"])

        group_list = [{"name": unicode(_("Private")), "items": rest_data["images_private"]}]

        for group in rest_data["images_group"]:
            group_images_list = []
            for item in group["images"]:
                if item["user_id"] == request.session["user"].user_id:
                    item["stateName"] = image_states_reversed[item["state"]]
                    item["size"] = unicode(filesizeformatmb(item["size"]))
                    item["type"] = "group"
                    group_images_list.append(item)

            group_list.append(
                {
                    "name": unicode(_("Shared to group")) + " " + group["name"],
                    "items": group_images_list,
                    "group_id": group["group_id"],
                }
            )

        return messages_ajax.success(group_list)
Beispiel #27
0
def img_ajax_get_public_table(request):
    """
    Ajax view for fetching public images list.
    """
    if request.method == 'GET':
        rest_data = prep_data(('user/system_image/get_list/', {
            'access': image_access['public']
        }), request.session)

        for item in rest_data:
            item['stateName'] = image_states_reversed[item['state']]
            item['size'] = filesizeformatmb(item['size'])

        return messages_ajax.success(rest_data)
Beispiel #28
0
def cma_ajax_get_user_data(request, user_id):
    """
    Ajax view for fetching user data and quotas.
    """
    if request.method == 'GET':
        rest_data = prep_data(
            {
                'user': ('admin_cm/user/get_by_id/', {
                    'user_id': user_id
                }),
                'quota': ('admin_cm/user/check_quota/', {
                    'user_id': user_id
                }),
            }, request.session)

        quota = rest_data['quota']
        quota['memory'] = filesizeformatmb(quota['memory'])
        quota['used_memory'] = filesizeformatmb(quota['used_memory'])
        quota['storage'] = filesizeformatmb(quota['storage'])
        quota['used_storage'] = filesizeformatmb(quota['used_storage'])

        rest_data['user']['quota'] = quota

        return messages_ajax.success(rest_data['user'])
Beispiel #29
0
def res_ajax_get_disk_table(request):
    """
    Ajax view for fetching disk list.
    """
    if request.method == 'GET':
        rest_data = prep_data(
            {
                'disks': 'user/storage_image/get_list/',
                'disk_controllers': 'user/storage_image/get_disk_controllers/'
            }, request.session)

        for item in rest_data['disks']:
            item['size'] = filesizeformatmb(item['size'])
            item['bus'] = get_dict_from_list(rest_data['disk_controllers'],
                                             item['disk_controller'])['name']
        return messages_ajax.success(rest_data['disks'])
Beispiel #30
0
def parse_iso(data):
    """
    Returns list of the ISO images' names.

    @parameter{data}

    @returns{list} ISO images' names.
    """
    iso_list = []
    for iso in data['iso']:
        if iso['state'] == image_states['ok']:
            label = '%s (%s)' % (iso['name'], filesizeformatmb(iso['size']))
            iso_list.append([iso['iso_image_id'], label])
    if iso_list == []:
        iso_list.insert(0, (-1, _('None available')))
    else:
        iso_list.insert(0, [-1, _('None')])
    return iso_list
Beispiel #31
0
def parse_iso(data):
    """
    Returns list of the ISO images' names.

    @parameter{data}

    @returns{list} ISO images' names.
    """
    iso_list = []
    for iso in data['iso']:
        if iso['state'] == image_states['ok']:
            label = '%s (%s)' % (iso['name'], filesizeformatmb(iso['size']))
            iso_list.append([iso['iso_image_id'], label])
    if iso_list == []:
        iso_list.insert(0, (-1, _('None available')))
    else:
        iso_list.insert(0, [-1, _('None')])
    return iso_list
Beispiel #32
0
def parse_disks(data, select_flag=True):
    """
    Returns list of the disks' names.

    @parameter{data,dict}
    @parameter{select_flag,boolean}

    @returns{list} disks' names.
    """
    disks_list = []
    all_disabled = True
    for disk in data['disks']:
        if disk['state'] == image_states['ok']:
            label = '%s (%s)' % (disk['name'], filesizeformatmb(disk['size']))
            if disk['vm_id'] == "":
                disks_list.append([disk['storage_image_id'], label])
                all_disabled = False
            else:
                disks_list.append([
                    disk['storage_image_id'], {
                        'label': label,
                        'disabled': True
                    }
                ])
    if disks_list == []:
        if select_flag == True:
            disks_list.append((-1, {
                'label': _('None available'),
                'disabled': True
            }))
        else:
            disks_list.append((-1, _('None available')))
    else:
        if select_flag == False and all_disabled:
            disks_list.insert(0, [-1, _('None available')])

    return disks_list
Beispiel #33
0
def img_ajax_get_all_table(request, img_type):
    """
    Ajax view fetching image list.
    all         = ALL
    private     = My images
    public      = Public
    1 ... x     = Group
    """
    if request.method == 'GET':
        rest_data = prep_data(
            {
                'images_private': ('user/system_image/get_list/', {
                    'access': image_access['private']
                }),
                'images_public': ('user/system_image/get_list/', {
                    'access': image_access['public']
                }),
                'images_group': ('user/system_image/get_list/', {
                    'access': image_access['group']
                })
            }, request.session)
        list_images = []

        if img_type == 'private' or img_type == 'all':
            for item in rest_data['images_private']:
                if item['state'] != image_states['ok']:
                    continue
                item['stateName'] = image_states_reversed[item['state']]
                item['type'] = _('private')
                item['size'] = filesizeformatmb(item['size'])
                list_images.append(item)

        if img_type == 'public' or img_type == 'all':
            for item in rest_data['images_public']:
                if item['state'] != image_states['ok']:
                    continue
                item['stateName'] = image_states_reversed[item['state']]
                item['type'] = _('public')
                item['size'] = filesizeformatmb(item['size'])
                list_images.append(item)

        if img_type == 'all':
            for group in rest_data['images_group']:
                for item in group['images']:
                    if item['state'] != image_states['ok']:
                        continue
                    item['stateName'] = image_states_reversed[item['state']]
                    item['size'] = unicode(filesizeformatmb(item['size']))
                    item['type'] = _('group ') + group['name']
                    list_images.append(item)

        if img_type != 'public' and img_type != 'private' and img_type != 'all':
            for group in rest_data['images_group']:
                if (img_type == str(group['group_id'])):
                    for item in group['images']:
                        if item['state'] != image_states['ok']:
                            continue
                        item['stateName'] = image_states_reversed[
                            item['state']]
                        item['size'] = unicode(filesizeformatmb(item['size']))
                        item['type'] = _('group ') + group['name']
                        list_images.append(item)

        if img_type == 'private':
            for group in rest_data['images_group']:
                for item in group['images']:
                    if img_type == 'private' and item[
                            'user_id'] == request.session['user'].user_id:
                        if item['state'] != image_states['ok']:
                            continue
                        item['stateName'] = image_states_reversed[
                            item['state']]
                        item['size'] = unicode(filesizeformatmb(item['size']))
                        item['type'] = _('group ') + group['name']
                        list_images.append(item)

        return messages_ajax.success(list_images)
Beispiel #34
0
def img_ajax_get_all_table(request, img_type):
    """
    Ajax view fetching image list.
    all         = ALL
    private     = My images
    public      = Public
    1 ... x     = Group
    """
    if request.method == "GET":
        rest_data = prep_data(
            {
                "images_private": ("user/system_image/get_list/", {"access": image_access["private"]}),
                "images_public": ("user/system_image/get_list/", {"access": image_access["public"]}),
                "images_group": ("user/system_image/get_list/", {"access": image_access["group"]}),
            },
            request.session,
        )
        list_images = []

        if img_type == "private" or img_type == "all":
            for item in rest_data["images_private"]:
                if item["state"] != image_states["ok"]:
                    continue
                item["stateName"] = image_states_reversed[item["state"]]
                item["type"] = _("private")
                item["size"] = filesizeformatmb(item["size"])
                list_images.append(item)

        if img_type == "public" or img_type == "all":
            for item in rest_data["images_public"]:
                if item["state"] != image_states["ok"]:
                    continue
                item["stateName"] = image_states_reversed[item["state"]]
                item["type"] = _("public")
                item["size"] = filesizeformatmb(item["size"])
                list_images.append(item)

        if img_type == "all":
            for group in rest_data["images_group"]:
                for item in group["images"]:
                    if item["state"] != image_states["ok"]:
                        continue
                    item["stateName"] = image_states_reversed[item["state"]]
                    item["size"] = unicode(filesizeformatmb(item["size"]))
                    item["type"] = _("group ") + group["name"]
                    list_images.append(item)

        if img_type != "public" and img_type != "private" and img_type != "all":
            for group in rest_data["images_group"]:
                if img_type == str(group["group_id"]):
                    for item in group["images"]:
                        if item["state"] != image_states["ok"]:
                            continue
                        item["stateName"] = image_states_reversed[item["state"]]
                        item["size"] = unicode(filesizeformatmb(item["size"]))
                        item["type"] = _("group ") + group["name"]
                        list_images.append(item)

        if img_type == "private":
            for group in rest_data["images_group"]:
                for item in group["images"]:
                    if img_type == "private" and item["user_id"] == request.session["user"].user_id:
                        if item["state"] != image_states["ok"]:
                            continue
                        item["stateName"] = image_states_reversed[item["state"]]
                        item["size"] = unicode(filesizeformatmb(item["size"]))
                        item["type"] = _("group ") + group["name"]
                        list_images.append(item)

        return messages_ajax.success(list_images)