def format_and_save_contact(user_id, list_data):
    contact_data_list = []
    utils = Utils()
    for i, d in enumerate(list_data):
        fields_list = []
        contact_data = {
            'name': '',
            'is_vendor': False,
            'is_customer': True,
            'contact_type': 'I',
            'profile_image': '',
            'user_id': user_id,
            'company_id': 0,
            'parent_id': 0,
            'fields': []
        }
        contact_data['profile_image'] = utils.get_profile_image(i)
        for key in d:
            value = utils.comma_sep_value(d[key])
            if key == 'name':
                contact_data['name'] = value
            else:
                temp_dic = {'id': key, 'value': value}
                fields_list.append(temp_dic)
        contact_data['fields'] = fields_list
        contact_data_list.append(contact_data)
        save_in_db(contact_data)
    return True
def index(request):

    utils = Utils()
    user_id = request.user.id
    data_list = []
    result_dic = {
        'fields': [],
        'companies': [],
        'tags': [],
        'profile_image': '/static/front/images/profile.png'
    }
    contact_tabs = ContactTab.objects.all().filter(
        user_id=user_id).order_by('display_weight')
    try:
        c = Contact.objects.all().filter(user_id=user_id).count()
    except Contact.DoesNotExist:
        c = 1
    result_dic['profile_image'] = utils.get_profile_image(c)

    if contact_tabs is not None:
        for o in contact_tabs:
            default_data_fields = ContactFields.objects.all().filter(
                id__in=o.fields).order_by('display_weight')
            if default_data_fields is not None:
                field_list = []
                for f in default_data_fields:
                    if f.type == 'checkbox' or f.type == 'radio' or f.type == 'dropdown':
                        checkbox = []
                        for d in f.default_values:
                            default_dic = {'value': d, 'checked': False}
                            checkbox.append(default_dic)
                        default_value = checkbox
                    else:
                        default_value = f.default_values
                    field_dic = {
                        'id': f.id,
                        'name': f.label,
                        'type': f.type,
                        'display_position': f.display_position,
                        'default_values': default_value
                    }
                    field_list.append(field_dic)

                data_list.append({
                    'name': o.name,
                    'id': o.id,
                    'display_weight': o.display_weight,
                    'is_default': o.is_default,
                    'fields': field_list
                })
        result_dic['fields'] = data_list
    else:
        default_data_fields = {}
    return HttpResponse(json.dumps(result_dic),
                        content_type="application/json")