/** * @param Database $db * @param string $formatter */ function setFormatter($db, $formatter = false) { $formatter || ($formatter = 'VoodooFormatter'); if (!preg_match('/^[A-Za-z0-9_]+$/', $formatter)) { exit('Incorrect Formatter'); } // Error out $split = split('_', $formatter); require_once CLASSES . 'VoodooFormatter.php'; if (count($split) == 2) { list($dir, $formatter) = $split; if (is_file(SPELLBOOK . $dir . '/classes/' . $formatter . '.php')) { require_once SPELLBOOK . $dir . '/classes/' . $formatter . '.php'; } else { $formatter = 'VoodooFormatter'; } } $f = new $formatter($db); VoodooFormatter::register($f); }