$_table = $_table_info["table"]; $_key = $_table_info["key"]; foreach ($inserts as $_insert) { /** @var callable $callback */ list($object_class, $type, $fields, $callback) = $_insert; if ($fields === $_fields && $object_class === $_object_class && $type === $_type) { $_query = $callback($ds, $_row); $ds->exec($_query); $counts["insert"] += $ds->affectedRows(); } } } // Delete user logs entries $request = new CRequest(); $request->addWhereClause("user_log_id", "BETWEEN {$min} AND {$max}"); $request->addForceIndex("PRIMARY"); $request->addWhere($where); $query = $request->makeDelete($log); $ds->exec($query); $counts["insert"] = $ds->affectedRows(); } else { $query = $request->makeSelectCount($log); $counts["insert"] = $ds->loadResult($query); } //</editor-fold> $offset = $max + 1; // Stop auto if end is reached $log->loadMatchingObject("user_log_id DESC"); if ($log->_id < $offset) { $auto = 0; }
/** * Object count of a multiple list by an SQL request constructor using group-by statement * * @param array $where Array of where clauses * @param array|string $order Order statement * @param array|string $group Group by statement * @param array $ljoin Array of left join clauses * @param array $fields Append fields to the SELECT * @param array|string $index Force index * * @return self[] */ function countMultipleList($where = null, $order = null, $group = null, $ljoin = null, $fields = array(), $index = null) { if (!$this->_ref_module) { return null; } $request = new CRequest(); $request->addWhere($where); $request->addOrder($order); $request->addGroup($group); $request->addLJoin($ljoin); $request->addForceIndex($index); $ds = $this->_spec->ds; return $ds->loadList($request->makeSelectCount($this, $fields)); }