from flask import Flask, request, send_from_directory
import os
import requests
from dotenv import load_dotenv

# Replace "YOUR_API_KEY_HERE" with your actual API key.
# API_KEY = "YOUR_API_KEY_HERE"
# BASE_URL = "https://www.alphavantage.co/query"
# Load environment variables from .env file
load_dotenv()
app = Flask(__name__)


@app.route("/")
def index():
  return "Hello chatgptplugins! Your web application is working!"


@app.route('/stock', methods=['GET'])
def get_stock_data():
  API_KEY = os.getenv("ALPHA_VANTAGE_API_KEY")
  BASE_URL = os.getenv("ALPHA_VANTAGE_BASE_URL")
  print("BASE_URL: ", BASE_URL)
  symbol = request.args.get('symbol')

  params = {"function": "GLOBAL_QUOTE", "symbol": symbol, "apikey": API_KEY}

  response = requests.get(BASE_URL, params=params)
  return response.json()


@app.route('/.well-known/ai-plugin.json')
def serve_ai_plugin():
  return send_from_directory(".",
                             'ai-plugin.json',
                             mimetype='application/json')


@app.route('/openapi.yaml')
def serve_openapi_yaml():
  return send_from_directory('.', 'openapi.yaml', mimetype='text/yaml')


if __name__ == "__main__":
  host = os.getenv("FLASK_HOST", "0.0.0.0")
  port = int(os.getenv("FLASK_PORT", 5000))
  print("host: ", host)
  print(" port: ", port)
  app.run(host=host, port=port, debug=True)