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
4 changes: 2 additions & 2 deletions src/assets/lang/en/virus-scanner.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,8 @@
"noVirusesDetected": {
"message": "No viruses detected",
"title": "Keep your files safe from virus",
"subtitle": "Internxt has partnered with Bitdefender to offer you ultimate real time protection on your device. Claim 3 months of ultimate antivirus protection for free. ",
"cta": "Claim deal"
"subtitle": "Internxt recommends Bitdefender to help protect your device with award-winning antivirus technologies. Get lifetime protection for Windows, with real-time security that helps stop threats before they reach your files.",
"cta": "Get Antivirus Free"
},
"analyzing": "Scanning file...",
"scanTime": "Scan time",
Expand Down
6 changes: 2 additions & 4 deletions src/assets/lang/es/virus-scanner.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
"subtitle1": "Arrastra y suelta tus archivos para detectar malware y otras vulneraciones de forma gratuita.",
"subtitle2": "Escanea cualquier documento, imagen, pdf u otro tipo de archivo. Asegúrate de que tus archivos son seguros y están libres de virus antes de abrirlos, con nuestro escáner de virus cifrado.",
"footer": "Internxt is not liable for any personal information you provide. By submitting your files, you agree to our [Terms and Conditions of Service and Privacy Policy.](https://internxt.com/legal)",

"dropFile": {
"line1": "Suelta tu archivo para escanear en busca de virus"
},
Expand All @@ -30,8 +29,8 @@
"noVirusesDetected": {
"message": "No se ha detectado ningún virus",
"title": "Mantén tus archivos seguros",
"subtitle": "Internxt se ha asociado con Bitdefender para ofrecerte la máxima protección en tiempo real para tu dispositivo. Consigue 3 meses de protección antivirus gratis.",
"cta": "Pruébalo"
"subtitle": "Internxt recomienda Bitdefender para ayudar a proteger tu dispositivo con tecnologías antivirus galardonadas. Consigue protección de por vida para Windows, con seguridad en tiempo real que ayuda a detener las amenazas antes de que lleguen a tus archivos.",
"cta": "Consigue el antivirus gratis"
},
"analyzing": "Escaneando archivo...",
"scanTime": "Tiempo de escaneo",
Expand Down Expand Up @@ -105,7 +104,6 @@
}
]
},

"ToolsSection": {
"title": "Prueba las herramientas gratuitas de seguridad en línea de Internxt:",
"toolsCard": [
Expand Down
4 changes: 2 additions & 2 deletions src/assets/lang/fr/virus-scanner.json
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,8 @@
"noVirusesDetected": {
"message": "Aucun virus détecté",
"title": "Protégez vos fichiers contre les virus",
"subtitle": "Internxt s'est associé à Bitdefender pour vous offrir une protection en temps réel ultime sur votre appareil. Profitez de 3 mois de protection antivirus ultime gratuitement.",
"cta": "Profitez de l’offre"
"subtitle": "Internxt recommande Bitdefender pour aider à protéger votre appareil avec des technologies antivirus primées. Obtenez une protection à vie pour Windows, avec une sécurité en temps réel qui aide à stopper les menaces avant qu'elles n'atteignent vos fichiers.",
"cta": "Obtenir l'antivirus gratuitement"
},
"analyzing": "Analyse du fichier...",
"scanTime": "Durée de l'analyse",
Expand Down
6 changes: 2 additions & 4 deletions src/assets/lang/it/virus-scanner.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
"subtitle1": "Trascina qui i file sospetti per rilevare gratuitamente la presenza di malware o di altre manomissioni.",
"subtitle2": "Scansiona qualsiasi documento, immagine, pdf o altro tipo di file. Prima di aprirli, assicurati che i tuoi file siano sicuri e privi di virus, con il Virus Scanner di Internxt, con tecnologia zero-knowledge.",
"footer": "Internxt non è responsabile delle informazioni personali fornite. Inviando i tuoi file, accetti i nostri [Termini e Condizioni di Servizio e l'Informativa sulla Privacy.](https://internxt.com/legal)",

"dropFile": {
"line1": "Rilascia il tuo file per eseguire la scansione antivirus"
},
Expand All @@ -30,8 +29,8 @@
"noVirusesDetected": {
"message": "Nessun virus rilevato",
"title": "Proteggi i tuoi file dai virus",
"subtitle": "Internxt ha collaborato con Bitdefender per offrirti la massima protezione in tempo reale sul tuo dispositivo. Ottieni 3 mesi di protezione antivirus completa gratis.",
"cta": "Richiedi l’offerta"
"subtitle": "Internxt consiglia Bitdefender per aiutare a proteggere il tuo dispositivo con tecnologie antivirus pluripremiate. Ottieni una protezione a vita per Windows, con una sicurezza in tempo reale che aiuta a fermare le minacce prima che raggiungano i tuoi file.",
"cta": "Ottieni Antivirus Gratis"
},
"analyzing": "Scansione del file in corso...",
"scanTime": "Durata scansione",
Expand Down Expand Up @@ -105,7 +104,6 @@
}
]
},

