/** * возвращает тарифы на публикацию конкурса * @return array */ public static function getContestTaxes() { global $DB; // если массив с ценами уже был сформирован, то возвращаем его if (self::$contestTaxes_) { return self::$contestTaxes_; } // берем цены публикации конкурса из базы $contestTaxesCodesSql = implode(',', self::$contestTaxesCodes); $sql = "\n SELECT id, sum\n FROM op_codes\n WHERE id IN ({$contestTaxesCodesSql})"; $rows = $DB->cache(1800)->rows($sql); $contestTaxes_ = self::$contestTaxes; foreach ($rows as $row) { if (isset($contestTaxes_['nopro'][$row['id']])) { $contestTaxes_['nopro'][$row['id']]['sum'] = (int) $row['sum']; } else { $contestTaxes_['pro'][$row['id']]['sum'] = (int) $row['sum']; } } self::$contestTaxes_ = $contestTaxes_; return $contestTaxes_; }