Commit Graph

751 Commits

Author SHA1 Message Date
Eric Helgeson
9d0e37c4e8 Utilize NICKNAME_FMT constant when creating at replies 2009-10-19 13:11:55 -04:00
Brion Vibber
39598582d9 Merge branch 'i18n-work' into i18n-0.9.x 2009-10-19 09:25:05 -07:00
Brion Vibber
b3c29800fb Drop a debug info line that isn't really needed 2009-10-16 11:49:27 -07:00
Brion Vibber
531c0738da Workaround for not fully natively set up locales with native gettext...
Set "en_US" locale first, then the locale we want for our user.
This seems to initialize gettext properly somehow, which I could see when the languages would come up briefly on settings save when changing from a supported language.
Definitely works for ga_ES on my Ubuntu system (8.10 intrepid), hopefully reasonably consistent.
2009-10-16 17:42:27 +00:00
Craig Andrews
f719720e8a Merge remote branch 'statusnet/0.8.x' into 0.9.x
Conflicts:
	lib/common.php
2009-10-11 13:39:10 -04:00
Jeffery To
838c13063a Fixed E_NOTICE when returnto isn't set 2009-10-07 17:28:30 +08:00
Sarven Capadisli
cc776478e2 Revert "Outputting UTF-8 charset in document header irrespective of mimetype."
This reverts commit 353f58c231.

Even though outputting UTF-8 by default at all times is a good thing,
it shouldn't be forced in startHTML().
2009-10-01 10:07:09 +00:00
Sarven Capadisli
7bd65a7b86 Merge branch '0.8.x' into 0.9.x 2009-09-30 10:54:17 +00:00
Sarven Capadisli
353f58c231 Outputting UTF-8 charset in document header irrespective of mimetype. 2009-09-30 10:51:59 +00:00
Craig Andrews
fc2426d7ce Fix some bugs in the URL linkification, and fixed the unit test. 2009-09-27 16:52:15 -04:00
Evan Prodromou
8284b3cb82 Merge branch '0.8.x' into 0.9.x
Conflicts:
	actions/requesttoken.php
	classes/File.php
	install.php
	lib/noticeform.php
2009-09-23 09:45:22 -04:00
Evan Prodromou
bef4a8b6ba Revert "When viewing a page in https, all links to non-actions (links to CSS, JS, etc) should be https. Fixes the mixed content warnings that browsers display."
This reverts commit 20997619b3.

The commit doesn't take into account having different servers (theme
server, avatar server) and being able to set HTTPS for some but not all.
2009-09-23 09:34:55 -04:00
Craig Andrews
2cabfba767 Allow some punctuation instead of just spaces before @user, !group, and #tag 2009-09-22 19:34:10 -04:00
Craig Andrews
f3c8fcccc1 Link hrefs are the short url, and title is the long url 2009-09-22 11:12:55 -04:00
Craig Andrews
ebb52efeb4 Make link href the long url so users can tell where links are going 2009-09-21 22:48:19 -04:00
Evan Prodromou
98924a80d7 'easy' way to handle notices at queue time 2009-09-21 14:39:22 -04:00
Evan Prodromou
5b91223ce4 add a hook at point of enqueuing notices 2009-09-21 14:14:55 -04:00
Brion Vibber
3c89d31b18 Fixes for posting shortened URLs or uploads
* If no shortener plugin is enabled, fall back to using the long URL instead of trying to load nonexistent ur1.ca plugin and throwing 'Class  does not exist'
* Fix bad call to call_user_func_array() in callback_helper() which broke all shortening
2009-09-21 21:34:59 +12:00
Craig Andrews
20997619b3 When viewing a page in https, all links to non-actions (links to CSS, JS, etc) should be https. Fixes the mixed content warnings that browsers display.
Fixes http://status.net/trac/ticket/1552
2009-09-13 01:24:57 -04:00
Craig Andrews
292bb7c4d8 Allow @ signs in the path, querystring, and fragment parts of URLs 2009-09-10 21:19:38 -04:00
Craig Andrews
2a56245614 Re-use enclosure decision logic to decide if a link gets a paperclip/lightbox popup. 2009-09-10 21:13:30 -04:00
Craig Andrews
584ea1b23c Revert "If a shortened URL begins with http://, don't include it in the shortened url. Saves 7 characters, which is pretty awesome for 140 character max length notices."
This reverts commit e2848eb862.

