]> _ Git - cubist_matomo.git/commitdiff
wip #4978 @0.25
authorVincent Vanwaelscappel <vincent@cubedesigners.com>
Tue, 21 Dec 2021 19:59:53 +0000 (20:59 +0100)
committerVincent Vanwaelscappel <vincent@cubedesigners.com>
Tue, 21 Dec 2021 19:59:53 +0000 (20:59 +0100)
src/Reporting.php

index 2cd33ea593cccd1d51ff2d0d30300a004f2a5ad8..88574c4733033cc74086c99bb4ff0e5a23b156f0 100644 (file)
@@ -43,9 +43,43 @@ class Reporting
         return $this->_allSites;
     }
 
+    /**
+     * @param string $name
+     * @param string $url
+     * @param bool $search
+     * @param bool $ecommerce
+     * @return int|null
+     */
+    public function createSite($name, $url, $search = true, $ecommerce = false)
+    {
+        $res = $this->_apicall('SitesManager.addSite', ['siteName' => $name, 'urls' => $url, 'ecommerce' => $ecommerce, 'siteSearch' => $search]);
+        return $res['value'] ?? null;
+    }
+
+    /**
+     * @param $name
+     * @param $url
+     * @param bool $search
+     * @param false $ecommerce
+     * @return int|null
+     */
+    public function createSiteIfNotExistsOrReturnId($name, $url, $search = true, $ecommerce = false)
+    {
+        $id=$this->getSiteIdByURL($url);
+        if (null === $id) {
+            return $this->createSite($name, $url, $search, $ecommerce);
+        }
+        return $id;
+    }
+
+    /**
+     * @param $url
+     * @return int|null
+     */
     public function getSiteIdByURL($url)
     {
-        return $this->_apicall('SitesManager.getSitesIdFromSiteUrl',['url'=>$url]);
+        $res = $this->_apicall('SitesManager.getSitesIdFromSiteUrl', ['url' => $url]);
+        return $res[0]['idsite'] ?? null;
     }