]> git.mxchange.org Git - fba.git/blobdiff - fba/helpers/software.py
Continued:
[fba.git] / fba / helpers / software.py
index 2308d2cb3bb87a26d9eaffe5360cb81f9b43712b..085577fb04866041247f9cb046446e4c37c830e6 100644 (file)
@@ -17,6 +17,7 @@
 import logging
 
 from fba.helpers import tidyup
+from fba.helpers import version
 
 logging.basicConfig(level=logging.INFO)
 logger = logging.getLogger(__name__)
@@ -33,30 +34,43 @@ def alias(software: str) -> str:
     if software in ["akkoma", "rebased", "akkounfucked", "ched"]:
         logger.debug("Setting pleroma: software='%s'", software)
         software = "pleroma"
-    elif software in ["hometown", "ecko"]:
+    elif software in ["hometown", "ecko"] or "mastodon" in software:
         logger.debug("Setting mastodon: software='%s'", software)
         software = "mastodon"
-    elif software in ["slipfox calckey", "calckey", "groundpolis", "foundkey", "cherrypick", "meisskey", "magnetar", "keybump"]:
+    elif software in ["slipfox calckey", "calckey", "groundpolis", "foundkey", "cherrypick", "meisskey", "magnetar", "keybump", "dolphin", "calckey social", "azk.sns"] or "shumihub" in software or "мисскей" in software:
         logger.debug("Setting misskey: software='%s'", software)
         software = "misskey"
-    elif software == "runtube.re":
+    elif software in ["runtube.re", "islameye"]:
         logger.debug("Setting peertube: software='%s'", software)
         software = "peertube"
-    elif software == "nextcloud social":
+    elif software in ["nextcloud social", "nextcloudpi", "storage share"]:
         logger.debug("Setting nextcloud: software='%s'", software)
         software = "nextcloud"
+    elif software == "roadhouse":
+        logger.debug("Setting hubzilla: software='%s'", software)
+        software = "hubzilla"
+    elif software == "takahē":
+        logger.debug("Setting takahe: software='%s'", software)
+        software = "takahe"
+    elif software == "diaspora* social network":
+        logger.debug("Setting diaspora: software='%s'", software)
+        software = "diaspora"
     elif software.find("/") > 0:
         logger.warning("Spliting of slash: software='%s'", software)
-        software = tidyup.domain(software.split("/")[-1])
+        software = software.split("/")[-1]
     elif software.find("|") > 0:
         logger.warning("Spliting of pipe: software='%s'", software)
-        software = tidyup.domain(software.split("|")[0])
+        software = software.split("|")[0]
     elif "powered by" in software:
         logger.debug("software='%s' has 'powered by' in it", software)
         software = version.strip_powered_by(software)
-    elif isinstance(software, str) and " by " in software:
+
+    if isinstance(software, str) and " by " in software:
         logger.debug("software='%s' has ' by ' in it", software)
         software = version.strip_until(software, " by ")
+    elif isinstance(software, str) and " - " in software:
+        logger.debug("software='%s' has ' - ' in it", software)
+        software = version.strip_until(software, " - ")
     elif isinstance(software, str) and " see " in software:
         logger.debug("software='%s' has ' see ' in it", software)
         software = version.strip_until(software, " see ")
@@ -65,6 +79,9 @@ def alias(software: str) -> str:
     if software == "":
         logger.warning("tidyup.domain() left no software name behind: software='%s'", software)
         software = None
+    else:
+        logger.debug("software='%s' is being cleaned up further ...")
+        software = software.rstrip("!")
 
     logger.debug("software[%s]='%s' - EXIT!", type(software), software)
     return software