Downstream consumers of our notices (such as Friendfeed, Facebook, etc) don't have sophisticated URL detection, so a notice that reads: "check out ur1.ca/1" won't be linked. So the http:// prefix is
mandatory.
2009-09-10 12:13:43 -04:00
Craig Andrews
cd650b090a Merge remote branch 'laconica/0.8.x' into 0.9.x 2009-09-09 22:58:19 -04:00
Craig Andrews
e2848eb862 If a shortened URL begins with http://, don't include it in the shortened url. Saves 7 characters, which is pretty awesome for 140 character max length notices. 2009-09-09 22:57:15 -04:00
Craig Andrews
d7ae0ed4fd Merge remote branch 'laconica/0.8.x' into 0.9.x
Conflicts:
	lib/omb.php
2009-09-09 22:52:38 -04:00
Craig Andrews
aecdba1ded :: isn't a valid IPv6 address for our purposes 2009-09-09 16:57:11 -04:00
brenda
f218d7fd58 more info in error message, to help next person who has to debug locales 2009-09-05 16:12:50 +12:00
Craig Andrews
80b7e54ca2 Added additional characters as allowed in URLs. 2009-09-04 11:30:29 -04:00
Craig Andrews
beae3db413 Pluginize the URL shorteners 2009-09-03 14:58:50 -04:00
Craig Andrews
a535ccdc4e Merge remote branch 'laconica/0.8.x' into 0.9.x
Conflicts:
	lib/common.php
	lib/twitter.php
2009-09-02 16:42:15 -04:00
Craig Andrews
951a787877 Fix attachment saving 2009-08-31 15:36:03 -04:00
Craig Andrews
20423af689 Allow :'s in the path, query string, and fragment parts of the url (Mediawiki URLs often do this) 2009-08-31 10:33:37 -04:00
Evan Prodromou
a44c064397 Merge branch '0.8.x' of git@gitorious.org:laconica/mainline into 0.8.x 2009-08-28 13:35:48 -07:00
Craig Andrews
3368452ebf Add % and ~ as valid characters in the path, querystring, and fragment parts of URLs 2009-08-28 16:18:45 -04:00
Evan Prodromou
b4ca06edb2 fix 'callback_helper' 2009-08-28 08:43:28 -07:00
Evan Prodromou
c0d03fc279 make URL analyzer save new info on URLs 2009-08-27 20:23:31 -07:00
Evan Prodromou
34ce75c71d remove duplicate save of Notice and streamline attachment detection 2009-08-27 20:09:07 -07:00
Evan Prodromou
0056b635c6 reformat curry() to make my editor happy 2009-08-27 20:06:03 -07:00
Evan Prodromou
bbb830e14c Merge branch '0.8.x' of git@gitorious.org:laconica/mainline into 0.8.x 2009-08-27 14:18:51 -07:00
Evan Prodromou
5d09b6b3f0 Merge branch '0.8.x' into 0.9.x
Conflicts:
	EVENTS.txt
	actions/finishremotesubscribe.php
	actions/postnotice.php
	actions/public.php
	actions/remotesubscribe.php
	actions/showstream.php
	actions/updateprofile.php
	actions/userauthorization.php
	classes/laconica.ini
	lib/common.php
	lib/oauthstore.php
	lib/omb.php
