from __future__ import print_function
from google.oauth2.credentials import Credentials
from googleapiclient.discovery import build
from googleapiclient.http import MediaInMemoryUpload
from google.oauth2.service_account import Credentials
from googleapiclient.discovery import build
from googleapiclient.http import MediaInMemoryUpload
from google.oauth2.service_account import Credentials
from zoom.staging.myapp.client.api.pigeon_cloud.pigeon_api import get_interview_name
from credentials import get_service


def upload_file(folder_id,file_name,file_text):
    # Drive APIサービスを構築
    service = get_service()

    # 作成するファイルの内容
    file_content = file_text.encode('utf-8')  # バイト配列に変換

    # アップロードするファイルの設定
    file_metadata = {
        'name': file_name,
        'parents': [folder_id]
    }
    media = MediaInMemoryUpload(file_content, mimetype='text/plain')

    # ファイルを作成
    file = service.files().create(
        body=file_metadata,
        media_body=media,
        fields='id, webViewLink'
    ).execute()

    #共有権限を誰でも閲覧可能に
    file_id = file.get('id')
    permission = {
        'type': 'anyone',  # ここで「誰でも」に設定
        'role': 'reader'   # 閲覧のみ可能
    }
    service.permissions().create(fileId=file_id, body=permission).execute()

    file_url = file.get('webViewLink')
        
    return file_url
