def get( self, request, slug ): if request.user.is_anonymous(): return redirect('/') request.context_dict[ 'portfolio' ] = Portfolio( slug ) request.context_dict[ 'form' ] = Portfolio.create_holding() return render( request, 'portfolio/holding_add.html', request.context_dict )
def get( self, request, game_id ): if request.user.is_anonymous(): return redirect('/') request.context_dict['game'] = get_game( game_id ) request.context_dict['form'] = Portfolio.create_holding() print( request.context_dict['game'] ) return render( request, 'game/manage.html', request.context_dict )
def post( self, request, slug ): form = Portfolio.create_holding( request.POST ) portfolio = Portfolio( slug, request.POST['date'] ) if form.is_valid(): form_data = form.cleaned_data form_data['date'] = request.POST['date'] form_data['price'] = portfolio.stock_by_date( form_data['symbol'] ).close portfolio.add_holding( form_data ) return redirect( '/portfolio/{}/manage'.format( slug ) ) else: request.context_dict[ 'form' ] = form return render( request, 'portfolio/holding_add.html', request.context_dict )
def post( self, request, game_id ): request.context_dict['game'] = get_game( game_id ) form = Portfolio.create_holding( request.POST ) request.context_dict[ 'form' ] = form if form.is_valid(): form_data = form.cleaned_data form_data['date'] = str( request.context_dict['game'].current_date ) form_data['price'] = request.context_dict['game'].portfolio.stock_by_date( form_data['symbol'] ).close if form_data['price'] * form_data["shares"] <= request.context_dict["game"].balance: results = request.context_dict['game'].portfolio.add_holding( form_data ) request.context_dict['game'].balance -= results request.context_dict['game'].save( update_fields=["balance"] ) return redirect( '/game/{}/manage'.format( game_id ) ) else: errors = request.context_dict[ 'form' ]._errors.setdefault("shares", ErrorList()) errors.append(u"You cannot afford that") return render( request, 'game/manage.html', request.context_dict ) else: return render( request, 'game/manage.html', request.context_dict )