From 553fdc8ab45f9cdf96c73263df2b5abb7d5c76ef Mon Sep 17 00:00:00 2001
From: Gerhard Gonter <ggonter@gmail.com>
Date: Thu, 23 Mar 2023 18:11:26 +0100
Subject: [PATCH] another ugly hack

---
 dcd.pl | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/dcd.pl b/dcd.pl
index ae52e38..4674291 100755
--- a/dcd.pl
+++ b/dcd.pl
@@ -177,17 +177,18 @@ sub register_url
       || $repo_url =~ m#https://(www\.protokollezurbibel\.at)/index\.php/(pzb)/article/view/(\d+)$#
       || $repo_url =~ m#https://(www\.tde-journal\.org)/index\.php/(tde)/article/view/(\d+)$#
       || $repo_url =~ m#https://(exfonte\.org)/index\.php/(exf)/article/view/(\d+)$#
+      || $repo_url =~ m#https://(journalofsocialontology\.org)/index\.php/(jso)/article/view/(\d+)$#
       # Othes
       || $repo_url =~ m#https://(othes\.univie\.ac\.at)/(\d+)/$#
      )
   {
     my ($repo, @parts)= ($1, $2, $3, $4, $5, $6, $7, $8);
     my $pid;
-    while (@parts) { $pid= pop (@parts); last if (defined($pid)) };
+    while (@parts && !defined($pid)) { $pid= pop (@parts); }
 
-    my $journal= (@parts == 1) ? $parts[0] : undef; # ugly hack!
+    my $journal= (@parts == 1 || @parts == 2) ? $parts[0] : undef; # ugly hack!
 
-    print __LINE__, " repo=[$repo] pid=[$pid] parts=[",join('|',@parts),"]\n";
+    print __LINE__, " repo=[$repo] journal=[$journal] pid=[$pid] parts=[",join('|',@parts),"]\n";
 
     usage ("unknown repo=[$repo]") unless (exists ($cnf->{repositories}->{$repo}));
     print __LINE__, " repo=[$repo]\n";
-- 
GitLab