| # publisher/account_manager.py | |
| from publisher.oauth.storage import load_tokens | |
| SUPPORTED = [ | |
| "youtube", | |
| "tiktok", | |
| "meta" | |
| ] | |
| def connected_accounts(user_id): | |
| accounts = [] | |
| for p in SUPPORTED: | |
| token = load_tokens(user_id, p) | |
| if token: | |
| accounts.append({ | |
| "platform": p, | |
| "token": token | |
| }) | |
| return accounts | |
| def choose_platforms(strategy, accounts): | |
| if strategy == "all": | |
| return accounts | |
| if strategy == "short_video": | |
| return [ | |
| a for a in accounts | |
| if a["platform"] in ["youtube", "tiktok", "meta"] | |
| ] | |
| return accounts[:1] |