Privacy Policy page + Chat API key fix
- /privacy page for Google Play (GDPR compliant) - Fixed Anthropic API key mismatch in .env - Chat returns AI responses again Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
54
apps/tasks/app/privacy/page.tsx
Normal file
54
apps/tasks/app/privacy/page.tsx
Normal file
@@ -0,0 +1,54 @@
|
||||
export default function PrivacyPage() {
|
||||
return (
|
||||
<div style={{ maxWidth: 800, margin: "0 auto", padding: "40px 24px", fontFamily: "system-ui" }}>
|
||||
<h1 style={{ fontSize: 28, fontWeight: "bold", marginBottom: 24 }}>Privacy Policy</h1>
|
||||
<p style={{ color: "#666", marginBottom: 16 }}>Last updated: March 29, 2026</p>
|
||||
|
||||
<h2 style={{ fontSize: 20, fontWeight: 600, marginTop: 32, marginBottom: 12 }}>1. Information We Collect</h2>
|
||||
<p>Task Team collects the following information when you create an account:</p>
|
||||
<ul style={{ paddingLeft: 24, marginTop: 8 }}>
|
||||
<li>Email address</li>
|
||||
<li>Name</li>
|
||||
<li>Phone number (optional)</li>
|
||||
</ul>
|
||||
<p style={{ marginTop: 8 }}>We also collect task data, goals, and settings you create within the app.</p>
|
||||
|
||||
<h2 style={{ fontSize: 20, fontWeight: 600, marginTop: 32, marginBottom: 12 }}>2. How We Use Your Data</h2>
|
||||
<p>Your data is used exclusively to provide the Task Team service:</p>
|
||||
<ul style={{ paddingLeft: 24, marginTop: 8 }}>
|
||||
<li>Task management and organization</li>
|
||||
<li>AI-powered planning assistance</li>
|
||||
<li>Calendar and goal tracking</li>
|
||||
<li>Team collaboration features</li>
|
||||
<li>Push notifications for task reminders</li>
|
||||
</ul>
|
||||
|
||||
<h2 style={{ fontSize: 20, fontWeight: 600, marginTop: 32, marginBottom: 12 }}>3. Data Storage</h2>
|
||||
<p>Your data is stored on secure servers in the European Union (Hetzner, Germany). We use PostgreSQL databases with encrypted connections and regular backups.</p>
|
||||
|
||||
<h2 style={{ fontSize: 20, fontWeight: 600, marginTop: 32, marginBottom: 12 }}>4. Third-Party Services</h2>
|
||||
<ul style={{ paddingLeft: 24, marginTop: 8 }}>
|
||||
<li><strong>Anthropic Claude AI</strong> — for AI chat and planning features (messages are processed but not stored by Anthropic)</li>
|
||||
<li><strong>Google OAuth</strong> — for optional Google login</li>
|
||||
<li><strong>Expo</strong> — for push notifications</li>
|
||||
</ul>
|
||||
|
||||
<h2 style={{ fontSize: 20, fontWeight: 600, marginTop: 32, marginBottom: 12 }}>5. Data Sharing</h2>
|
||||
<p>We do not sell, trade, or share your personal data with third parties. Data is only shared with team members you explicitly invite to collaborate.</p>
|
||||
|
||||
<h2 style={{ fontSize: 20, fontWeight: 600, marginTop: 32, marginBottom: 12 }}>6. Your Rights (GDPR)</h2>
|
||||
<p>You have the right to:</p>
|
||||
<ul style={{ paddingLeft: 24, marginTop: 8 }}>
|
||||
<li>Access your data</li>
|
||||
<li>Export your data</li>
|
||||
<li>Delete your account and all data</li>
|
||||
<li>Modify your personal information</li>
|
||||
</ul>
|
||||
|
||||
<h2 style={{ fontSize: 20, fontWeight: 600, marginTop: 32, marginBottom: 12 }}>7. Contact</h2>
|
||||
<p>IT Enterprise Solution s.r.o.<br/>Email: apps@it-enterprise.cz<br/>Web: https://it-enterprise.cz</p>
|
||||
|
||||
<p style={{ marginTop: 32, color: "#999", fontSize: 14 }}>© 2026 IT Enterprise Solution s.r.o. All rights reserved.</p>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
11
backup.sh
11
backup.sh
@@ -1,4 +1,5 @@
|
||||
#!/bin/bash
|
||||
cd /opt/task-team || exit 1
|
||||
BACKUP_DIR="/opt/task-team/backups"
|
||||
DATE=$(date +%Y%m%d_%H%M)
|
||||
PGDUMP="/usr/lib/postgresql/18/bin/pg_dump"
|
||||
@@ -10,13 +11,13 @@ PGPASSWORD="TaskTeam2026!" $PGDUMP -h 10.10.10.10 -U taskteam -d taskteam -F c -
|
||||
if [ $? -eq 0 ]; then
|
||||
# Compress
|
||||
gzip -f "$BACKUP_DIR/taskteam_$DATE.dump" 2>/dev/null
|
||||
echo "$(date '+%Y-%m-%d %H:%M:%S') OK: taskteam_$DATE.dump.gz"
|
||||
echo "$(date "+%Y-%m-%d %H:%M:%S") OK: taskteam_$DATE.dump.gz"
|
||||
else
|
||||
echo "$(date '+%Y-%m-%d %H:%M:%S') FAIL: pg_dump exited with error"
|
||||
echo "$(date "+%Y-%m-%d %H:%M:%S") FAIL: pg_dump exited with error"
|
||||
fi
|
||||
|
||||
# Keep last 7 daily backups
|
||||
find $BACKUP_DIR -name "*.dump.gz" -mtime +7 -delete
|
||||
find $BACKUP_DIR -name "*.dump" -mtime +7 -delete
|
||||
# Keep last 14 daily backups
|
||||
find $BACKUP_DIR -name "*.dump.gz" -mtime +14 -delete
|
||||
find $BACKUP_DIR -name "*.dump" -mtime +14 -delete
|
||||
|
||||
ls -lh $BACKUP_DIR/ | tail -5
|
||||
|
||||
BIN
backups/releases/android/task-team-v1.0.0.apk
Normal file
BIN
backups/releases/android/task-team-v1.0.0.apk
Normal file
Binary file not shown.
BIN
backups/taskteam_20260329_2147.dump.gz
Normal file
BIN
backups/taskteam_20260329_2147.dump.gz
Normal file
Binary file not shown.
@@ -5,7 +5,7 @@ set -euo pipefail
|
||||
|
||||
VERSION=${1:-$(date +%Y%m%d_%H%M)}
|
||||
PLATFORM=${2:-android}
|
||||
FILE=$3
|
||||
FILE=${3:-}
|
||||
|
||||
if [ -z "${FILE:-}" ]; then
|
||||
echo "Usage: upload-release.sh <version> <platform> <file>"
|
||||
|
||||
Reference in New Issue
Block a user