Compare commits

...

2 commits

Author SHA1 Message Date
Schimon Jehudah, Adv.
cbcf3b58d0 CSS : Modifications consequent to XHTML modifications;
Python : Modifications consequent to XHTML modifications;
TOML   : Various of modifications;
XHTML  : Uniform templates.
2024-11-05 10:51:28 +02:00
Schimon Jehudah, Adv.
82fb55ca1c SVG : Add Poezio and Profanity icons for smaller size;
SVG  : Replace logo Profanity by a new one;
TOML : Replace homepage by homesite (Thanks jediyassin).
2024-11-03 03:00:01 +02:00
12 changed files with 966 additions and 569 deletions

View file

@ -8,7 +8,7 @@
#apple = "https://adium.im" #apple = "https://adium.im"
#properties = ["chat", "desktop", "openpgp", "otr"] #properties = ["chat", "desktop", "openpgp", "otr"]
#resources = [ #resources = [
# { url = "https://adium.im", txt = "Project homepage" }, # { url = "https://adium.im", txt = "Project homesite" },
#] #]
[aparte] [aparte]
@ -36,7 +36,7 @@ android = "https://f-droid.org/packages/org.atalk.android/"
properties = ["chat", "fdroid", "graphical", "mobile", "omemo", "otr", "zrtp"] properties = ["chat", "fdroid", "graphical", "mobile", "omemo", "otr", "zrtp"]
resources = [ resources = [
{ url = "https://f-droid.org/en/packages/org.atalk.android", txt = "F-Droid package" }, { url = "https://f-droid.org/en/packages/org.atalk.android", txt = "F-Droid package" },
{ url = "https://atalk.sytes.net/atalk/", txt = "Project homepage" }, { url = "https://atalk.sytes.net/atalk/", txt = "Project homesite" },
] ]
[beagle] [beagle]
@ -56,7 +56,7 @@ resources = [
{ url = "https://apps.apple.com/us/app/beagleim-by-tigase-inc/id1445349494", txt = "macOS package" }, { url = "https://apps.apple.com/us/app/beagleim-by-tigase-inc/id1445349494", txt = "macOS package" },
{ url = "xmpp:tigase@muc.tigase.org?join", txt = "Support group chat (MUC)" }, { url = "xmpp:tigase@muc.tigase.org?join", txt = "Support group chat (MUC)" },
{ url = "xmpp:tigase@mix.tigase.im?join", txt = "Support group chat (MIX)" }, { url = "xmpp:tigase@mix.tigase.im?join", txt = "Support group chat (MIX)" },
{ url = "https://beagle.im", txt = "Project homepage" }, { url = "https://beagle.im", txt = "Project homesite" },
] ]
[blabber] [blabber]
@ -71,7 +71,7 @@ resources = [
{ url = "https://www.kanoa.de/@blabber/108289026302640506", txt = "Warum gibt es die App nicht mehr im Play Store?" }, { url = "https://www.kanoa.de/@blabber/108289026302640506", txt = "Warum gibt es die App nicht mehr im Play Store?" },
{ url = "https://codeberg.org/kriztan/blabber.im", txt = "Project repository" }, { url = "https://codeberg.org/kriztan/blabber.im", txt = "Project repository" },
{ url = "xmpp:support@room.pix-art.de?join", txt = "Support group chat" }, { url = "xmpp:support@room.pix-art.de?join", txt = "Support group chat" },
{ url = "https://blabber.im", txt = "Project homepage" }, { url = "https://blabber.im", txt = "Project homesite" },
] ]
[bruno] [bruno]
@ -85,7 +85,7 @@ You can use Bruno if the other IM apps are just not stylish enough.
android = "https://yaxim.org/download/" android = "https://yaxim.org/download/"
properties = ["chat", "graphical", "mobile"] properties = ["chat", "graphical", "mobile"]
resources = [ resources = [
{ url = "https://yaxim.org/bruno/", txt = "Project homepage" }, { url = "https://yaxim.org/bruno/", txt = "Project homesite" },
] ]
[candy] [candy]
@ -103,7 +103,7 @@ Candy is different. It is built for your community.
browser = "http://candy-chat.github.io/candy/" browser = "http://candy-chat.github.io/candy/"
properties = ["chat", "desktop", "graphical", "mobile"] properties = ["chat", "desktop", "graphical", "mobile"]
resources = [ resources = [
{ url = "http://candy-chat.github.io/candy/", txt = "Project homepage" }, { url = "http://candy-chat.github.io/candy/", txt = "Project homesite" },
] ]
[chat-o-matic] [chat-o-matic]
@ -116,7 +116,7 @@ Protocols natively supported include IRC and XMPP.
haiku = "https://github.com/JadedCtrl/Chat-O-Matic/releases" haiku = "https://github.com/JadedCtrl/Chat-O-Matic/releases"
properties = ["chat", "desktop", "graphical"] properties = ["chat", "desktop", "graphical"]
resources = [ resources = [
{ url = "https://github.com/JadedCtrl/Chat-O-Matic", txt = "Project homepage" }, { url = "https://github.com/JadedCtrl/Chat-O-Matic", txt = "Project homesite" },
] ]
[chatsecure] [chatsecure]
@ -132,7 +132,7 @@ apple = "https://chatsecure.org"
properties = ["chat", "fdroid", "graphical", "mobile", "omemo", "otr"] properties = ["chat", "fdroid", "graphical", "mobile", "omemo", "otr"]
resources = [ resources = [
{ url = "https://itunes.apple.com/us/app/chatsecure/id464200063", txt = "iOS package" }, { url = "https://itunes.apple.com/us/app/chatsecure/id464200063", txt = "iOS package" },
{ url = "https://chatsecure.org", txt = "Project homepage" }, { url = "https://chatsecure.org", txt = "Project homesite" },
] ]
[cheogram] [cheogram]
@ -151,7 +151,7 @@ resources = [
{ url = "https://f-droid.org/en/packages/com.cheogram.android", txt = "F-Droid package" }, { url = "https://f-droid.org/en/packages/com.cheogram.android", txt = "F-Droid package" },
{ url = "https://git.singpolyma.net/cheogram", txt = "Project repository" }, { url = "https://git.singpolyma.net/cheogram", txt = "Project repository" },
{ url = "xmpp:discuss@conference.soprani.ca?join", txt = "Support group chat" }, { url = "xmpp:discuss@conference.soprani.ca?join", txt = "Support group chat" },
{ url = "https://cheogram.com", txt = "Project homepage" }, { url = "https://cheogram.com", txt = "Project homesite" },
] ]
[conversations] [conversations]
@ -171,7 +171,7 @@ resources = [
{ url = "https://play.google.com/store/apps/details?id=eu.siacs.conversations", txt = "Play package" }, { url = "https://play.google.com/store/apps/details?id=eu.siacs.conversations", txt = "Play package" },
{ url = "https://codeberg.org/iNPUTmice/Conversations", txt = "Project repository" }, { url = "https://codeberg.org/iNPUTmice/Conversations", txt = "Project repository" },
{ url = "xmpp:conversations@conference.siacs.eu?join", txt = "Support group chat" }, { url = "xmpp:conversations@conference.siacs.eu?join", txt = "Support group chat" },
{ url = "https://conversations.im", txt = "Project homepage" }, { url = "https://conversations.im", txt = "Project homesite" },
] ]
[conversejs] [conversejs]
@ -197,7 +197,7 @@ resources = [
{ url = "https://github.com/luigi311/ConverseJS-ubports", txt = "ConverseJS-ubports project repository" }, { url = "https://github.com/luigi311/ConverseJS-ubports", txt = "ConverseJS-ubports project repository" },
{ url = "https://github.com/conversejs/converse.js", txt = "ConverseJS project repository" }, { url = "https://github.com/conversejs/converse.js", txt = "ConverseJS project repository" },
{ url = "xmpp:discuss@conference.conversejs.org?join", txt = "Support group chat" }, { url = "xmpp:discuss@conference.conversejs.org?join", txt = "Support group chat" },
{ url = "https://conversejs.org", txt = "Project homepage" }, { url = "https://conversejs.org", txt = "Project homesite" },
] ]
[convo] [convo]
@ -250,7 +250,7 @@ windows = "https://coy.im/#download-section"
properties = ["chat", "desktop", "graphical", "otr"] properties = ["chat", "desktop", "graphical", "otr"]
resources = [ resources = [
{ url = "https://github.com/coyim/coyim", txt = "Project repository" }, { url = "https://github.com/coyim/coyim", txt = "Project repository" },
{ url = "https://coy.im", txt = "Project homepage" }, { url = "https://coy.im", txt = "Project homesite" },
] ]
[dergchat] [dergchat]
@ -289,7 +289,7 @@ properties = ["chat", "desktop", "featured", "graphical", "mobile", "omemo", "op
resources = [ resources = [
{ url = "https://flathub.org/apps/im.dino.Dino", txt = "Flathub package" }, { url = "https://flathub.org/apps/im.dino.Dino", txt = "Flathub package" },
{ url = "xmpp:chat@dino.im?join", txt = "Support group chat" }, { url = "xmpp:chat@dino.im?join", txt = "Support group chat" },
{ url = "https://dino.im", txt = "Project homepage" }, { url = "https://dino.im", txt = "Project homesite" },
] ]
[freetalk] [freetalk]
@ -307,7 +307,7 @@ posix = "https://www.gnu.org/software/freetalk/"
properties = ["chat", "console", "desktop"] properties = ["chat", "console", "desktop"]
resources = [ resources = [
{ url = "https://lists.gnu.org/mailman/listinfo/freetalk-dev", txt = "Mailing list" }, { url = "https://lists.gnu.org/mailman/listinfo/freetalk-dev", txt = "Mailing list" },
{ url = "https://www.gnu.org/software/freetalk/", txt = "Project homepage" }, { url = "https://www.gnu.org/software/freetalk/", txt = "Project homesite" },
] ]
[gajim] [gajim]
@ -331,7 +331,7 @@ resources = [
{ url = "https://apps.microsoft.com/detail/9pggf6hd43f9?hl=en-us&gl=US", txt = "Windows package" }, { url = "https://apps.microsoft.com/detail/9pggf6hd43f9?hl=en-us&gl=US", txt = "Windows package" },
{ url = "https://liberapay.com/Gajim", txt = "Liberapay profile" }, { url = "https://liberapay.com/Gajim", txt = "Liberapay profile" },
{ url = "xmpp:gajim@conference.gajim.org?join", txt = "Support group chat" }, { url = "xmpp:gajim@conference.gajim.org?join", txt = "Support group chat" },
{ url = "https://gajim.org", txt = "Project homepage" }, { url = "https://gajim.org", txt = "Project homesite" },
] ]
[irssi] [irssi]
@ -380,7 +380,7 @@ resources = [
{ url = "https://apps.nextcloud.com/apps/ojsxc", txt = "Nextcloud package" }, { url = "https://apps.nextcloud.com/apps/ojsxc", txt = "Nextcloud package" },
{ url = "https://github.com/narutogo/jsxc-na", txt = "jsxc-na project repository" }, { url = "https://github.com/narutogo/jsxc-na", txt = "jsxc-na project repository" },
{ url = "https://github.com/jsxc/jsxc", txt = "jsxc project repository" }, { url = "https://github.com/jsxc/jsxc", txt = "jsxc project repository" },
{ url = "https://jsxc.org", txt = "Project homepage" }, { url = "https://jsxc.org", txt = "Project homesite" },
] ]
[kaidan] [kaidan]
@ -402,7 +402,7 @@ resources = [
{ url = "https://flathub.org/apps/im.kaidan.kaidan", txt = "Flathub package" }, { url = "https://flathub.org/apps/im.kaidan.kaidan", txt = "Flathub package" },
{ url = "https://invent.kde.org/network/kaidan", txt = "Project repository" }, { url = "https://invent.kde.org/network/kaidan", txt = "Project repository" },
{ url = "xmpp:kaidan@muc.kaidan.im?join", txt = "Support group chat" }, { url = "xmpp:kaidan@muc.kaidan.im?join", txt = "Support group chat" },
{ url = "https://kaidan.im", txt = "Project homepage" }, { url = "https://kaidan.im", txt = "Project homesite" },
] ]
[kaidan-qml] [kaidan-qml]
@ -421,7 +421,7 @@ resources = [
{ url = "https://open-store.io/app/im.kaidan.kaidan", txt = "OpenStore package" }, { url = "https://open-store.io/app/im.kaidan.kaidan", txt = "OpenStore package" },
{ url = "https://invent.kde.org/network/kaidan", txt = "Project repository" }, { url = "https://invent.kde.org/network/kaidan", txt = "Project repository" },
{ url = "xmpp:kaidan@muc.kaidan.im?join", txt = "Support group chat" }, { url = "xmpp:kaidan@muc.kaidan.im?join", txt = "Support group chat" },
{ url = "https://kaidan.im", txt = "Project homepage" }, { url = "https://kaidan.im", txt = "Project homesite" },
] ]
[kopete] [kopete]
@ -444,24 +444,18 @@ resources = [
{ url = "https://flathub.org/apps/details/org.kde.kopete", txt = "Flathub package" }, { url = "https://flathub.org/apps/details/org.kde.kopete", txt = "Flathub package" },
{ url = "https://invent.kde.org/network/kopete", txt = "Project repository" }, { url = "https://invent.kde.org/network/kopete", txt = "Project repository" },
{ url = "irc://irc.libera.chat/kopete", txt = "Support group chat" }, { url = "irc://irc.libera.chat/kopete", txt = "Support group chat" },
{ url = "https://userbase.kde.org/Kopete", txt = "Project homepage" }, { url = "https://userbase.kde.org/Kopete", txt = "Project homesite" },
] ]
[leechcraft] [leechcraft]
title = "LeechCraft" title = "Leech Craft"
about = """ about = """
LeechCraft is a free open source cross-platform modular live environment. LeechCraft is a free open source cross-platform modular live environment and \
internet-client.
It has modules for everything, which include an HTML browser; a multiprotocol \ LeechCraft allows to chat, browse the internet, read Atom/RSS feeds, download \
modular IM client with support for encryption and audio calls; a \ files via BitTorrent, FTP, HTTP and DC, automatically download, play or stream \
collection-oriented media player with social features like recommended artists \ podcasts (and other media files) and much more.
and nearby events; a BitTorrent client; a document viewer (ePUB, DjVu, PDF, \
MOBI, etc.); an RSS feed reader with extensive support for Broadcatching and \
podcasts ; a package manager with its own repository of plugins, themes, icons \
and much more.
The Summary tab that displays all your downloads, updates and statuses (like \
new articles in news feeds).
LeechCraft is a modular system, and by installing different modules you can \ LeechCraft is a modular system, and by installing different modules you can \
customize the feature set, keeping off the things you do not need and have a \ customize the feature set, keeping off the things you do not need and have a \
@ -473,7 +467,7 @@ windows = "https://leechcraft.org/download#microsoft-windows"
properties = ["chat", "desktop", "graphical", "openpgp", "otr", "plugin", "pubsub"] properties = ["chat", "desktop", "graphical", "openpgp", "otr", "plugin", "pubsub"]
resources = [ resources = [
{ url = "https://github.com/0xd34df00d/leechcraft", txt = "Project repository" }, { url = "https://github.com/0xd34df00d/leechcraft", txt = "Project repository" },
{ url = "https://leechcraft.org", txt = "Project homepage" }, { url = "https://leechcraft.org", txt = "Project homesite" },
] ]
[mcabber] [mcabber]
@ -489,8 +483,9 @@ bsd = "https://www.freshports.org/net-im/mcabber/"
posix = "https://mcabber.com" posix = "https://mcabber.com"
properties = ["admin", "chat", "console", "desktop", "featured", "openpgp", "otr"] properties = ["admin", "chat", "console", "desktop", "featured", "openpgp", "otr"]
resources = [ resources = [
{ url = "xmpp:mcabber@conf.lilotux.net?join", txt = "Support group chat" },
{ url = "https://mcabber.com/hg/", txt = "Project repository" }, { url = "https://mcabber.com/hg/", txt = "Project repository" },
{ url = "https://mcabber.com", txt = "Project homepage" }, { url = "https://mcabber.com", txt = "Project homesite" },
] ]
[miranda] [miranda]
@ -507,7 +502,7 @@ windows = "https://miranda-ng.org/downloads/"
properties = ["adhoc", "chat", "desktop", "featured", "graphical", "omemo", "openpgp", "otr", "plugin"] properties = ["adhoc", "chat", "desktop", "featured", "graphical", "omemo", "openpgp", "otr", "plugin"]
resources = [ resources = [
{ url = "https://github.com/miranda-ng/miranda-ng", txt = "Project repository" }, { url = "https://github.com/miranda-ng/miranda-ng", txt = "Project repository" },
{ url = "https://miranda-ng.org", txt = "Project homepage" }, { url = "https://miranda-ng.org", txt = "Project homesite" },
] ]
[monal] [monal]
@ -526,7 +521,7 @@ resources = [
{ url = "https://apps.apple.com/app/id1637078500", txt = "macOS package" }, { url = "https://apps.apple.com/app/id1637078500", txt = "macOS package" },
{ url = "https://github.com/monal-im/Monal", txt = "Project repository" }, { url = "https://github.com/monal-im/Monal", txt = "Project repository" },
{ url = "xmpp:monal@chat.yax.im?join", txt = "Support group chat" }, { url = "xmpp:monal@chat.yax.im?join", txt = "Support group chat" },
{ url = "https://monal-im.org", txt = "Project homepage" }, { url = "https://monal-im.org", txt = "Project homesite" },
] ]
[monocles] [monocles]
@ -544,7 +539,7 @@ resources = [
{ url = "https://play.google.com/store/apps/details?id=eu.monocles.chat", txt = "Play package" }, { url = "https://play.google.com/store/apps/details?id=eu.monocles.chat", txt = "Play package" },
{ url = "https://codeberg.org/monocles/monocles_chat", txt = "Project repository" }, { url = "https://codeberg.org/monocles/monocles_chat", txt = "Project repository" },
{ url = "xmpp:support@conference.monocles.de?join", txt = "Support group chat" }, { url = "xmpp:support@conference.monocles.de?join", txt = "Support group chat" },
{ url = "https://monocles.de/more/", txt = "Project homepage" }, { url = "https://monocles.de/more/", txt = "Project homesite" },
] ]
[movim] [movim]
@ -572,7 +567,7 @@ resources = [
{ url = "https://gitlab.com/ChristianPauly/ubuntu-movim", txt = "ubuntu-movim project repository" }, { url = "https://gitlab.com/ChristianPauly/ubuntu-movim", txt = "ubuntu-movim project repository" },
{ url = "https://github.com/movim/movim", txt = "Movim project repository" }, { url = "https://github.com/movim/movim", txt = "Movim project repository" },
{ url = "xmpp:movim@conference.movim.eu?join", txt = "Support group chat" }, { url = "xmpp:movim@conference.movim.eu?join", txt = "Support group chat" },
{ url = "https://movim.eu", txt = "Project homepage" }, { url = "https://movim.eu", txt = "Project homesite" },
] ]
[moxxy] [moxxy]
@ -588,7 +583,7 @@ properties = ["chat", "graphical", "izzyondroid", "mobile", "omemo"]
resources = [ resources = [
{ url = "https://codeberg.org/moxxy/moxxy", txt = "Project repository" }, { url = "https://codeberg.org/moxxy/moxxy", txt = "Project repository" },
{ url = "xmpp:moxxy@muc.moxxy.org?join", txt = "Support group chat" }, { url = "xmpp:moxxy@muc.moxxy.org?join", txt = "Support group chat" },
{ url = "https://moxxy.org", txt = "Project homepage" }, { url = "https://moxxy.org", txt = "Project homesite" },
] ]
[pade] [pade]
@ -605,7 +600,7 @@ properties = ["adhoc", "chat", "desktop", "extension", "graphical", "mobile", "o
resources = [ resources = [
{ url = "https://discourse.igniterealtime.org/c/pade", txt = "Support forum" }, { url = "https://discourse.igniterealtime.org/c/pade", txt = "Support forum" },
{ url = "xmpp:open_chat@conference.igniterealtime.org?join", txt = "Support group chat" }, { url = "xmpp:open_chat@conference.igniterealtime.org?join", txt = "Support group chat" },
{ url = "https://igniterealtime.org/projects/pade/", txt = "Project homepage" }, { url = "https://igniterealtime.org/projects/pade/", txt = "Project homesite" },
] ]
[pidgin] [pidgin]
@ -629,7 +624,7 @@ windows = "https://pidgin.im/install/"
properties = ["chat", "desktop", "openpgp", "otr", "plugin"] properties = ["chat", "desktop", "openpgp", "otr", "plugin"]
resources = [ resources = [
{ url = "https://flathub.org/apps/im.pidgin.Pidgin", txt = "Flathub package" }, { url = "https://flathub.org/apps/im.pidgin.Pidgin", txt = "Flathub package" },
{ url = "https://pidgin.im", txt = "Project homepage" }, { url = "https://pidgin.im", txt = "Project homesite" },
] ]
[poezio] [poezio]
@ -655,7 +650,7 @@ resources = [
{ url = "https://codeberg.org/poezio/poezio", txt = "Project repository" }, { url = "https://codeberg.org/poezio/poezio", txt = "Project repository" },
{ url = "https://codeberg.org/poezio/poezio/src/branch/main/plugins", txt = "Plugins list" }, { url = "https://codeberg.org/poezio/poezio/src/branch/main/plugins", txt = "Plugins list" },
{ url = "xmpp:poezio@muc.poez.io?join", txt = "Support group chat" }, { url = "xmpp:poezio@muc.poez.io?join", txt = "Support group chat" },
{ url = "https://poez.io", txt = "Project homepage" }, { url = "https://poez.io", txt = "Project homesite" },
] ]
[profanity] [profanity]
@ -678,7 +673,7 @@ resources = [
{ url = "https://profanity-im.github.io/plugins.html", txt = "Plugins list" }, { url = "https://profanity-im.github.io/plugins.html", txt = "Plugins list" },
{ url = "https://lists.posteo.de/listinfo/profanity", txt = "Mailing list" }, { url = "https://lists.posteo.de/listinfo/profanity", txt = "Mailing list" },
{ url = "xmpp:profanity@rooms.dismail.de?join", txt = "Support group chat" }, { url = "xmpp:profanity@rooms.dismail.de?join", txt = "Support group chat" },
{ url = "https://profanity-im.github.io", txt = "Project homepage" }, { url = "https://profanity-im.github.io", txt = "Project homesite" },
] ]
[prose] [prose]
@ -693,7 +688,7 @@ apple = "https://prose.org/downloads/"
browser = "https://prose.org/downloads/" browser = "https://prose.org/downloads/"
properties = ["chat", "desktop", "graphical", "mobile"] properties = ["chat", "desktop", "graphical", "mobile"]
resources = [ resources = [
{ url = "https://prose.org", txt = "Project homepage" }, { url = "https://prose.org", txt = "Project homesite" },
] ]
[psi] [psi]
@ -712,7 +707,7 @@ resources = [
{ url = "https://github.com/psi-im/psi", txt = "Project repository" }, { url = "https://github.com/psi-im/psi", txt = "Project repository" },
{ url = "https://liberapay.com/Psi", txt = "Liberapay profile" }, { url = "https://liberapay.com/Psi", txt = "Liberapay profile" },
{ url = "xmpp:psi-dev@conference.jabber.ru?join", txt = "Support group chat" }, { url = "xmpp:psi-dev@conference.jabber.ru?join", txt = "Support group chat" },
{ url = "https://psi-im.org", txt = "Project homepage" }, { url = "https://psi-im.org", txt = "Project homesite" },
] ]
[psi-plus] [psi-plus]
@ -733,7 +728,7 @@ resources = [
{ url = "https://github.com/psi-plus/main", txt = "Project repository" }, { url = "https://github.com/psi-plus/main", txt = "Project repository" },
{ url = "https://liberapay.com/Psi", txt = "Liberapay profile" }, { url = "https://liberapay.com/Psi", txt = "Liberapay profile" },
{ url = "xmpp:psi-dev@conference.jabber.ru?join", txt = "Support group chat" }, { url = "xmpp:psi-dev@conference.jabber.ru?join", txt = "Support group chat" },
{ url = "https://psi-plus.com", txt = "Project homepage" }, { url = "https://psi-plus.com", txt = "Project homesite" },
] ]
[reeder] [reeder]
@ -762,7 +757,7 @@ haiku = "https://depot.haiku-os.org/renga"
properties = ["chat", "desktop", "featured", "graphical", "haikudepot"] properties = ["chat", "desktop", "featured", "graphical", "haikudepot"]
resources = [ resources = [
{ url = "xmpp:renga@chat.jabberfr.org?join", txt = "Support group chat" }, { url = "xmpp:renga@chat.jabberfr.org?join", txt = "Support group chat" },
{ url = "https://pulkomandy.tk/projects/renga", txt = "Project homepage" }, { url = "https://pulkomandy.tk/projects/renga", txt = "Project homesite" },
] ]
[siskin] [siskin]
@ -777,7 +772,7 @@ resources = [
{ url = "https://itunes.apple.com/us/app/tigase-messenger/id1153516838", txt = "iOS package" }, { url = "https://itunes.apple.com/us/app/tigase-messenger/id1153516838", txt = "iOS package" },
{ url = "xmpp:tigase@muc.tigase.org?join", txt = "Support group chat (MUC)" }, { url = "xmpp:tigase@muc.tigase.org?join", txt = "Support group chat (MUC)" },
{ url = "xmpp:tigase@mix.tigase.im?join", txt = "Support group chat (MIX)" }, { url = "xmpp:tigase@mix.tigase.im?join", txt = "Support group chat (MIX)" },
{ url = "https://siskin.im", txt = "Project homepage" }, { url = "https://siskin.im", txt = "Project homesite" },
] ]
[spark] [spark]
@ -799,7 +794,7 @@ properties = ["chat", "desktop", "graphical", "omemo"]
resources = [ resources = [
{ url = "https://discourse.igniterealtime.org/c/spark", txt = "Support forum" }, { url = "https://discourse.igniterealtime.org/c/spark", txt = "Support forum" },
{ url = "xmpp:open_chat@conference.igniterealtime.org?join", txt = "Support group chat" }, { url = "xmpp:open_chat@conference.igniterealtime.org?join", txt = "Support group chat" },
{ url = "https://igniterealtime.org/projects/spark/", txt = "Project homepage" }, { url = "https://igniterealtime.org/projects/spark/", txt = "Project homesite" },
] ]
#[speeqe] #[speeqe]
@ -841,7 +836,7 @@ properties = ["chat", "desktop", "graphical"]
resources = [ resources = [
{ url = "xmpp:squawk@conference.macaw.me?join", txt = "Support group chat" }, { url = "xmpp:squawk@conference.macaw.me?join", txt = "Support group chat" },
{ url = "https://git.macaw.me/blue/squawk", txt = "Project repository" }, { url = "https://git.macaw.me/blue/squawk", txt = "Project repository" },
{ url = "https://macaw.me/projects/squawk/", txt = "Project homepage" }, { url = "https://macaw.me/projects/squawk/", txt = "Project homesite" },
] ]
[stork] [stork]
@ -856,7 +851,7 @@ properties = ["chat", "graphical", "mobile", "omemo"]
resources = [ resources = [
{ url = "xmpp:tigase@muc.tigase.org?join", txt = "Support group chat (MUC)" }, { url = "xmpp:tigase@muc.tigase.org?join", txt = "Support group chat (MUC)" },
{ url = "xmpp:tigase@mix.tigase.im?join", txt = "Support group chat (MIX)" }, { url = "xmpp:tigase@mix.tigase.im?join", txt = "Support group chat (MIX)" },
{ url = "https://stork.im", txt = "Project homepage" }, { url = "https://stork.im", txt = "Project homesite" },
] ]
[swift] [swift]
@ -875,7 +870,7 @@ linux = "https://swift.im/downloads.html"
windows = "https://swift.im/downloads.html" windows = "https://swift.im/downloads.html"
properties = ["chat", "desktop", "graphical"] properties = ["chat", "desktop", "graphical"]
resources = [ resources = [
{ url = "https://swift.im", txt = "Project homepage" }, { url = "https://swift.im", txt = "Project homesite" },
] ]
[uwpx] [uwpx]
@ -896,7 +891,7 @@ resources = [
{ url = "https://github.com/UWPX/UWPX-Client?tab=readme-ov-file#features", txt = "A complete list of features" }, { url = "https://github.com/UWPX/UWPX-Client?tab=readme-ov-file#features", txt = "A complete list of features" },
{ url = "https://apps.microsoft.com/detail/9n2s5v8hmvlm?hl=en-us&gl=US", txt = "Windows package" }, { url = "https://apps.microsoft.com/detail/9n2s5v8hmvlm?hl=en-us&gl=US", txt = "Windows package" },
{ url = "https://github.com/UWPX/UWPX-Client", txt = "Project repository" }, { url = "https://github.com/UWPX/UWPX-Client", txt = "Project repository" },
{ url = "https://uwpx.org", txt = "Project homepage" }, { url = "https://uwpx.org", txt = "Project homesite" },
] ]
[weechat] [weechat]
@ -933,7 +928,7 @@ resources = [
{ url = "https://www.xabber.com/rel/client/android/last/xabber.apk", txt = "Nightly package" }, { url = "https://www.xabber.com/rel/client/android/last/xabber.apk", txt = "Nightly package" },
{ url = "https://f-droid.org/packages/com.xabber.android", txt = "F-Droid package" }, { url = "https://f-droid.org/packages/com.xabber.android", txt = "F-Droid package" },
{ url = "https://web.xabber.com", txt = "Xabber Web" }, { url = "https://web.xabber.com", txt = "Xabber Web" },
{ url = "https://xabber.com", txt = "Project homepage" }, { url = "https://xabber.com", txt = "Project homesite" },
] ]
[xmpp-web] [xmpp-web]
@ -968,5 +963,5 @@ properties = ["chat", "graphical", "mobile"]
resources = [ resources = [
{ url = "https://play.google.com/store/apps/details?id=org.yaxim.androidclient", txt = "Play package" }, { url = "https://play.google.com/store/apps/details?id=org.yaxim.androidclient", txt = "Play package" },
{ url = "xmpp:yaxim@chat.yax.im?join", txt = "Support group chat" }, { url = "xmpp:yaxim@chat.yax.im?join", txt = "Support group chat" },
{ url = "https://yaxim.org", txt = "Project homepage" }, { url = "https://yaxim.org", txt = "Project homesite" },
] ]

