Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
181 changes: 181 additions & 0 deletions apps/web/src/app/(main)/contact/page.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,181 @@
/* eslint-disable react/no-unescaped-entities */
import React from "react";
import { Mail, Phone } from "lucide-react";
import type { Metadata } from "next";
import {
LegalPageLayout,
LegalPageHeader,
LegalSection,
LegalCard,
LegalFooter,
LegalContent,
} from "@/components/legal";

export const metadata: Metadata = {
title: "Contact Us - Opensox AI",
description:
"Get in touch with Opensox AI. Contact us via email at hi@opensox.ai or call +91 844-7500-346 for support and inquiries.",
};

export default function ContactPage() {
return (
<LegalPageLayout>
<LegalPageHeader
title="Contact Us"
subtitle="Get in touch with our team"
/>

<LegalContent>
{/* Introduction */}
<section>
<p className="text-lg mb-8">
Have questions, feedback, or need assistance? We're here to help!
Reach out to us through any of the following channels:
</p>

{/* Contact Cards */}
<div className="grid md:grid-cols-2 gap-6">
{/* Email Card */}
<LegalCard className="hover:border-[#363636] transition-colors">
<div className="flex items-start gap-4">
<div className="p-3 bg-[#252525] rounded-lg">
<Mail className="w-6 h-6 text-[#9455f4]" />
</div>
<div>
<h3 className="text-xl font-semibold mb-2">Email</h3>
<a
href="mailto:hi@opensox.ai"
className="text-blue-400 hover:text-blue-300 transition-colors text-lg"
>
hi@opensox.ai
</a>
<p className="text-sm text-[#b1b1b1] mt-2">
For general inquiries, support, and feedback
</p>
</div>
</div>
</LegalCard>

{/* Phone Card */}
<LegalCard className="hover:border-[#363636] transition-colors">
<div className="flex items-start gap-4">
<div className="p-3 bg-[#252525] rounded-lg">
<Phone className="w-6 h-6 text-[#9455f4]" />
</div>
<div>
<h3 className="text-xl font-semibold mb-2">Phone</h3>
<a
href="tel:+918447500346"
className="text-blue-400 hover:text-blue-300 transition-colors text-lg"
>
+91 844-7500-346
</a>
<p className="text-sm text-[#b1b1b1] mt-2">
Available during business hours (IST)
</p>
</div>
</div>
</LegalCard>
</div>
</section>

{/* Response Time */}
<LegalCard>
<h2 className="text-2xl lg:text-3xl font-semibold mb-4">
Response Time
</h2>
<p>
We typically respond to all inquiries within 24-48 hours during
business days. For urgent matters, please mention "URGENT" in your
email subject line.
</p>
</LegalCard>

{/* What to Include */}
<LegalSection title="When Contacting Us, Please Include:">
<ul className="list-disc list-inside space-y-2 ml-4">
<li>Your registered email address (if applicable)</li>
<li>A clear description of your inquiry or issue</li>
<li>
Any relevant screenshots or error messages (if reporting a bug)
</li>
<li>Your subscription type (Free or Pro) if related to features</li>
</ul>
</LegalSection>

{/* Other Ways to Connect */}
<LegalSection title="Other Ways to Connect">
<div className="space-y-4">
<div>
<h3 className="text-xl font-semibold mb-2">Community Discord</h3>
<p className="mb-2">
Join our Discord community for real-time discussions, help from
other users, and updates about Opensox AI.
</p>
<a
href="https://discord.gg/zbHzgMNBrm"
target="_blank"
rel="noopener noreferrer"
className="text-blue-400 hover:text-blue-300 transition-colors"
>
Join Discord Community →
</a>
</div>

<div>
<h3 className="text-xl font-semibold mb-2">Social Media</h3>
<p className="mb-2">
Follow us on social media for updates, tips, and community
highlights:
</p>
<div className="flex flex-wrap gap-4 mt-3">
<a
href="https://x.com/opensoxai"
target="_blank"
rel="noopener noreferrer"
className="text-blue-400 hover:text-blue-300 transition-colors"
>
Twitter/X
</a>
<a
href="https://github.com/apsinghdev/opensox"
target="_blank"
rel="noopener noreferrer"
className="text-blue-400 hover:text-blue-300 transition-colors"
>
GitHub
</a>
<a
href="https://www.youtube.com/channel/UC7QV7uSxlbha-bNPaev5MeQ"
target="_blank"
rel="noopener noreferrer"
className="text-blue-400 hover:text-blue-300 transition-colors"
>
YouTube
</a>
</div>
</div>

<div>
<h3 className="text-xl font-semibold mb-2">GitHub Issues</h3>
<p className="mb-2">
Found a bug or have a feature request? Open an issue on our
GitHub repository:
</p>
<a
href="https://github.com/apsinghdev/opensox/issues"
target="_blank"
rel="noopener noreferrer"
className="text-blue-400 hover:text-blue-300 transition-colors"
>
Report an Issue →
</a>
</div>
</div>
</LegalSection>
</LegalContent>

<LegalFooter />
</LegalPageLayout>
);
}
181 changes: 181 additions & 0 deletions apps/web/src/app/(main)/legal/cancellation-and-refund/page.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,181 @@
/* eslint-disable react/no-unescaped-entities */
import React from "react";
import type { Metadata } from "next";
import {
LegalPageLayout,
LegalPageHeader,
LegalSection,
LegalCard,
ContactInfo,
LegalFooter,
LegalContent,
} from "@/components/legal";

