Esempio n. 1
0
def snapshot(save=True):
    stocks = polling()
    from models import Portfolio
    portfolio = Portfolio(stocks)
    if save:
        portfolio.save()
    return portfolio
Esempio n. 2
0
def snapshot(save=True):
    stocks = polling()
    from models import Portfolio
    portfolio = Portfolio(stocks)
    if save:
        portfolio.save()
    return portfolio
Esempio n. 3
0
def buy(request):
    if not request.session.get('id'):
        return redirect('login')

    if request.method == 'POST':
        if not request.POST.get('symbol'):
            return apology('Symbol field cannot be empty')
        if not request.POST.get('quantity'):
            return apology('Quantity field cannot be empty')

        symbol = request.POST.get('symbol').upper()
        quantity = int(request.POST.get('quantity'))
        stock_info = lookup(symbol)
        if not stock_info:
            return apology("No such symbol exists")

        user_info = Users.objects.filter(id=request.session.get('id'))
        if not user_info:
            return apology("Your session is invalid")

        available_cash = user_info[0].cash
        if available_cash >= quantity * stock_info.get('price'):
            user_portfolio = Portfolio.objects.filter(
                id=request.session.get('id')).filter(symbol=symbol)
            if user_portfolio:
                user_portfolio[0].price += stock_info.get('price') * quantity
                user_portfolio[0].quantity += quantity
                user_portfolio[0].save()
            else:
                user_portfolio = Portfolio(
                    id=request.session.get('id'),
                    symbol=symbol,
                    price=stock_info.get('price') * quantity,
                    quantity=quantity,
                    stock_name=stock_info.get('name'),
                )
                user_portfolio.save()
            user_info[0].cash -= quantity * stock_info.get('price') * quantity
            user_info[0].save()
            return redirect('index')
        else:
            return apology("You do not have enough cash")
    else:
        return render(request, 'app/buy.html')
Esempio n. 4
0
 def mokarPortfolio(self):
     iDescricao1= 'GitHub'
     iPortfolio1= Portfolio(descricao= iDescricao1)
     iPortfolio1.save()
     
     iDescricao2= 'LinkedIn'
     iPortfolio2= Portfolio(descricao= iDescricao2)
     iPortfolio2.save()
     
     iDescricao3= 'CoderWall'
     iPortfolio3= Portfolio(descricao= iDescricao3)
     iPortfolio3.save()
     
     iDescricao4= 'SitePessoal'
     iPortfolio4= Portfolio(descricao= iDescricao4)
     iPortfolio4.save()
     
     iDescricao5= 'SiteEmpresa'
     iPortfolio5= Portfolio(descricao= iDescricao5)
     iPortfolio5.save()
Esempio n. 5
0
def register(request):
    uname = request.POST["username"]
    passw = request.POST["password"]

    if request.POST["username"] == "" or request.POST["password"] == "":
        return render_to_response('index.html',
            {'error': 'You did not fill out the form completely'})
    
    if User.objects.filter(username = request.POST["username"]).count() != 0:
        return render_to_response('index.html',
            {'error':  'There is already a user with this username'})
    
    User.objects.create_user(uname, '', passw)
    u = auth.authenticate(username=uname, password=passw)
    auth.login(request, u)
    
    p = Portfolio(user = u, balance = 10000, value = 0)
    
    p.save()
    
    return HttpResponseRedirect('/')