"ToolsSection": {
"title": "Prova gli strumenti online gratuiti di Internxt dedicati alla sicurezza:",
"toolsCard": [
Expand Down
5 changes: 2 additions & 3 deletions src/assets/lang/ru/virus-scanner.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
"subtitle1": "Проверьте подозрительные файлы на наличие вредоносных программ и вирусов.",
"subtitle2": "Сканируйте любые документы, изображения, pdf и другие типы файлов. Убедитесь, что ваши файлы безопасны и не содержат вирусов с помощью сканера вирусов Internxt с нулевым уровнем разглашения.",
"footer": "Internxt не несет ответственности за любую предоставленную вами личную информацию. Отправляя свои файлы, вы соглашаетесь с нашими [Условиями предоставления услуг и Политикой конфиденциальности](https://internxt.com/legal)",

"dropFile": {
"line1": "Перетащите файл для сканирования на вирусы"
},
Expand All @@ -30,8 +29,8 @@
"noVirusesDetected": {
"message": "Вирусы не обнаружены",
"title": "Защитите свои файлы от вирусов",
"subtitle": "Internxt объединился с Bitdefender, чтобы предоставить вам максимальную защиту в реальном времени. Получите 3 месяца антивирусной защиты бесплатно.",
"cta": "Получить предложение"
"subtitle": "Internxt рекомендует Bitdefender для защиты вашего устройства с помощью передовых антивирусных технологий. Получите пожизненную защиту для Windows и безопасность в реальном времени, которая останавливает угрозы до того, как они доберутся до ваших файлов.",
"cta": "Получить антивирус бесплатно"
},
"analyzing": "Сканирование файла...",
"scanTime": "Время сканирования",
Expand Down
5 changes: 2 additions & 3 deletions src/assets/lang/zh-tw/virus-scanner.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
"subtitle1": "拖放可疑文件以免費檢測惡意軟件和其他漏洞。",
"subtitle2": "掃描任何文檔、圖像、PDF 或其他文件類型。在您使用 Internxt 的零知識病毒掃描器打開它們之前,確保您的文件安全無虞。",
"footer": "Internxt 對您提供的任何個人信息不承擔責任。通過提交您的文件,您同意我們的[服務條款和隱私政策。](https://internxt.com/legal)",

"dropFile": {
"line1": "拖放文件以掃描病毒"
},
Expand All @@ -30,8 +29,8 @@
"noVirusesDetected": {
"message": "未檢測到病毒",
"title": "保護您的檔案免受病毒侵害",
"subtitle": "Internxt Bitdefender 合作,為您的設備提供終極即時防護。免費獲得 3 個月的頂級防毒保護。",
"cta": "立即領取優惠"
"subtitle": "Internxt 推薦屢獲殊榮的 Bitdefender 防病毒技術,以幫助保護您的設備。為 Windows 獲取終身保護以及實時安全功能,在威脅觸及您的文件之前將其阻止。",
"cta": "免費獲取防病毒軟件"
},
"analyzing": "正在掃描文件...",
"scanTime": "掃描時間",
Expand Down
6 changes: 2 additions & 4 deletions src/assets/lang/zh/virus-scanner.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
"subtitle1": "拖放可疑文件以免费检测恶意软件和其他违规行为。",
"subtitle2": "扫描任何文档、图像、pdf 或其他文件类型。 在使用 Internxt 的零知识病毒扫描程序打开文件之前,请确保您的文件安全且没有病毒。",
"footer": "Internxt 对您提供的任何个人信息概不负责。 提交您的文件,即表示您同意我们的[服务条款和条件以及隐私政策。](https://internxt.com/legal)",

"dropFile": {
"line1": "拖动文件进行病毒扫描"
},
Expand All @@ -30,8 +29,8 @@
"noVirusesDetected": {
"message": "未检测到病毒",
"title": "保护您的文件免受病毒侵害",
"subtitle": "Internxt 携手 Bitdefender,为您的设备提供终极实时保护。免费领取 3 个月的顶级杀毒保护。",
"cta": "立即领取"
"subtitle": "Internxt 推荐屡获殊荣的 Bitdefender 防病毒技术,以帮助保护您的设备。为 Windows 获取终身保护以及实时安全功能,在威胁触及您的文件之前将其阻止。",
"cta": "免费获取防病毒软件"
},
"analyzing": "正在扫描文件...",
"scanTime": "扫描时间",
Expand Down Expand Up @@ -103,7 +102,6 @@
}
]
},

