diff --git a/.gitignore b/.gitignore index 8b076a07e3a3..426422b2f893 100644 --- a/.gitignore +++ b/.gitignore @@ -39,3 +39,5 @@ pmd-results.sarif # Coverage files coverage +package-lock.json +package-lock.json diff --git a/websites/D/Discord/metadata.json b/websites/D/Discord/metadata.json index a40f705fe61d..22c563f5b40f 100644 --- a/websites/D/Discord/metadata.json +++ b/websites/D/Discord/metadata.json @@ -15,6 +15,7 @@ "description": { "en": "All-in-one voice and text chat for gamers that's free, secure, and works on both your desktop and phone.", "ga": "Comhrá guth agus téacs uile-i-amháin le haghaidh gamers atá saor, slán, agus a oibríonn ar do dheasc agus ar do ghuthán.", + "hu": "Ingyenes, biztonságos, asztali számítógépen és okostelefonon egyaránt használható, mindenre kiterjedő hang- és szöveges csevegőalkalmazás játékosok számára.", "ko": "Discord는 게이머를 위한 음성 및 채팅 프로그램으로, 데스크톱과 핸드폰 모두에서 무료로 안전하게 작동합니다.", "nl": "Een alles-in-één spraak- en tekstchat voor gamers die gratis en veilig is en op zowel je computer als je telefoon werkt.", "tr": "Discord; ücretsiz, güvenli ve hem masaüstünüzde hem de telefonunuzda çalışan oyuncular için hepsi bir arada sesli ve yazılı sohbet uygulamasıdır.", diff --git a/websites/G/Ghosty/metadata.json b/websites/G/Ghosty/metadata.json new file mode 100644 index 000000000000..6444c4e8b41e --- /dev/null +++ b/websites/G/Ghosty/metadata.json @@ -0,0 +1,31 @@ +{ + "$schema": "https://schemas.premid.app/metadata/1.16", + "apiVersion": 1, + "author": { + "id": "1288129332455149619", + "name": "Daniyt_th" + }, + "service": "Ghosty", + "description": { + "en": "A Discord bot that features a log, antinuke, and antiraid system.", + "hu": "Egy magyar Discord bot, amely log, antinuke és antiraid rendszerrel rendelkezik." + }, + "url": [ + "ghostybot.hu", + "ghosty.instatus.com", + "ghostydcbot.hu" + ], + "regExp": "^https?:[/][/](ghostybot[.]hu|ghosty[.]instatus[.]com|ghostydcbot[.]hu)[/]", + "version": "1.0.0", + "logo": "https://i.postimg.cc/26LRP0Vw/b956a4c02b9dcdb27a47fc1c41ba047a-(Egyeni).jpg", + "thumbnail": "https://i.postimg.cc/L8pcH5yr/image.png", + "color": "#acaea4", + "category": "other", + "tags": [ + "bot", + "automod", + "logging", + "security", + "hungarian" + ] +} diff --git a/websites/G/Ghosty/presence.ts b/websites/G/Ghosty/presence.ts new file mode 100644 index 000000000000..a553457f8f80 --- /dev/null +++ b/websites/G/Ghosty/presence.ts @@ -0,0 +1,105 @@ +import { Assets } from 'premid' + +const presence = new Presence({ + clientId: '1392901069956190280', // Ghosty ID +}) + +const browsingTimestamp = Math.floor(Date.now() / 1000) + +enum ActivityAssets { + Logo = 'https://i.postimg.cc/26LRP0Vw/b956a4c02b9dcdb27a47fc1c41ba047a-(Egyeni).jpg', +} + +presence.on('UpdateData', async () => { + const { hostname, pathname } = document.location + + const presenceData: PresenceData = { + largeImageKey: ActivityAssets.Logo, + startTimestamp: browsingTimestamp, + smallImageKey: Assets.Play, + details: 'Böngészik', + } + + // ghostybot.hu + if (hostname.includes('ghostybot.hu')) { + if (pathname === '/' || pathname === '') { + presenceData.state = 'Főoldalt Nézi' + } + + else if (pathname.includes('commands')) { + presenceData.state = 'Dashboardot Nézi' + } + + else if (pathname.includes('status')) { + presenceData.state = 'Státusz Oldalt Nézi' + } + + else if (pathname.includes('faq')) { + presenceData.state = 'GYIK Oldalt Nézi' + } + + else if (pathname.includes('support')) { + presenceData.state = 'Support Oldalt Nézi' + } + + else if (pathname.includes('privacy')) { + presenceData.state = 'Adatvédelmi Oldalt Nézi' + } + + else if (pathname.includes('terms')) { + presenceData.state = 'Felhasználási Feltételeket Nézi' + } + else if (pathname.includes('globalban-rules')) { + presenceData.state = 'A Globalban Szabályzatot Nézi' + } + else if (pathname.includes('partners')) { + presenceData.state = 'A Partnereket Nézi' + } + else if (pathname.includes('collabs')) { + presenceData.state = 'A Collabsokat Nézi' + } + } + + // ghosty.instatus.com + else if (hostname.includes('ghosty.instatus.com')) { + presenceData.state = 'Státusz Oldalt Nézi' + } + + // ghostydcbot.hu + else if (hostname.includes('ghostydcbot.hu')) { + if (pathname === 'welcome-to-the-documention') { + presenceData.state = 'Az Üdvőzlő Oldalt Nézi' + } + + else if (pathname.includes('installation')) { + presenceData.state = 'A Telepítési Információkat Nézi' + } + + else if (pathname.includes('permissions')) { + presenceData.state = 'A Jogosultságok Információit Nézi' + } + + else if (pathname.includes('log-chnnel-set')) { + presenceData.state = 'Log Csatorna Beállítását Nézi' + } + + else if (pathname.includes('configuring-security-systems')) { + presenceData.state = 'A Védelmi Rendszerek Beállítását Nézi' + } + else if (pathname.includes('autorole')) { + presenceData.state = 'Az Autorole Beállítását Nézi' + } + else if (pathname.includes('automod')) { + presenceData.state = 'Az Automod Beállítását Nézi' + } + else if (pathname.includes('guild-tag-system')) { + presenceData.state = 'A Guild Címke Rendszer Beállítását Nézi' + } + } + + // Ha van state → Presence aktív + if (presenceData.state) + presence.setActivity(presenceData) + else + presence.clearActivity() +}) diff --git a/websites/L/Lumex/metadata.json b/websites/L/Lumex/metadata.json new file mode 100644 index 000000000000..2a0a2913e437 --- /dev/null +++ b/websites/L/Lumex/metadata.json @@ -0,0 +1,28 @@ +{ + "$schema": "https://schemas.premid.app/metadata/1.16", + "apiVersion": 1, + "author": { + "id": "1288129332455149619", + "name": ".daniyt_th." + }, + "service": "Lumex", + "description": { + "en": "Hi, I'm Lumex! I mainly handle moderation and will help you set up your server.", + "hu": "Szia, én Lumex vagyok! Főként moderálással foglalkozom, segítek felépíteni a szervered." + }, + "url": [ + "lumex.hu", + "status.lumex.hu" + ], + "regExp": "^https?:[/][/]([a-z0-9-]+[.])*(lumex[.]hu|status[.]lumex[.]hu)[/]", + "version": "1.0.0", + "logo": "https://i.postimg.cc/sDQTtzs7/6d64600defa2f72731510b6e30b9b817-(1).jpg", + "thumbnail": "https://i.postimg.cc/J7XYGmBm/image.png", + "color": "#005fbe", + "category": "other", + "tags": [ + "bot", + "automod", + "logging" + ] +} diff --git a/websites/L/Lumex/presence.ts b/websites/L/Lumex/presence.ts new file mode 100644 index 000000000000..0ac729481f0a --- /dev/null +++ b/websites/L/Lumex/presence.ts @@ -0,0 +1,50 @@ +const presence = new Presence({ + clientId: '1498333732174827611', +}) + +const browsingTimestamp = Math.floor(Date.now() / 1000) + +enum ActivityAssets { + Logo = 'https://i.postimg.cc/85fQqZjZ/b07191c9a033296655b5409f1c10962c-(Egyeni).jpg', +} + +presence.on('UpdateData', async () => { + const { hostname, pathname } = document.location + + const presenceData: PresenceData = { + largeImageKey: ActivityAssets.Logo, + details: 'Böngészik', + startTimestamp: browsingTimestamp, + } + + // lumex.hu + if (hostname.includes('lumex.hu')) { + if (pathname === '/' || pathname === '') { + presenceData.state = 'Főoldalt Nézi' + } + else if (pathname.includes('/partnereink')) { + presenceData.state = 'Partnerek Oldalt Nézi' + } + else if (pathname.includes('/tamogatas')) { + presenceData.state = 'Kapcsolat Oldalt Nézi' + } + else if (pathname.includes('/aszf')) { + presenceData.state = 'Az Áltanlános Szerződési Feltételeket Nézi' + } + else if (pathname.includes('/privacypolicy')) { + presenceData.state = 'Az Adatvédelemi Szabályzatot Nézi' + } + else if (pathname.includes('/404')) { + presenceData.state = '404 Oldalt Nézi' + } + } + + // status.lumex.hu + if (hostname.includes('status.lumex.hu')) { + presenceData.state = 'Státusz Oldal Megtekintése' + } + + if (presenceData.state) + presence.setActivity(presenceData) + else presence.clearActivity() +}) diff --git a/websites/N/Nova Cat/metadata.json b/websites/N/Nova Cat/metadata.json new file mode 100644 index 000000000000..6a0b419f6fbf --- /dev/null +++ b/websites/N/Nova Cat/metadata.json @@ -0,0 +1,47 @@ +{ + "$schema": "https://schemas.premid.app/metadata/1.16", + "apiVersion": 1, + "author": { + "id": "1288129332455149619", + "name": "Daniyt_th" + }, + "contributors": [ + { + "id": "974010025003614242", + "name": "「 ✦ { Dantix } ✦ 」「 ˖᯽ ˖ 」" + } + ], + "service": "Nova Cat", + "description": { + "en": "A bot with moderation, youtube/twitch/tiktok notifier.", + "hu": "Egy bot moderációval, youtube/twitch/tiktok értesítővel." + }, + "url": [ + "novacat.eu", + "status.novacat.eu" + ], + "regExp": "^https?://([a-z0-9-]+\\.)*(novacat\\.eu|status\\.novacat\\.eu|v2\\.status\\.novacat\\.eu)/", + "version": "1.0.0", + "logo": "https://i.postimg.cc/SsYFwgJd/0d15baabd2b461341345a896e3ba64ec-(Egyeni).jpg", + "thumbnail": "https://cdn.discordapp.com/banners/1286628372033830934/a_987ad9224a57104525a97dda9c6d01f1.gif", + "color": "#270a48", + "category": "other", + "tags": [ + "bot", + "moderation", + "ticket", + "automod" + ], + "settings": [ + { + "id": "lang", + "title": "Language", + "icon": "fas fa-language", + "values": [ + "English", + "Hungarian" + ], + "value": 0 + } + ] +} diff --git a/websites/N/Nova Cat/presence.ts b/websites/N/Nova Cat/presence.ts new file mode 100644 index 000000000000..3fe1b8ce08f8 --- /dev/null +++ b/websites/N/Nova Cat/presence.ts @@ -0,0 +1,65 @@ +import { Assets } from 'premid' + +const presence = new Presence({ + clientId: '1286628372033830934', +}) + +const browsingTimestamp = Math.floor(Date.now() / 1000) + +enum ActivityAssets { + Logo = 'https://i.postimg.cc/SsYFwgJd/0d15baabd2b461341345a896e3ba64ec-(Egyeni).jpg', +} + +const langKeys = { + details: { + website: { + en: 'Browsing', + hu: 'Böngészik', + }, + }, + state: { + home: { + en: 'Viewing Home Page', + hu: 'Főoldalt Nézi', + }, + status: { + en: 'Viewing Status Page', + hu: 'Státusz Oldalt Nézi', + }, + statusV2: { + en: 'Viewing Beta Status Page', + hu: 'Béta Státusz Oldalt Nézi', + }, + }, +} + +presence.on('UpdateData', async () => { + const { hostname, pathname } = document.location + + const langSetting = await presence.getSetting('lang') + const lang = langSetting === 1 ? 'hu' : 'en' + + const presenceData: PresenceData = { + largeImageKey: ActivityAssets.Logo, + smallImageKey: Assets.Play, + startTimestamp: browsingTimestamp, + details: langKeys.details.website[lang], + } + + // Főoldal + if (hostname === 'novacat.eu' || hostname === 'www.novacat.eu') { + if (pathname === '/' || pathname.length <= 1) { + presenceData.state = langKeys.state.home[lang] + } + } + + // Státusz oldal + else if (hostname === 'status.novacat.eu') { + presenceData.state = langKeys.state.status[lang] + } + + if (presenceData.state) + presence.setActivity(presenceData) + else + presence.clearActivity() +}) diff --git a/websites/R/RRHosting/metadata.json b/websites/R/RRHosting/metadata.json new file mode 100644 index 000000000000..7641d367f352 --- /dev/null +++ b/websites/R/RRHosting/metadata.json @@ -0,0 +1,38 @@ +{ + "$schema": "https://schemas.premid.app/metadata/1.16", + "apiVersion": 1, + "author": { + "id": "1288129332455149619", + "name": "Daniyt_th" + }, + "service": "RRHosting", + "description": { + "de": "Ein Hosting-Anbieter stellt kostenlose Discord-Bot- und Datenbankdienste zur Verfügung.", + "en": "A hosting provides free discord bot and database services.", + "hu": "Egy hosting ami ingyenes discord bot és adatbázis kínál." + }, + "url": [ + "rrhosting.eu", + "panel.rrhosting.eu" + ], + "regExp": "^https?:\\/\\/(?:www\\.)?(rrhosting\\.eu|panel\\.rrhosting\\.eu)\\/.*$", + "version": "1.0.0", + "logo": "https://i.postimg.cc/3R05PtdZ/79d084ccc1ea926d2aacb6b5fe300e96-(Egyeni).jpg", + "thumbnail": "https://cdn.discordapp.com/banners/1248748513769296034/ffa8aa440ab04679e2c81ec717b74d3a.webp", + "color": "#000000", + "category": "other", + "tags": ["hosting"], + "settings": [ + { + "id": "lang", + "title": "Language", + "icon": "fas fa-language", + "values": [ + "English", + "Hungarian", + "German" + ], + "value": 0 + } + ] +} diff --git a/websites/R/RRHosting/presence.ts b/websites/R/RRHosting/presence.ts new file mode 100644 index 000000000000..a3211f7b5a39 --- /dev/null +++ b/websites/R/RRHosting/presence.ts @@ -0,0 +1,120 @@ +import { Assets } from 'premid' + +const presence = new Presence({ + clientId: '1164842027951849492', +}) + +const browsingTimestamp = Math.floor(Date.now() / 1000) + +enum ActivityAssets { + Logo = 'https://i.postimg.cc/3R05PtdZ/79d084ccc1ea926d2aacb6b5fe300e96-(Egyeni).jpg ', +} + +/* ----------------------------------------- + LANGUAGE KEYS (en + de + hu) +----------------------------------------- */ +const LANG = { + en: { + site: 'Browsing Website', + home: 'Viewing Home Page', + about: 'Reading About', + team: 'Viewing Our Team', + privacypolicy: 'Reading Privacy Policy', + termsofservice: 'Reading Terms Of Service', + acceptableuse: 'Reading Acceptable Use', + panel: 'Viewing Panel (Managing Servers)', + status: 'Viewing Status Page', + }, + + de: { + site: 'Website Durchstöbern', + home: 'Startseite Ansehen', + about: 'Lesestoff Zu', + team: 'Unser Team Ansehen', + privacypolicy: 'Datenschutzerklärung Lesen', + termsofservice: 'Nutzungsbedingungen Lesen', + acceptableuse: 'Nutzungsbedingungen Lesen', + panel: 'Panel Ansehen (Serververwaltung)', + status: 'Statusseite Ansehen', + }, + + hu: { + site: 'Weboldalt Böngészik', + home: 'Főoldalt Nézi', + about: 'Rólunk Olvas', + team: 'A Csapatunkat Nézi', + privacypolicy: 'Az Adatvédelmi Szabályzatot Olvassa', + termsofservice: 'A Szerződési Feltételeket Olvassa', + acceptableuse: 'A Használati Feltételeket Olvassa', + panel: 'Panelt Nézi (Szerverek Kezelése)', + status: 'Státusz Oldalt Nézi', + }, +} as const + +type LangCode = keyof typeof LANG +let currentLang: LangCode = 'hu' + +async function loadLanguage() { + const langSetting = await presence.getSetting('lang') + + if (langSetting === 0) { + currentLang = 'en' + } + else if (langSetting === 1) { + currentLang = 'hu' + } + else if (langSetting === 2) { + currentLang = 'de' + } + else { + currentLang = 'en' + } +} + +presence.on('UpdateData', async () => { + await loadLanguage() + + const { hostname, pathname } = document.location + + const presenceData: PresenceData = { + largeImageKey: ActivityAssets.Logo, + smallImageKey: Assets.Play, + details: LANG[currentLang].site, + startTimestamp: browsingTimestamp, + } + + // rrhosting.eu + if (hostname.includes('rrhosting.eu')) { + if (pathname === '/' || pathname === '') { + presenceData.state = LANG[currentLang].home + } + else if (pathname.includes('status')) { + presenceData.state = LANG[currentLang].status + } + else if (pathname.includes('about')) { + presenceData.state = LANG[currentLang].about + } + else if (pathname.includes('team')) { + presenceData.state = LANG[currentLang].team + } + else if (pathname.includes('pp')) { + presenceData.state = LANG[currentLang].privacypolicy + } + else if (pathname.includes('tos')) { + presenceData.state = LANG[currentLang].termsofservice + } + else if (pathname.includes('aup')) { + presenceData.state = LANG[currentLang].acceptableuse + } + } + + // panel.rrhosting.eu + else if (hostname.includes('panel.rrhosting.eu')) { + presenceData.state = LANG[currentLang].panel + } + + if (presenceData.state) + presence.setActivity(presenceData) + else + presence.clearActivity() +})