RewriteEngine On
+# NOTE: change this to your actual Laconica path; may be "/".
+
+RewriteBase /mublog/
+
RewriteRule ^$ index.php?action=public [L,QSA]
RewriteRule ^rss$ index.php?action=publicrss [L,QSA]
RewriteRule ^xrds$ index.php?action=publicxrds [L,QSA]
+RewriteRule ^featuredrss$ index.php?action=featuredrss [L,QSA]
+RewriteRule ^favoritedrss$ index.php?action=favoritedrss [L,QSA]
+RewriteRule ^opensearch/people$ index.php?action=opensearch&type=people [L,QSA]
+RewriteRule ^opensearch/notice$ index.php?action=opensearch&type=notice [L,QSA]
RewriteRule ^doc/about$ index.php?action=doc&title=about [L,QSA]
RewriteRule ^doc/contact$ index.php?action=doc&title=contact [L,QSA]
RewriteRule ^doc/privacy$ index.php?action=doc&title=privacy [L,QSA]
RewriteRule ^doc/source$ index.php?action=doc&title=source [L,QSA]
+RewriteRule ^facebook/$ index.php?action=facebookhome [L,QSA]
+RewriteRule ^facebook/index.php$ index.php?action=facebookhome [L,QSA]
+RewriteRule ^facebook/settings.php$ index.php?action=facebooksettings [L,QSA]
+RewriteRule ^facebook/invite.php$ index.php?action=facebookinvite [L,QSA]
+RewriteRule ^facebook/remove$ index.php?action=facebookremove [L,QSA]
+
RewriteRule ^main/login$ index.php?action=login [L,QSA]
RewriteRule ^main/logout$ index.php?action=logout [L,QSA]
+RewriteRule ^main/register/(.*)$ index.php?action=register&code=$1 [L,QSA]
RewriteRule ^main/register$ index.php?action=register [L,QSA]
RewriteRule ^main/openid$ index.php?action=openidlogin [L,QSA]
RewriteRule ^main/remote$ index.php?action=remotesubscribe [L,QSA]
RewriteRule ^main/confirmaddress/(.*)$ index.php?action=confirmaddress&code=$1 [L,QSA]
RewriteRule ^main/recoverpassword$ index.php?action=recoverpassword [L,QSA]
RewriteRule ^main/recoverpassword/(.*)$ index.php?action=recoverpassword&code=$1 [L,QSA]
+RewriteRule ^main/invite$ index.php?action=invite [L,QSA]
+
+RewriteRule ^main/favor$ index.php?action=favor [L,QSA]
+RewriteRule ^main/disfavor$ index.php?action=disfavor [L,QSA]
+
+RewriteRule ^main/sup$ index.php?action=sup [L,QSA]
+
+RewriteRule ^main/tagother$ index.php?action=tagother [L,QSA]
+
+RewriteRule ^main/block$ index.php?action=block [L,QSA]
-RewriteRule ^settings/avatar$ index.php?action=avatar [L,QSA]
-RewriteRule ^settings/password$ index.php?action=password [L,QSA]
RewriteRule ^settings/profile$ index.php?action=profilesettings [L,QSA]
+RewriteRule ^settings/avatar$ index.php?action=avatarsettings [L,QSA]
+RewriteRule ^settings/password$ index.php?action=passwordsettings [L,QSA]
RewriteRule ^settings/openid$ index.php?action=openidsettings [L,QSA]
RewriteRule ^settings/im$ index.php?action=imsettings [L,QSA]
RewriteRule ^settings/email$ index.php?action=emailsettings [L,QSA]
+RewriteRule ^settings/sms$ index.php?action=smssettings [L,QSA]
+RewriteRule ^settings/twitter$ index.php?action=twittersettings [L,QSA]
+RewriteRule ^settings/other$ index.php?action=othersettings [L,QSA]
RewriteRule ^search/people$ index.php?action=peoplesearch [L,QSA]
RewriteRule ^search/notice$ index.php?action=noticesearch [L,QSA]
RewriteRule ^notice/new$ index.php?action=newnotice [L,QSA]
RewriteRule ^notice/(\d+)$ index.php?action=shownotice¬ice=$1 [L,QSA]
+RewriteRule ^notice/delete/((\d+))?$ index.php?action=deletenotice¬ice=$2 [L,QSA]
+RewriteRule ^notice/delete$ index.php?action=deletenotice [L,QSA]
+
+RewriteRule ^message/new$ index.php?action=newmessage [L,QSA]
+RewriteRule ^message/(\d+)$ index.php?action=showmessage&message=$1 [L,QSA]
RewriteRule ^user/(\d+)$ index.php?action=userbyid&id=$1 [L,QSA]
-RewriteRule ^(\w+)/subscriptions$ index.php?action=subscriptions&nickname=$1 [L,QSA]
-RewriteRule ^(\w+)/subscribers$ index.php?action=subscribers&nickname=$1 [L,QSA]
-RewriteRule ^(\w+)/xrds$ index.php?action=xrds&nickname=$1 [L,QSA]
-RewriteRule ^(\w+)/rss$ index.php?action=userrss&nickname=$1 [L,QSA]
-RewriteRule ^(\w+)/all$ index.php?action=all&nickname=$1 [L,QSA]
-RewriteRule ^(\w+)/all/rss$ index.php?action=allrss&nickname=$1 [L,QSA]
-RewriteRule ^(\w+)/foaf$ index.php?action=foaf&nickname=$1 [L,QSA]
-RewriteRule ^(\w+)/replies$ index.php?action=replies&nickname=$1 [L,QSA]
-RewriteRule ^(\w+)/replies/rss$ index.php?action=repliesrss&nickname=$1 [L,QSA]
-RewriteRule ^(\w+)/avatar/(original|96|48|24)$ index.php?action=avatarbynickname&nickname=$1&size=$2 [L,QSA]
+RewriteRule ^tags/?$ index.php?action=publictagcloud [L,QSA]
+RewriteRule ^tag/([a-zA-Z0-9]+)/rss$ index.php?action=tagrss&tag=$1 [L,QSA]
+RewriteRule ^tag(/(.*))?$ index.php?action=tag&tag=$2 [L,QSA]
-RewriteRule ^(\w+)$ index.php?action=showstream&nickname=$1 [L,QSA]
+RewriteRule ^peopletag/([a-zA-Z0-9]+)$ index.php?action=peopletag&tag=$1 [L,QSA]
+
+RewriteRule ^featured/?$ index.php?action=featured [L,QSA]
+RewriteRule ^favorited/?$ index.php?action=favorited [L,QSA]
+
+RewriteRule ^group/new index.php?action=newgroup [L,QSA]
+RewriteRule ^group/([a-zA-Z0-9]+)/edit index.php?action=editgroup&nickname=$1 [L,QSA]
+RewriteRule ^group/([a-zA-Z0-9]+)/join index.php?action=joingroup&nickname=$1 [L,QSA]
+RewriteRule ^group/([a-zA-Z0-9]+)/leave index.php?action=leavegroup&nickname=$1 [L,QSA]
+RewriteRule ^group/([a-zA-Z0-9]+)/members index.php?action=groupmembers&nickname=$1 [L,QSA]
+RewriteRule ^group/([0-9]+)/id index.php?action=groupbyid&id=$1 [L,QSA]
+RewriteRule ^group/([a-zA-Z0-9]+)/rss index.php?action=grouprss&nickname=$1 [L,QSA]
+RewriteRule ^group/([a-zA-Z0-9]+)$ index.php?action=showgroup&nickname=$1 [L,QSA]
-# Twitter-compatible API rewrites
+# Twitter-compatible API rewrites
# XXX: Surely these can be refactored a little -- Zach
RewriteRule ^api/statuses/public_timeline(.*)$ index.php?action=api&apiaction=statuses&method=public_timeline$1 [L,QSA]
RewriteRule ^api/statuses/friends_timeline(.*)$ index.php?action=api&apiaction=statuses&method=friends_timeline$1 [L,QSA]
+RewriteRule ^api/statuses/user_timeline/(.*)$ index.php?action=api&apiaction=statuses&method=user_timeline&argument=$1 [L,QSA]
RewriteRule ^api/statuses/user_timeline(.*)$ index.php?action=api&apiaction=statuses&method=user_timeline$1 [L,QSA]
RewriteRule ^api/statuses/show/(.*)$ index.php?action=api&apiaction=statuses&method=show&argument=$1 [L,QSA]
RewriteRule ^api/statuses/update(.*)$ index.php?action=api&apiaction=statuses&method=update$1 [L,QSA]
-RewriteRule ^api/statuses/replies/(.*)$ index.php?action=api&apiaction=statuses&method=replies&argument=$1 [L,QSA]
+RewriteRule ^api/statuses/replies(.*)$ index.php?action=api&apiaction=statuses&method=replies&argument=$1 [L,QSA]
RewriteRule ^api/statuses/destroy/(.*)$ index.php?action=api&apiaction=statuses&method=destroy&argument=$1 [L,QSA]
+RewriteRule ^api/statuses/friends/(.*)$ index.php?action=api&apiaction=statuses&method=friends&argument=$1 [L,QSA]
RewriteRule ^api/statuses/friends(.*)$ index.php?action=api&apiaction=statuses&method=friends$1 [L,QSA]
+RewriteRule ^api/statuses/followers/(.*)$ index.php?action=api&apiaction=statuses&method=followers&argument=$1 [L,QSA]
RewriteRule ^api/statuses/followers(.*)$ index.php?action=api&apiaction=statuses&method=followers$1 [L,QSA]
RewriteRule ^api/statuses/featured(.*)$ index.php?action=api&apiaction=statuses&method=featured$1 [L,QSA]
+RewriteRule ^api/users/show/(.*)$ index.php?action=api&apiaction=users&method=show&argument=$1 [L,QSA]
+RewriteRule ^api/users/show(.*)$ index.php?action=api&apiaction=users&method=show$1 [L,QSA]
RewriteRule ^api/direct_messages/sent(.*)$ index.php?action=api&apiaction=direct_messages&method=sent$1 [L,QSA]
RewriteRule ^api/direct_messages/destroy/(.*)$ index.php?action=api&apiaction=direct_messages&method=destroy&argument=$1 [L,QSA]
RewriteRule ^api/direct_messages/new(.*)$ index.php?action=api&apiaction=direct_messages&method=create$1 [L,QSA]
RewriteRule ^api/account/rate_limit_status(.*)$ index.php?action=api&apiaction=account&method=rate_limit_status$1 [L,QSA]
RewriteRule ^api/favorites/create/(.*)$ index.php?action=api&apiaction=favorites&method=create&argument=$1 [L,QSA]
RewriteRule ^api/favorites/destroy/(.*)$ index.php?action=api&apiaction=favorites&method=destroy&argument=$1 [L,QSA]
+RewriteRule ^api/favorites/(.*)$ index.php?action=api&apiaction=favorites&method=favorites&argument=$1 [L,QSA]
RewriteRule ^api/favorites(.*)$ index.php?action=api&apiaction=favorites&method=favorites$1 [L,QSA]
RewriteRule ^api/notifications/follow/(.*)$ index.php?action=api&apiaction=notifications&method=follow&argument=$1 [L,QSA]
RewriteRule ^api/notifications/leave/(.*)$ index.php?action=api&apiaction=notifications&method=leave&argument=$1 [L,QSA]
RewriteRule ^api/blocks/create/(.*)$ index.php?action=api&apiaction=blocks&method=create&argument=$1 [L,QSA]
RewriteRule ^api/blocks/destroy/(.*)$ index.php?action=api&apiaction=blocks&method=destroy&argument=$1 [L,QSA]
RewriteRule ^api/help/(.*)$ index.php?action=api&apiaction=help&method=$1 [L,QSA]
+RewriteRule ^api/laconica/version(.*)$ index.php?action=api&apiaction=laconica&method=version$1 [L,QSA]
+RewriteRule ^api/laconica/config(.*)$ index.php?action=api&apiaction=laconica&method=config$1 [L,QSA]
+RewriteRule ^api/laconica/wadl\.xml$ index.php?action=api&apiaction=laconica&method=wadl.xml [L,QSA]
+
+RewriteRule ^(\w+)/subscriptions$ index.php?action=subscriptions&nickname=$1 [L,QSA]
+RewriteRule ^(\w+)/subscriptions/([a-zA-Z0-9]+)$ index.php?action=subscriptions&nickname=$1&tag=$2 [L,QSA]
+RewriteRule ^(\w+)/subscribers/([a-zA-Z0-9]+)$ index.php?action=subscribers&nickname=$1&tag=$2 [L,QSA]
+RewriteRule ^(\w+)/subscribers$ index.php?action=subscribers&nickname=$1 [L,QSA]
+RewriteRule ^(\w+)/nudge$ index.php?action=nudge&nickname=$1 [L,QSA]
+RewriteRule ^(\w+)/xrds$ index.php?action=xrds&nickname=$1 [L,QSA]
+RewriteRule ^(\w+)/rss$ index.php?action=userrss&nickname=$1 [L,QSA]
+RewriteRule ^(\w+)/all$ index.php?action=all&nickname=$1 [L,QSA]
+RewriteRule ^(\w+)/all/rss$ index.php?action=allrss&nickname=$1 [L,QSA]
+RewriteRule ^(\w+)/foaf$ index.php?action=foaf&nickname=$1 [L,QSA]
+RewriteRule ^(\w+)/replies$ index.php?action=replies&nickname=$1 [L,QSA]
+RewriteRule ^(\w+)/replies/rss$ index.php?action=repliesrss&nickname=$1 [L,QSA]
+RewriteRule ^(\w+)/avatar/(original|96|48|24)$ index.php?action=avatarbynickname&nickname=$1&size=$2 [L,QSA]
+RewriteRule ^(\w+)/favorites$ index.php?action=showfavorites&nickname=$1 [L,QSA]
+RewriteRule ^(\w+)/favorites/rss$ index.php?action=favoritesrss&nickname=$1 [L,QSA]
+RewriteRule ^(\w+)/inbox$ index.php?action=inbox&nickname=$1 [L,QSA]
+RewriteRule ^(\w+)/outbox$ index.php?action=outbox&nickname=$1 [L,QSA]
+RewriteRule ^(\w+)/microsummary$ index.php?action=microsummary&nickname=$1 [L,QSA]
+RewriteRule ^(\w+)/groups$ index.php?action=usergroups&nickname=$1 [L,QSA]
+
+RewriteRule ^(\w+)$ index.php?action=showstream&nickname=$1 [L,QSA]
+
+<FilesMatch "\.(ini)">
+ Order allow,deny
+</FilesMatch>