2018-11-01 14:25:47 +00:00
#!/usr/bin/env python3
#Curious Greg - Curious Cat to Mastodon crossposter
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
2018-11-02 02:35:40 +00:00
import requests , sqlite3 , json
2018-11-01 14:25:47 +00:00
from mastodon import Mastodon
2018-11-02 07:46:49 +00:00
from flask import Flask , render_template
2018-11-01 14:25:47 +00:00
2018-11-02 02:35:40 +00:00
cfg = json . load ( open ( " meta.json " ) )
2018-11-01 14:25:47 +00:00
db = sqlite3 . connect ( " database.db " )
c = db . cursor ( )
2018-11-01 15:17:02 +00:00
c . execute ( " CREATE TABLE IF NOT EXISTS `data` (username VARCHAR NOT NULL, appid VARCHAR NOT NULL, appsecret VARCHAR NOT NULL, secret VARCHAR NOT NULL, latest_post VARCHAR) " )
2018-11-02 02:59:29 +00:00
app = Flask ( cfg [ ' name ' ] )
2018-11-02 03:13:08 +00:00
app . secret_key = cfg [ ' flask_key ' ]
2018-11-02 02:59:29 +00:00
2018-11-02 03:13:08 +00:00
@app.route ( ' / ' )
def main ( ) :
2018-11-02 07:46:49 +00:00
return render_template ( " landing_page.html " )
2018-11-02 02:59:29 +00:00
@app.route ( ' /internal/auth_a ' )
def internal_auth_a ( ) :
2018-11-02 07:52:33 +00:00
# client_id, client_secret = Mastodon.create_app(cfg['name'],
# api_base_url=instance_url,
# scopes="write:statuses",
# website=cfg['website'])
client_id = " abc "
client_secret = " 123 "
client_info = {
" client_id " : client_id ,
" client_secret " : client_secret ,
" scopes " : " write:statuses " ,
" website " : cfg [ ' website ' ]
}
return ( json . dumps ( client_info ) )