text: from flask import render_template, flash, redirect, request, url_for
  from app import db
  from app.auth.forms import LoginForm, RegistrationForm
  from app.auth.forms import ResetPasswordRequestForm, ResetPasswordForm
  from flask_login import current_user, login_user, logout_user
  from app.models import User
  from werkzeug.urls import url_parse
  from app.auth import bp
  from app.auth.email import send_password_reset_email
  
  
  @bp.route('/login', methods=['GET', 'POST'])
  def login():
          if current_user.is_authenticated:
                  return redirect(url_for('main.index'))
          form = LoginForm()
          if form.validate_on_submit():
                  user = User.query.filter_by(username=form.username.data).first()
                  if user is None or not user.check_password(form.password.data):
                          flash('Invalid username or password')
                          return redirect(url_for('auth.login'))
                  login_user(user, remember=form.remember_me.data)
                  next_page = request.args.get('next')
                  if not next_page or url_parse(next_page).netloc != '':
                          next_page = url_for('main.index')                
                  return redirect(next_page)
                  
                  # flash('Login requested for user {}, remember_me={}'.format(
                  #        form.username.data, form.remember_me.data))
                  #return redirect(url_for('index'))
          return render_template('auth/login.html', title='Sign In', form=form)
  
  @bp.route('/logout')
  def logout():
          logout_user()
          return redirect(url_for('main.index'))
  
  @bp.route('/register', methods=['GET', 'POST'])
  def register():
          if current_user.is_authenticated:
                  return redirect(url_for('main.index'))
          form = RegistrationForm()
          if form.validate_on_submit():
                  user = User(username=form.username.data, email=form.email.data)
                  user.set_password(form.password.data)
                  db.session.add(user)
                  db.session.commit()
                  flash('Congratulations, you are now a register user!')
                  return redirect(url_for('auth.login'))
          return render_template('auth/register.html', title='Register', form=form)
  
  
  @bp.route('/reset_password_request', methods=['GET', 'POST'])
  def reset_password_request():
          if current_user.is_authenticated:
                  return redirect(url_for('main.index'))
          form = ResetPasswordRequestForm()
          if form.validate_on_submit():
                  user = User.query.filter_by(email=form.email.data).first()
                  if user:
                          send_password_reset_email(user)
                  flash('Check your email for the instructions to reset your password')
                  return redirect(url_for('auth.login'))
          return render_template('auth/reset_password_request.html', title='Reset Password', form=form)
  
  @bp.route('/reset_password/<token>', methods=['GET', 'POST'])
  def reset_password(token):
      if current_user.is_authenticated:
          return redirect(url_for('main.index'))
      user = User.verify_reset_password_token(token)
      if not user:
          return redirect(url_for('main.index'))
      form = ResetPasswordForm()
      if form.validate_on_submit():
          user.set_password(form.password.data)
          db.session.commit()
          flash('Your password has been reset.')
          return redirect(url_for('auth.login'))
      return render_template('auth/reset_password.html', form=form)
                                  
  # from app import app
  # from flask import render_template
  
  # @app.route('/')
  # @app.route('/index')
  
  # def index():
  # #        return "Hello, World!"
  # 	user = {'username': 'Asad'}
  #         return render_template('index.html', title='Home', user=user)
  # 	return '''
  # <html>
  # <head>
  # <title> Home Page - Microblog </title>
  # </head>
  # <body>
  # <h1>Hello, '''+user['username']+'''!</h1>
  # </body>
  # </html>'''
  	
  