View file

@ -12,7 +12,7 @@ div, h1, h2, h3, h4, h5 {
font-family: system-ui; font-family: system-ui;
} }
h1, h2, h3 { h1, h2 {
text-align: center; text-align: center;
margin: 0; margin: 0;
padding: 1em; padding: 1em;
@ -58,12 +58,64 @@ div:has(#bar) {
} }
*/ */
#subject { #conference,
#pubsub {
text-align: initial;
}
#subject pre {
margin: auto; margin: auto;
max-height: 30vh; max-height: 30vh;
overflow: auto; overflow: auto;
padding: 1em; padding: 1em;
width: 90vw; }
#entries,
#messages,
#subject {
padding: 0 2em 0 2em;
}
.entry,
.message,
#subject {
margin-bottom: 1em;
}
.entry > .link a,
.entry > a,
.message > a {
text-decoration: none;
}
.entry .summary {
padding: 1em 0 0 1em;
}
#subject pre,
#vcard-note,
#vcard-note-full {
color: #505050;
margin-left: 5em;
margin-right: 5em;
/* overflow: hidden; */
padding: 0 2em 2em 2em;
text-align: center;
/* text-overflow: ellipsis;
white-space: nowrap; */
}
#subject pre {
font-size: 120%;
text-align: initial;
margin: unset;
}
#subject pre,
.message .content {
overflow-wrap: break-word;
padding: 1em 0 0 1em;
white-space: pre-wrap;
} }
#bar, #bar,
@ -156,14 +208,21 @@ label,
#input, #input,
.vcard-link, .vcard-link,
.system-menu { .system-menu {
border-radius: 2em;
font-size: 1.34em; font-size: 1.34em;
}
#download,
#input,
.vcard-link {
border-radius: 2em;
padding: 0.5em; padding: 0.5em;
} }
/*
#system-title > * { #system-title > * {
width: 18%; width: 18%;
} }
*/
#profile-top, #profile-top,
#system-title { #system-title {
@ -271,17 +330,20 @@ h1 {
text-overflow: ellipsis; text-overflow: ellipsis;
} }
/*
#count { #count {
margin: 1em; margin: 1em;
/* min-height: 1.5em; */
}
/*
#count > a:before {
content: ' • ';
} }
*/ */
#count > a:after {
content: ' • ';
}
#count > a:last-child:after {
content: '';
}
#graphics, #graphics,
#photo { #photo {
border-radius: 50px; border-radius: 50px;
@ -317,12 +379,26 @@ h1 {
display: grid; display: grid;
} }
#vcard-links-extra > a {
border: 1px solid #434a53;
border-radius: 1em;
margin: 1em auto;
padding: 1em;
text-decoration: none;
width: 50%;
}
#vcard-links > a:hover,
#vcard-links-extra > a:hover {
background: #ebebeb;
}
#vcard-links { #vcard-links {
padding-bottom: 1em; padding-bottom: 1em;
} }
.vcard-link { .vcard-link {
filter: drop-shadow(0 0 0 black); /* filter: drop-shadow(0 0 0 black); */
margin: 1em; margin: 1em;
outline: solid; outline: solid;
outline-color: #cfcfcf; outline-color: #cfcfcf;
@ -468,25 +544,6 @@ h1 {
display: block; /* Show details upon checked checkbox */ display: block; /* Show details upon checked checkbox */
} }
#vcard-note-full {
color: #505050;
margin-left: 5em;
margin-right: 5em;
padding: 0 2em 2em 2em;
text-align: center;
}
#vcard-note {
color: #505050;
margin-left: 5em;
margin-right: 5em;
/* overflow: hidden; */
padding: 2em;
text-align: center;
/* text-overflow: ellipsis;
white-space: nowrap; */
}
#vcard-note:hover { #vcard-note:hover {
overflow: unset; overflow: unset;
white-space: unset; white-space: unset;
@ -517,7 +574,7 @@ h1 {
padding: 1em; padding: 1em;
text-align: center; text-align: center;
text-decoration: none; text-decoration: none;
width: 12.2%; /* width: 12.2%; */
} }
#software-menu img { #software-menu img {
@ -653,11 +710,6 @@ h1 {
width: 80%; width: 80%;
} }
#entries {
/* padding: 2em; */
text-align: left;
}
/* /*
.entry > * { .entry > * {
margin-bottom: 1em; margin-bottom: 1em;
@ -679,6 +731,7 @@ h1 {
text-decoration: none; text-decoration: none;
} }
.entry > .link a,
#count > a, #count > a,
#preview { #preview {
color: #5c5656; color: #5c5656;
@ -688,6 +741,9 @@ h1 {
#count > a:hover, #count > a:hover,
#preview:hover { #preview:hover {
color: #000; color: #000;
}
#preview:hover {
text-decoration: underline; text-decoration: underline;
} }
@ -890,10 +946,16 @@ h1 {
} }
#action > #add, #action > #add,
#action-bar > #add { #action-bar > #add,
#system-title > h1 {
display: none; display: none;
} }
#system-title {
padding-bottom: 2em;
padding-top: 2em;
}
body { body {
background: #f5f5f5; background: #f5f5f5;
} }
@ -916,6 +978,7 @@ h1 {
padding-bottom: unset; padding-bottom: unset;
} }
#container-of-selection,
#profile { #profile {
border-radius: unset; border-radius: unset;
filter: unset; filter: unset;
@ -995,3 +1058,11 @@ h1 {
} }
} }
@media (max-width: 480px) {
#security-notices > .notice {
width: 300px;
}
}

89
fasi.py
View file

@ -109,7 +109,6 @@ class HttpInstance:
exception = jid_vcard = messages_10 = note = node_title = \ exception = jid_vcard = messages_10 = note = node_title = \
node_note = number_of_pages = page_number = previous = \ node_note = number_of_pages = page_number = previous = \
selection = services_sorted = subject = None selection = services_sorted = subject = None
node_name = 'urn:xmpp:microblog:0'
link_href = 'xmpp:{}?join'.format(jid_bare) link_href = 'xmpp:{}?join'.format(jid_bare)
link_text = 'Join' link_text = 'Join'
xmpp_uri = '{}'.format(jid_bare) xmpp_uri = '{}'.format(jid_bare)
@ -119,7 +118,7 @@ class HttpInstance:
jid_details = Data.open_file_toml(filename) jid_details = Data.open_file_toml(filename)
else: else:
jid_details = await FileUtilities.cache_jid_data( jid_details = await FileUtilities.cache_jid_data(
jabber_id, password, jid_bare, node_name, alias=alias) jabber_id, password, jid_bare, alias=alias)
count = jid_details['count'] count = jid_details['count']
items = jid_details['items'] items = jid_details['items']
@ -157,7 +156,7 @@ class HttpInstance:
if jid_kind: if jid_kind:
# Action and instance type # Action and instance type
action, instance = XmppUtilities.set_action_instance_type(jid_kind, node_name) action, instance = XmppUtilities.set_action_instance_type(jid_kind)
else: # jid_info['error'] else: # jid_info['error']
action = 'Contact' action = 'Contact'
instance = view_href = '' instance = view_href = ''
@ -166,10 +165,10 @@ class HttpInstance:
# Query URI links # Query URI links
print('Query URI links') print('Query URI links')
links = XmppUtilities.get_query_uri_links(jid_bare, jid_kind, node_name) links = XmppUtilities.get_query_uri_links(jid_bare, jid_kind)
link_href = XmppUtilities.get_link_href(jid_bare, jid_kind, node_name) link_href = XmppUtilities.get_link_href(jid_bare, jid_kind)
view_href = XmppUtilities.get_view_href(jid_bare, jid_kind, node_name) view_href = XmppUtilities.get_view_href(jid_bare, jid_kind)
xmpp_uri = XmppUtilities.get_xmpp_uri(jid_bare, jid_kind, node_name) xmpp_uri = XmppUtilities.get_xmpp_uri(jid_bare, jid_kind)
# Graphic files # Graphic files
filename, filepath, filetype, selection = FileUtilities.handle_photo(jid_bare, jid_vcard, link_href) filename, filepath, filetype, selection = FileUtilities.handle_photo(jid_bare, jid_vcard, link_href)
@ -202,7 +201,6 @@ class HttpInstance:
'messages' : messages_10, 'messages' : messages_10,
'node_title' : node_title, 'node_title' : node_title,
'node_note' : node_note, 'node_note' : node_note,
'node_name' : node_name,
'number_of_pages' : number_of_pages, 'number_of_pages' : number_of_pages,
'page_number' : page_number, 'page_number' : page_number,
'previous' : previous, 'previous' : previous,
@ -241,7 +239,7 @@ class HttpInstance:
directory = 'xep_0060/{}/{}/'.format(jid_bare, node_name_vcard4) directory = 'xep_0060/{}/{}/'.format(jid_bare, node_name_vcard4)
filename = directory + item_id_vcard4 + '.xml' filename = directory + item_id_vcard4 + '.xml'
if os.path.exists(filename) and os.path.getsize(filename) > 0: if os.path.exists(filename) and os.path.getsize(filename) > 0:
jid_details = Data.open_file_xml(filename) xml_data = Data.open_file_xml(filename)
else: else:
await FileUtilities.cache_vcard_data( await FileUtilities.cache_vcard_data(
jabber_id, password, jid_bare, node_name_vcard4, item_id_vcard4) jabber_id, password, jid_bare, node_name_vcard4, item_id_vcard4)
@ -255,13 +253,30 @@ class HttpInstance:
# Action and instance type # Action and instance type
action = 'Profile' action = 'Profile'
filename = 'details/{}.toml'.format(jid_bare)
if os.path.exists(filename) and os.path.getsize(filename) > 0:
jid_details = Data.open_file_toml(filename)
else:
jid_details = await FileUtilities.cache_jid_data(
jabber_id, password, jid_bare, alias=alias)
# Set node name to 'urn:xmpp:microblog:0'
jid_kind = jid_details['kind']
nodes = jid_details['nodes']
if (jid_kind not in ('conference', 'mix', 'muc') and
'@' in jid_bare and
'urn:xmpp:microblog:0' in nodes):
node_name = 'urn:xmpp:microblog:0'
# Query URI links # Query URI links
print('Query URI links') print('Query URI links')
jid_kind = 'account' jid_kind = 'account'
link_href = XmppUtilities.get_link_href(jid_bare, jid_kind)
xmpp_uri = XmppUtilities.get_xmpp_uri(jid_bare, jid_kind, node_name_vcard4) xmpp_uri = XmppUtilities.get_xmpp_uri(jid_bare, jid_kind, node_name_vcard4)
links = XmppUtilities.get_query_uri_links(jid_bare, jid_kind, node_name)
# Graphic files # Graphic files
#filename, filepath, filetype, selection = FileUtilities.handle_photo(jid_bare, jid_vcard, link_href) filename, filepath, filetype, selection = FileUtilities.handle_photo(jid_bare, jid_vcard, link_href)
#except Exception as e: #except Exception as e:
else: else:
@ -297,11 +312,12 @@ class HttpInstance:
'chat_client' : chat_client, 'chat_client' : chat_client,
'entries' : entries, 'entries' : entries,
'exception' : exception, 'exception' : exception,
#'filename' : filename, 'filename' : filename,
'jid_bare' : jid, 'jid_bare' : jid,
'jid_note' : note, 'jid_note' : note,
#'jid_title' : title, #'jid_title' : title,
#'node_title' : node_title, #'node_title' : node_title,
'links' : links,
'node_name' : node_name_vcard4, 'node_name' : node_name_vcard4,
'number_of_pages' : number_of_pages, 'number_of_pages' : number_of_pages,
'page_number' : page_number, 'page_number' : page_number,
@ -658,7 +674,7 @@ class HttpInstance:
'type' : jid_details['image_type']} 'type' : jid_details['image_type']}
messages = jid_details['messages'] messages = jid_details['messages']
#note = nodes[node_name]['title'] if node_name in nodes else jid_details['note'] #note = nodes[node_name]['title'] if node_name in nodes else jid_details['note']
note = jid_details['note'] #note = jid_details['note']
# vCard4 # vCard4
node_name_vcard4 = 'urn:xmpp:vcard4' node_name_vcard4 = 'urn:xmpp:vcard4'
@ -673,7 +689,7 @@ class HttpInstance:
vcard_info = Syndication.extract_vcard4_items(child_element) vcard_info = Syndication.extract_vcard4_items(child_element)
title = vcard_info['fn'] title = vcard_info['fn']
alias = vcard_info['alias'] alias = vcard_info['alias']
note = vcard_info['note'] #note = vcard_info['note']
else: else:
await FileUtilities.cache_vcard_data( await FileUtilities.cache_vcard_data(
jabber_id, password, jid_bare, node_name_vcard4, item_id_vcard4) jabber_id, password, jid_bare, node_name_vcard4, item_id_vcard4)
@ -690,12 +706,14 @@ class HttpInstance:
await FileUtilities.cache_node_data( await FileUtilities.cache_node_data(
jabber_id, password, jid_bare, node_name) jabber_id, password, jid_bare, node_name)
# Node items # JID or node items
entries = [] if jid_kind in ('mix', 'muc', 'conference', 'server'):
node_items = os.listdir(directory) count_item = jid_details['count']
if 'urn:xmpp:avatar:metadata.xml' in node_items: elif jid_kind in ('account', 'pubsub'):
node_items.remove('urn:xmpp:avatar:metadata.xml') node_items = os.listdir(directory)
count_item = len(node_items) if 'urn:xmpp:avatar:metadata.xml' in node_items:
node_items.remove('urn:xmpp:avatar:metadata.xml')
count_item = len(node_items)
# if ('@' in jid_bare and # if ('@' in jid_bare and
# 'urn:xmpp:microblog:0' not in nodes and # 'urn:xmpp:microblog:0' not in nodes and
@ -747,8 +765,8 @@ class HttpInstance:
jid_vcard = jid_kind = links = message = selection = url = \ jid_vcard = jid_kind = links = message = selection = url = \
vcard4 = None vcard4 = None
note_500 = note[:500] #note_500 = note[:500]
note = note_500 + '' if note_500 < note else note_500 #note = note_500 + ' …' if note_500 < note else note_500
# NOTE Handling of variables "title" and "note" in case of '/j/{jid}/{node_name}' is confusing. # NOTE Handling of variables "title" and "note" in case of '/j/{jid}/{node_name}' is confusing.
# TODO Add new keys that are of 'node' and be utilized for nodes, instead of reusing a variable for several roles. # TODO Add new keys that are of 'node' and be utilized for nodes, instead of reusing a variable for several roles.
@ -1555,24 +1573,17 @@ class Syndication:
else: else:
url = '' url = ''
extra_resources = { vcard['extras'] = {}
'code' : [], for element in xml_data.findall(namespace + "group"):
'gallery' : [], category = '?'
'journal' : [], for i in element.find(namespace + 'x-ablabel'):
'movim' : [], txt = i.text
'peertube' : [], for i in element.find(namespace + 'url'):
} uri = i.text
for res in extra_resources: for i in element.find(namespace + 'url/' + namespace + 'parameters/' + namespace + 'type'):
#for element in xml_data.findall(namespace + 'group[contains(@name, "{}")]'.format(res)): category = i.text
#for element in xml_data.findall(namespace + 'group[strats-with(@name, "{}")]'.format(res)): if not category in vcard['extras']: vcard['extras'][category] = []
matching_elements = [group for group in xml_data.findall(namespace + "group") if res in group.get('name', '')] vcard['extras'][category].append({'label' : txt, 'uri' : uri})
for element in matching_elements:
for i in element.find(namespace + 'x-ablabel'):
txt = i.text
for i in element.find(namespace + 'url'):
uri = i.text
extra_resources[res].append({'label' : txt, 'uri' : uri})
vcard[res] = extra_resources[res]
vcard['alias'] = alias vcard['alias'] = alias
vcard['email'] = email vcard['email'] = email

17
img/poezio-small.svg Normal file
View file

@ -0,0 +1,17 @@
<?xml version="1.0"?>
<svg viewBox="0 -3.3 162.31 162.31" xmlns="http://www.w3.org/2000/svg">
<linearGradient id="a" gradientUnits="userSpaceOnUse" x1="-1746" x2="-1587" y1="-753" y2="-1112">
<stop offset="0" stop-color="#c6b8a3"/>
<stop offset="1" stop-color="#77695c"/>
</linearGradient>
<g transform="translate(500 303)">
<path d="m-1521-1142.2c-17.827-.2414-39.066 2.9981-62.785 9.3535-13.901 3.7246-39.093 17.053-56.918 33.52-51.059 47.17-91.261 130.22-108.24 184.17-13.324 42.33-24.891 85.997-27.275 130.31-4.3362 80.586 58.173 59.693 84.348 38.385 81.527-66.369 134.42-161.49 189.8-251.87 6.0591-9.8888 13.177-23.153 19.6-37.438l-86.26 15.389c32.221-11.002 65.773-22.199 95.547-38.42 8.1982-23.203 12.362-45.896 5.5645-58.891-8.5603-16.365-27.326-24.153-53.381-24.506z" fill="url(#a)" transform="scale(.26458)"/>
<path d="m-424.55-272.28c-.63089-.36425-7.5629 17.611-11.896 29.094-5.9646 15.809-13.932 33.535-21.722 50.624l3.2103-.50809c1.815-4.0728 3.1592-8.3581 4.9451-12.405 3.2298-7.3189 6.1711-14.688 9.0878-21.999 3.2027-8.028 6.3879-16.108 9.5072-24.281 2.5993-6.8106 7.2954-20.278 6.8669-20.525z" fill="#39332f" opacity=".5"/>
<path d="m-1524.4-1142.2c-17.11.1804-37.168 3.4031-59.404 9.3614-13.901 3.7246-39.092 17.051-56.916 33.518-51.059 47.17-91.261 130.22-108.24 184.17-13.324 42.331-24.891 85.995-27.275 130.31-4.3362 80.586 58.173 59.695 84.348 38.387 81.527-66.369 134.42-161.49 189.8-251.87 6.0592-9.8889 13.177-23.154 19.6-37.439l-20.914 3.7305c-4.1436 8.2332-8.3026 15.753-11.941 21.691-55.663 90.845-107.84 183.78-185.62 247.09-9.7204 7.9131-29.956 16.035-39.449 14.904-4.7468-.56542-6.5747-1.3447-9.2872-5.6777-2.7125-4.3332-5.768-14.192-4.8125-31.949 2.2441-41.705 13.281-83.879 26.428-125.65 16.084-51.101 56.473-132.94 103.04-175.96 15.039-13.893 40.458-26.857 48.986-29.143 22.545-6.0409 42.327-8.8545 57.644-8.6953 3.5348.038 6.8309.2317 9.8691.5821 16.204 1.8676 23.269 6.6131 27.012 13.768 1.125 2.1507 1.06 21.752-6.2598 42.793-2.3806 6.8432-5.2161 13.866-8.252 20.719 7.7933-3.486 15.434-7.2044 22.838-11.238 8.1982-23.204 12.362-45.896 5.5645-58.891-8.5602-16.365-27.325-24.153-53.381-24.506-1.1142-.015-2.2421-.018-3.3828-.01z" fill="#77695c" transform="scale(.26458)"/>
<g fill="#39332f">
<path d="m-424.83-272.31c-.63089-.36426-8.5433 17.646-12.876 29.13-5.9646 15.809-13.554 32.543-21.344 49.632-4.7386 10.396-10.324 20.692-15.54 31.032-2.4827 4.9216-7.3389 14.817-6.642 15.004.66387.17788.35257-2.5702 5.4039-4.3181.5507-.19056-.92829-3.1055.90094-5.4384 4.7387-8.0609 13.279-23.609 18.71-35.795 1.815-4.0728 3.1592-8.3581 4.9451-12.405 3.2298-7.3189 6.1711-14.688 9.0878-21.999 3.2027-8.028 6.3879-16.108 9.5072-24.281 2.5993-6.8106 8.2758-20.313 7.8473-20.561z"/>
<path d="m-469.06-191.1c4.69-.93912 6.4839.75453 7.7485 2.9293l2.4805-4.7483c-3.4097.43204-6.8193.61843-10.229 1.819z"/>
<path d="m-1521-1146c-1.4099-.02-2.8377-.018-4.2852 0-17.37.2684-37.424 3.5618-59.535 9.4864-14.975 4.0125-40.12 17.411-58.502 34.392-51.957 47.999-92.12 131.29-109.28 185.81-13.359 42.443-25.033 86.409-27.445 131.24-1.1097 20.624 1.9973 35.217 8.2461 45.199 6.2489 9.9824 15.75 14.959 25.814 16.158 20.13 2.398 42.688-8.6395 56.449-19.842 82.277-66.98 135.32-162.54 190.64-252.82 6.4896-10.591 14.123-24.881 20.879-40.219l-9.0215 1.6094c-6.0697 13.232-12.673 25.472-18.303 34.66-55.435 90.473-108.18 185.15-188.96 250.91-12.414 10.106-34.203 20.171-50.787 18.195-8.2922-.98781-15.239-4.5609-20.309-12.66-5.0701-8.0993-8.1522-21.115-7.0938-40.783 2.3564-43.792 13.819-87.165 27.107-129.38 16.802-53.381 57.038-136.19 107.2-182.53 17.267-15.952 42.508-29.206 55.334-32.643 28.904-7.7446 53.96-10.738 73.154-8.5253 19.194 2.2122 32.166 9.3198 38.682 21.775 5.575 10.658 2.431 32.318-5.3809 54.774-.5792 1.6649-1.1873 3.3352-1.8086 5.0058 3.3511-1.7412 6.6642-3.533 9.9219-5.3984 7.4407-22.152 11.44-43.586 3.9629-57.879-7.9019-15.106-23.817-23.401-44.506-25.785-3.8792-.4471-7.9382-.6983-12.168-.7578z" transform="scale(.26458)"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.9 KiB

157
img/profanity-small.svg Normal file
View file

@ -0,0 +1,157 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
version="1.1"
id="svg1"
width="320"
height="320"
viewBox="0 0 320 320"
sodipodi:docname="profanity_logo_mouth-small.svg"
inkscape:version="1.4 (e7c3feb100, 2024-10-09)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs1">
<linearGradient
id="linearGradient17"
inkscape:collect="always">
<stop
style="stop-color:#150000;stop-opacity:1"
offset="0"
id="stop17" />
<stop
style="stop-color:#8e2215;stop-opacity:1"
offset="1"
id="stop18" />
</linearGradient>
<linearGradient
id="linearGradient14"
inkscape:collect="always">
<stop
style="stop-color:#711406;stop-opacity:1"
offset="0"
id="stop14" />
<stop
style="stop-color:#b63224;stop-opacity:1"
offset="1"
id="stop15" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient14"
id="linearGradient15"
x1="5.3097906"
y1="139.09752"
x2="212.27319"
y2="263.68884"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(35.388)" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient17"
id="linearGradient18"
x1="5.9335938"
y1="139.64258"
x2="228.09921"
y2="90.950676"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(35.388)" />
</defs>
<sodipodi:namedview
id="namedview1"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="true"
inkscape:deskcolor="#d1d1d1"
inkscape:zoom="2.0970359"
inkscape:cx="108.72489"
inkscape:cy="171.19402"
inkscape:window-width="1916"
inkscape:window-height="1032"
inkscape:window-x="0"
inkscape:window-y="22"
inkscape:window-maximized="1"
inkscape:current-layer="g1"
showgrid="false" />
<g
inkscape:groupmode="layer"
inkscape:label="Image"
id="g1">
<path
style="display:inline;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.709875px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 96.11876,250.65141 10.30773,0.989 c 0,0 2.01359,2.94066 5.47636,5.73454 2.08543,1.68259 4.44397,3.20116 6.86956,4.87952 4.1316,1.22005 11.31757,2.55332 15.34605,4.69887 3.44373,1.8341 3.10201,5.25518 4.91414,5.91443 6.71186,0.32323 9.79152,-0.53789 17.19007,-1.45038 5.01005,-0.6179 6.80627,1.5697 9.12904,1.69725 3.43352,0.18855 7.85063,-0.82768 12.39035,-2.72012 5.9106,-2.46392 10.13718,-7.16963 13.51407,-11.11984 1.64683,-3.26786 0.57353,-11.09563 2.87816,-15.80744 2.81804,-5.76145 10.7488,-13.88513 10.7488,-13.88513 l 11.68057,0.50579 c 0,0 -4.46149,8.7421 -6.36301,12.5469 -2.04588,4.09365 -4.66475,7.54243 -7.19546,11.35543 -3.42291,5.15723 -9.9502,13.93028 -9.9502,13.93028 0,0 -4.52015,5.26449 -7.56653,7.42051 -2.73827,1.93795 -8.49982,3.8002 -8.49982,3.8002 0,0 -7.30003,3.44603 -11.97413,3.7889 -5.6156,0.41192 -12.76047,0.27714 -18.2468,-0.98975 -5.46887,-1.26286 -9.92584,-3.48833 -14.99832,-5.89109 -4.1188,-1.95102 -7.05459,-3.48608 -10.83834,-6.02658 -3.89479,-2.61505 -8.76496,-5.75028 -12.35572,-8.76927 -3.76459,-3.16514 -12.45657,-10.60202 -12.45657,-10.60202 z"
id="path32"
sodipodi:nodetypes="ccscscssscsccsscscsssssc" />
<path
style="display:inline;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.709875px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 90.74262,76.487379 7.88633,5.087962 c 0,0 5.80212,-2.561462 7.88633,-4.833565 1.66631,-1.816519 3.30717,-6.614341 3.30717,-6.614341 0,0 7.67965,-3.348471 11.19351,-5.596752 2.74423,-1.755848 7.63194,-6.105552 7.63194,-6.105552 l 4.57916,-3.56157 c 4.37511,2.91073 8.5903,6.118248 13.73748,5.851152 5.09101,-0.264182 9.51765,-3.7242 14.50068,-4.83356 0,0 9.92795,4.978064 15.26387,6.359947 6.60872,1.711508 20.35184,2.289581 20.35184,2.289581 0,0 11.59079,2.120719 17.29905,3.561572 6.00885,1.516725 17.80786,5.342353 17.80786,5.342353 0,0 5.71393,2.855215 8.39512,4.579159 2.13983,1.375865 6.10555,4.579167 6.10555,4.579167 0,0 5.77504,3.490857 8.14073,5.851148 1.3329,1.329857 3.30718,4.579166 3.30718,4.579166 l -2.79838,8.395124 6.61435,6.35995 7.63194,-20.606229 c 0,0 -3.85873,-6.301677 -5.85116,-9.412724 -2.57491,-4.020573 -7.88634,-11.9567 -7.88634,-11.9567 0,0 -10.90035,-8.737478 -16.79025,-12.465493 -4.87237,-3.083967 -9.79623,-6.308889 -15.26388,-8.140732 -7.73326,-2.590897 -24.1678,-3.815968 -24.1678,-3.815968 0,0 -12.2959,-1.950384 -18.69824,-2.035184 -6.40234,-0.0848 -13.13482,1.152918 -19.71584,1.526388 -5.2241,0.296465 -7.65187,0.05103 -15.68731,0.566749 -6.12895,0.628843 -12.27062,0.09951 -18.402,1.722832 0,0 -12.61136,2.51009 -18.57105,4.833559 -4.20597,1.639762 -8.01222,4.164448 -11.9567,6.359948 -4.71479,2.624263 -9.83235,4.703531 -13.99188,8.140731 -2.68729,2.220621 -5.12625,4.867005 -6.86874,7.886336 -1.5683,2.717499 -3.05278,8.903921 -3.05278,8.903921 l 8.14074,5.596757 z"
id="path1"
sodipodi:nodetypes="ccscsccscscscscsccccscsscssscssssccc" />
<g
id="g16"
style="display:inline;fill:none;fill-opacity:1"
transform="translate(35.388)">
<path
style="display:inline;fill:none;fill-opacity:1;stroke:none;stroke-width:0.709875px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 60.730693,250.65131 10.307729,0.989 c 0,0 2.013595,2.94066 5.476365,5.73454 2.08543,1.68259 4.44397,3.20116 6.86956,4.87952 4.1316,1.22005 11.317564,2.55332 15.346044,4.69887 3.443729,1.8341 3.102009,5.25518 4.914139,5.91443 6.71186,0.32323 9.79152,-0.53789 17.19007,-1.45038 5.01005,-0.6179 6.80627,1.5697 9.12904,1.69725 3.43353,0.18855 7.85064,-0.82768 12.39035,-2.72012 5.91061,-2.46392 10.13718,-7.16963 13.51407,-11.11984 1.64683,-3.26786 0.57354,-11.09563 2.87817,-15.80744 2.81804,-5.76145 10.74879,-13.88513 10.74879,-13.88513 l 11.68057,0.50579 c 0,0 -4.46149,8.7421 -6.36301,12.5469 -2.04588,4.09365 -4.66474,7.54243 -7.19546,11.35543 -3.4229,5.15723 -9.9502,13.93028 -9.9502,13.93028 0,0 -4.52015,5.26449 -7.56653,7.42051 -2.73827,1.93795 -8.49982,3.8002 -8.49982,3.8002 0,0 -7.30003,3.44603 -11.97412,3.7889 -5.61561,0.41192 -12.76048,0.27714 -18.2468,-0.98975 -5.46888,-1.26286 -9.92584,-3.48833 -14.99832,-5.89109 -4.1188,-1.95102 -7.054593,-3.48608 -10.838343,-6.02658 -3.89479,-2.61505 -8.764963,-5.75028 -12.355723,-8.76927 -3.76459,-3.16514 -12.456571,-10.60202 -12.456571,-10.60202 z"
id="path3"
sodipodi:nodetypes="ccscscssccsccsscscsssssc" />
<path
style="display:inline;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.0732;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1"
d="m 62.37503,56.15363 c 0,0 1.82029,4.437958 3.94305,7.04432 2.36359,2.902048 8.11637,6.929485 8.11637,6.929485"
id="path4"
sodipodi:nodetypes="csc" />
<path
style="display:inline;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.0732;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1"
d="m 93.2599,58.425131 c 0,0 -0.04606,-4.522262 -0.22868,-7.099688 -0.12953,-1.82819 -0.71954,-6.116139 -0.71954,-6.116139"
id="path5"
sodipodi:nodetypes="csc" />
<path
style="display:inline;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.0732;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1"
d="m 124.76956,56.226134 -0.0783,-6.969385 -0.17989,-6.116139"
id="path6"
sodipodi:nodetypes="ccc" />
<path
style="display:inline;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.0732;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1"
d="m 162.76498,64.729313 c 0,0 0.77246,-8.298256 0.96162,-12.459465 0.14774,-3.249902 0.13492,-9.758841 0.13492,-9.758841"
id="path7"
sodipodi:nodetypes="csc" />
<path
style="display:inline;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.0732;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1"
d="m 196.79984,73.434606 c 0,0 0.95446,-5.949416 1.37502,-8.932479 0.4283,-3.037894 1.16927,-9.129238 1.16927,-9.129238"
id="path8"
sodipodi:nodetypes="csc" />
<path
style="display:inline;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.0732;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1"
d="m 212.08975,83.080977 c 0,0 2.6988,-4.288629 3.66902,-6.616399 0.76288,-1.830327 1.66394,-5.711395 1.66394,-5.711395"
id="path9"
sodipodi:nodetypes="csc" />
</g>
<path
id="path2"
style="display:inline;fill:#b01219;fill-opacity:1;stroke:none;stroke-width:0.709875px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 172.27862,0 C 123.71855,0 102.55681,11.624841 70.893859,57.664062 54.324431,81.756684 43.118009,111.39339 35.388,140.5957 c 9.441417,38.90037 15.336571,73.69049 34.400391,106.07227 11.35828,19.29315 23.120255,40.45975 40.796879,54.19922 20.17821,15.68388 42.16528,19.26946 65.41015,17.76172 22.05544,-1.43059 42.61177,-24.99966 53.3086,-47.99024 11.63567,-25.00841 8.22581,-54.92891 18.14843,-87.8125 2.21072,-7.32635 2.51706,-15.17884 5.08789,-22.38672 6.65031,-18.64557 21.24354,-32.31596 26.45704,-53.16992 5.36019,-21.440727 9.74714,-44.205204 -0.94727,-58.867186 C 260.68482,24.594622 194.82334,0 172.27862,0 Z m 8.64844,39.345703 c 6.40234,0.0848 18.69727,2.035156 18.69727,2.035156 0,0 16.43471,1.22551 24.16797,3.816407 5.46765,1.831843 10.3913,5.056658 15.26367,8.140625 5.8899,3.728015 16.79101,12.464843 16.79101,12.464843 0,0 5.31181,7.936459 7.88672,11.957032 1.99243,3.111047 5.85157,9.412109 5.85157,9.412109 l -7.63282,20.605465 -19.52734,53.73828 -25.86133,68.57227 c 0,0 -4.46176,8.74208 -6.36328,12.54688 -2.04588,4.09365 -4.66459,7.54246 -7.19531,11.35546 -3.4229,5.15723 -9.95117,13.92969 -9.95117,13.92969 0,0 -4.52003,5.26586 -7.56641,7.42188 -2.73827,1.93795 -8.5,3.79882 -8.5,3.79882 0,0 -7.29857,3.4462 -11.97266,3.78907 -5.61561,0.41192 -12.76172,0.27665 -18.24804,-0.99024 -5.46888,-1.26286 -9.92557,-3.48786 -14.99805,-5.89062 -4.1188,-1.95102 -7.05414,-3.48489 -10.83789,-6.02539 -3.89479,-2.61505 -8.76471,-5.75054 -12.35547,-8.76953 -3.76459,-3.16514 -12.457031,-10.60352 -12.457031,-10.60352 0,0 -26.118891,-28.18205 -34.816407,-45.05078 -10.527547,-20.41806 -19.980468,-65.95703 -19.980468,-65.95703 0,0 6.862625,-21.01844 15.269531,-37.99414 8.406905,-16.975708 18.358428,-29.908831 19.142578,-31.267581 1.742491,-3.019331 4.181851,-5.664144 6.869141,-7.884765 4.15953,-3.4372 9.275444,-5.516362 13.990234,-8.140625 3.944482,-2.1955 7.751062,-4.721566 11.957032,-6.361328 5.95969,-2.323469 18.57226,-4.832032 18.57226,-4.832032 6.13138,-1.623323 12.27145,-1.095766 18.4004,-1.724609 8.03544,-0.515715 10.4634,-0.269941 15.6875,-0.566406 6.58102,-0.37347 13.31445,-1.61019 19.71679,-1.525391 z" />
<path
id="path13"
style="display:inline;fill:#980f16;fill-opacity:1;stroke:none;stroke-width:0.709875px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 113.92068,258.90623 c 2.08543,1.68259 2.42608,1.66978 4.85167,3.34814 4.1316,1.22005 11.31756,2.55332 15.34604,4.69887 3.44373,1.8341 3.10201,5.25518 4.91414,5.91443 6.71186,0.32323 9.79152,-0.53789 17.19007,-1.45038 5.01005,-0.6179 6.80627,1.5697 9.12904,1.69725 3.43353,0.18855 7.85064,-0.82768 12.39035,-2.72012 5.91061,-2.46392 10.13718,-7.16963 13.51407,-11.11984 1.64683,-3.26786 0.57354,-11.09563 2.87817,-15.80744 2.81804,-5.76145 10.74879,-13.88513 10.74879,-13.88513 l 11.68057,0.50579 1.11015,-2.94361 -23.46762,-4.7651 c 0,0 0.6542,5.94604 0.33719,8.89678 -0.36626,3.40913 -2.5641,9.96153 -2.5641,9.96153 0,0 -2.60095,7.53206 -5.18703,10.42735 -4.28818,4.8009 -10.071,8.56525 -16.21336,10.491 -4.55277,1.42738 -10.95866,0.94817 -16.4518,0.95372 -5.6915,0.006 -11.38347,-0.39885 -17.04786,-0.95372 -7.75798,-0.75995 -23.15848,-3.24952 -23.15848,-3.24952 z"
sodipodi:nodetypes="ccscssscsccccscsssscc" />
<path
id="path10"
style="display:inline;mix-blend-mode:normal;fill:url(#linearGradient15);stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 41.321594,139.64258 c 0,0 9.452921,45.53897 19.980468,65.95703 8.697517,16.86873 34.816407,45.05078 34.816407,45.05078 l 10.308591,0.99023 c 0,0 2.0138,2.9405 5.47656,5.73438 0.64987,0.52433 1.33263,1.03093 2.0293,1.5332 0.0208,0.003 15.39375,2.48861 23.14649,3.24805 5.66439,0.55487 11.35537,0.95888 17.04687,0.95313 5.49314,-0.006 11.90036,0.47425 16.45313,-0.95313 6.14236,-1.92575 11.92471,-5.69129 16.21289,-10.49219 2.58608,-2.89529 5.1875,-10.42578 5.1875,-10.42578 0,0 2.19819,-6.55376 2.56445,-9.96289 0.31701,-2.95074 -0.33789,-8.89648 -0.33789,-8.89648 l 23.46738,4.76528 14.16213,-15.5109 13.03486,-56.84789 z"
sodipodi:nodetypes="csccscsssscsccccc" />
<path
id="path15"
style="display:inline;fill:url(#linearGradient18);stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 261.95245,107.77734 -6.61523,-6.35937 2.79883,-8.394532 c 0,-10e-7 -1.97374,-3.250222 -3.30664,-4.580079 -2.36569,-2.360291 -8.14063,-5.849609 -8.14063,-5.849609 0,0 -3.96564,-3.204213 -6.10547,-4.580078 -2.68119,-1.723944 -8.39453,-4.578125 -8.39453,-4.578125 0,0 -11.79974,-3.827025 -17.80859,-5.34375 -5.70826,-1.440853 -17.29883,-3.560547 -17.29883,-3.560547 0,0 -13.74284,-0.579508 -20.35156,-2.291016 -5.33592,-1.381883 -15.26368,-6.359375 -15.26368,-6.359375 -4.98302,1.10936 -9.41094,4.569803 -14.50195,4.833985 -5.14718,0.267096 -9.36122,-2.940833 -13.73633,-5.851563 l -4.58007,3.5625 c 0,0 -4.88663,4.349621 -7.63086,6.105469 -3.51386,2.248281 -11.19532,5.595703 -11.19532,5.595703 0,0 -1.64033,4.798716 -3.30664,6.615235 -2.08421,2.272103 -7.886716,4.833984 -7.886716,4.833984 l -7.884765,-5.087891 -9.921875,8.394531 -8.140625,-5.597656 c 0,0 1.484434,-6.186798 3.052734,-8.904297 0,0 -13.654579,20.348919 -19.142578,31.267581 -6.129725,12.19541 -15.269531,37.99414 -15.269531,37.99414 l 203.548826,15.14258 z"
sodipodi:nodetypes="cccscscscscsccscscccccsccc" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 14 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 5.2 KiB

After

Width:  |  Height:  |  Size: 38 KiB

View file

@ -1,237 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
version="1.1"
id="svg1"
width="495"
height="320"
viewBox="0 0 495 320"
sodipodi:docname="profanity_logo.svg"
inkscape:version="1.4 (e7c3feb100, 2024-10-09)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs1">
<linearGradient
id="linearGradient17"
inkscape:collect="always">
<stop
style="stop-color:#150000;stop-opacity:1"
offset="0"
id="stop17" />
<stop
style="stop-color:#8e2215;stop-opacity:1"
offset="1"
id="stop18" />
</linearGradient>
<linearGradient
id="linearGradient14"
inkscape:collect="always">
<stop
style="stop-color:#711406;stop-opacity:1"
offset="0"
id="stop14" />
<stop
style="stop-color:#b63224;stop-opacity:1"
offset="1"
id="stop15" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient14"
id="linearGradient15"
x1="5.3097906"
y1="139.09752"
x2="212.27319"
y2="263.68884"
gradientUnits="userSpaceOnUse" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient17"
id="linearGradient18"
x1="5.9335938"
y1="139.64258"
x2="228.09921"
y2="90.950676"
gradientUnits="userSpaceOnUse" />
</defs>
<sodipodi:namedview
id="namedview1"
pagecolor="#65ffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="true"
inkscape:deskcolor="#d1d1d1"
inkscape:zoom="1.0485179"
inkscape:cx="329.98959"
inkscape:cy="172.62461"
inkscape:window-width="1366"
inkscape:window-height="761"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="g1"
showgrid="false" />
<g
inkscape:groupmode="layer"
inkscape:label="Image"
id="g1">
<path
style="display:inline;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.709875px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 60.73069,250.65131 71.03842,251.64031 C 71.03842,251.64031 73.05201,254.58097 76.51478,257.37485 78.60021,259.05744 80.95875,260.57601 83.38434,262.25437 87.51594,263.47442 94.70191,264.80769 98.73039,266.95324 102.17412,268.78734 101.8324,272.20842 103.64453,272.86767 110.35639,273.1909 113.43605,272.32978 120.8346,271.41729 125.84465,270.79939 127.64087,272.98699 129.96364,273.11454 133.39716,273.30309 137.81427,272.28686 142.35399,270.39442 148.26459,267.9305 152.49117,263.22479 155.86806,259.27458 157.51489,256.00672 156.44159,248.17895 158.74622,243.46714 161.56426,237.70569 169.49502,229.58201 169.49502,229.58201 L 181.17559,230.0878 C 181.17559,230.0878 176.7141,238.8299 174.81258,242.6347 172.7667,246.72835 170.14783,250.17713 167.61712,253.99013 164.19421,259.14736 157.66692,267.92041 157.66692,267.92041 157.66692,267.92041 153.14677,273.1849 150.10039,275.34092 147.36212,277.27887 141.60057,279.14112 141.60057,279.14112 141.60057,279.14112 134.30054,282.58715 129.62644,282.93002 124.01084,283.34194 116.86597,283.20716 111.37964,281.94027 105.91077,280.67741 101.4538,278.45194 96.38132,276.04918 92.26252,274.09816 89.32673,272.5631 85.54298,270.0226 81.64819,267.40755 76.77802,264.27232 73.18726,261.25333 69.42267,258.08819 60.73069,250.65131 60.73069,250.65131 Z"
id="path32"
sodipodi:nodetypes="ccscscssscsccsscscsssssc" />
<path
id="path1"
style="display:inline;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.709875px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 145.53906 39.345703 C 139.13672 39.260904 132.40329 40.497624 125.82227 40.871094 C 120.59817 41.167559 118.17021 40.921785 110.13477 41.4375 C 104.00582 42.066343 97.865755 41.538786 91.734375 43.162109 C 91.734375 43.162109 79.121799 45.670672 73.162109 47.994141 C 68.956139 49.633903 65.149558 52.159969 61.205078 54.355469 C 56.490288 56.979732 51.374374 59.058894 47.214844 62.496094 C 44.527554 64.716715 42.088193 67.361528 40.345703 70.380859 C 38.777403 73.098358 37.292969 79.285156 37.292969 79.285156 L 45.433594 84.882812 L 55.355469 76.488281 L 63.240234 81.576172 C 63.240234 81.576172 69.042743 79.014291 71.126953 76.742188 C 72.793263 74.925669 74.433594 70.126953 74.433594 70.126953 C 74.433594 70.126953 82.115046 66.779531 85.628906 64.53125 C 88.373136 62.775402 93.259766 58.425781 93.259766 58.425781 L 97.839844 54.863281 C 102.21495 57.774011 106.42899 60.98194 111.57617 60.714844 C 116.66718 60.450662 121.0951 56.990219 126.07812 55.880859 C 126.07812 55.880859 136.00588 60.858351 141.3418 62.240234 C 147.95052 63.951742 161.69336 64.53125 161.69336 64.53125 C 161.69336 64.53125 173.28393 66.650944 178.99219 68.091797 C 185.00104 69.608522 196.80078 73.435547 196.80078 73.435547 C 196.80078 73.435547 202.51412 76.289728 205.19531 78.013672 C 207.33514 79.389537 211.30078 82.59375 211.30078 82.59375 C 211.30078 82.59375 212.72657 83.459622 214.41602 84.589844 L 227.76367 76.876953 C 225.04526 72.677576 220.45898 65.802734 220.45898 65.802734 C 220.45898 65.802734 209.55787 57.065906 203.66797 53.337891 C 198.7956 50.253924 193.87195 47.029109 188.4043 45.197266 C 180.67104 42.606369 164.23633 41.380859 164.23633 41.380859 C 164.23633 41.380859 151.9414 39.430503 145.53906 39.345703 z " />
<g
id="g16"
style="display:inline;fill:none;fill-opacity:1">
<path
style="display:inline;fill:none;fill-opacity:1;stroke:none;stroke-width:0.709875px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 60.730693,250.65131 71.038422,251.64031 C 71.038422,251.64031 73.052017,254.58097 76.514787,257.37485 78.600217,259.05744 80.958757,260.57601 83.384347,262.25437 87.515947,263.47442 94.701911,264.80769 98.730391,266.95324 102.17412,268.78734 101.8324,272.20842 103.64453,272.86767 110.35639,273.1909 113.43605,272.32978 120.8346,271.41729 125.84465,270.79939 127.64087,272.98699 129.96364,273.11454 133.39717,273.30309 137.81428,272.28686 142.35399,270.39442 148.2646,267.9305 152.49117,263.22479 155.86806,259.27458 157.51489,256.00672 156.4416,248.17895 158.74623,243.46714 161.56427,237.70569 169.49502,229.58201 169.49502,229.58201 L 181.17559,230.0878 C 181.17559,230.0878 176.7141,238.8299 174.81258,242.6347 172.7667,246.72835 170.14784,250.17713 167.61712,253.99013 164.19422,259.14736 157.66692,267.92041 157.66692,267.92041 157.66692,267.92041 153.14677,273.1849 150.10039,275.34092 147.36212,277.27887 141.60057,279.14112 141.60057,279.14112 141.60057,279.14112 134.30054,282.58715 129.62645,282.93002 124.01084,283.34194 116.86597,283.20716 111.37965,281.94027 105.91077,280.67741 101.45381,278.45194 96.38133,276.04918 92.26253,274.09816 89.326737,272.5631 85.542987,270.0226 81.648197,267.40755 76.778024,264.27232 73.187264,261.25333 69.422674,258.08819 60.730693,250.65131 60.730693,250.65131 Z"
id="path3"
sodipodi:nodetypes="ccscscssccsccsscscsssssc" />
<path
style="display:inline;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.0732;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1"
d="M 62.37503,56.15363 C 62.37503,56.15363 64.19532,60.591588 66.31808,63.19795 68.68167,66.099998 74.43445,70.127435 74.43445,70.127435"
id="path4"
sodipodi:nodetypes="csc" />
<path
style="display:inline;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.0732;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1"
d="M 93.2599,58.425131 C 93.2599,58.425131 93.21384,53.902869 93.03122,51.325443 92.90169,49.497253 92.31168,45.209304 92.31168,45.209304"
id="path5"
sodipodi:nodetypes="csc" />
<path
style="display:inline;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.0732;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1"
d="M 124.76956,56.226134 124.69124,49.256749 124.51135,43.14061"
id="path6"
sodipodi:nodetypes="ccc" />
<path
style="display:inline;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.0732;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1"
d="M 162.76498,64.729313 C 162.76498,64.729313 163.53744,56.431057 163.7266,52.269848 163.87434,49.019946 163.86152,42.511007 163.86152,42.511007"
id="path7"
sodipodi:nodetypes="csc" />
<path
style="display:inline;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.0732;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1"
d="M 196.79984,73.434606 C 196.79984,73.434606 197.7543,67.48519 198.17486,64.502127 198.60316,61.464233 199.34413,55.372889 199.34413,55.372889"
id="path8"
sodipodi:nodetypes="csc" />
<path
style="display:inline;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.0732;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1"
d="M 212.08975,83.080977 C 212.08975,83.080977 214.78855,78.792348 215.75877,76.464578 216.52165,74.634251 217.42271,70.753183 217.42271,70.753183"
id="path9"
sodipodi:nodetypes="csc" />
</g>
<path
id="path2"
style="display:inline;fill:#b01219;fill-opacity:1;stroke:none;stroke-width:0.709875px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 136.89062,0 C 88.330554,0 67.168814,11.624842 35.505859,57.664062 18.936431,81.756685 7.730009,111.39339 0,140.5957 9.4414169,179.49607 15.336571,214.28619 34.400391,246.66797 45.758671,265.96112 57.520646,287.12772 75.197266,300.86719 95.375476,316.55107 117.36255,320.13665 140.60742,318.62891 162.66286,317.19832 183.21919,293.62925 193.91602,270.63867 200.63276,256.20245 202.34774,240.08692 204.49609,222.75195 L 191.69922,229.37109 182.35352,226.96289 181.17578,230.08789 C 181.17578,230.08789 176.71402,238.82997 174.8125,242.63477 172.76662,246.72842 170.14791,250.17723 167.61719,253.99023 164.19429,259.14746 157.66602,267.91992 157.66602,267.91992 157.66602,267.91992 153.14599,273.18578 150.09961,275.3418 147.36134,277.27975 141.59961,279.14063 141.59961,279.14062 141.59961,279.14062 134.30104,282.58682 129.62695,282.92969 124.01134,283.34161 116.86523,283.20634 111.37891,281.93945 105.91003,280.67659 101.45334,278.45159 96.380859,276.04883 92.262059,274.09781 89.326719,272.56394 85.542969,270.02344 81.648179,267.40839 76.77826,264.2729 73.1875,261.25391 69.42291,258.08877 60.730469,250.65039 60.730469,250.65039 60.730469,250.65039 35.923507,223.83498 26.658203,206.86523 L 21.935547,206.00586 24.246094,202.10547 C 14.409287,180.43237 5.9335938,139.64258 5.9335938,139.64258 5.9335938,139.64258 12.796219,118.62414 21.203125,101.64844 29.61003,84.67273 39.561553,71.739609 40.345703,70.380859 42.088194,67.361528 44.527554,64.716715 47.214844,62.496094 51.374374,59.058894 56.490288,56.979732 61.205078,54.355469 65.149558,52.159969 68.956139,49.633903 73.162109,47.994141 79.121799,45.670672 91.734375,43.162109 91.734375,43.162109 97.865755,41.538786 104.00582,42.066343 110.13477,41.4375 118.17021,40.921785 120.59817,41.167559 125.82227,40.871094 132.40329,40.497624 139.13672,39.260904 145.53906,39.345703 151.9414,39.430503 164.23633,41.380859 164.23633,41.380859 164.23633,41.380859 180.67104,42.606369 188.4043,45.197266 193.87195,47.029109 198.7956,50.253924 203.66797,53.337891 209.55787,57.065906 220.45898,65.802734 220.45898,65.802734 220.45898,65.802734 225.04522,72.677534 227.76367,76.876953 L 227.94141,76.775391 241.29297,81.066406 247.5,76.298828 249.06836,76.302734 C 249.64454,65.712905 248.1825,55.970769 242.66211,48.402344 225.29682,24.594622 159.43535,0 136.89062,0 Z" />
<path
id="path13"
style="display:inline;fill:#980f16;fill-opacity:1;stroke:none;stroke-width:0.709875px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 78.53268,258.90623 C 80.61811,260.58882 80.958757,260.57601 83.384347,262.25437 87.515947,263.47442 94.701911,264.80769 98.730391,266.95324 102.17412,268.78734 101.8324,272.20842 103.64453,272.86767 110.35639,273.1909 113.43605,272.32978 120.8346,271.41729 125.84465,270.79939 127.64087,272.98699 129.96364,273.11454 133.39717,273.30309 137.81428,272.28686 142.35399,270.39442 148.2646,267.9305 152.49117,263.22479 155.86806,259.27458 157.51489,256.00672 156.4416,248.17895 158.74623,243.46714 161.56427,237.70569 169.49502,229.58201 169.49502,229.58201 L 181.17559,230.0878 182.28574,227.14419 158.81812,222.37909 C 158.81812,222.37909 159.47232,228.32513 159.15531,231.27587 158.78905,234.685 156.59121,241.2374 156.59121,241.2374 156.59121,241.2374 153.99026,248.76946 151.40418,251.66475 147.116,256.46565 141.33318,260.23 135.19082,262.15575 130.63805,263.58313 124.23216,263.10392 118.73902,263.10947 113.04752,263.11522 107.35555,262.71062 101.69116,262.15575 93.933176,261.3958 78.53268,258.90623 78.53268,258.90623 Z"
sodipodi:nodetypes="ccscssscsccccscsssscc" />
<path
id="path10"
style="display:inline;mix-blend-mode:normal;fill:url(#linearGradient15);stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 5.9335938,139.64258 C 5.9335938,139.64258 14.409287,180.43237 24.246094,202.10547 L 29.566406,193.12891 30.519531,178.82422 26.705078,167.37891 33.857422,156.41211 31.949219,143.05859 33.449219,141.68945 Z M 51.023438,199.32812 37.671875,208.86719 26.611328,206.85547 C 35.889354,223.82684 60.730469,250.65039 60.730469,250.65039 L 71.039062,251.64062 C 71.039062,251.64062 73.052855,254.58112 76.515625,257.375 77.165487,257.89933 77.848254,258.40593 78.544922,258.9082 78.565751,258.91157 93.938663,261.39681 101.69141,262.15625 107.3558,262.71112 113.04678,263.11513 118.73828,263.10938 124.23142,263.10383 130.63864,263.58363 135.19141,262.15625 141.33377,260.2305 147.11612,256.46496 151.4043,251.66406 153.99038,248.76877 156.5918,241.23828 156.5918,241.23828 156.5918,241.23828 158.78999,234.68452 159.15625,231.27539 159.47326,228.32465 158.81836,222.37891 158.81836,222.37891 L 182.28516,227.14453 182.43359,226.98242 145.44336,217.44922 133.52148,216.49609 122.55469,206.95898 109.20117,208.86719 84.880859,202.66797 73.4375,211.72656 Z" />
<path
id="path15"
style="display:inline;fill:url(#linearGradient18);stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 97.839844,54.863281 93.259766,58.425781 C 93.259766,58.425781 88.373136,62.775402 85.628906,64.53125 82.115046,66.779531 74.433594,70.126953 74.433594,70.126953 74.433594,70.126953 72.793263,74.925668 71.126953,76.742188 69.042743,79.014291 63.240234,81.576172 63.240234,81.576172 L 55.355469,76.488281 45.433594,84.882812 37.292969,79.285156 C 37.292969,79.285156 38.777403,73.098358 40.345703,70.380859 40.345703,70.380859 26.691124,90.729776 21.203125,101.64844 15.0734,113.84385 5.9335938,139.64258 5.9335938,139.64258 L 33.449219,141.68945 42.917969,133.04492 40.056641,122.07617 41.964844,114.44727 49.59375,100.14062 61.992188,101.0957 74.390625,108.72461 86.3125,106.81836 97.279297,93.464844 109.67773,95.373047 122.07617,99.1875 132.0918,88.697266 145.44336,97.757812 160.22656,96.802734 168.33203,88.220703 184.54688,87.265625 193.12891,84.404297 206.48242,89.173828 214.41602,84.589844 C 212.72659,83.459999 211.30078,82.59375 211.30078,82.59375 211.30078,82.59375 207.33514,79.389537 205.19531,78.013672 202.51412,76.289728 196.80078,73.435547 196.80078,73.435547 196.80078,73.435547 185.00104,69.608522 178.99219,68.091797 173.28393,66.650944 161.69336,64.53125 161.69336,64.53125 161.69336,64.53125 147.95052,63.951742 141.3418,62.240234 136.00588,60.858351 126.07812,55.880859 126.07812,55.880859 121.09511,56.990219 116.66718,60.450662 111.57617,60.714844 106.42899,60.98194 102.21495,57.774011 97.839844,54.863281 Z" />
<g
id="g20"
inkscape:label="PR%F@N!TY"
style="display:inline">
<path
id="path20"
style="fill:#253536;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 69.383649,154.5038 C 69.383649,154.5038 76.088872,150.61054 79.874647,144.25123 82.924864,139.12751 84.545263,136.20454 86.312306,129.23002 86.593818,128.11889 85.153575,126.40874 84.404851,126.36885 81.316757,126.20434 78.578834,128.62844 76.059739,130.42219 74.594811,131.46531 72.24483,134.23709 72.24483,134.23709 L 65.56874,174.7705 64.838982,177.81226 C 64.838982,177.81226 65.524231,181.74056 65.525351,183.11561 65.526445,184.45976 62.945991,186.21522 62.945991,186.21522 62.945991,186.21522 60.684955,187.22608 59.76208,186.66316 57.40363,185.22459 54.735609,184.81154 51.698789,183.04578 50.483436,182.33911 50.272049,180.77952 50.366959,179.53913 50.4478,178.48262 51.009421,177.98889 51.192999,176.94531 54.001945,160.97743 57.875134,144.43908 61.276968,125.79823 61.522916,124.45052 60.772278,121.71943 60.772278,121.71943 60.772278,121.71943 60.198267,119.11372 60.772278,118.02373 61.361378,116.90508 62.470214,116.58689 63.899718,116.72083 65.884303,116.90679 69.383649,118.26216 69.383649,118.26216 H 73.31335 L 77.013466,117.30844 C 77.013466,117.30844 83.760388,114.9569 86.927365,115.99706 89.486442,116.83757 89.789639,120.04049 91.677021,121.60021 93.048652,122.73372 95.176077,122.86543 96.32644,124.22296 97.529253,125.64238 98.233895,129.46846 98.233895,129.46846 98.233895,129.46846 97.220703,136.28627 96.207225,139.48259 94.657868,144.36897 92.465226,148.75282 89.650351,152.83478 85.947302,158.20472 82.970931,162.56993 77.609546,165.94852 76.000633,166.96241 73.302988,166.81703 71.913979,166.27973 70.279309,165.6474 67.568599,162.6285 67.568599,162.6285 L 69.383649,154.5038"
sodipodi:nodetypes="csssscccscssssscsscccssscsssscc"
inkscape:label="P" />
<path
style="fill:#253536;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 106.89032,119.36649 C 106.89032,119.36649 109.41092,118.74363 110.76805,118.6921 113.2198,118.59901 114.99491,119.95486 117.17473,120.20947 118.01202,120.30727 118.87565,120.36754 119.70368,120.20947 122.85069,119.60873 125.55792,117.5462 128.63931,116.66894 130.34163,116.1843 132.09717,115.66278 133.8658,115.73154 135.20063,115.78343 136.78964,115.87086 137.74353,116.74312 142.90311,121.46116 144.21077,122.6111 147.52214,126.78474 148.61002,128.1559 148.26598,130.2772 148.02793,132.01124 147.77385,133.86202 146.44198,135.79367 145.49898,137.40634 143.62475,140.61154 138.92371,145.83617 138.92371,145.83617 138.92371,145.83617 134.10644,150.7934 131.33685,152.83478 130.02968,153.79825 127.12194,155.27759 127.12194,155.27759 L 126.11035,155.95198 C 138.76212,169.8689 135.43748,167.75029 139.93529,171.46288 140.79011,172.16847 142.11724,172.27679 142.80143,173.14884 143.1636,173.61046 143.55617,174.30351 143.30722,174.83481 141.97369,177.68073 140.57384,179.26415 138.92371,181.07289 137.16622,182.99931 135.71027,184.36019 133.19142,185.7936 132.40384,186.24179 131.25593,185.94674 130.49387,185.4564 129.77247,184.99222 129.1451,183.26465 129.1451,183.26465 129.1451,183.26465 128.78296,181.1703 128.13351,180.14561 126.5924,177.71406 123.55918,174.88135 121.55825,172.81165 118.48799,169.63587 113.06857,163.68256 113.06857,163.68256 L 115.89683,148.27142 C 115.89683,148.27142 123.4799,143.4105 126.78474,140.44107 129.21509,138.25738 131.20579,136.05997 132.76992,133.19142 133.7234,131.44278 136.55318,129.18077 135.55177,127.45913 135.05829,126.61074 133.05329,127.09738 131.50545,127.45913 129.18305,128.00189 125.83866,129.74558 123.41281,131.33685 121.69201,132.46563 118.35491,134.87738 118.35491,134.87738 L 110.09367,179.89271 C 110.09367,179.89271 110.96368,182.22037 110.93665,183.43324 110.91842,184.25131 110.82032,185.19515 110.26226,185.7936 109.56912,186.53691 107.819,186.7509 106.80603,186.83371 102.80923,186.86858 99.580393,185.48671 95.762943,184.44482 95.762943,184.44482 94.932895,183.74792 94.919959,183.26465 94.900351,182.53217 96.100137,181.41008 96.100137,181.41008 Z"
id="path21"
inkscape:label="R"
sodipodi:nodetypes="cssssssssscsccsssssscssccsssssccssscscc" />
<g
id="g22"
inkscape:label="%">
<path
id="path22"
style="fill:#253536;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 169.52148,116.5625 C 168.04085,116.53624 166.59002,116.76865 165.4707,117.39453 157.82422,121.67017 153.20608,128.44466 153.07227,132.0918 152.96541,135.00461 154.78605,138.49036 157.39453,139.79102 161.81634,141.99587 167.314,139.82875 171.43164,137.09766 174.62802,134.97761 177.04365,131.30622 177.86914,127.56055 178.55516,124.44771 177.92536,119.61823 175.80859,118.20898 174.54412,117.36716 171.98921,116.60627 169.52148,116.5625 Z M 170.16992,122.54297 C 170.26571,122.54533 170.35912,122.55512 170.45117,122.57031 171.27828,122.70678 171.90292,123.68302 172.05273,124.50781 171.74147,126.97893 170.02669,128.58261 168.42773,130.41016 166.90769,132.14751 166.25289,133.19565 164.71875,133.94922 163.54522,134.52565 161.72729,135.50297 160.8418,134.54102 159.60935,133.20215 161.28853,130.85459 162.10547,129.22852 162.53108,128.38135 167.20037,122.46973 170.16992,122.54297 Z" />
<path
style="fill:#253536;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 204.71414,124.16511 C 204.71414,124.16511 191.6428,139.05574 185.1772,146.65001 176.82247,156.46317 168.90579,166.05601 160.5242,176.55874 159.51604,177.82204 158.79557,181.08894 158.79557,181.08894 158.79557,181.08894 157.31888,184.69039 156.0536,184.98651 154.97139,185.23979 153.78582,184.39142 152.76976,183.83091 150.75219,182.71792 147.35084,179.53913 147.35084,179.53913 147.35084,179.53913 146.30111,178.02942 146.09907,177.15481 145.94696,176.4963 146.15868,175.12814 146.15868,175.12814 146.15868,175.12814 167.04744,149.12984 177.71718,136.26377 182.631,130.33845 190.65229,121.50922 192.23562,118.85825 192.89401,117.7559 194.65584,117.47445 195.8121,117.42765 196.62195,117.39487 198.78228,118.76795 198.78228,118.76795 Z"
id="path23"
sodipodi:nodetypes="csscsscscssscc" />
<path
id="path24"
style="fill:#253536;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 189.79688,159.08203 C 187.45506,159.02557 185.03571,159.84952 182.87695,160.76172 180.50462,161.76417 178.46785,163.49989 176.61914,165.29297 174.72773,167.12746 172.68611,169.07256 171.79102,171.55078 171.23043,173.10288 171.33254,174.87349 171.61133,176.5 171.86752,177.99466 172.43507,179.47205 173.28125,180.73047 174.30852,182.25821 175.69851,183.59353 177.27344,184.54688 178.49361,185.28547 179.91066,186.07662 181.32812,185.91797 184.84674,185.52414 187.78524,182.77262 190.38867,180.37305 192.86675,178.08901 195.06366,175.32296 196.34766,172.20703 197.1517,170.25584 197.45934,168.05376 197.30273,165.94922 197.21785,164.80855 196.96438,163.59311 196.28906,162.66992 195.11754,161.06842 193.33803,159.69905 191.40039,159.27148 190.87227,159.15495 190.33729,159.09506 189.79688,159.08203 Z M 187.99219,165.56641 C 188.32339,165.56034 188.64961,165.60308 188.95703,165.71094 189.52726,165.91099 190.06116,166.43554 190.20898,167.02148 190.46602,168.04038 189.79265,169.09629 189.375,170.06055 188.63415,171.77101 187.62516,173.38065 186.45312,174.83008 185.03923,176.57861 183.93502,178.10449 181.80484,178.82478 180.93391,179.11927 179.62217,179.56325 179.00304,178.8836 178.11982,177.91405 178.48299,176.52919 178.76367,175.24805 178.98031,174.25921 179.56316,173.38048 180.07617,172.50781 180.75548,171.35226 181.50835,170.22708 182.40039,169.22656 183.43041,168.07129 184.45208,166.77549 185.85742,166.12695 186.5082,165.82663 187.26355,165.57976 187.99219,165.56641 Z"
sodipodi:nodetypes="ssssssssssssssssssssssssss" />
</g>
<path
style="fill:#253536;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 217.82698,151.22982 220.78165,134.37159 C 220.78165,134.37159 230.21518,127.74488 235.72716,127.29053 237.3573,127.15616 238.5375,127.17652 240.44787,128.03372 241.9542,128.70962 243.2534,126.84667 244.25575,125.53473 245.05446,124.48934 245.73222,123.1178 245.48531,121.8256 245.02477,119.41532 242.798,119.0457 240.95366,117.42707 239.42229,116.08312 238.40705,114.07421 236.37262,113.96292 235.29322,113.90388 234.69624,115.08616 233.7449,115.59951 232.05164,116.5132 230.1889,116.60656 228.44857,117.42707 226.31521,118.43288 224.22769,120.18144 221.8733,120.04087 219.44729,119.89602 217.71391,117.48581 215.46662,116.56052 214.54645,116.18166 213.59511,115.75628 212.60048,115.7254 211.33376,115.68608 211.07922,115.85879 210.0239,116.56052 209.29764,117.04344 208.17204,117.93992 208.20849,118.81132 208.24849,119.76752 209.34259,119.93365 209.22854,120.88386 206.8503,140.69909 202.33292,159.07929 199.11274,178.03815 198.96665,178.89827 199.33294,179.82221 199.78713,180.5671 200.94103,182.45955 202.99847,183.62923 204.71414,185.03256 205.99874,186.08329 207.06482,186.95754 208.72275,187.03162 210.0363,187.09031 211.14345,186.84622 212.09469,185.93847 212.82289,185.24356 213.40517,184.36715 213.78065,183.43324 214.27006,182.21597 214.16847,181.21273 213.73974,179.97278 213.49267,179.25821 212.77483,178.79421 212.76907,178.03815 212.72696,172.50888 215.12943,165.56199 215.12943,165.56199 215.12943,165.56199 218.61175,163.69893 220.66244,162.86444 222.1612,162.25455 223.31092,161.65614 224.8569,161.17847 226.40648,160.69969 228.3798,160.6268 229.87565,160 230.96933,159.54172 232.51527,159.10585 233.20843,158.14373 233.64671,157.53538 233.69402,156.6952 233.595,155.95198 233.35921,154.18205 231.48331,151.22982 231.48331,151.22982 231.48331,151.22982 229.35219,146.9413 227.30755,146.15467 226.72101,145.92901 226.03203,146.21383 225.44276,146.43225 222.62949,147.47502 217.82698,151.22982 217.82698,151.22982 Z"
id="path25"
sodipodi:nodetypes="ccsssssssssssssssssssssscssssscssc"
inkscape:label="F" />
<path
style="fill:#253536;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 280.37636,171.29428 C 279.58927,170.57055 278.09893,170.92808 277.17303,171.46288 274.52889,172.99014 272.16727,174.53894 269.41758,175.5092 265.90739,176.74781 262.15921,178.18001 258.46786,177.70095 255.17512,177.27362 251.3419,175.97737 249.35456,173.31744 245.73802,168.47691 245.72084,161.96702 246.31982,156.20488 246.81779,151.41452 249.08447,146.83581 251.71492,142.80143 255.18784,137.47493 259.93149,132.93937 265.03406,129.1451 268.54384,126.53523 272.30355,123.37253 276.66724,123.07561 281.43955,122.75089 286.40538,123.46941 290.82936,124.93018 293.43333,125.79 295.62434,128.49924 297.06744,130.83106 298.85395,133.71777 299.80553,137.04869 299.93358,140.44108 300.06452,143.91016 298.89244,147.44942 297.23604,150.50032 296.03349,152.71528 294.62856,154.85139 292.85252,156.62636 291.48449,157.99356 290.06,159.84892 288.13181,160 287.00403,160.08837 285.78711,159.37733 285.09707,158.48092 284.25667,157.38919 284.44845,155.8969 284.25409,154.4346 283.92796,151.98088 284.81551,150.55156 284.59128,147.01635 284.51624,145.83321 284.75924,144.54833 284.25409,143.47582 283.84771,142.61301 282.98266,142.03959 282.23093,141.45266 281.71435,141.04933 281.17657,140.61602 280.54496,140.44108 278.86601,139.97604 277.02919,140.11162 275.31846,140.44108 274.12974,140.67001 273.131,141.29322 272.45232,142.29564 271.19205,144.1571 272.3448,146.32133 271.94653,148.53372 271.48971,151.07135 270.42869,153.49066 269.24898,155.78338 268.1008,158.01483 267.16601,159.07393 265.45555,161.00988 264.67414,161.89431 262.39155,162.78722 261.49353,162.02146 260.41086,161.09825 260.70982,159.22518 260.81914,157.80654 261.01579,155.25476 262.06773,152.80558 263.1795,150.50032 264.45915,147.84697 266.13702,145.36258 268.0688,143.13862 269.84391,141.09503 271.21852,139.81689 273.2953,138.08072 274.06297,137.43896 275.55301,136.30033 276.49864,135.97327 277.50777,135.62425 278.86035,136.5461 279.70198,135.88897 280.06726,135.60377 279.88227,133.99189 279.87057,133.52861 279.83648,132.17793 279.17869,131.73208 278.3532,130.66247 277.82908,129.98336 276.828,130.01546 275.99285,129.81948 274.78421,129.53585 273.27836,130.313 272.11513,130.74677 270.04002,131.52058 269.25075,132.0946 267.56301,133.52861 265.0192,135.68999 262.57811,138.01185 260.48195,140.60967 258.59266,142.95111 257.11673,145.60252 255.59264,148.19653 254.14072,150.66771 253.25588,153.05138 252.3893,155.78338 251.56736,158.37468 250.46238,161.15844 250.53474,163.87602 250.59401,166.10201 250.99452,168.14517 252.30501,169.9455 253.42952,171.49033 255.03351,172.36994 256.94142,172.47445 260.56766,172.6731 263.97811,171.27463 266.88862,169.10252 269.35756,167.25995 270.74971,164.30018 272.62091,161.85286 273.59719,160.576 275.48706,157.97514 275.48706,157.97514 275.48706,157.97514 276.80757,163.47368 278.6061,165.56199 279.90221,167.06693 281.277,168.1426 283.24251,168.42813 286.2235,168.86118 289.46362,168.38521 292.17813,167.07936 295.90517,165.28642 301.28236,158.64952 301.28236,158.64952 301.28236,158.64952 305.64504,150.8985 306.84605,146.51056 307.84186,142.87235 308.66092,138.9577 308.19482,135.21458 307.73581,131.52839 306.35183,127.7851 304.3171,124.67728 302.68094,122.17823 300.667,120.18361 298.07902,118.6921 295.04566,116.94391 291.60668,115.74765 288.13181,115.32016 284.04626,114.81754 279.84104,115.43187 275.82425,116.33174 271.6073,117.27646 268.44687,118.72196 264.61257,120.71526 261.16874,122.50558 258.12442,124.84491 255.25545,127.45913 251.96202,130.46012 249.77189,133.23624 247.5,137.06914 245.52737,140.39717 242.31378,144.81074 241.26192,148.53372 239.75718,153.85961 239.19858,159.35716 239.40736,164.8876 239.53642,168.30638 239.2885,171.83023 240.92473,174.83481 242.46522,177.66358 244.81054,180.14334 247.5,181.91587 250.29032,183.75487 254.47564,184.6503 257.7844,185.11921 261.40804,185.63275 264.1454,184.75373 267.73161,184.02333 270.53578,183.45221 271.61438,181.97581 274.47548,181.91588 275.2397,181.89987 277.13118,182.26719 277.84742,182.00017 278.84097,181.62976 279.46878,180.7054 279.87057,179.72412 280.26323,178.76514 280.44799,177.72108 280.54496,176.68937 280.71333,174.89802 281.70081,172.51211 280.37636,171.29428 Z"
id="path26"
sodipodi:nodetypes="sssssssssssssssssssssssssssssssssssssssssssssscssscssssssssssssssssssss"
inkscape:label="@" />
<path
style="fill:#253536;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 350.97158,186.22652 C 353.66809,184.25591 351.47537,179.68628 351.92531,176.43952 354.38629,158.68116 361.46258,123.50766 361.46258,123.50766 L 364.08533,119.21589 C 364.08533,119.21589 359.31627,116.67522 356.69394,116.33178 353.44275,115.90598 348.1104,118.85766 348.1104,118.85766 V 124.10374 L 343.34177,154.98066 H 341.67275 L 337.6194,131.13748 C 337.6194,131.13748 337.55937,123.46583 335.47352,120.40805 334.52841,119.02254 333.08835,117.6005 331.42018,117.42707 327.88514,117.05955 326.58833,115.7357 322.83664,116.45099 320.68659,116.86092 318.63536,118.48256 318.30643,120.64648 315.66125,138.04823 312.34305,155.3131 308.32914,172.50888 307.79978,174.7767 308.32914,176.73844 305.90798,179.06227 305.26116,179.68309 305.70192,181.28455 306.50406,181.68501 309.18705,183.02448 311.26367,183.36981 313.5378,183.96141 316.12484,184.63441 318.50433,186.01287 320.69075,184.55749 321.76251,183.84408 322.12849,182.95156 322.35978,181.68501 322.75247,179.53459 321.52526,175.12814 321.52526,175.12814 L 326.65154,150.2062 332.85077,177.15481 C 332.85077,177.15481 332.10299,180.19097 332.37391,181.68502 332.50075,182.38448 332.78982,183.12761 333.32763,183.59247 335.35357,185.34361 338.31602,185.66707 340.95745,186.1073 344.25031,186.65611 348.20043,188.25167 350.97158,186.22652 Z"
id="path27"
sodipodi:nodetypes="ssccscccccsssssssssscccssss"
inkscape:label="N" />
<g
id="g28"
inkscape:label="!">
<path
style="fill:#253536;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 372.66888,118.5006 C 371.26489,129.41158 368.98391,139.28784 367.06573,149.49673 366.92498,150.24585 366.83938,151.01325 366.58887,151.73314 366.23562,152.74829 365.42322,153.58131 365.15828,154.62301 364.90342,155.62507 365.83738,157.21938 366.41004,158.08027 367.68705,160 368.72154,160.13982 370.6422,161.06067 372.49342,161.94823 374.09411,163.37997 376.12614,163.08734 377.04353,162.95523 377.3585,162.0819 377.85477,161.2991 378.28244,160.62451 378.28786,159.46837 378.39124,158.67635 380.16775,145.0658 382.33701,133.95093 385.30576,119.2099 385.53872,118.05315 382.89062,116.79583 381.8485,116.24235 380.51161,115.53231 380.02383,116.20891 378.51045,116.24235 377.22736,116.2707 375.68096,115.58896 374.57633,116.24235 373.56194,116.84236 372.81929,117.33167 372.66888,118.5006 Z"
id="path28"
sodipodi:nodetypes="ssssssssssssss"
inkscape:label="|" />
<path
style="fill:#253536;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 372.85167,186.72088 C 374.35003,184.28342 373.77842,182.27441 374.3747,179.55551 374.87349,177.28114 375.89268,174.53258 376.22361,171.80007 376.32406,170.97067 374.55927,170.07541 373.77895,169.7769 370.96982,168.70229 370.26131,168.20279 367.70947,168.00664 366.62714,167.92345 365.32612,167.46313 364.50682,168.17524 363.76904,168.8165 363.86292,170.25309 363.66315,171.20998 363.15002,173.66792 363.36568,175.94038 362.48297,178.29104 362.07989,179.36444 361.0232,180.07427 360.45981,181.07289 359.45537,182.37136 359.81167,183.19709 360.9656,184.19193 362.4688,185.39175 364.40571,185.92384 366.1921,186.63658 367.18248,187.03173 368.16122,187.61015 369.22684,187.64816 370.47323,187.69262 372.19853,187.78337 372.85167,186.72088 Z"
id="path29"
sodipodi:nodetypes="sssssssssssss"
inkscape:label="." />
</g>
<path
style="fill:#253536;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 412.24855,179.3007 C 412.32136,177.47417 411.80416,175.58991 412.24855,173.81677 415.71134,160 420.1168,131.37591 420.1168,131.37591 420.1168,131.37591 423.28866,129.12075 425.66034,128.63395 426.82815,128.39424 428.23674,128.21824 429.41564,128.39551 430.48463,128.55626 431.73367,129.29462 432.81329,129.34924 433.62277,129.3902 435.19367,128.9857 435.8533,128.51473 436.75189,127.87313 436.4907,125.17761 436.74742,124.10374 437.37681,121.47103 436.90386,121.59976 437.16468,118.85824 437.24501,118.01381 436.36454,116.31608 435.61487,115.91921 434.84221,115.51017 433.86637,115.91921 432.99212,115.91921 432.11787,115.91921 430.22383,116.40932 429.35603,116.51529 422.52853,117.34905 410.3411,120.88491 410.3411,120.88491 410.3411,120.88491 401.51536,123.26657 396.98892,123.7461 394.58,123.68994 393.33423,123.38209 391.40871,125.10685 390.52218,126.13569 389.78543,127.40879 389.97812,128.75316 390.20365,130.32662 391.45815,131.1323 392.41781,132.39947 393.44469,133.7554 393.31817,135.86787 394.84303,136.62141 395.84056,137.11436 398.54709,136.09376 399.61415,135.77843 402.41198,134.95163 404.85717,134.71396 404.85717,134.71396 404.85717,134.71396 404.96694,136.31112 404.85717,137.09828 403.0837,149.81567 401.42181,157.97333 399.28912,174.94504 399.25694,175.20111 398.41161,177.47666 398.3599,177.72762 398.08231,179.07482 396.61721,178.65048 396.03519,179.89678 395.36512,181.3316 396.63781,183.13824 398.06187,183.8309 401.8911,185.69344 401.45453,185.23037 404.67834,185.31647 406.84391,185.3743 409.46798,186.13256 410.81796,184.43828 412.06243,182.87641 412.16901,181.29615 412.24855,179.3007 Z"
id="path30"
sodipodi:nodetypes="sscssssssssscsssssscssssssss"
inkscape:label="T" />
<path
style="fill:#253536;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 460.77487,181.57868 C 461.2121,179.48836 460.77487,175.172 460.77487,175.172 460.77487,175.172 476.75012,145.59355 487.58175,129.81948 488.68745,128.20926 492.79874,127.15086 492.79874,127.15086 L 492.97684,121.44502 C 492.97684,121.44502 490.3673,117.61096 487.61915,116.57192 485.8141,115.88946 481.89037,115.73741 481.89037,115.73741 L 461.79492,146.67916 C 461.79492,146.67916 459.93963,145.06192 459.73435,143.93719 458.36268,136.42157 457.61244,125.18059 457.61244,125.18059 457.61244,125.18059 459.00795,118.40473 457.05375,116.57193 455.42647,115.04573 451.88604,116.25235 449.83302,117.16801 445.96485,118.89321 444.49901,120.77042 441.50159,123.8244 443.24587,126.21797 443.80054,130.79675 444.76168,135.02407 446.89766,144.41864 452.33305,163.8414 452.33305,163.8414 452.33305,163.8414 447.95532,171.48788 444.38358,177.72762 443.46544,179.3316 445.093,181.15997 446.36584,182.49997 448.23593,184.46874 450.89046,184.95053 453.54215,185.5352 455.33897,185.93139 456.85582,186.94759 458.30026,186.2505 460.09371,185.38497 460.38918,183.42257 460.77487,181.57868 Z"
id="path31"
sodipodi:nodetypes="scsccsccscsscscsssss"
inkscape:label="Y" />
</g>
<path
style="display:none;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 247.5,76.298171 241.29296,81.066806 227.94078,76.775034 206.48192,89.173487 193.12974,84.404851 184.5462,87.266033 168.33284,88.21976 160.22616,96.803304 145.44339,97.757031 132.09121,88.696623 122.07707,99.187622 109.67862,95.372713 97.280168,93.465259 86.312305,106.81744 74.390716,108.72489 61.992264,101.09508 49.593811,100.14135 41.963994,114.44726 40.05654,122.07707 42.917721,133.04493 31.949859,143.05907 33.857313,156.41125 26.70436,167.37911 30.519268,178.82384 29.565541,193.12974 21.935724,206.00506 37.672222,208.86624 51.024402,199.32897 73.436989,211.72742 84.881715,202.66702 109.20176,208.86624 122.55394,206.95879 133.5218,216.49606 145.44339,217.44979 191.69915,229.37138 205.5282,222.21842 495,222.54768 V 76.880109 Z"
id="path36"
sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccccccc" />
</g>
</svg>

Before

Width:  |  Height:  |  Size: 38 KiB

View file

@ -6,20 +6,55 @@
<html xmlns="http://www.w3.org/1999/xhtml"> <html xmlns="http://www.w3.org/1999/xhtml">
<head> <head>
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" /> <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />
<title>{{brand_name}}: {{action}} {% if title %}{{title}}{% else %}{{jid_bare}}{% endif %}</title> <title>{{brand_name}}: {{action}} {% if alias %}{{alias}}{% else %}{{title}}{% endif %}</title>
<meta name="description" content="{{action}} {{title}}" /> <meta name="description" content="{{action}} {% if alias %}{{alias}}{% else %}{{title}}{% endif %}" />
<meta name="generator" content="Fast And Sleek Invite" /> <meta name="generator" content="Fast And Sleek Invite" />
<meta name="uri" content="{{xmpp_uri}}" /> <meta name="uri" content="{{xmpp_uri}}" />
<meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="viewport" content="width=device-width, initial-scale=1" />
<meta property="og:description" content="{{action}} {{title}}" /> <meta property="og:description" content="{{action}} {% if alias %}{{alias}}{% else %}{{title}}{% endif %}" />
<meta property="og:image" content="/photo/{{filename}}" /> <meta property="og:image" content="/photo/{{filename}}" />
<meta property="og:site_name" content="{{brand_name}}" /> <meta property="og:site_name" content="{{brand_name}}" />
<meta property="og:title" content="{{title}}" /> <meta property="og:title" content="{% if alias %}{{alias}}{% else %}{{title}}{% endif %}" />
<meta property="og:type" content="website" /> <meta property="og:type" content="website" />
<meta property="og:url" content="{{url}}" /> <meta property="og:url" content="{{url}}" />
<link rel="alternate icon" href="/img/favicon.ico" type="image/x-icon" /> <link rel="alternate icon" href="/img/favicon.ico" type="image/x-icon" />
<link rel="icon" href="/img/favicon.svg" type="image/svg+xml" /> <link rel="icon" href="/img/favicon.svg" type="image/svg+xml" />
<link rel="stylesheet" href="/css/stylesheet.css" media="screen" type="text/css" /> <link rel="stylesheet" href="/css/stylesheet.css" media="screen" type="text/css" />
{% if selection %}
<style>
body {
/* background-repeat: no-repeat; */
background:
url(/img/background.svg),
linear-gradient(
to right,
rgba({{selection[0][2]}}, {{selection[0][1]}}, {{selection[0][0]}}, 0.7),
rgba({{selection[1][2]}}, {{selection[1][1]}}, {{selection[1][0]}}, 0.7)
);
}
@media (prefers-color-scheme: dark) {
body {
background:
url(/img/background.svg),
linear-gradient(
to right,
rgba({{selection[0][2]-50}}, {{selection[0][1]-50}}, {{selection[0][0]-50}}, 0.7),
rgba({{selection[1][2]-50}}, {{selection[1][1]-50}}, {{selection[1][0]-50}}, 0.7)
);
}
}
@media (max-width: 725px) and (prefers-color-scheme: dark) {
body {
background: #2b2a33;
}
}
@media (max-width: 725px) {
body {
background: #f5f5f5;
}
}
</style>
{% endif %}
</head> </head>
<body> <body>
<div id="overlay"> <div id="overlay">
@ -32,9 +67,29 @@
</a> </a>
</div> </div>
<div id="container"> <div id="container">
<div id="content"> <div id="profile">
<h1>{{title}}</h1>
{% if filename %}
<div id="graphics">
<!-- a href="xmpp:{{jid_bare}}" -->
<img id="photo" src="/photo/{{filename}}" />
<img id="qrcode" src="/qr/{{jid_bare}}.png" />
<!-- /a -->
</div>
{% endif %}
<div id="vcard-note">
{% if note %}{{note}}{% endif %}
</div>
<!-- div>
<pre id="xmpp-uri">{{xmpp_uri}}</pre>
</div -->
{% if exception %}
<div>
<code>{{exception}}</code>
</div>
{% endif %}
{% if links %} {% if links %}
<div id="action-bar"> <div id="action">
{% for link in links %} {% for link in links %}
<a href="{{link['href']}}" id="{{link['iden']}}"> <a href="{{link['href']}}" id="{{link['iden']}}">
{{link['name']}} {{link['name']}}
@ -42,31 +97,22 @@
{% endfor %} {% endfor %}
</div> </div>
{% endif %} {% endif %}
<div id="profile-top"> <div id="conference">
{% if filename %} {% if subject %}
<img id="photo" src="/photo/{{filename}}" /> <div id="subject">
<strong>🗣️ Subject</strong>
<pre>{{subject}}</pre>
</div>
{% endif %} {% endif %}
<span id="titles"> {% if messages %}
<h1>{% if jid_title %}{{jid_title}}{% else %}Group Chat{% endif %}</h1> <div id="messages">
<a href="/j/{{jid_bare}}"> {% for message in messages %}
<h2>{% if jid_note %}{{jid_note}}{% else %}{{jid_bare}}{% endif %}</h2> <div class="message"
</a>
</span>
<img id="qrcode" src="/qr/{{jid_bare}}.png" />
</div>
<div>
{% if subject %}
<pre id="subject">{{subject}}</pre>
{% endif %}
</div>
{% if messages %}
<div id="entries">
{% for message in messages %}
<div class="entry"
id="{{message['id']}}"> id="{{message['id']}}">
<a href="#{{message['id']}}" title="{{message['timestamp']}}">💬️</a>
<strong>{{message['alias']}}</strong> <strong>{{message['alias']}}</strong>
<div class="summary">{{message['body']}}</div> <div class="content">{{message['body']}}</div>
<div class="date">{{message['timestamp']}}</div> <!-- div class="date">{{message['timestamp']}}</div -->
<!-- <!--
% if reactions % % if reactions %
<div class="reactions"> <div class="reactions">
@ -77,46 +123,59 @@
% endif % % endif %
--> -->
</div> </div>
{% endfor %} {% endfor %}
</div>
{% endif %}
</div>
{% if number_of_pages %}
<div id="number-of-pages">
{% if number_of_pages > 3 %}
{% if page_number < 2 %}
<span class="inactive" id="first">First</span>
<span class="inactive">Back</span>
{% else %}
<a href="?page=1" id="first">First</a>
<a href="?page={{page_number-1}}">Back</a>
{% endif %}
<a href="?page={{page_number}}">{{page_number}}</a>
{% if page_number == number_of_pages %}
<span class="inactive">Proceed</span>
<span class="inactive" id="last">Last</span>
{% else %}
<a href="?page={{page_number+1}}">Proceed</a>
<a href="?page={{number_of_pages}}" id="last">Last</a>
{% endif %}
{% else %}
{% for number in range(number_of_pages) %}
<a href="?page={{number+1}}">{{number+1}}</a>
{% endfor %}
{% endif %}
</div> </div>
{% endif %} {% endif %}
{% if exception %} {% if previous %}
<div> <div id="number-of-pages">
<code id="exception">{{exception}}</code> <a href="./">Previous</a>
</div> </div>
{% endif %} {% endif %}
</div> </div>
</div> <div id="notice">
{% if number_of_pages %} If you already have <strong>{% if news_client and jid_kind == 'pubsub' %}{{news_client}}{% elif chat_client %}{{chat_client}}{% else %}an XMPP Client{% endif %}</strong> you can
<div id="number-of-pages"> <br/>
{% if number_of_pages > 3 %} {% if jid_kind in ('conference', 'mix', 'muc') %}
{% if page_number < 2 %} join to
<span class="inactive" id="first">First</span> {% elif jid_kind == 'pubsub' %}
<span class="inactive">Back</span> subscribe to
{% elif jid_kind == 'bot' %}
try
{% elif jid_kind == 'server' %}
explore
{% else %} {% else %}
<a href="?page=1" id="first">First</a> talk with
<a href="?page={{page_number-1}}">Back</a>
{% endif %} {% endif %}
<a href="?page={{page_number}}">{{page_number}}</a> <strong>{{title}}</strong>
{% if page_number == number_of_pages %} right now.
<span class="inactive">Proceed</span> </div>
<span class="inactive" id="last">Last</span>
{% else %}
<a href="?page={{page_number+1}}">Proceed</a>
<a href="?page={{number_of_pages}}" id="last">Last</a>
{% endif %}
{% else %}
{% for number in range(number_of_pages) %}
<a href="?page={{number+1}}">{{number+1}}</a>
{% endfor %}
{% endif %}
</div> </div>
{% endif %}
{% if previous %}
<div id="number-of-pages">
<a href="./">Previous</a>
</div>
{% endif %}
{% if message %} {% if message %}
<div id="xmpp-message">{{message}}</div> <div id="xmpp-message">{{message}}</div>
{% endif %} {% endif %}

