Improve GDPR implementation
This commit is contained in:
421
frontend/src/pages/public/TermsOfServicePage.tsx
Normal file
421
frontend/src/pages/public/TermsOfServicePage.tsx
Normal file
@@ -0,0 +1,421 @@
|
||||
import React from 'react';
|
||||
import { useTranslation } from 'react-i18next';
|
||||
import { FileText, Calendar, AlertTriangle } from 'lucide-react';
|
||||
import { Card } from '../../components/ui';
|
||||
|
||||
export const TermsOfServicePage: React.FC = () => {
|
||||
const { t } = useTranslation();
|
||||
|
||||
const lastUpdated = '2025-10-15';
|
||||
|
||||
return (
|
||||
<div className="min-h-screen bg-gray-50 dark:bg-gray-900 py-12 px-4">
|
||||
<div className="max-w-4xl mx-auto">
|
||||
<div className="text-center mb-8">
|
||||
<div className="flex justify-center mb-4">
|
||||
<FileText className="w-16 h-16 text-primary-600" />
|
||||
</div>
|
||||
<h1 className="text-4xl font-bold text-gray-900 dark:text-white mb-2">
|
||||
{t('legal:terms.title', 'Terms of Service')}
|
||||
</h1>
|
||||
<div className="flex items-center justify-center gap-2 text-sm text-gray-600 dark:text-gray-400">
|
||||
<Calendar className="w-4 h-4" />
|
||||
<span>
|
||||
{t('legal:terms.last_updated', 'Last updated')}: {lastUpdated}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<Card className="p-8 prose prose-gray dark:prose-invert max-w-none">
|
||||
<section className="mb-8">
|
||||
<h2 className="text-2xl font-bold text-gray-900 dark:text-white mb-4">
|
||||
1. {t('legal:terms.section_1_title', 'Agreement to Terms')}
|
||||
</h2>
|
||||
<p className="text-gray-700 dark:text-gray-300 mb-4">
|
||||
By accessing or using Panadería IA ("the Platform", "our Service"), you agree to be
|
||||
bound by these Terms of Service ("Terms"). If you do not agree to these Terms, do not
|
||||
use the Platform.
|
||||
</p>
|
||||
<p className="text-gray-700 dark:text-gray-300">
|
||||
These Terms constitute a legally binding agreement between you ("User", "you", "your")
|
||||
and Panadería IA regarding your use of the Platform.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section className="mb-8">
|
||||
<h2 className="text-2xl font-bold text-gray-900 dark:text-white mb-4">
|
||||
2. {t('legal:terms.section_2_title', 'Description of Service')}
|
||||
</h2>
|
||||
<p className="text-gray-700 dark:text-gray-300 mb-4">
|
||||
Panadería IA provides a comprehensive bakery management platform that includes:
|
||||
</p>
|
||||
<ul className="list-disc pl-6 mb-4 text-gray-700 dark:text-gray-300 space-y-1">
|
||||
<li>Inventory management and tracking</li>
|
||||
<li>Production planning and scheduling</li>
|
||||
<li>Sales forecasting and analytics</li>
|
||||
<li>Customer and order management</li>
|
||||
<li>Recipe management and costing</li>
|
||||
<li>Supplier and procurement management</li>
|
||||
<li>Point of sale integration</li>
|
||||
<li>AI-powered insights and recommendations</li>
|
||||
</ul>
|
||||
<p className="text-gray-700 dark:text-gray-300">
|
||||
We reserve the right to modify, suspend, or discontinue any part of the Service at any
|
||||
time with or without notice.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section className="mb-8">
|
||||
<h2 className="text-2xl font-bold text-gray-900 dark:text-white mb-4">
|
||||
3. {t('legal:terms.section_3_title', 'User Accounts')}
|
||||
</h2>
|
||||
|
||||
<h3 className="text-xl font-semibold text-gray-900 dark:text-white mb-3">
|
||||
3.1 Account Registration
|
||||
</h3>
|
||||
<p className="text-gray-700 dark:text-gray-300 mb-4">
|
||||
To use the Platform, you must:
|
||||
</p>
|
||||
<ul className="list-disc pl-6 mb-4 text-gray-700 dark:text-gray-300 space-y-1">
|
||||
<li>Be at least 16 years of age</li>
|
||||
<li>Provide accurate, current, and complete information</li>
|
||||
<li>Maintain and promptly update your account information</li>
|
||||
<li>Maintain the security of your password</li>
|
||||
<li>Accept responsibility for all activities under your account</li>
|
||||
</ul>
|
||||
|
||||
<h3 className="text-xl font-semibold text-gray-900 dark:text-white mb-3">
|
||||
3.2 Account Security
|
||||
</h3>
|
||||
<p className="text-gray-700 dark:text-gray-300 mb-4">
|
||||
You are responsible for:
|
||||
</p>
|
||||
<ul className="list-disc pl-6 mb-4 text-gray-700 dark:text-gray-300 space-y-1">
|
||||
<li>Safeguarding your password and account credentials</li>
|
||||
<li>Notifying us immediately of any unauthorized access</li>
|
||||
<li>Ensuring that you log out from your account at the end of each session</li>
|
||||
</ul>
|
||||
|
||||
<h3 className="text-xl font-semibold text-gray-900 dark:text-white mb-3">
|
||||
3.3 Account Termination
|
||||
</h3>
|
||||
<p className="text-gray-700 dark:text-gray-300">
|
||||
We reserve the right to suspend or terminate your account if you violate these Terms or
|
||||
engage in fraudulent, abusive, or illegal activity.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section className="mb-8">
|
||||
<h2 className="text-2xl font-bold text-gray-900 dark:text-white mb-4">
|
||||
4. {t('legal:terms.section_4_title', 'Subscription and Payment')}
|
||||
</h2>
|
||||
|
||||
<h3 className="text-xl font-semibold text-gray-900 dark:text-white mb-3">
|
||||
4.1 Subscription Plans
|
||||
</h3>
|
||||
<p className="text-gray-700 dark:text-gray-300 mb-4">
|
||||
The Platform offers various subscription plans with different features and pricing. You
|
||||
can view current plans and pricing on our website.
|
||||
</p>
|
||||
|
||||
<h3 className="text-xl font-semibold text-gray-900 dark:text-white mb-3">
|
||||
4.2 Payment Terms
|
||||
</h3>
|
||||
<ul className="list-disc pl-6 mb-4 text-gray-700 dark:text-gray-300 space-y-1">
|
||||
<li>Subscription fees are billed in advance on a monthly or annual basis</li>
|
||||
<li>All fees are non-refundable except as required by law</li>
|
||||
<li>You authorize us to charge your payment method for all fees</li>
|
||||
<li>Prices may change with 30 days' notice</li>
|
||||
</ul>
|
||||
|
||||
<h3 className="text-xl font-semibold text-gray-900 dark:text-white mb-3">
|
||||
4.3 Free Trial
|
||||
</h3>
|
||||
<p className="text-gray-700 dark:text-gray-300 mb-4">
|
||||
We may offer a free trial period. At the end of the trial, your subscription will
|
||||
automatically convert to a paid plan unless you cancel before the trial ends.
|
||||
</p>
|
||||
|
||||
<h3 className="text-xl font-semibold text-gray-900 dark:text-white mb-3">
|
||||
4.4 Cancellation
|
||||
</h3>
|
||||
<p className="text-gray-700 dark:text-gray-300">
|
||||
You may cancel your subscription at any time from your account settings. Cancellation
|
||||
takes effect at the end of the current billing period.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section className="mb-8">
|
||||
<h2 className="text-2xl font-bold text-gray-900 dark:text-white mb-4">
|
||||
5. {t('legal:terms.section_5_title', 'User Conduct and Prohibited Activities')}
|
||||
</h2>
|
||||
<p className="text-gray-700 dark:text-gray-300 mb-4">
|
||||
You agree not to:
|
||||
</p>
|
||||
<ul className="list-disc pl-6 mb-4 text-gray-700 dark:text-gray-300 space-y-2">
|
||||
<li>Violate any applicable laws or regulations</li>
|
||||
<li>Infringe on intellectual property rights of others</li>
|
||||
<li>Upload viruses, malware, or other malicious code</li>
|
||||
<li>Attempt to gain unauthorized access to the Platform or related systems</li>
|
||||
<li>Interfere with or disrupt the Platform's operation</li>
|
||||
<li>Use the Platform for any illegal or unauthorized purpose</li>
|
||||
<li>Impersonate any person or entity</li>
|
||||
<li>Collect or harvest user data without permission</li>
|
||||
<li>Reverse engineer, decompile, or disassemble the Platform</li>
|
||||
<li>Use automated systems (bots, scrapers) without authorization</li>
|
||||
<li>Resell or redistribute the Service without permission</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
<section className="mb-8">
|
||||
<h2 className="text-2xl font-bold text-gray-900 dark:text-white mb-4">
|
||||
6. {t('legal:terms.section_6_title', 'Intellectual Property')}
|
||||
</h2>
|
||||
|
||||
<h3 className="text-xl font-semibold text-gray-900 dark:text-white mb-3">
|
||||
6.1 Platform Ownership
|
||||
</h3>
|
||||
<p className="text-gray-700 dark:text-gray-300 mb-4">
|
||||
The Platform and all content, features, and functionality are owned by Panadería IA and
|
||||
are protected by international copyright, trademark, and other intellectual property laws.
|
||||
</p>
|
||||
|
||||
<h3 className="text-xl font-semibold text-gray-900 dark:text-white mb-3">
|
||||
6.2 User Content
|
||||
</h3>
|
||||
<p className="text-gray-700 dark:text-gray-300 mb-4">
|
||||
You retain all rights to the data and content you upload to the Platform ("User Content").
|
||||
By uploading User Content, you grant us a limited license to:
|
||||
</p>
|
||||
<ul className="list-disc pl-6 mb-4 text-gray-700 dark:text-gray-300 space-y-1">
|
||||
<li>Store, process, and display your User Content to provide the Service</li>
|
||||
<li>Create derivative works for analytics and AI features (anonymized)</li>
|
||||
<li>Make backups of your data for disaster recovery</li>
|
||||
</ul>
|
||||
|
||||
<h3 className="text-xl font-semibold text-gray-900 dark:text-white mb-3">
|
||||
6.3 Trademarks
|
||||
</h3>
|
||||
<p className="text-gray-700 dark:text-gray-300">
|
||||
"Panadería IA" and our logo are trademarks. You may not use our trademarks without
|
||||
prior written consent.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section className="mb-8">
|
||||
<h2 className="text-2xl font-bold text-gray-900 dark:text-white mb-4">
|
||||
7. {t('legal:terms.section_7_title', 'Data Privacy and Protection')}
|
||||
</h2>
|
||||
<p className="text-gray-700 dark:text-gray-300 mb-4">
|
||||
Your use of the Platform is also governed by our{' '}
|
||||
<a href="/privacy" className="text-primary-600 hover:text-primary-700 underline">
|
||||
Privacy Policy
|
||||
</a>
|
||||
, which is incorporated into these Terms by reference.
|
||||
</p>
|
||||
<p className="text-gray-700 dark:text-gray-300 mb-4">
|
||||
We comply with the General Data Protection Regulation (GDPR) and other applicable data
|
||||
protection laws. Key points:
|
||||
</p>
|
||||
<ul className="list-disc pl-6 mb-4 text-gray-700 dark:text-gray-300 space-y-1">
|
||||
<li>We are the data controller for your account data</li>
|
||||
<li>You are the data controller for customer data you input</li>
|
||||
<li>We act as a data processor for your customer data</li>
|
||||
<li>We have Data Processing Agreements with all sub-processors</li>
|
||||
<li>Data is stored in EU data centers</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
<section className="mb-8">
|
||||
<h2 className="text-2xl font-bold text-gray-900 dark:text-white mb-4">
|
||||
8. {t('legal:terms.section_8_title', 'Service Availability and Support')}
|
||||
</h2>
|
||||
|
||||
<h3 className="text-xl font-semibold text-gray-900 dark:text-white mb-3">
|
||||
8.1 Availability
|
||||
</h3>
|
||||
<p className="text-gray-700 dark:text-gray-300 mb-4">
|
||||
We strive to maintain 99.9% uptime but do not guarantee uninterrupted access. The
|
||||
Platform may be unavailable during:
|
||||
</p>
|
||||
<ul className="list-disc pl-6 mb-4 text-gray-700 dark:text-gray-300 space-y-1">
|
||||
<li>Scheduled maintenance (with advance notice)</li>
|
||||
<li>Emergency maintenance</li>
|
||||
<li>Force majeure events</li>
|
||||
<li>Third-party service failures</li>
|
||||
</ul>
|
||||
|
||||
<h3 className="text-xl font-semibold text-gray-900 dark:text-white mb-3">
|
||||
8.2 Customer Support
|
||||
</h3>
|
||||
<p className="text-gray-700 dark:text-gray-300">
|
||||
Support is provided based on your subscription plan. Response times and support channels
|
||||
vary by plan tier.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section className="mb-8">
|
||||
<h2 className="text-2xl font-bold text-gray-900 dark:text-white mb-4">
|
||||
9. {t('legal:terms.section_9_title', 'Disclaimers and Limitations of Liability')}
|
||||
</h2>
|
||||
|
||||
<div className="bg-amber-50 dark:bg-amber-900/20 border border-amber-200 dark:border-amber-800 rounded-lg p-4 mb-4">
|
||||
<div className="flex items-start gap-3">
|
||||
<AlertTriangle className="w-5 h-5 text-amber-600 mt-0.5 flex-shrink-0" />
|
||||
<div className="text-sm text-amber-900 dark:text-amber-100">
|
||||
<strong>IMPORTANT LEGAL NOTICE</strong>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<h3 className="text-xl font-semibold text-gray-900 dark:text-white mb-3">
|
||||
9.1 "AS IS" Disclaimer
|
||||
</h3>
|
||||
<p className="text-gray-700 dark:text-gray-300 mb-4">
|
||||
THE PLATFORM IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTIES OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
|
||||
</p>
|
||||
|
||||
<h3 className="text-xl font-semibold text-gray-900 dark:text-white mb-3">
|
||||
9.2 Limitation of Liability
|
||||
</h3>
|
||||
<p className="text-gray-700 dark:text-gray-300 mb-4">
|
||||
TO THE MAXIMUM EXTENT PERMITTED BY LAW, PANADERÍA IA SHALL NOT BE LIABLE FOR:
|
||||
</p>
|
||||
<ul className="list-disc pl-6 mb-4 text-gray-700 dark:text-gray-300 space-y-1">
|
||||
<li>Indirect, incidental, special, consequential, or punitive damages</li>
|
||||
<li>Loss of profits, revenue, data, or business opportunities</li>
|
||||
<li>Service interruptions or data loss</li>
|
||||
<li>Actions of third parties</li>
|
||||
</ul>
|
||||
<p className="text-gray-700 dark:text-gray-300">
|
||||
OUR TOTAL LIABILITY SHALL NOT EXCEED THE AMOUNT YOU PAID IN THE 12 MONTHS PRECEDING
|
||||
THE CLAIM.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section className="mb-8">
|
||||
<h2 className="text-2xl font-bold text-gray-900 dark:text-white mb-4">
|
||||
10. {t('legal:terms.section_10_title', 'Indemnification')}
|
||||
</h2>
|
||||
<p className="text-gray-700 dark:text-gray-300">
|
||||
You agree to indemnify and hold harmless Panadería IA from any claims, damages, losses,
|
||||
liabilities, and expenses (including legal fees) arising from:
|
||||
</p>
|
||||
<ul className="list-disc pl-6 mb-4 text-gray-700 dark:text-gray-300 space-y-1">
|
||||
<li>Your use of the Platform</li>
|
||||
<li>Your violation of these Terms</li>
|
||||
<li>Your violation of any law or rights of third parties</li>
|
||||
<li>Your User Content</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
<section className="mb-8">
|
||||
<h2 className="text-2xl font-bold text-gray-900 dark:text-white mb-4">
|
||||
11. {t('legal:terms.section_11_title', 'Modifications to Terms')}
|
||||
</h2>
|
||||
<p className="text-gray-700 dark:text-gray-300 mb-4">
|
||||
We reserve the right to modify these Terms at any time. Changes will be effective:
|
||||
</p>
|
||||
<ul className="list-disc pl-6 mb-4 text-gray-700 dark:text-gray-300 space-y-1">
|
||||
<li>Immediately upon posting for non-material changes</li>
|
||||
<li>30 days after notification for material changes</li>
|
||||
</ul>
|
||||
<p className="text-gray-700 dark:text-gray-300">
|
||||
Continued use of the Platform after changes constitutes acceptance. If you do not agree,
|
||||
you must stop using the Platform and cancel your subscription.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section className="mb-8">
|
||||
<h2 className="text-2xl font-bold text-gray-900 dark:text-white mb-4">
|
||||
12. {t('legal:terms.section_12_title', 'Governing Law and Dispute Resolution')}
|
||||
</h2>
|
||||
|
||||
<h3 className="text-xl font-semibold text-gray-900 dark:text-white mb-3">
|
||||
12.1 Governing Law
|
||||
</h3>
|
||||
<p className="text-gray-700 dark:text-gray-300 mb-4">
|
||||
These Terms are governed by the laws of Spain and the European Union, without regard to
|
||||
conflict of law principles.
|
||||
</p>
|
||||
|
||||
<h3 className="text-xl font-semibold text-gray-900 dark:text-white mb-3">
|
||||
12.2 Dispute Resolution
|
||||
</h3>
|
||||
<p className="text-gray-700 dark:text-gray-300 mb-4">
|
||||
In the event of a dispute:
|
||||
</p>
|
||||
<ul className="list-disc pl-6 mb-4 text-gray-700 dark:text-gray-300 space-y-1">
|
||||
<li>First attempt to resolve through good faith negotiations</li>
|
||||
<li>If unresolved, disputes shall be submitted to the courts of Spain</li>
|
||||
<li>EU consumers retain rights under EU consumer protection laws</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
<section className="mb-8">
|
||||
<h2 className="text-2xl font-bold text-gray-900 dark:text-white mb-4">
|
||||
13. {t('legal:terms.section_13_title', 'Miscellaneous')}
|
||||
</h2>
|
||||
|
||||
<h3 className="text-xl font-semibold text-gray-900 dark:text-white mb-3">
|
||||
13.1 Entire Agreement
|
||||
</h3>
|
||||
<p className="text-gray-700 dark:text-gray-300 mb-4">
|
||||
These Terms, together with our Privacy Policy and Cookie Policy, constitute the entire
|
||||
agreement between you and Panadería IA.
|
||||
</p>
|
||||
|
||||
<h3 className="text-xl font-semibold text-gray-900 dark:text-white mb-3">
|
||||
13.2 Severability
|
||||
</h3>
|
||||
<p className="text-gray-700 dark:text-gray-300 mb-4">
|
||||
If any provision is found unenforceable, the remaining provisions continue in full force.
|
||||
</p>
|
||||
|
||||
<h3 className="text-xl font-semibold text-gray-900 dark:text-white mb-3">
|
||||
13.3 Waiver
|
||||
</h3>
|
||||
<p className="text-gray-700 dark:text-gray-300 mb-4">
|
||||
Failure to enforce any right or provision does not constitute a waiver of such right.
|
||||
</p>
|
||||
|
||||
<h3 className="text-xl font-semibold text-gray-900 dark:text-white mb-3">
|
||||
13.4 Assignment
|
||||
</h3>
|
||||
<p className="text-gray-700 dark:text-gray-300">
|
||||
You may not assign these Terms without our consent. We may assign these Terms without
|
||||
restriction.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<h2 className="text-2xl font-bold text-gray-900 dark:text-white mb-4">
|
||||
14. {t('legal:terms.section_14_title', 'Contact Information')}
|
||||
</h2>
|
||||
<p className="text-gray-700 dark:text-gray-300 mb-4">
|
||||
For questions about these Terms, contact us at:
|
||||
</p>
|
||||
<div className="bg-gray-50 dark:bg-gray-800 p-4 rounded-lg">
|
||||
<p className="font-semibold">Panadería IA</p>
|
||||
<p>Email: legal@panaderia-ia.com</p>
|
||||
<p>Website: https://panaderia-ia.com</p>
|
||||
</div>
|
||||
</section>
|
||||
</Card>
|
||||
|
||||
<div className="mt-8 text-center">
|
||||
<a
|
||||
href="/"
|
||||
className="text-primary-600 hover:text-primary-700 dark:text-primary-400 dark:hover:text-primary-300 underline"
|
||||
>
|
||||
{t('common:actions.back_home', 'Back to Home')}
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
};
|
||||
|
||||
export default TermsOfServicePage;
|
||||
Reference in New Issue
Block a user