Skip to content

Commit a8f57bc

Browse files
Add manual audit order button with pentest description
1 parent 6d7e788 commit a8f57bc

2 files changed

Lines changed: 89 additions & 3 deletions

File tree

src/components/Footer.tsx

Lines changed: 73 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,81 @@
1+
import { useState } from "react";
2+
import { useTranslation } from "@/hooks/useTranslation";
3+
import { Button } from "@/components/ui/button";
4+
import {
5+
Dialog,
6+
DialogContent,
7+
DialogDescription,
8+
DialogHeader,
9+
DialogTitle,
10+
} from "@/components/ui/dialog";
11+
import { Shield, Send, Mail } from "lucide-react";
12+
113
const Footer = () => {
14+
const { t } = useTranslation();
15+
const [isOpen, setIsOpen] = useState(false);
16+
17+
const handleTelegram = () => {
18+
window.open("https://t.me/chainscoutsecurity", "_blank");
19+
};
20+
21+
const handleEmail = () => {
22+
window.open("mailto:barmacrpt534@gmail.com", "_blank");
23+
};
24+
225
return (
3-
<footer className="border-t border-border/50 py-4 mt-auto">
26+
<footer className="border-t border-border/50 py-6 mt-auto">
427
<div className="container mx-auto px-4">
5-
<div className="text-center text-xs text-muted-foreground">
6-
© ChainScout 2026
28+
<div className="flex flex-col md:flex-row items-center justify-between gap-4 mb-4">
29+
<div className="text-center md:text-left text-xs text-muted-foreground">
30+
© ChainScout 2026
31+
</div>
32+
<Button
33+
onClick={() => setIsOpen(true)}
34+
className="bg-green-600 hover:bg-green-700 text-white gap-2"
35+
>
36+
<Shield className="w-4 h-4" />
37+
{t("orderManualAudit")}
38+
</Button>
739
</div>
840
</div>
41+
42+
<Dialog open={isOpen} onOpenChange={setIsOpen}>
43+
<DialogContent className="sm:max-w-[500px]">
44+
<DialogHeader>
45+
<DialogTitle className="text-2xl">{t("manualAuditTitle")}</DialogTitle>
46+
</DialogHeader>
47+
<div className="space-y-4">
48+
<p className="font-semibold text-base">
49+
{t("manualAuditDescription")}
50+
</p>
51+
52+
<div>
53+
<p className="font-semibold mb-3">{t("contactUs")}</p>
54+
<div className="flex gap-3">
55+
<Button
56+
onClick={handleTelegram}
57+
className="flex-1 bg-blue-600 hover:bg-blue-700 text-white gap-2"
58+
>
59+
<Send className="w-4 h-4" />
60+
Telegram
61+
</Button>
62+
<Button
63+
onClick={handleEmail}
64+
className="flex-1 bg-red-600 hover:bg-red-700 text-white gap-2"
65+
>
66+
<Mail className="w-4 h-4" />
67+
Email
68+
</Button>
69+
</div>
70+
</div>
71+
72+
<div className="pt-2 text-sm text-muted-foreground border-t">
73+
<p>{t("telegramContact")}</p>
74+
<p>{t("emailContact")}</p>
75+
</div>
76+
</div>
77+
</DialogContent>
78+
</Dialog>
979
</footer>
1080
);
1181
};

src/lib/translations.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -305,6 +305,14 @@ export const translations = {
305305
templateDeletedDesc: "Template deleted successfully",
306306
enterTemplateName: "Enter template name",
307307
templateNameError: "Enter template name",
308+
309+
// Manual Audit
310+
orderManualAudit: "Order Manual Audit",
311+
manualAuditTitle: "Order Manual Audit",
312+
manualAuditDescription: "We can perform a professional pentest of your website or Web3 project. Our specialists will check smart contracts, dApps, APIs, and infrastructure for vulnerabilities.",
313+
contactUs: "Contact us:",
314+
telegramContact: "Telegram: @chainscoutsecurity",
315+
emailContact: "Email: barmacrpt534@gmail.com",
308316
},
309317
ru: {
310318
// Header
@@ -611,6 +619,14 @@ export const translations = {
611619
templateDeletedDesc: "Шаблон успешно удален",
612620
enterTemplateName: "Введите название шаблона",
613621
templateNameError: "Введите название шаблона",
622+
623+
// Manual Audit
624+
orderManualAudit: "Заказать ручной аудит",
625+
manualAuditTitle: "Заказать ручной аудит",
626+
manualAuditDescription: "Мы можем провести профессиональный пентест вашего веб-сайта или Web3-проекта. Наши специалисты проверят смарт-контракты, dApp, API и инфраструктуру на уязвимости.",
627+
contactUs: "Свяжитесь с нами:",
628+
telegramContact: "Telegram: @chainscoutsecurity",
629+
emailContact: "Email: barmacrpt534@gmail.com",
614630
}
615631
};
616632

0 commit comments

Comments
 (0)