"ToolsSection": {
"title": "Prova gli strumenti online gratuiti di Internxt dedicati alla sicurezza:",
"toolsCard": [
Expand Down
6 changes: 4 additions & 2 deletions src/components/antivirus/FeatureSection.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,10 @@ import Link from 'next/link';

export interface FeatureSectionProps {
textContent: AntivirusText['FeatureSection'];
isGetAntivirus?: boolean;
}

const FeatureSection = ({ textContent }: FeatureSectionProps) => {
const FeatureSection = ({ textContent, isGetAntivirus }: FeatureSectionProps) => {
const cards = [
{
icon: '/images/antivirus/internxt_antivirus_1.webp',
Expand Down Expand Up @@ -47,8 +48,9 @@ const FeatureSection = ({ textContent }: FeatureSectionProps) => {

<p className="font-regular text-xl text-gray-80">{formattedDescription}</p>
</div>

<Link
href={'/pricing'}
href={isGetAntivirus ? 'https://internxt.com/ultimate' : '/pricing'}
className={`flex rounded-lg bg-primary px-5 py-3 text-lg text-xl font-medium text-white hover:bg-primary-dark`}
>
{textContent.cta}
Expand Down
32 changes: 32 additions & 0 deletions src/components/cloud-object-storage/certificationsSections.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
import { getImage } from '@/lib/getImage';
import Image from 'next/image';

export const CertificationsSection = () => {
const certifications = [
{ src: '/images/datacenters-and-certifications/ISO.webp', width: 40, alt: 'ISO Certification' },
{ src: '/images/datacenters-and-certifications/HipaaCompilance.webp', width: 85, alt: 'HIPAA Compliance' },
{ src: '/images/datacenters-and-certifications/AICPA.webp', width: 100, alt: 'AICPA Certification' },
{ src: '/images/datacenters-and-certifications/GDPR.webp', width: 122, alt: 'GDPR Compliance' },
{ src: '/images/datacenters-and-certifications/ENS.webp', width: 115, alt: 'ENS Certification' },
{ src: '/images/datacenters-and-certifications/CSA.webp', width: 40, alt: 'CSA Certification' },
];
return (
<section
className="flex h-min w-full flex-col items-center justify-between gap-8 px-5 pt-28 lg:flex-row lg:gap-16 lg:px-10 lg:py-10 lg:pt-10 xl:px-32 3xl:px-80"
>
<div className="flex flex-row items-center gap-16 w-full justify-between">
{certifications.map((cert, index) => (
<Image
key={cert.src}
src={getImage(cert.src)}
alt={cert.alt}
width={cert.width}
height={40}
quality={100}
/>
))}
</div>

</section>
);
};
4 changes: 2 additions & 2 deletions src/components/coupons/HeroSection.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -105,10 +105,10 @@ export default function HeroSection({

<div className="flex w-full flex-col justify-center gap-4 lg:gap-8">
<div className="flex flex-col justify-center gap-4">
<p className="w-full text-30 font-semibold leading-tight text-gray-100 lg:text-3xl">
<p className="w-full text-30 font-semibold leading-tight text-gray-100 lg:whitespace-nowrap lg:text-3xl">
<HighlightText text={textContent.title} />
</p>
<p className="font-regular text-lg leading-tight text-gray-55 lg:text-2xl">
<p className="font-regular text-lg leading-tight text-gray-55 w-3/4 lg:text-2xl">
{parsePercentText(textContent.subtitle)}
</p>
</div>
Expand Down
12 changes: 6 additions & 6 deletions src/components/virus-scanner/FeaturesSection.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ const FeaturesSection = ({ textContent, bannerText, lang }) => {
<Image
src={getImage(`/banners/Ban_Internxt_728x90.webp`)}
alt="Internxt x Bitdefender Banner"
width={800}
height={110}
width={728}
height={90}
quality={100}
style={{ cursor: 'pointer' }}
onClick={() =>
Expand Down Expand Up @@ -80,8 +80,8 @@ const FeaturesSection = ({ textContent, bannerText, lang }) => {
<Image
src={getImage(`/banners/Ban_Internxt_728x90.webp`)}
alt="File Arrow Up icon"
width={800}
height={110}
width={728}
height={90}
quality={100}
style={{ cursor: 'pointer' }}
onClick={() =>
Expand Down Expand Up @@ -130,8 +130,8 @@ const FeaturesSection = ({ textContent, bannerText, lang }) => {
<Image
src={getImage(`/banners/Ban_Internxt_728x90.webp`)}
alt="File Arrow Up icon"
width={800}
height={110}
width={728}
height={90}
quality={100}
style={{ cursor: 'pointer' }}
onClick={() =>
Expand Down
4 changes: 2 additions & 2 deletions src/components/virus-scanner/HeroSection.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -468,8 +468,8 @@ const HeroSection = ({ textContent, lang }: HeroSectionProps): JSX.Element => {
<Image
src={getImage(`/banners/Ban_Internxt_728x90.webp`)}
alt="File Arrow Up icon"
width={800}
height={110}
width={728}
height={90}
quality={100}
style={{ cursor: 'pointer' }}
onClick={() =>
Expand Down
6 changes: 4 additions & 2 deletions src/hooks/useSpecialOfferConfig.ts
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,8 @@ export const ALLOWED_PATHS = [
'lefiltreitalia',
'genius',
'letosa',
'cninternxtl'
'cninternxtl',
'cooltechzone'
];
export const ALTERNATE_RECOMENDATED_PLAN_PATHS = new Set<string>([]);
export const DARK_MODE_PATHS = new Set<string>(['baity', 'xavier', 'oscar', 'rimembah', 'believemy', 'ghareeb']);
Expand Down Expand Up @@ -85,7 +86,8 @@ export const COUPON_CODES = {
lefiltreitalia: PromoCodeName.lefiltreitalia,
genius: PromoCodeName.genius,
letosa: PromoCodeName.letosa,
cninternxtl: PromoCodeName.cninternxtl
cninternxtl: PromoCodeName.cninternxtl,
cooltechzone: PromoCodeName.CTZ
};

interface OfferConfig {
Expand Down
1 change: 1 addition & 0 deletions src/lib/types/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -229,6 +229,7 @@ export enum PromoCodeName {
cninternxtl='CNINTERNXTL',
whereby='WHEREBY87',
CLOUDWARDS='CLOUDWARDS',
CTZ='CTZ',
}

export interface PromoCodeProps {
Expand Down
3 changes: 2 additions & 1 deletion src/pages/[filename].tsx
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,8 @@ const LANG_MAP = {
lefiltreitalia: 'it',
letosa: 'es',
genius: 'es',
cninternxtl:'en'
cninternxtl:'en',
cooltechzone:'en'
};

function CombinedSpecialOffer({
Expand Down
11 changes: 9 additions & 2 deletions src/pages/antivirus.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import { FooterText, MetatagsDescription, NavigationBarText } from '@/assets/typ
import Footer from '@/components/layout/footers/Footer';
import Layout from '@/components/layout/Layout';
import Navbar from '@/components/layout/navbars/Navbar';
import { MinimalNavbar } from '@/components/layout/navbars/MinimalNavbar';
import { CardGroup } from '@/components/shared/CardGroup';
import { ComponentsInColumnSection } from '@/components/shared/components/ComponentsInColumnSection';
import CtaSection from '@/components/shared/CtaSection';
Expand All @@ -28,6 +29,7 @@ interface AntivirusProps {
MacOS: any;
Linux: any;
};
isGetAntivirus?: boolean;
}

const AntivirusPage = ({
Expand All @@ -37,6 +39,7 @@ const AntivirusPage = ({
navbarLang,
footerLang,
download,
isGetAntivirus,
}: AntivirusProps): JSX.Element => {
const metatags = metatagsDescriptions.filter((desc) => desc.id === 'internxt-antivirus');
const locale = lang as string;
Expand Down Expand Up @@ -95,7 +98,11 @@ const AntivirusPage = ({

return (
<Layout title={metatags[0].title} description={metatags[0].description} segmentName="Home" lang={lang}>
<Navbar textContent={navbarLang} lang={locale} cta={['default']} fixed />
{isGetAntivirus ? (
<MinimalNavbar lang={locale} />
) : (
<Navbar textContent={navbarLang} lang={locale} cta={['default']} fixed />
)}

<HeroSection textContent={langJson.HeroSection} download={download} />

Expand All @@ -112,7 +119,7 @@ const AntivirusPage = ({
}
/>

<FeatureSection textContent={langJson.FeatureSection} />
<FeatureSection textContent={langJson.FeatureSection} isGetAntivirus={isGetAntivirus} />

<InfoSection
FirstComponent={
Expand Down
3 changes: 3 additions & 0 deletions src/pages/cloud-object-storage/index.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import { CloudObjectStorageText } from '@/assets/types/cloud-object-storage';
import { FooterText, MetatagsDescription, NavigationBarText } from '@/assets/types/layout/types';
import { CertificationsSection } from '@/components/cloud-object-storage/certificationsSections';
import { HeroSection } from '@/components/cloud-object-storage/HeroSection';
import { HowMuchYouNeedSection } from '@/components/cloud-object-storage/HowMuchYouNeedSection';
import { PredictablePricingSection } from '@/components/cloud-object-storage/PredictablePricingSection';
Expand Down Expand Up @@ -37,6 +38,8 @@ const CloudObjectStorage = ({

<HeroSection textContent={textContent.HeroSection} />

<CertificationsSection />

<CloudObjectStoragePriceCardSection textContent={textContent.PriceCardSection} />

<PredictablePricingSection textContent={textContent.PredictablePricingSection} />
Expand Down
10 changes: 10 additions & 0 deletions src/pages/getAntivirus.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
import { GetServerSidePropsContext } from 'next';
import AntivirusPage, { getServerSideProps as antivirusGetServerSideProps } from './antivirus';

export default function GetAntivirusPage(props: any) {
return <AntivirusPage {...props} isGetAntivirus={true} />;
}

export async function getServerSideProps(ctx: GetServerSidePropsContext) {
return antivirusGetServerSideProps(ctx);
}
10 changes: 10 additions & 0 deletions src/pages/getVPN.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
import { GetServerSidePropsContext } from 'next';
import VPNPage, { getServerSideProps as vpnGetServerSideProps } from './vpn';

export default function GetVPNPage(props: any) {
return <VPNPage {...props} isGetVPN={true} />;
}

export async function getServerSideProps(ctx: GetServerSidePropsContext) {
return vpnGetServerSideProps(ctx);
}
4 changes: 2 additions & 2 deletions src/pages/specialoffer/[filename].tsx
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ const ALLOWED_PATHS = [
'love',
];

const ALTERNATE_RECOMENDATED_PLAN_PATHS = ['grabon', 'kripesh'];
const ALTERNATE_RECOMENDATED_PLAN_PATHS = ['grabon', 'kripesh','rclone'];
const DARK_MODE_PATHS = ['baity'];

const COUPON_CODES = {
Expand Down Expand Up @@ -167,7 +167,7 @@ function CombinedSpecialOffer({
onCheckoutButtonClicked={onCheckoutButtonClicked}
hideBusinessCards
hideBusinessSelector
popularPlanBySize="3TB"
popularPlanBySize="5TB"
sectionDetails={`${isDarkMode ? 'bg-[#1C1C1C]' : 'bg-white'} lg:py-20`}
hideFreeCard
darkMode={isDarkMode}
Expand Down
Loading
Loading