Exemplo n.º 1
0
    def update_persons(self, start, batch_size = 100, verbosity = 1):
        '''Updates persons from etvnet.'''
        
        cred = Credentials(ETVNET_PERSONS_PUBLIC_KEY, ETVNET_PERSONS_PRIVATE_KEY)
        conn = etvIntegrationConnection(cred, ETVNET_PERSONS_ENDPOINT)
        result = conn.make_request(
            'GET', '/integration/person_list.json', args={'start': start, 'batch_size': batch_size, 'type': 'person'}
        )
        data = simplejson.load(result)

        result = None
        if data:
            for p in data:
                try:
                    person = Person.objects.get(external_ident=p.get('id'))
                except Person.DoesNotExist:
                    person = Person(external_ident=p.get('id'))
                person.first_name = p.get('first_name')
                person.last_name = p.get('last_name')
                person.name = p.get('name')
                person.birthday = p.get('birthday')
                person.death = p.get('death')
                person.is_available = p.get('is_approved')
                person.updated = result = p.get('updated')
                person.url = p.get('url')

                if verbosity >= 2:
                    print(
                        "id: %s name: %s (%s)" \
                        % (p.get('id'), p.get('name').encode('utf-8'), person.pk and 'updated' or 'created'))

                person.save()

        return result
Exemplo n.º 2
0
def index(request):
    today = date.today()
    sDate = str(today.year) + '-01-01'
    eDate = str(today.year) + '-' + str(today.month) + '-' + str(today.day)

    sM = 1
    eM = today.month

    if request.GET.get('range'):
        dates = request.GET.get('range').split(sep=" - ")
        sDate = dates[0]
        eDate = dates[1]
        sM = int(sDate.split('-')[1])
        eM = int(eDate.split('-')[1])

    if request.user.person:
        person = request.user.person
    else:
        person = Person()
        person.name = request.user.username
        person.owner = request.user
        person.save()

        request.user.person = person
        request.user.save()

    months = []
    for i in range(sM, eM + 1):
        months.append(getMonthText(i))

    # get working
    wSales = graphWork(request, Sale, sDate, eDate, months)
    wSalesReturns = graphWork(request, SalesReturn, sDate, eDate, months)
    wPurchases = graphWork(request, Purchase, sDate, eDate, months)
    wPurchasesReturns = graphWork(request, PurchasesReturn, sDate, eDate,
                                  months)
    wExpenses = graphWork(request, Expense, sDate, eDate, months)

    args = {
        'nav': 'charts',
        'months': months,
        'sales': wSales['list'],
        'total_sales': wSales['total'],
        'sales_returns': wSalesReturns['list'],
        'total_sales_returns': wSalesReturns['total'],
        'purchases': wPurchases['list'],
        'total_purchases': wPurchases['total'],
        'purchases_returns': wPurchasesReturns['list'],
        'total_purchases_returns': wPurchasesReturns['total'],
        'expenses': wExpenses['list'],
        'total_expenses': wExpenses['total'],
        'startDate': sDate,
        'endDate': eDate,
        'range': sDate + ' - ' + eDate,
    }

    return render(request, 'charts/index.html', args)
Exemplo n.º 3
0
def after_user_activation(sender, user, request, **kwargs):
    person = Person()
    person.owner = user
    person.name = user.username
    person.save()
    groups = Group.objects.all()
    if groups:
        for group in groups:
            if group.name.find('Owner') != -1 or group.name.find('owner') != -1:
                user.groups.add(group)
    user.person = person
    user.save()