public static function getAllRibbons() { // todo: cache? $ribbons = array(); $sql = "SELECT\tlanguage.languageItemValue AS ribbonName,\n\t\t\t\tlanguage.languageItem AS ribbonID\n\t\t\tFROM\twcf" . WCF_N . "_language_item language\n\t\t\tWHERE\tlanguage.languageItem LIKE 'wcf.cheatDatabase.entry.ribbon.%'"; $result = WCF::getDB()->sendQuery($sql); while ($row = WCF::getDB()->fetchArray($result)) { if (preg_match('/\\d+$/', $row['ribbonID'], $matches)) { $row['ribbonID'] = intval($matches[0]); $row['entryID'] = 0; $ribbons[] = new EntryRibbon(null, null, $row); } } DatabaseObject::sort($ribbons, 'ribbonID'); return $ribbons; }