View file

@ -36,7 +36,7 @@
<a class="system-menu" href="/selection">&lt; Systems</a> <a class="system-menu" href="/selection">&lt; Systems</a>
<h1>{{title}}</h1> <h1>{{title}}</h1>
{% if skipped %} {% if skipped %}
<a class="system-menu" href="/download/{{software}}/all">All clients &gt;</a> <a class="system-menu" href="/download/{{software}}/all">Clients &gt;</a>
{% elif not featured %} {% elif not featured %}
<a class="system-menu" href="/download/{{software}}">Featured &gt;</a> <a class="system-menu" href="/download/{{software}}">Featured &gt;</a>
{% else %} {% else %}
@ -72,12 +72,12 @@
<img src="/img/fdroid.svg" /> <img src="/img/fdroid.svg" />
</a> </a>
<span> <span>
<strong>Recommended:</strong>
We advise installing an XMPP client with the We advise installing an XMPP client with the
<a href="https://f-droid.org">F-Droid</a> repository, to <a href="https://f-droid.org">F-Droid</a> repository, to
ensure that you are always using the most updated and secure ensure that you are always using the most updated and secure
version of your XMPP chat client of choice, with the latest version of your XMPP chat client of choice, with the latest
and best that XMPP has to offer. and best that XMPP has to offer.
<strong>(recommended)</strong>
</span> </span>
</span> </span>
<span class="notice"> <span class="notice">
@ -85,13 +85,13 @@
<img src="/img/plant.svg" /> <img src="/img/plant.svg" />
</a> </a>
<span> <span>
<strong>Optional:</strong>
We further suggest using an updated Android system. If your We further suggest using an updated Android system. If your
smartphone manufacturer has ceased to provide updates, smartphone manufacturer has ceased to provide updates,
then you can install <a href="https://divestos.org">DivestOS then you can install <a href="https://divestos.org">DivestOS
Mobile</a>, <a href="https://grapheneos.org/">GrapheneOS</a> Mobile</a>, <a href="https://grapheneos.org/">GrapheneOS</a>
or find another custom ROM for your device at or find another custom ROM for your device at
<a href="https://customrombay.org">CustomRomBay</a>. <a href="https://customrombay.org">CustomRomBay</a>.
<strong>(optional)</strong>
</span> </span>
</span> </span>
</div> </div>
@ -175,6 +175,7 @@
<dt> <dt>
<a href="{{client['href']}}" id="{{client['iden']}}"> <a href="{{client['href']}}" id="{{client['iden']}}">
<img class="narrow" src="/img/{{client['iden']}}.svg"/> <img class="narrow" src="/img/{{client['iden']}}.svg"/>
<!-- img class="narrow" src="/img/{{client['iden']}}-small.svg"/ -->
<strong>{{client['name']}}</strong> <strong>{{client['name']}}</strong>
</a> </a>
</dt> </dt>

