Browse code

Extend countPublishedByParent method with options for assets

Benjamin Roth authored on15/03/2024 14:06:05
Showing2 changed files
... ...
@@ -36,9 +36,9 @@ abstract class RealEstateAssetsModuleController extends AbstractFrontendModuleCo
36 36
    *
37 37
    * @return integer
38 38
    */
39
-  public function countRealEstateAssets($arrCategories)
39
+  public function countRealEstateAssets($arrCategories, array $arrOptions=array())
40 40
   {
41
-    return RealEstateAssetsModel::countPublishedByParent($arrCategories);
41
+    return RealEstateAssetsModel::countPublishedByParent($arrCategories,$arrOptions);
42 42
   }
43 43
 
44 44
   /**
... ...
@@ -221,6 +221,7 @@ class RealEstateAssetsModel extends Model
221 221
 
222 222
         $t = static::$strTable;
223 223
         $arrColumns = ["$t.pid IN(" . implode(',', array_map('\intval', $arrPids)) . ")"];
224
+        $arrValues = [];
224 225
 
225 226
         if (!static::isPreviewMode($arrOptions))
226 227
         {
... ...
@@ -228,6 +229,15 @@ class RealEstateAssetsModel extends Model
228 229
             $arrColumns[] = "$t.published='1' AND ($t.start='' OR $t.start<='$time') AND ($t.stop='' OR $t.stop>'$time')";
229 230
         }
230 231
 
231
-        return static::countBy($arrColumns, null, $arrOptions);
232
+        if (isset($arrOptions['column']))
233
+        {
234
+            $arrColumns = array_merge($arrColumns,$arrOptions['column']);
235
+        }
236
+        if (isset($arrOptions['value']))
237
+        {
238
+            $arrValues = array_merge($arrValues,$arrOptions['value']);
239
+        }
240
+
241
+        return static::countBy($arrColumns, $arrValues, $arrOptions);
232 242
     }
233 243
 }