const EFFECTIVE_DATE = "January 8, 2024";

export const metadata: Metadata = {
title: "Cancellation and Refund Policy - Opensox AI",
description:
"Learn about Opensox AI's cancellation and refund policy. Currently, we do not support refunds. Contact us with questions before purchasing.",
};

export default function CancellationAndRefundPage() {
return (
<LegalPageLayout>
<LegalPageHeader
title="Cancellation and Refund Policy"
effectiveDate={EFFECTIVE_DATE}
/>

<LegalContent>
{/* Introduction */}
<LegalCard>
<p className="text-lg">
At Opensox AI, we are committed to providing valuable services to
our users. However, due to the nature of our digital products and
services, we maintain the following refund policy:
</p>
</LegalCard>

{/* Refund Policy */}
<LegalSection title="Refund Policy">
<LegalCard>
<p className="text-lg font-semibold text-[#9455f4] mb-4">
Currently, we do not support refunds for our services.
</p>
<p className="mb-4">
This policy applies to all subscriptions and one-time purchases
made on Opensox AI, including but not limited to:
</p>
<ul className="list-disc list-inside space-y-2 ml-4">
<li>Pro subscription plans (monthly or annual)</li>
<li>Any premium features or services</li>
<li>One-time payments for specific features</li>
</ul>
</LegalCard>
</LegalSection>

{/* Why No Refunds */}
<LegalSection title="Why We Don't Offer Refunds">
<p className="mb-4">
As a digital service provider offering immediate access to premium
features, personalized mentoring, and exclusive content, we are
unable to offer refunds once services have been accessed or
utilized.
</p>
<p>
We believe in transparency and want to ensure you make an informed
decision before purchasing.
</p>
</LegalSection>

{/* Before You Purchase */}
<LegalSection title="Before You Purchase">
<p className="mb-4">
We strongly encourage you to take advantage of the following
resources before making a purchase:
</p>
<div className="grid md:grid-cols-2 gap-4">
<LegalCard>
<h3 className="text-lg font-semibold mb-2">
📚 Review Our Features
</h3>
<p className="text-sm text-[#b1b1b1]">
Carefully review all features included in your subscription plan
on our pricing page
</p>
</LegalCard>
<LegalCard>
<h3 className="text-lg font-semibold mb-2">💬 Ask Questions</h3>
<p className="text-sm text-[#b1b1b1]">
Reach out to us with any questions or concerns before purchasing
</p>
</LegalCard>
<LegalCard>
<h3 className="text-lg font-semibold mb-2">
🆓 Try Free Features
</h3>
<p className="text-sm text-[#b1b1b1]">
Use our free tier to understand how the platform works before
upgrading
</p>
</LegalCard>
<LegalCard>
<h3 className="text-lg font-semibold mb-2">
👥 Join Our Community
</h3>
<p className="text-sm text-[#b1b1b1]">
Connect with existing users on Discord to hear about their
experiences
</p>
</LegalCard>
</div>
</LegalSection>

{/* Cancellation Policy */}
<LegalSection title="Subscription Cancellation">
<p className="mb-4">
While we don't offer refunds, you can cancel your subscription at
any time:
</p>
<ul className="list-disc list-inside space-y-2 ml-4 mb-4">
<li>
<strong>How to Cancel:</strong> You can cancel your subscription
through your account settings or by contacting us
</li>
<li>
<strong>When It Takes Effect:</strong> Cancellation will take
effect at the end of your current billing period
</li>
<li>
<strong>Access:</strong> You'll continue to have access to Pro
features until the end of your paid period
</li>
<li>
<strong>No Partial Refunds:</strong> You will not be charged again
after cancellation, but no refund will be provided for the
remaining days of your current billing cycle
</li>
</ul>
</LegalSection>

{/* Exceptional Circumstances */}
<LegalSection title="Exceptional Circumstances">
<p className="mb-4">
In rare cases, we may consider refunds for exceptional circumstances
such as:
</p>
<ul className="list-disc list-inside space-y-2 ml-4">
<li>
Technical issues on our end that prevent you from accessing the
service
</li>
<li>Duplicate charges or billing errors</li>
<li>Unauthorized charges on your account</li>
</ul>
<p className="mt-4">
If you believe you qualify for an exceptional refund, please contact
us immediately with detailed information about your situation.
</p>
</LegalSection>

{/* Contact Section */}
<LegalCard variant="highlighted">
<ContactInfo description="We want you to feel confident in your purchase decision. If you have any questions, concerns, or need clarification about our services before purchasing, please don't hesitate to reach out:" />
</LegalCard>

{/* Policy Updates */}
<LegalSection title="Policy Updates">
<p>
We reserve the right to modify this Cancellation and Refund Policy
at any time. Any changes will be posted on this page with an updated
effective date. Your continued use of our services after any changes
constitutes acceptance of the new policy.
</p>
</LegalSection>
</LegalContent>

<LegalFooter />
</LegalPageLayout>
);
}
8 changes: 4 additions & 4 deletions apps/web/src/app/(main)/legal/privacy/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,11 @@ export default function PrivacyPolicyPage() {
href="/legal/terms"
className="text-blue-400 hover:text-blue-300 transition-colors"
>
Terms of Service
Terms and Conditions
</a>
, which incorporates this Privacy Policy. Any terms we use in this
Policy without defining them have the definitions given to them in
the Terms of Service.
the Terms and Conditions.
</p>
</section>

Expand Down Expand Up @@ -684,7 +684,7 @@ export default function PrivacyPolicyPage() {
Personal Data of Children
</h2>
<p>
As noted in the Terms of Service, we do not knowingly collect or
As noted in the Terms and Conditions, we do not knowingly collect or
solicit Personal Data about children under 13 years of age; if you
are a child under the age of 13, please do not attempt to register
for or otherwise use the Services or send us any Personal Data. If
Expand Down Expand Up @@ -785,7 +785,7 @@ export default function PrivacyPolicyPage() {
<p>
We process some Personal Data as a matter of "contractual
necessity", meaning that we need to process the data to
perform under our Terms of Service with you, which enables us
perform under our Terms and Conditions with you, which enables us
to provide you with the Services. When we process data due to
contractual necessity, failure to provide such Personal Data
will result in your inability to use some or all portions of
Expand Down
Loading