def AllSymbols(): db = DbConnection.getInstance() available_symbols = db.get_full_symbols() json_strings = {} json_other = {} for symbol in available_symbols: symbol_info = { "symbol": symbol, "width": "100%", "height": "100%", "colorTheme": "dark", "isTransparent": False, "locale": "en" } tech_info = { "interval": "1D", "width": "100%", "colorTheme": "dark", "isTransparent": False, "height": 450, "symbol": symbol, "showIntervalTabs": "true", "locale": "en" } json_strings[symbol] = json.dumps(symbol_info) json_other[symbol] = json.dumps(tech_info) return render_template('info/all_symbols.html', available_symbols=available_symbols, symbol_info=json_strings, tech_info=json_other)
def EditStrategies(): db = DbConnection.getInstance() user = g.user if user is not None: user.strategies = db.get_user_strategies(user) all_strategies = db.get_strategies() all_symbols = db.get_symbols() if request.method == "POST": action = request.form['button'] print(action) if action == 'Delete': print(request.form) db.delete_user_strategy(request.form['strat_id']) flash("Deleted Successfully") user.strategies = db.get_user_strategies(user) elif action == 'Update': db.update_user_strategy(request.form['strat_id'], request.form) flash("Update Success") user.strategies = db.get_user_strategies(user) return render_template('edit_strategies.html', strategies=user.strategies, available_strategies=all_strategies, available_symbols=all_symbols) else: return render_template('index.html')
def AddStrategy(): db = DbConnection.getInstance() user = g.user print(request) if user is not None: user.strategies = db.get_user_strategies(user) all_strategies = db.get_strategies() all_symbols = db.get_symbols() if request.method == 'GET': return render_template('edit_strategies.html', strategies=user.strategies, available_strategies=all_strategies, available_symbols=all_symbols) elif request.method == 'POST': if not user.check_strategy_exists(request.form): flash('Success!') db.add_strategy(request.form, user) user.strategies = db.get_user_strategies(user) return render_template('edit_strategies.html', strategies=user.strategies, available_strategies=all_strategies, available_symbols=all_symbols) else: flash("Already Added That") return render_template('edit_strategies.html', strategies=user.strategies, available_strategies=all_strategies, available_symbols=all_symbols)
def login(): if request.method == 'POST': email = request.form['email'] password = request.form['password'] db = DbConnection.getInstance() error = None user = db.get_user_by_email(email) user['password'] = password user = User(user) if user is None: error = 'Incorrect email.' elif not user.login(password): error = 'Incorrect password.' print(error) if error is None: print("Successful login!!") session.clear() session['user_id'] = user.id g.user = user user_info = db.get_user_strategies(user) if user_info is not None: return render_template('user_strategies.html', strategies=user_info) else: return render_template('edit_strategies.html') flash(error) return render_template('auth/login.html')
def __init__(self): print("Initializing Checker") if self.is_weekday(): db = DbConnection.getInstance() all_poss = db.get_all_user_strategies() self.strategies = db.get_strategies() today = datetime.combine(date.today(), datetime.min.time()) week_before = datetime.combine( date.today() + relativedelta(weeks=-1), datetime.min.time()) month_before = datetime.combine( date.today() + relativedelta(months=-1), datetime.min.time()) need_checked = [] for user_strat in all_poss: if user_strat['interim'] == 'daily': need_checked.append(user_strat) elif user_strat['interim'] == 'weekly': if user_strat['last_check'] >= week_before: need_checked.append(user_strat) elif user_strat['interim'] == 'monthly': if user_strat['last_check'] >= month_before: need_checked.append(user_strat) print("Num checks needed ", len(need_checked)) self.check_me = need_checked else: print('Its the Weekend! No trading today!') self.strategies = [] self.check_me = []
def load_logged_in_user(): user_id = session.get('user_id') print(user_id) if user_id is None: g.user = None else: g.user = User(DbConnection.getInstance().get_user_by_id(user_id)) print(g.user.username)
def MailRequest(): if 'user_id' not in session: return 'fail' user_id = session['user_id'] db = DbConnection.getInstance() user = db.get_user_by_id(user_id) msg = Message('Hello', sender='*****@*****.**', recipients=user['email']) msg.body = "Hello Flask message sent from Flask-Mail" mail.send(msg) return "Sent"
def ViewStrategies(): user = g.user if user is not None: strategies = DbConnection.getInstance().get_user_strategies(user) if strategies is not None: return render_template('user_strategies.html', strategies=strategies) else: flash('Please add some strategies in order to view them') return render_template('edit_strategies.html') else: flash('Please login to view strategies') return render_template('auth/login.html')
def register(): db = DbConnection.getInstance() if request.method == 'POST': user = User(request.form) if db.check_existing_user(user) != None: error = 'Email {} is already registered.'.format(user.email) flash(error) return render_template('auth/register.html') if user.error is None: user_id = db.insert_new_user(user) session.clear() session['user_id'] = user_id return render_template('edit_strategies.html') available_symbols = db.get_symbols() available_strategies = db.get_strategies() return render_template('auth/register.html', available_strategies=available_strategies, available_symbols=available_symbols)
def AllStrategies(): db = DbConnection.getInstance() available_symbols = db.get_full_symbols() return render_template('info/all_strategies.html', available_symbols=available_symbols)