Code Duplication    Length = 31-32 lines in 2 locations

class/AnswerHandler.php 1 location

@@ 176-206 (lines=31) @@
173
     * @param  bool            $as_object
174
     * @return array           array of <a href='psi_element://sfAnswer'>sfAnswer</a> objects
175
     */
176
    public function &getObjects(\CriteriaElement $criteria = null, $id_as_key = false, $as_object = true)
177
    {
178
        $ret   = [];
179
        $limit = $start = 0;
180
        $sql   = 'SELECT * FROM ' . $this->db->prefix('smartfaq_answers');
181
        if (isset($criteria) && is_subclass_of($criteria, 'CriteriaElement')) {
182
            $sql .= ' ' . $criteria->renderWhere();
183
            if ('' != $criteria->getSort()) {
184
                $sql .= ' ORDER BY ' . $criteria->getSort() . ' ' . $criteria->getOrder();
185
            }
186
            $limit = $criteria->getLimit();
187
            $start = $criteria->getStart();
188
        }
189
        //echo "<br>" . $sql . "<br>";
190
        $result = $this->db->query($sql, $limit, $start);
191
        if (!$result) {
192
            return $ret;
193
        }
194
        while (false !== ($myrow = $this->db->fetchArray($result))) {
195
            $answer = new Smartfaq\Answer();
196
            $answer->assignVars($myrow);
197
            if (!$id_as_key) {
198
                $ret[] =& $answer;
199
            } else {
200
                $ret[$myrow['answerid']] = $answer;
201
            }
202
            unset($answer);
203
        }
204
205
        return $ret;
206
    }
207
208
    /**
209
     * retrieve 1 official answer (for now SmartFAQ only allow 1 official answer...)

class/CategoryHandler.php 1 location

@@ 185-216 (lines=32) @@
182
     * @param  bool   $id_as_key use the categoryid as key for the array?
183
     * @return array  array of {@link XoopsFaq} objects
184
     */
185
    public function getObjects($criteria = null, $id_as_key = false)
186
    {
187
        $ret   = [];
188
        $limit = $start = 0;
189
        $sql   = 'SELECT * FROM ' . $this->db->prefix('smartfaq_categories');
190
        if (null !== $criteria && is_subclass_of($criteria, 'CriteriaElement')) {
191
            $sql .= ' ' . $criteria->renderWhere();
192
            if ('' != $criteria->getSort()) {
193
                $sql .= ' ORDER BY ' . $criteria->getSort() . ' ' . $criteria->getOrder();
194
            }
195
            $limit = $criteria->getLimit();
196
            $start = $criteria->getStart();
197
        }
198
        //echo "<br>" . $sql . "<br>";
199
        $result = $this->db->query($sql, $limit, $start);
200
        if (!$result) {
201
            return $ret;
202
        }
203
204
        while (false !== ($myrow = $this->db->fetchArray($result))) {
205
            $category = new Smartfaq\Category();
206
            $category->assignVars($myrow);
207
            if (!$id_as_key) {
208
                $ret[] = $category;
209
            } else {
210
                $ret[$myrow['categoryid']] = $category;
211
            }
212
            unset($category);
213
        }
214
215
        return $ret;
216
    }
217
218
    /**
219
     * @param  int    $limit