2009-08-27 11:16:45 -07:00
Craig Andrews
2dd5a5f86d Do not used named capturing groups
I'm not sure all php 5.2's are compiled with a PCRE library that supported named captures.
2009-08-27 12:06:45 -04:00
Evan Prodromou
f1fda6c050 Merge branch '0.8.x' into 0.9.x 2009-08-27 07:56:19 -07:00
Evan Prodromou
3567b9d708 global search and replace for laconica -> statusnet 2009-08-25 18:53:24 -04:00
Evan Prodromou
4737563b95 a distributed -> the distributed 2009-08-25 18:14:12 -04:00
Evan Prodromou
c8b8f07af1 change Laconica and Control Yourself to StatusNet in PHP files 2009-08-25 18:12:20 -04:00
Craig Andrews
a2117961be Allow ({['" to preceded #tags 2009-08-25 17:54:08 -04:00
Craig Andrews
31329c33ae Handle grouping symbols ()[]{} correctly. Now passing all tests! 2009-08-25 16:41:44 -04:00
Craig Andrews
ff836eb38a Add UTF-8 encodings of the IDN TLDs 2009-08-25 14:19:05 -04:00
Craig Andrews
210bc4248b All tests pass except for those that require matching parens or brackets 2009-08-25 14:12:31 -04:00
Craig Andrews
6a3a25b5a2 Improved the URL tests, and improve the matcher so more tests are passed. The remaining failing tests I believe are incorrect. 2009-08-25 11:21:45 -04:00
Craig Andrews
86ba7b13c2 Finally got the IPv6 regex right in the url finder 2009-08-21 22:58:43 -04:00
Craig Andrews
579a41b56f Improve url finding more. Properly end urls when a space is caught. 2009-08-21 21:11:23 -04:00
Craig Andrews
0615fda25e URLs surrounded by (),{}, and [] are correctly handled now! 2009-08-21 20:01:33 -04:00
Evan Prodromou
9f356b55c6 Merge branch '0.9.x' into openidplugin
Conflicts:
	actions/login.php
	actions/register.php
2009-08-21 16:27:43 -04:00
Craig Andrews
871903a319 Linkifier support many more urls, and less mismatches 2009-08-21 15:56:15 -04:00
Evan Prodromou
b2664e1ae2 Merge branch '0.8.x' into 0.9.x
Conflicts:
	actions/updateprofile.php
	actions/userauthorization.php
	classes/User_group.php
	index.php
	install.php
	lib/accountsettingsaction.php
	lib/logingroupnav.php
2009-08-21 15:42:11 -04:00
Craig Andrews
70ca03f336 Use currying to call the url callbacks, and use preg_replace_callback
This definitely looks neater than the string maniplation it replaces
2009-08-21 12:47:01 -04:00
Evan Prodromou
35bf388204 url-shortening check correctly checks max notice length 2009-08-21 08:16:08 -04:00
Evan Prodromou
c8b3557802 make common_config() handle nulls correctly 2009-08-21 06:33:12 -04:00
Marcel van der Boom
418a5a95ab Change the notice type defines all into class constants and adapt all files. 2009-08-20 13:11:22 -04:00
Craig Andrews
f4e4a8dd8a Removed all the redundant logic in common_replace_urls_callback
Modified the regex so that strings such as /usr/share/perl5/HTML/Mason/ApacheHandler.pm as not turned into links
2009-08-18 20:42:06 -04:00
Craig Andrews
ce004083d9 IPv4 and IPv6 addresses are picked up in URLs
Added ".onion" as a possible TLD
2009-08-18 14:15:55 -04:00
Evan Prodromou
0616ea0205 move check for SSL from util.php to OpenIDPlugin 2009-08-04 13:01:23 -04:00
Evan Prodromou
c378cc976f add an event for determining if an action is sensitive 2009-08-04 08:58:24 -04:00
Jeffery To
e670e4306b Fixed PHP Notices:
Undefined index:  HTTP_X_FORWARDED_FOR
    Undefined index:  HTTP_CLIENT_IP
    Undefined variable: proxy

Also fixed the return value order to match calls to common_client_ip() in actions/api.php and lib/rssaction.php
2009-08-02 20:10:31 +08:00
Jeffery To
b2d2b19d3a Fixed PHP Notice "Use of undefined constant session_name - assumed 'session_name'" 2009-08-02 19:36:09 +08:00
Brenda Wallace
d3a72431be lowercase tags using mb_convert_case(), which understands many more alphabets than I do. 2009-07-26 16:34:27 +12:00
Craig Andrews
e70a79d6ab Merge commit 'br3nda/0.8.x-hashtags' into 0.8.x 2009-07-22 10:23:17 -04:00
Craig Andrews
a9613e999f Detect xmpp uri's and make them into hyperlinks
http://laconi.ca/trac/ticket/1592
2009-07-21 13:52:59 -04:00
Brenda Wallace
5909826122 show full utf8 in tags 2009-07-20 14:02:26 +12:00
Evan Prodromou
6d72864618 don't try to show non-object 2009-07-04 01:17:37 -04:00
Evan Prodromou
00074cda73 Merge branch '0.8.x' into queuemanager 2009-07-03 03:08:34 -04:00
Zach Copley
d80c553e5f Make logging facility configurable 2009-07-02 16:06:13 -07:00
Evan Prodromou
5f9a4ebef4 Merge branch '0.8.x' into queuemanager 2009-07-02 08:51:10 -04:00
Evan Prodromou
721ba6c88f Merge branch '0.8.x' of git@gitorious.org:+laconica-developers/laconica/dev into 0.8.x 2009-07-01 12:58:49 -04:00
Evan Prodromou
557418bc1e better transport choices when xmpp is disabled 2009-07-01 12:09:41 -04:00
Evan Prodromou
f61645aef8 take out session handler notification 2009-07-01 11:38:10 -04:00
Evan Prodromou
e0bf8ad95b Add UnQueueManager for immediate handling
Perhaps it's a little precious, but I took out the switches in
util.php to determine what's supposed to be sent when, and made
a queuemanager class that will just do things when they're supposed to
be done.
2009-07-01 11:34:12 -04:00
Zach Copley
ccbc5c447d Merge commit 'jeff-themovie/small-fixes' into 0.8.x
* commit 'jeff-themovie/small-fixes':
  Fix missing max_id in API search calls
  Fix "Trying to get property of non-object" errors when a user tries to log in using an unknown nickname
  Fix "Trying to get property of non-object" errors when accessing the people search results page
  Fix "Undefined variable: cnt"
  Fix "Trying to get property of non-object" errors in groupeditform.php
  Fix "Undefined property: DisfavorAction::$id"
2009-06-30 16:25:52 -07:00
Evan Prodromou
14575fe6fc better output for common error handler 2009-06-28 19:24:14 -04:00
Evan Prodromou
9f079764aa extract log-line formatting to its own function 2009-06-28 16:38:27 -04:00
Evan Prodromou
495c85544a don't canonicalize people's text into URLs 2009-06-28 15:21:15 -04:00
Evan Prodromou
854c82cfd5 start of queuemanager code 2009-06-28 14:38:34 -04:00
Evan Prodromou
70521d55a8 log IP for API auth errors 2009-06-27 07:37:58 -07:00
Evan Prodromou
7af94dc125 some debugging code for sessions 2009-06-27 07:09:21 -07:00
Evan Prodromou
71dad1ff62 use the session class to store sessions 2009-06-27 06:20:24 -07:00
Evan Prodromou
0ca22cf6e2 a memcached_dataobject class for saving sessions 2009-06-27 05:48:22 -07:00
Evan Prodromou
ce76d61957 marker in sessions 2009-06-27 05:07:14 -07:00
Jeffery To
612a107e09 Merge branch '0.8.x' into small-fixes 2009-06-26 15:44:31 +08:00
Zach Copley
2707622762 Return clippy to his rightful place next to attachments 2009-06-25 12:52:10 -07:00
Evan Prodromou
63f12c48a8 make stomp server work with username and password 2009-06-24 19:17:41 -07:00
Jeffery To
280f8faab4 Merge branch '0.8.x' into small-fixes
Conflicts:
	lib/peoplesearchresults.php
	lib/profilelist.php
2009-06-24 01:25:55 +08:00
Evan Prodromou
a21a9f26c5 append uploads to content rather than showing them double 2009-06-23 07:29:43 -07:00
Evan Prodromou
aec6456c91 Update copyright dates in files modified in 2009 2009-06-20 16:12:55 -07:00
Evan Prodromou
793a6a1155 change Controlez-Vous to Control Yourself 2009-06-20 16:00:04 -07:00
Evan Prodromou
fd290fc3f9 allow a configured base for cache keys 2009-06-15 16:09:40 -07:00
Evan Prodromou
1b6b00a6d0 Link and distribute notices tagged for a group alias
Correctly link and distribute notices tagged for a group alias. Added
a helper function, getForNickname(), to User_group, to make it easier
to get a group by its nickname or aliases.
2009-06-14 23:43:47 -07:00
Jeffery To
e2b20bd1e6 Fix "Trying to get property of non-object" errors when a user tries to log in using an unknown nickname 2009-06-12 19:58:30 +08:00
Evan Prodromou
5469e46ef5 merge error in util.php 2009-06-10 09:14:48 -07:00
Evan Prodromou
adfb79a9bb Merge branch '0.7.x' into 0.8.x
Conflicts:
	classes/Notice.php
	classes/Profile.php
	lib/common.php
	lib/util.php
	scripts/getvaliddaemons.php
	scripts/stopdaemons.sh
2009-06-08 11:55:32 -07:00
Evan Prodromou
76ee1fd5da Removing inbox and memcached daemon handling 2009-05-30 04:40:47 -04:00
Evan Prodromou
3532cd0490 Only enqueue inbox-dependent transports after inboxes have been filled 2009-05-28 18:19:22 -04:00
Robin Millette
ed1e1d9f44 Handles local aliases (redirection) for file uploads attached to notices. 2009-05-27 03:47:45 -04:00
Robin Millette
84edf12791 Display thumbnail on hover over links in notices when appropriate. 2009-05-25 11:13:13 -04:00
Robin Millette
5f3acc2527 Removed big clip and replaced with smaller inline one next to each URL (in a notice) that's actually an attachment. Overlay (popup) on click. 2009-05-24 21:13:42 -04:00
Robin Millette
9261e48ef0 Removed dead code. 2009-05-18 19:23:18 -04:00
Robin Millette
3b7ee5a5f9 rewrote short url stuff to handle new file/url classes (redirections, oembed, mimetypes, etc.) 2009-05-13 14:27:32 -04:00
Robin Millette
d010d811ba db stuff for URLs: redirections, oembed, etc. 2009-05-11 13:45:00 -04:00
Sarven Capadisli
d30df07908 Merge branch '0.7.x' into 0.8.x
Resolved Conflicts:
	lib/queuehandler.php
	lib/util.php
	theme/base/css/display.css
2009-05-01 00:16:25 +00:00
Evan Prodromou
1c0d82de3b 8-char limit on transports 2009-04-23 10:09:08 +00:00
Evan Prodromou
ece70bf326 incorrect config setting for inboxes 2009-04-23 09:35:10 +00:00
Evan Prodromou
85c7b8df71 Merge branch '0.7.x' of git@gitorious.org:laconica/dev into 0.7.x 2009-04-23 05:24:13 -04:00
Evan Prodromou
aee45ea91d Add an inbox queue handler
Handle distributing a notice to multiple inboxes in a queue handler
rather than in the Web action.
2009-04-23 05:08:48 -04:00
Evan Prodromou
640628de2d A queuehandler for blowing caches offline
We add a queuehandler for blowing the memcached caches off-line. This
should speed up the processing of new notices.
2009-04-23 05:03:19 -04:00
CiaranG
ec5e06a542 Suppress errors when checking for the existence of files that might be restricted by open_basedir - should resolve issue #1310 2009-04-21 23:36:15 +01:00
Adrian Lang
558fa2743e Merge branch '0.7.x' of git://gitorious.org/laconica/bAvatar-clone without the unintended deletion. 2009-04-20 12:15:12 +02:00
Tobias Diekershoff
7196410bb0 shortening links in notices from XMPP
This patch enables shortening of links, that where send from XMPP.
The problem was, that in util.php common_current_user() is not
finding the user account from which is posted, so the service to
shorten is not known, so no shortening at all...

This patch cleans up the xmppdaemon a little bit and hard codes ur1.ca
as shortening service _if_ the user is not set. Ugly but working.
2009-04-18 19:00:20 +02:00
Robin Millette
e5094c3359 fix merge conflict 0.7.x 0.8.x in util.php and register.php. 2009-04-17 17:04:05 +00:00
Robin Millette
21873b806d cosmetic fixes. 2009-04-17 16:46:49 +00:00
Sarven Capadisli
3b9f235e42 Trimming the accept header parts for better content type comparison.
e.g., ' text/xml' != 'text/xml'
2009-04-10 17:40:45 +00:00
Sarven Capadisli
dcee7f2f62 Merge branch '0.7.x' into 0.8.x 2009-04-08 22:58:21 +00:00
CiaranG
85873b1f2b Merge branch 'master' of git://gitorious.org/laconica/br3nda into review/master 2009-04-08 22:11:58 +01:00
Sarven Capadisli
e21844c7e4 Merge branch '0.8.x' of git@gitorious.org:laconica/dev into 0.8.x 2009-04-03 21:48:23 +00:00
Zach Copley
590cc0c9a4 Merge branch '0.7.x' of git@gitorious.org:laconica/dev into 0.7.x 2009-04-03 13:24:01 -07:00
Zach Copley
ab2946047c Only kill control and surrogates, leave UTF-8 formatting chars alone. 2009-04-03 13:19:33 -07:00
Evan Prodromou
68ae282198 Merge branch '0.7.x' into 0.8.x 2009-04-03 15:36:16 -04:00
Evan Prodromou
e2898db087 add finishaddopenid to list of sensitive pages to use with ssl 2009-04-03 12:51:43 -04:00
Evan Prodromou
6be15dfcac Merge branch '0.8.x' of git://gitorious.org/laconica/fmarani-clone into fmarani/0.8.x 2009-04-02 06:23:50 -04:00
Evan Prodromou
3bec08c878 Merge branch '0.7.x' of git@gitorious.org:laconica/dev
Conflicts:
	README
	lib/router.php
2009-04-01 14:40:58 -04:00
CiaranG
e7381493ad Return redirect code correctly as HTTP status, not a header. Fixes ticket #1371 2009-04-01 18:11:02 +01:00
Evan Prodromou
1fbf9a042e give the correct root url when SSL enabled 2009-03-31 10:09:11 -04:00
Evan Prodromou
e149f3d64b Support SSL for some, all, or no pages
Support SSL URLs either for all pages; no pages; or for sensitive
pages accepting passwords, like login, registration, API, and others.
2009-03-30 17:12:02 -04:00
Evan Prodromou
7b02d9d2e1 Merge branch 'master' into 0.7.x 2009-03-30 11:11:33 -04:00
Evan Prodromou
d5ac986b80 add titles to group links in notices 2009-03-30 10:26:36 -04:00
Evan Prodromou
3af6680716 add a title to attention notice links 2009-03-30 10:17:10 -04:00
Federico Marani
5e9ff6ae97 Testing JMS message selectors for notice tags-based routing 2009-03-28 17:55:20 +00:00
Evan Prodromou
07eae0ce4d Support SSL for some, all, or no pages
Support SSL URLs either for all pages; no pages; or for sensitive
pages accepting passwords, like login, registration, API, and others.
2009-03-26 15:03:59 -04:00
Federico Marani
420c361304 Merge branch '0.8.x' of git://gitorious.org/laconica/dev into 0.8.x 2009-03-16 22:43:51 +00:00
Brenda Wallace
18c8a55ba6 use common_database_tablename instead of repeating that if structure everywhere 2009-03-17 10:36:12 +13:00
Evan Prodromou
e185c0395a Revert "trac #201 Add flowplayer to enable multimedia playback capability."
This reverts commit 9c9b6790ce.

This code wasn't ready for release, so I've reverted it for now.

Conflicts:

	lib/action.php
	lib/util.php
2009-03-12 00:13:28 -04:00
Eric Helgeson
c6cd87c106 Changed all $config[][] calls to common_config() 2009-03-09 20:01:35 -05:00
Evan Prodromou
e55808698b use call_user_func for callbacks 2009-03-08 11:49:34 -07:00
CiaranG
2133d5a4e7 PostgreSQL - some more fixes to make queries compatible with both databases. (submitted by oxygene) 2009-03-08 16:16:10 +00:00
Federico Marani
bab3e1b858 Merge branch '0.8.x' of git://gitorious.org/laconica/dev into 0.8.x
Conflicts:

	lib/util.php
2009-03-07 13:54:54 +00:00
Federico Marani
a389f157ba tests with Apache ActiveMQ topics (pubsub) 2009-03-07 13:48:39 +00:00
Evan Prodromou
16a6aa5390 Some fixes for OpenID and OMB URLs 2009-03-06 17:18:21 -08:00
Evan Prodromou
eaac9350dd Merge branch 'ping' of /var/www/mublog.corrupt into corrupt/ping
Conflicts:

	lib/util.php
2009-03-05 14:34:53 -08:00
Evan Prodromou
b9781258bb @-links go to permalinks for local users 2009-03-05 11:03:42 -08:00
Evan Prodromou
f9babf6a7d Check for config file when running
When running the full system, check for a config file, and throw an
error if none is found.
2009-03-04 06:24:33 -08:00
Adrian Lang
120eb77400 Fixes #1258: A period in a hashtag leads to the tag being interpreted as url and hence breaking the tag. 2009-02-27 15:44:06 -08:00