View file

@ -103,12 +103,27 @@
</a> </a>
</div --> </div -->
<div id="count"> <div id="count">
{% if count_item or count_message %} {% if jid_kind in ('conference', 'mix', 'muc') %}
<a href="{{view_href}}">{% if count_item %}{{count_item}} {{instance}}{% elif count_message %}Preview{% endif %}</a> {% if count_message %}
<span></span> <a href="{{view_href}}">
{% if count_item %}
{{count_item}} {{instance}}
{% else %}
Preview
{% endif %}
</a>
{% else %}
<span>
{{count_item}} {{instance}}
</span>
{% endif %}
{% elif count_item %}
<a href="{{view_href}}">
{{instance}}
</a>
{% endif %} {% endif %}
{% if vcard4 %} {% if vcard4 %}
<a href="/c/{{jid_bare}}">my profile</a> <a href="/c/{{jid_bare}}">interests</a>
{% endif %} {% endif %}
</div> </div>
</div> </div>

View file

@ -6,20 +6,55 @@
<html xmlns="http://www.w3.org/1999/xhtml"> <html xmlns="http://www.w3.org/1999/xhtml">
<head> <head>
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" /> <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />
<title>{{brand_name}}: {{action}} {% if title %}{{title}}{% else %}{{jid_bare}}{% endif %}</title> <title>{{brand_name}}: {{action}} {% if alias %}{{alias}}{% else %}{{title}}{% endif %}</title>
<meta name="description" content="{{action}} {{title}}" /> <meta name="description" content="{{action}} {% if alias %}{{alias}}{% else %}{{title}}{% endif %}" />
<meta name="generator" content="Fast And Sleek Invite" /> <meta name="generator" content="Fast And Sleek Invite" />
<meta name="uri" content="{{xmpp_uri}}" /> <meta name="uri" content="{{xmpp_uri}}" />
<meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="viewport" content="width=device-width, initial-scale=1" />
<meta property="og:description" content="{{action}} {{title}}" /> <meta property="og:description" content="{{action}} {% if alias %}{{alias}}{% else %}{{title}}{% endif %}" />
<meta property="og:image" content="/photo/{{filename}}" /> <meta property="og:image" content="/photo/{{filename}}" />
<meta property="og:site_name" content="{{brand_name}}" /> <meta property="og:site_name" content="{{brand_name}}" />
<meta property="og:title" content="{{title}}" /> <meta property="og:title" content="{% if alias %}{{alias}}{% else %}{{title}}{% endif %}" />
<meta property="og:type" content="website" /> <meta property="og:type" content="website" />
<meta property="og:url" content="{{url}}" /> <meta property="og:url" content="{{url}}" />
<link rel="alternate icon" href="/img/favicon.ico" type="image/x-icon" /> <link rel="alternate icon" href="/img/favicon.ico" type="image/x-icon" />
<link rel="icon" href="/img/favicon.svg" type="image/svg+xml" /> <link rel="icon" href="/img/favicon.svg" type="image/svg+xml" />
<link rel="stylesheet" href="/css/stylesheet.css" media="screen" type="text/css" /> <link rel="stylesheet" href="/css/stylesheet.css" media="screen" type="text/css" />
{% if selection %}
<style>
body {
/* background-repeat: no-repeat; */
background:
url(/img/background.svg),
linear-gradient(
to right,
rgba({{selection[0][2]}}, {{selection[0][1]}}, {{selection[0][0]}}, 0.7),
rgba({{selection[1][2]}}, {{selection[1][1]}}, {{selection[1][0]}}, 0.7)
);
}
@media (prefers-color-scheme: dark) {
body {
background:
url(/img/background.svg),
linear-gradient(
to right,
rgba({{selection[0][2]-50}}, {{selection[0][1]-50}}, {{selection[0][0]-50}}, 0.7),
rgba({{selection[1][2]-50}}, {{selection[1][1]-50}}, {{selection[1][0]-50}}, 0.7)
);
}
}
@media (max-width: 725px) and (prefers-color-scheme: dark) {
body {
background: #2b2a33;
}
}
@media (max-width: 725px) {
body {
background: #f5f5f5;
}
}
</style>
{% endif %}
</head> </head>
<body> <body>
<div id="overlay"> <div id="overlay">
@ -32,9 +67,29 @@
</a> </a>
</div> </div>
<div id="container"> <div id="container">
<div id="content"> <div id="profile">
<h1>{{title}}</h1>
{% if filename %}
<div id="graphics">
<!-- a href="xmpp:{{jid_bare}}" -->
<img id="photo" src="/photo/{{filename}}" />
<img id="qrcode" src="/qr/{{jid_bare}}.png" />
<!-- /a -->
</div>
{% endif %}
<div id="vcard-note">
{% if note %}{{note}}{% endif %}
</div>
<!-- div>
<pre id="xmpp-uri">{{xmpp_uri}}</pre>
</div -->
{% if exception %}
<div>
<code>{{exception}}</code>
</div>
{% endif %}
{% if links %} {% if links %}
<div id="action-bar"> <div id="action">
{% for link in links %} {% for link in links %}
<a href="{{link['href']}}" id="{{link['iden']}}"> <a href="{{link['href']}}" id="{{link['iden']}}">
{{link['name']}} {{link['name']}}
@ -42,54 +97,38 @@
{% endfor %} {% endfor %}
</div> </div>
{% endif %} {% endif %}
<div id="profile-top"> <div id="pubsub">
{% if filename %} {% if entries %}
<img id="photo" src="/photo/{{filename}}" /> <div id="entries">
{% endif %} {% for entry in entries %}
<span id="titles"> <div class="entry"
<h1>{{node_title}}</h1> id="{{entry['id']}}">
<a href="/j/{{jid_bare}}/{{node_name}}"> <h3>
<h2>{{jid_title}}</h2> <a href="#{{entry['id']}}" title="{{entry['updated'] or entry['published']}}">📜️</a>
</a> <strong>{{entry['title']}}</strong>
{% if node_note %} </h3>
<h3> <div class="summary">{{entry['content'] or entry['summary']}}</div>
{{node_note}} <!-- div class="date">{{entry['updated'] or entry['published']}}</div -->
</h3> {% if entry['tags'] %}
{% endif %} <div class="tags">
</span> <span>Tags:</span>
<img id="qrcode" src="/qr/{{jid_bare}}.png" /> {% for tag in entry['tags'] %}
</div> <span>{{tag}}</span>
{% if entries %} {% endfor %}
<div id="entries"> </div>
{% for entry in entries %} {% endif %}
<div class="entry" <div class="link">
id="{{entry['id']}}"> <a href="/d/{{jid_bare}}/{{node_name}}/{{entry['id']}}"
<strong>{{entry['title']}}</strong> title="Permalink (i.e. permanent link)."
<div class="summary">{{entry['content'] or entry['summary']}}</div> class="permalink">Permalink</a>
<div class="date">{{entry['updated'] or entry['published']}}</div> (<a href="{{entry['href']}}"
{% if entry['tags'] %} title="Source might require an XMPP client.">Source</a>)
<div class="tags">
<span>Tags:</span>
{% for tag in entry['tags'] %}
<span>{{tag}}</span>
{% endfor %}
</div> </div>
{% endif %}
<div class="link">
<a href="{{entry['href']}}">Source</a>
<a href="/d/{{jid_bare}}/{{node_name}}/{{entry['id']}}"
title="Permalink (i.e. permanent link)"
class="permalink">Permalink</a>
</div> </div>
</div> {% endfor %}
{% endfor %} </div>
</div> {% endif %}
{% endif %} </div>
{% if exception %}
<div>
<code id="exception">{{exception}}</code>
</div>
{% endif %}
{% if number_of_pages %} {% if number_of_pages %}
<div id="number-of-pages"> <div id="number-of-pages">
{% if number_of_pages > 3 %} {% if number_of_pages > 3 %}
@ -117,23 +156,26 @@
{% endif %} {% endif %}
{% if previous %} {% if previous %}
<div id="number-of-pages"> <div id="number-of-pages">
<!-- a href="./">Return to {{node_title}}</a --> <a href="./">Previous</a>
<a href="./">Return</a>
</div> </div>
{% endif %} {% endif %}
<!-- div> </div>
<a id="preview" href="/view/{{jid_bare}}"> <div id="notice">
Preview journal OR Preview group chat If you already have <strong>{% if news_client and jid_kind == 'pubsub' %}{{news_client}}{% elif chat_client %}{{chat_client}}{% else %}an XMPP Client{% endif %}</strong> you can
</a> <br/>
</div --> {% if jid_kind in ('conference', 'mix', 'muc') %}
<!-- div> join to
<a href="{{brand_site}}"> {% elif jid_kind == 'pubsub' %}
<img id="logo-bottom" src="/img/logo-wordmark-vertical.svg" /> subscribe to
</a> {% elif jid_kind == 'bot' %}
</div --> try
<!-- div id="note"> {% elif jid_kind == 'server' %}
The Universal Messaging Standard explore
</div --> {% else %}
talk with
{% endif %}
<strong>{{title}}</strong>
right now.
</div> </div>
</div> </div>
{% if message %} {% if message %}

