Ejemplo n.º 1
0
def promotion_detail_friends_table_ajax(request,pk,*kwargs):
    json = MyJson(request)
    promotion = Promotion.objects.get(pk=pk)
    user = Login(request).getUser()
    field_order = ''
	
    users = user.friends.filter(active=True).exclude(pk=user.pk)
	
    if request.POST.get('qtype',None) is not None:
        if request.POST.get('qtype',None) == 'name':
            users = users.filter( name__icontains= request.POST.get('query','') )
        elif request.POST.get('qtype',None) == 'groups':
            users = users.filter(
                custom_user_friends_groups__user = user,
                custom_user_friends_groups__name__icontains = request.POST.get('query','')
            )
    if request.POST.get('sortorder','') != 'asc':
        field_order = '-'
    if 'sortname' in request.POST:
        if request.POST.get('sortname','') == 'name' :
            users = users.order_by(field_order+'name')
		
    else:
        users = users.order_by(field_order+'name')
    users = users.all()

    print dir(user)

    paginator = Paginator(users.all(), request.POST.get('rp',15))
    try:
        page = int(request.POST.get('page',1))
    except:
        page = 1

    if page > paginator.num_pages:
        page = paginator.num_pages
    if page < 1:
        page = 1
    rows = paginator.page(page)
    data = {
        'page': page,
        'total':users.count(),
        'rows':[],
    }
	
    for o in rows:
        data['rows'].append({
            'id': o.pk,
            'cell':{
                'photo':o.getTablePhoto(),
                'name':o.name,
                'groups':o.getGroupsNamesByUser(user) ,
                'idInvited': 'Yes' if o.isInvited(user,promotion) else 'No',
            },
			
        })
    return json.transformeJsonRequest(data)
Ejemplo n.º 2
0
def promotion_detail_groups_table_ajax(request,pk,*kwargs):
	json = MyJson(request)
	promotion = Promotion.objects.get(pk=pk)
	user = Login(request).getUser()
	field_order = ''
	
	users = user.friends.all()
	
	promotions = promotion.promotionGroups.filter(users__in = users).exclude(users__in = [user])
	
	promotions = promotions.distinct()
	paginator = Paginator(promotions.all(), request.POST.get('rp',15))
	try:
		page = int(request.POST.get('page',1))
	except:
		page = 1
		
	if page > paginator.num_pages:
		page = paginator.num_pages
	if page < 1:
		page = 1
	rows = paginator.page(page)
	data = {
		'page': page,
		'total':promotions.count(),
		'rows':[],
	}
	
	for o in rows:
		data['rows'].append({
			'id': o.pk,
			'cell':{
				'createDate':str(o.create_date),
				'creator':o.user.name,
				'yourFriends':o.getFriendsByUser(user,users) ,
				'friendsLeft': o.promotion.elements_number-o.users.count(),
			},
			
		})
	return json.transformeJsonRequest(data)