def showMain():
    """Render the main page contain all categories and most recent items
        GET /
    """
    # Check if user is authenticated
    token = request.cookies.get("token")
    expire_time = request.cookies.get("expire_time")
    user_data = None
    if token:
        user_data = validate_token(token, expire_time)

    # SQL model method which retrieve all categories.
    categories = Category.get_all(session, order_by=Category.name, ascending=True)
    # SQL model method which retrieve most recent 10 items.
    items = Item.get_recent(session, limit=10)
    # Show user a different view which contains 'add item' link
    #     if user_data is not None, which means an authenticated user.
    return render_template("main.html", categories=categories, items=items, user=user_data)
def showMain():
    """Render the main page contain all categories and most recent items
        GET /
    """
    # Check if user is authenticated
    token = request.cookies.get('token')
    expire_time = request.cookies.get('expire_time')
    user_data = None
    if token:
        user_data = validate_token(token, expire_time)

    # SQL model method which retrieve all categories.
    categories = Category.get_all(session, order_by=Category.name,
                                  ascending=True)
    # SQL model method which retrieve most recent 10 items.
    items = Item.get_recent(session, limit=10)
    # Show user a different view which contains 'add item' link
    #     if user_data is not None, which means an authenticated user.
    return render_template('main.html', categories=categories,
                           items=items, user=user_data)