View file

@ -20,6 +20,41 @@
<link rel="alternate icon" href="/img/favicon.ico" type="image/x-icon" /> <link rel="alternate icon" href="/img/favicon.ico" type="image/x-icon" />
<link rel="icon" href="/img/favicon.svg" type="image/svg+xml" /> <link rel="icon" href="/img/favicon.svg" type="image/svg+xml" />
<link rel="stylesheet" href="/css/stylesheet.css" media="screen" type="text/css" /> <link rel="stylesheet" href="/css/stylesheet.css" media="screen" type="text/css" />
{% if selection %}
<style>
body {
/* background-repeat: no-repeat; */
background:
url(/img/background.svg),
linear-gradient(
to right,
rgba({{selection[0][2]}}, {{selection[0][1]}}, {{selection[0][0]}}, 0.7),
rgba({{selection[1][2]}}, {{selection[1][1]}}, {{selection[1][0]}}, 0.7)
);
}
@media (prefers-color-scheme: dark) {
body {
background:
url(/img/background.svg),
linear-gradient(
to right,
rgba({{selection[0][2]-50}}, {{selection[0][1]-50}}, {{selection[0][0]-50}}, 0.7),
rgba({{selection[1][2]-50}}, {{selection[1][1]-50}}, {{selection[1][0]-50}}, 0.7)
);
}
}
@media (max-width: 725px) and (prefers-color-scheme: dark) {
body {
background: #2b2a33;
}
}
@media (max-width: 725px) {
body {
background: #f5f5f5;
}
}
</style>
{% endif %}
</head> </head>
<body> <body>
<div id="overlay"> <div id="overlay">
@ -36,65 +71,26 @@
<h1> <h1>
{% if 'fn' in vcard_info and vcard_info['fn'] %} {% if 'fn' in vcard_info and vcard_info['fn'] %}
{{vcard_info['fn']}} {{vcard_info['fn']}}
{% elif title %}
{{title}}
{% else %} {% else %}
{{jid_bare}} {{jid_bare}}
{% endif %} {% endif %}
</h1> </h1>
{% if 'org' in vcard_info and vcard_info['org'] %} {% if filename %}
<h2>{{vcard_info['org']}}</h2> <div id="graphics">
<!-- a href="xmpp:{{jid_bare}}" -->
<img id="photo" src="/photo/{{filename}}" />
<img id="qrcode" src="/qr/{{jid_bare}}.png" />
<!-- /a -->
</div>
{% endif %} {% endif %}
{% if 'note' in vcard_info and vcard_info['note'] %} <div id="vcard-note">
<div id="vcard-note-full">{{vcard_info['note']}}</div> {% if note %}{{note}}{% endif %}
{% endif %}
<div id="vcard-links">
{% if 'email' in vcard_info and vcard_info['email'] %}
<a class="vcard-link" href="mailto:{{vcard_info['email']}}">✉️</a>
{% endif %}
{% if 'impp' in vcard_info and vcard_info['impp'] %}
<a class="vcard-link" href="{{vcard_info['impp']}}">💬️</a>
{% endif %}
<a class="vcard-link" href="xmpp:{{xmpp_uri}}">💡️</a>
{% if 'url' in vcard_info and vcard_info['url'] %}
<a class="vcard-link" href="{{vcard_info['url']}}">🔗️</a>
{% endif %}
</div>
<div id="vcard-links-extra">
{% if 'movim' in vcard_info and vcard_info['movim'] %}
<h3>Movim</h3>
{% for i in vcard_info['movim'] %}
<a href="{{i['uri']}}">{{i['label']}}</a>
{% endfor %}
{% endif %}
{% if 'journal' in vcard_info and vcard_info['journal'] %}
<h3>Journal</h3>
{% for i in vcard_info['journal'] %}
<a href="{{i['uri']}}">{{i['label']}}</a>
{% endfor %}
{% endif %}
{% if 'gallery' in vcard_info and vcard_info['gallery'] %}
<h3>Gallery</h3>
{% for i in vcard_info['gallery'] %}
<a href="{{i['uri']}}">{{i['label']}}</a>
{% endfor %}
{% endif %}
{% if 'peertube' in vcard_info and vcard_info['peertube'] %}
<h3>PeerTube</h3>
{% for i in vcard_info['peertube'] %}
<a href="{{i['uri']}}">{{i['label']}}</a>
{% endfor %}
{% endif %}
{% if 'code' in vcard_info and vcard_info['code'] %}
<h3>Code</h3>
{% for i in vcard_info['code'] %}
<a href="{{i['uri']}}">{{i['label']}}</a>
{% endfor %}
{% endif %}
</div>
<div>
{% for i in vcard_info %}
<!-- a href="{{vcard_info[i]}}">{{i}}</a -->
{% endfor %}
</div> </div>
<!-- div>
<pre id="xmpp-uri">{{xmpp_uri}}</pre>
</div -->
{% if exception %} {% if exception %}
<div> <div>
<code>{{exception}}</code> <code>{{exception}}</code>
@ -109,23 +105,57 @@
{% endfor %} {% endfor %}
</div> </div>
{% endif %} {% endif %}
<!-- div> <div id="vcard">
<a id="preview" href="/view/{{jid_bare}}"> {% if 'org' in vcard_info and vcard_info['org'] %}
Preview journal OR Preview group chat <h2>{{vcard_info['org']}}</h2>
</a> {% endif %}
</div --> {% if 'note' in vcard_info and vcard_info['note'] %}
{% if count or jid_kind in ('conference', 'mix', 'muc') %} <div id="vcard-note-full">{{vcard_info['note']}}</div>
<div id="count"> {% endif %}
<a href="{{view_href}}"> <div id="vcard-links">
{% if count %} {% if 'email' in vcard_info and vcard_info['email'] %}
{{count}} {{instance}} <a class="vcard-link" href="mailto:{{vcard_info['email']}}">✉️</a>
{% elif jid_kind in ('conference', 'mix', 'muc') %} {% endif %}
Preview {% if 'impp' in vcard_info and vcard_info['impp'] %}
{% endif %} <a class="vcard-link" href="{{vcard_info['impp']}}">💬️</a>
</a> {% endif %}
<a class="vcard-link" href="xmpp:{{xmpp_uri}}">💡️</a>
{% if 'url' in vcard_info and vcard_info['url'] %}
<a class="vcard-link" href="{{vcard_info['url']}}">🔗️</a>
{% endif %}
</div>
<div id="vcard-links-extra">
{% for category in vcard_info['extras'] %}
<h3>{{category.title()}}</h3>
{% for i in vcard_info['extras'][category] %}
<a href="{{i['uri']}}">{{i['label']}}</a>
{% endfor %}
{% endfor %}
</div>
</div>
{% if previous %}
<div id="number-of-pages">
<a href="./">Previous</a>
</div> </div>
{% endif %} {% endif %}
</div> </div>
<div id="notice">
If you already have <strong>{% if news_client and jid_kind == 'pubsub' %}{{news_client}}{% elif chat_client %}{{chat_client}}{% else %}an XMPP Client{% endif %}</strong> you can
<br/>
{% if jid_kind in ('conference', 'mix', 'muc') %}
join to
{% elif jid_kind == 'pubsub' %}
subscribe to
{% elif jid_kind == 'bot' %}
try
{% elif jid_kind == 'server' %}
explore
{% else %}
talk with
{% endif %}
<strong>{{title}}</strong>
right now.
</div>
</div> </div>
{% if message %} {% if message %}
<div id="xmpp-message">{{message}}</div> <div id="xmpp-message">{{message}}</div>