Files
html/api/opus-arch-productivity.php
opus 6931d33a7d
Some checks failed
WEVAL NonReg / nonreg (push) Has been cancelled
V39 architect final: 7 remaining R&D caps wired (4/9/10/11/13/15/16) + doctrines 94-100
2026-04-17 19:26:56 +02:00

49 lines
2.1 KiB
PHP

<?php
// opus-arch-productivity.php - Cap 13 (Doctrine 98)
header('Content-Type: application/json');
$action = $_GET['action'] ?? 'status';
$services = [
'gmail' => ['oauth_token_env'=>'GMAIL_OAUTH_TOKEN', 'api'=>'https://gmail.googleapis.com/gmail/v1'],
'drive' => ['oauth_token_env'=>'GOOGLE_OAUTH_TOKEN', 'api'=>'https://www.googleapis.com/drive/v3'],
'slack' => ['token_env'=>'SLACK_BOT_TOKEN', 'api'=>'https://slack.com/api'],
'telegram' => ['token_env'=>'TELEGRAM_BOT_TOKEN', 'api'=>'https://api.telegram.org'],
];
if ($action === 'status') {
$status = [];
$secrets_lines = @file('/etc/weval/secrets.env');
foreach ($services as $name => $svc) {
$env = $svc['oauth_token_env'] ?? $svc['token_env'];
$has = false;
foreach ($secrets_lines ?? [] as $line) {
if (strpos($line, $env . '=') === 0) { $has = true; break; }
}
$status[$name] = $has ? 'configured' : 'missing_token';
}
echo json_encode(['ok'=>true, 'services'=>$services, 'status'=>$status]); exit;
}
if ($action === 'gmail_draft') {
$to = $_POST['to'] ?? '';
$subject = $_POST['subject'] ?? '';
$body = $_POST['body'] ?? '';
// Save to local drafts instead of sending (doctrine 69)
$drafts = '/opt/wevads/vault/drafts';
@mkdir($drafts, 0755, true);
$file = $drafts . '/gmail-draft-' . time() . '.md';
file_put_contents($file, "# Gmail Draft (unsent)\nTo: $to\nSubject: $subject\n\n$body\n");
echo json_encode(['ok'=>true, 'draft_saved'=>basename($file), 'note'=>'Zero auto-send doctrine 69. Send manually.']);
exit;
}
if ($action === 'slack_post') {
$channel = $_POST['channel'] ?? '#general';
$text = $_POST['text'] ?? '';
$drafts = '/opt/wevads/vault/drafts';
@mkdir($drafts, 0755, true);
$file = $drafts . '/slack-draft-' . time() . '.md';
file_put_contents($file, "# Slack Draft (unsent)\nChannel: $channel\n\n$text\n");
echo json_encode(['ok'=>true, 'draft_saved'=>basename($file), 'note'=>'Zero auto-send doctrine 69. Send manually.']);
exit;
}
echo json_encode(['ok'=>false, 'actions'=>['status','gmail_draft','slack_post'], 'doctrine'=>'69 zero auto-send']);