diff --git a/.gitignore b/.gitignore index b4ced277..fdcffdfa 100644 --- a/.gitignore +++ b/.gitignore @@ -37,6 +37,7 @@ ext/image_hash_ban ext/ipban ext/link_image ext/log_db +ext/log_net ext/mass_tagger ext/news ext/notes diff --git a/contrib/admin/main.php b/contrib/admin/main.php index f4a78545..7e746eb3 100644 --- a/contrib/admin/main.php +++ b/contrib/admin/main.php @@ -139,12 +139,12 @@ class AdminPage extends Extension { private function dbdump(Page $page) { $matches = array(); - preg_match("#(\w+)://(\w+):(\w+)@([\w\.\-]+)/([\w_]+)(\?.*)?#", DATABASE_DSN, $matches); - $software = $matches[1]; - $username = $matches[2]; - $password = $matches[3]; - $hostname = $matches[4]; - $database = $matches[5]; + preg_match("#^(?P\w+)\:(?:user=(?P\w+)(?:;|$)|password=(?P\w+)(?:;|$)|host=(?P[\w\.\-]+)(?:;|$)|dbname=(?P[\w_]+)(?:;|$))+#", DATABASE_DSN, $matches); + $software = $matches['proto']; + $username = $matches['user']; + $password = $matches['password']; + $hostname = $matches['host']; + $database = $matches['dbname']; // TODO: Support more than just MySQL.. switch($software) { diff --git a/contrib/bookmarks/main.php b/contrib/bookmarks/main.php index ea983689..381ab7da 100644 --- a/contrib/bookmarks/main.php +++ b/contrib/bookmarks/main.php @@ -41,7 +41,7 @@ class Bookmarks extends Extension { id SCORE_AIPK, owner_id INTEGER NOT NULL, url TEXT NOT NULL, - title TET NOT NULL, + title TEXT NOT NULL, INDEX (owner_id), FOREIGN KEY (owner_id) REFERENCES users(id) ON DELETE CASCADE "); diff --git a/contrib/log_net/main.php b/contrib/log_net/main.php new file mode 100644 index 00000000..a35ea54a --- /dev/null +++ b/contrib/log_net/main.php @@ -0,0 +1,21 @@ + + * Link: http://code.shishnet.org/shimmie2/ + * Description: Send log events to a network port. + * Visibility: admin + */ + +class LogNet extends Extension { + public function onLog(LogEvent $event) { + global $user; + + if($event->priority > 10) { + $username = ($user && $user->name) ? $user->name : "Anonymous"; + $str = sprintf("%2d %15s (%s): %s - %s", $event->priority, $_SERVER['REMOTE_ADDR'], $username, $event->section, $event->message); + system("echo ".escapeshellarg($str)." | nc -q 0 localhost 5000"); + } + } +} +?> diff --git a/ext/tag_list/theme.php b/ext/tag_list/theme.php index 59f7c556..a0684041 100644 --- a/ext/tag_list/theme.php +++ b/ext/tag_list/theme.php @@ -89,7 +89,7 @@ class TagListTheme extends Themelet { $html .= ' ?'; } $link = $this->tag_link($row['tag']); - $html .= ' '.$h_tag_no_underscores.''; + $html .= ' '.$h_tag_no_underscores.''; if($tag_list_num) { $html .= ' '.$count.''; }