Commit Graph

2606 Commits

Author SHA1 Message Date
Zach Copley
7b3c099f95 Ensure only the application's owner can edit it 2010-01-24 16:36:05 -08:00
Zach Copley
ba68e042a8 Fix user count 2010-01-24 16:36:05 -08:00
Zach Copley
c0eee277d1 Make sure applications are really looked up by consumer key 2010-01-24 16:36:05 -08:00
Zach Copley
e101a6df6b Rework application registration workflow to be more private 2010-01-24 16:36:04 -08:00
Zach Copley
693b16174a Fix icon upload on new apps 2010-01-24 16:36:04 -08:00
Zach Copley
8da5e98cba OAuth 1.0 working now 2010-01-24 16:36:04 -08:00
Zach Copley
adfca01808 Can now edit/change application icon 2010-01-24 16:36:04 -08:00
Sarven Capadisli
ba0c82b391 Added anchors to application source and homepage 2010-01-24 16:36:03 -08:00
Sarven Capadisli
c2ffd66128 Updated markup for application details page. Similar to user/group
profile page.
2010-01-24 16:36:03 -08:00
Sarven Capadisli
c8a4d0d6c2 Updated markup for application details 2010-01-24 16:36:03 -08:00
Sarven Capadisli
61f71a4a59 Updated markup for application registration and view links 2010-01-24 16:36:03 -08:00
Zach Copley
c78937537e Better detial in connected OAuth applications list 2010-01-24 16:36:03 -08:00
Zach Copley
11bd98025c Issue a warning when someone tries to exchange an unauthorized or
otherwise bad req token for an access token.
2010-01-24 16:36:02 -08:00
Zach Copley
a0b8438773 Exchanging authorized request tokens for access tokens working 2010-01-24 16:36:02 -08:00
Zach Copley
c473a39a7d Associate request tokens with OAuth apps and app users 2010-01-24 16:36:02 -08:00
Zach Copley
e9e448bcee Workflow for request tokens and authorizing request tokens 2010-01-24 16:36:02 -08:00
Zach Copley
fa81a580bb Action for issuing a request token 2010-01-24 16:36:02 -08:00
Zach Copley
6472331be5 Stubs for API OAuth token exchange stuff 2010-01-24 16:36:02 -08:00
Zach Copley
48e5f2b3c5 Add icons/icon upload to Oauth apps 2010-01-24 16:36:02 -08:00
Zach Copley
1e5b2a497e Added session token checking. 2010-01-24 16:36:02 -08:00
Zach Copley
3c2b05d222 Workflow for registering new OAuth apps pretty much done. 2010-01-24 16:36:02 -08:00
Zach Copley
9d958fd539 Reorganized the OAuth app URLs and more work on the register app workflow 2010-01-24 16:36:01 -08:00
Zach Copley
ae46bc5fff Started work on interface for displaying connected OAuth apps 2010-01-24 16:36:01 -08:00
Brenda Wallace
5864905506 Merge commit 'refs/merge-requests/120' of git://gitorious.org/statusnet/mainline into 0.9.x 2010-01-24 15:12:18 +13:00
Sarven Capadisli
c3ee1af7be Missing null className for incoming email form legend 2010-01-24 00:22:35 +01:00
Sarven Capadisli
0f3658d3da Updated path to farbtastic stylesheet 2010-01-24 00:21:14 +01:00
Brion Vibber
c7507e7e9d XMPP queued output & initial retooling of DB queue manager to support non-Notice objects.
Queue handlers for XMPP individual & firehose output now send their XML stanzas
to another output queue instead of connecting directly to the chat server. This
lets us have as many general processing threads as we need, while all actual
XMPP input and output go through a single daemon with a single connection open.

This avoids problems with multiple connected resources:
* multiple windows shown in some chat clients (psi, gajim, kopete)
* extra load on server
* incoming message delivery forwarding issues

Database changes:
* queue_item drops 'notice_id' in favor of a 'frame' blob.
  This is based on Craig Andrews' work branch to generalize queues to take any
  object, but conservatively leaving out the serialization for now.
  Table updater (preserves any existing queued items) in db/rc3to09.sql

Code changes to watch out for:
* Queue handlers should now define a handle() method instead of handle_notice()
* QueueDaemon and XmppDaemon now share common i/o (IoMaster) and respawning
  thread management (RespawningDaemon) infrastructure.
* The polling XmppConfirmManager has been dropped, as the message is queued
  directly when saving IM settings.
* Enable $config['queue']['debug_memory'] to output current memory usage at
  each run through the event loop to watch for memory leaks

To do:
* Adapt XMPP i/o to component connection mode for multi-site support.
* XMPP input can also be broken out to a queue, which would allow the actual
  notice save etc to be handled by general queue threads.
* Make sure there are no problems with simply pushing serialized Notice objects
  to queues.
* Find a way to improve interactive performance of the database-backed queue
  handler; polling is pretty painful to XMPP.
* Possibly redo the way QueueHandlers are injected into a QueueManager. The
  grouping used to split out the XMPP output queue is a bit awkward.

Conflicts:

	scripts/xmppdaemon.php
2010-01-22 12:52:36 -08:00
Evan Prodromou
d25bd9b292 Merge branch '0.9.x' of git@gitorious.org:statusnet/mainline into 0.9.x 2010-01-22 14:19:08 -05:00
Evan Prodromou
c8bc598cfd Merge branch 'testing' into 0.9.x 2010-01-22 14:18:43 -05:00
Evan Prodromou
e666433eb4 Merge branch 'master' into 0.9.x 2010-01-22 14:18:40 -05:00
Evan Prodromou
29d83c8ca9 Merge branch 'testing' of git@gitorious.org:statusnet/mainline into testing 2010-01-22 14:18:21 -05:00
Evan Prodromou
104d300799 do actual language negotiation for help docs 2010-01-22 14:13:28 -05:00
Evan Prodromou
9f815c968f restructure doc.php for new use 2010-01-22 13:53:53 -05:00
Evan Prodromou
df9b780706 action/doc.php is PHPCS clean 2010-01-22 13:53:53 -05:00
Brion Vibber
0e852def6a XMPP queued output & initial retooling of DB queue manager to support non-Notice objects.
Queue handlers for XMPP individual & firehose output now send their XML stanzas
to another output queue instead of connecting directly to the chat server. This
lets us have as many general processing threads as we need, while all actual
XMPP input and output go through a single daemon with a single connection open.

This avoids problems with multiple connected resources:
* multiple windows shown in some chat clients (psi, gajim, kopete)
* extra load on server
* incoming message delivery forwarding issues

Database changes:
* queue_item drops 'notice_id' in favor of a 'frame' blob.
  This is based on Craig Andrews' work branch to generalize queues to take any
  object, but conservatively leaving out the serialization for now.
  Table updater (preserves any existing queued items) in db/rc3to09.sql

Code changes to watch out for:
* Queue handlers should now define a handle() method instead of handle_notice()
* QueueDaemon and XmppDaemon now share common i/o (IoMaster) and respawning
  thread management (RespawningDaemon) infrastructure.
* The polling XmppConfirmManager has been dropped, as the message is queued
  directly when saving IM settings.
* Enable $config['queue']['debug_memory'] to output current memory usage at
  each run through the event loop to watch for memory leaks

To do:
* Adapt XMPP i/o to component connection mode for multi-site support.
* XMPP input can also be broken out to a queue, which would allow the actual
  notice save etc to be handled by general queue threads.
* Make sure there are no problems with simply pushing serialized Notice objects
  to queues.
* Find a way to improve interactive performance of the database-backed queue
  handler; polling is pretty painful to XMPP.
* Possibly redo the way QueueHandlers are injected into a QueueManager. The
  grouping used to split out the XMPP output queue is a bit awkward.
2010-01-21 22:40:35 -08:00
Brion Vibber
26fdf0c9d2 XMPP queued output & initial retooling of DB queue manager to support non-Notice objects.
Queue handlers for XMPP individual & firehose output now send their XML stanzas
to another output queue instead of connecting directly to the chat server. This
lets us have as many general processing threads as we need, while all actual
XMPP input and output go through a single daemon with a single connection open.

This avoids problems with multiple connected resources:
* multiple windows shown in some chat clients (psi, gajim, kopete)
* extra load on server
* incoming message delivery forwarding issues

Database changes:
* queue_item drops 'notice_id' in favor of a 'frame' blob.
  This is based on Craig Andrews' work branch to generalize queues to take any
  object, but conservatively leaving out the serialization for now.
  Table updater (preserves any existing queued items) in db/rc3to09.sql

Code changes to watch out for:
* Queue handlers should now define a handle() method instead of handle_notice()
* QueueDaemon and XmppDaemon now share common i/o (IoMaster) and respawning
  thread management (RespawningDaemon) infrastructure.
* The polling XmppConfirmManager has been dropped, as the message is queued
  directly when saving IM settings.
* Enable $config['queue']['debug_memory'] to output current memory usage at
  each run through the event loop to watch for memory leaks

To do:
* Adapt XMPP i/o to component connection mode for multi-site support.
* XMPP input can also be broken out to a queue, which would allow the actual
  notice save etc to be handled by general queue threads.
* Make sure there are no problems with simply pushing serialized Notice objects
  to queues.
* Find a way to improve interactive performance of the database-backed queue
  handler; polling is pretty painful to XMPP.
* Possibly redo the way QueueHandlers are injected into a QueueManager. The
  grouping used to split out the XMPP output queue is a bit awkward.
2010-01-21 16:42:50 -08:00
Brion Vibber
c9c7bb3234 Merge commit 'origin/testing' into 0.9.x 2010-01-21 16:33:11 -08:00
Zach Copley
308442407e - Moved checking for group aliases and redirection to prepare()
- phpcs cleanup
- add @macno to the list of authors
2010-01-21 11:37:20 -08:00
Michele
383703d170 if the id is an alias we redirect using group_id 2010-01-21 10:39:07 -08:00
Evan Prodromou
1d64ba6602 Unimplement retweeted_by_me API action until we have a more efficient query 2010-01-21 11:38:08 -05:00
Evan Prodromou
e5eb95ab59 retweet API methods are readonly 2010-01-21 11:32:01 -05:00
Rajat Upadhyaya
6e405facca Fix to update user's fullname & homepage only if requested. 2010-01-21 09:27:00 +05:30
Evan Prodromou
9e3013c6b6 mark retweet api actions read-only where applicable 2010-01-20 17:00:42 -05:00
Sarven Capadisli
d501acf438 Missing null className for incoming email form legend 2010-01-18 17:17:02 +00:00
Sarven Capadisli
187a70873a Updated path to farbtastic stylesheet 2010-01-18 11:29:05 +00:00
Eric Helgeson
5fd8e331f3 Missed change when refactoring groups. Thanks macno 2010-01-16 11:56:07 -05:00
Brion Vibber
ef016dca45 Merge branch 'master' of gitorious.org:statusnet/mainline into 0.9.x 2010-01-15 09:52:50 -08:00
Siebrand Mazeland
882712dbac Add Brion Vibber to contributors. 2010-01-14 23:40:11 +01:00
Siebrand Mazeland
c8f67dd1a4 Fix casing for HMAC-SHA1. 2010-01-14 23:37:06 +01:00
Siebrand Mazeland
7ef6c9da43 Fix inconsistent title case in page title 2010-01-14 23:36:13 +01:00
Siebrand Mazeland
68a2e46390 Make page titles more consistent: no title case in four cases. 2010-01-14 23:32:40 +01:00
Siebrand Mazeland
31940f9309 Fix i18n issue: please number variables when using more than one to allow word order changes without unexpected results. 2010-01-14 23:29:16 +01:00
Evan Prodromou
28fafe803a remove debugging statement for friends_timeline 2010-01-13 23:28:51 -08:00
Evan Prodromou
30e50439a3 change double quotes to single quotes in numbered format string 2010-01-13 23:17:37 -08:00
Zach Copley
33df392289 - Had to remove checking read vs. read-write in OAuth authenticated methods
- Will now pick up source attr from OAuth app
2010-01-14 02:41:11 +00:00
Zach Copley
38269a6579 Revoke access token UI 2010-01-14 02:41:10 +00:00
Sarven Capadisli
3aa0d8bea7 Changed legend text from Login to Account because it is not really
logging iny
2010-01-14 02:41:10 +00:00
Sarven Capadisli
18533f5b15 Updated apioauthauthorize markup and styles 2010-01-14 02:41:09 +00:00
Zach Copley
8cdea20ac5 Ensure only the application's owner can edit it 2010-01-14 02:41:09 +00:00
Zach Copley
dda7a52645 Fix user count 2010-01-14 02:41:09 +00:00
Zach Copley
6c8bf36fe1 Make sure applications are really looked up by consumer key 2010-01-14 02:41:09 +00:00
Zach Copley
7c34ac8cc2 Rework application registration workflow to be more private 2010-01-14 02:41:09 +00:00
Zach Copley
22809baf94 Fix icon upload on new apps 2010-01-14 02:41:09 +00:00
Zach Copley
42a82a024a OAuth 1.0 working now 2010-01-14 02:41:09 +00:00
Zach Copley
0d7490470d Can now edit/change application icon 2010-01-14 02:41:08 +00:00
Sarven Capadisli
5add05c503 Added anchors to application source and homepage 2010-01-14 02:41:07 +00:00
Sarven Capadisli
f1e075cf4a Updated markup for application details page. Similar to user/group
profile page.
2010-01-14 02:41:07 +00:00
Sarven Capadisli
676975605b Updated markup for application details 2010-01-14 02:41:06 +00:00
Sarven Capadisli
28329bd2b3 Updated markup for application registration and view links 2010-01-14 02:41:06 +00:00
Zach Copley
31c5ebb95c Better detial in connected OAuth applications list 2010-01-14 02:41:06 +00:00
Zach Copley
7885dadfe7 Issue a warning when someone tries to exchange an unauthorized or
otherwise bad req token for an access token.
2010-01-14 02:41:06 +00:00
Zach Copley
d8abad7478 Exchanging authorized request tokens for access tokens working 2010-01-14 02:41:06 +00:00
Zach Copley
e7f4ab6774 Associate request tokens with OAuth apps and app users 2010-01-14 02:41:05 +00:00
Zach Copley
aba299c5d1 Workflow for request tokens and authorizing request tokens 2010-01-14 02:41:05 +00:00
Zach Copley
2e23638615 Action for issuing a request token 2010-01-14 02:41:05 +00:00
Zach Copley
bcbe013385 Stubs for API OAuth token exchange stuff 2010-01-14 02:41:05 +00:00
Zach Copley
b14a97f5f9 Add icons/icon upload to Oauth apps 2010-01-14 02:41:05 +00:00
Zach Copley
4c5ddc42c1 Added session token checking. 2010-01-14 02:41:04 +00:00
Zach Copley
dad67b030f Workflow for registering new OAuth apps pretty much done. 2010-01-14 02:41:04 +00:00
Zach Copley
f802542885 Reorganized the OAuth app URLs and more work on the register app workflow 2010-01-14 02:41:04 +00:00
Zach Copley
5bff6651ba Started work on interface for displaying connected OAuth apps 2010-01-14 02:41:04 +00:00
Evan Prodromou
601c371332 correct check for error in subscribe and unsubscribe actions 2010-01-13 03:01:22 -08:00
Evan Prodromou
430bd69312 add events for subscribing to people and joining groups 2010-01-13 02:16:13 -08:00
Evan Prodromou
8809e577b2 Merge branch 'sessionidparam' into 0.9.x
Conflicts:
	lib/command.php
2010-01-11 00:45:26 -08:00
Evan Prodromou
5ec25a9691 inject session before redirect for login 2010-01-11 08:40:22 +00:00
Evan Prodromou
54d532e12f remove redirect to OTP on login from login, register 2010-01-10 22:58:33 -08:00
Siebrand Mazeland
4af6b7f5c3 Lots of tiny message changes.
* Mostly punctuation updates so that the same message is used consistently in all of StatusNet.
* Some cases of "Title Case" removed, because that does not appear to be used consistently.
2010-01-10 12:26:24 +01:00
Evan Prodromou
8c6ec0b59e fix check for ssl diff in login 2010-01-10 00:23:26 -08:00
Evan Prodromou
06ed0bc791 correctly check for ssl enabled 2010-01-10 00:19:46 -08:00
Evan Prodromou
304f3b4f18 correctly check for ssl enabled 2010-01-10 00:18:17 -08:00
Siebrand Mazeland
b0aea3f9c1 * L10n updates: consistent puctuation
* i18n updates: number parameters if more than one are being used
2010-01-10 01:45:58 +01:00
Evan Prodromou
6d66a28b35 Use OTP to set cookies from registration action 2010-01-09 16:23:41 -08:00
Evan Prodromou
ed5828f30e Redirect to a one-time-password when ssl and regular server are different 2010-01-09 15:26:06 -08:00
Sarven Capadisli
5d04e45886 Updated markup for versions page 2010-01-08 11:41:12 +00:00
Sarven Capadisli
a7e73d318a Added Brigitte Schuster (http://brigitteschuster.com) as one of the
contributors to StatusNet. She created the identi.ca, laconi.ca, and
status.net logos.
2010-01-08 10:20:51 +00:00
Evan Prodromou
9fc63a56a2 make a list of plugins 2010-01-07 17:28:31 -08:00
Evan Prodromou
4a4ac7a108 add a version action to give credit and list plugins 2010-01-07 17:26:40 -08:00
Evan Prodromou
6ae6fb7a35 clear profile location data if unparseable location string 2010-01-07 15:59:07 -08:00
Ciaran Gultnieks
deeaafe712 Fixes to bugs where non-local messages were being wrong put in the public timeline and public xmpp feed 2010-01-07 20:59:31 +00:00
Zach Copley
a1c3a2d3a1 Fix broken API method /api/statusnet/groups/leave/:id.:format 2010-01-06 16:21:29 -08:00
Zach Copley
013e6dfdd4 Don't output notices from deleted users. 2010-01-06 13:40:28 -08:00
Craig Andrews
250bcfa8dc Require users to login to view attachments on private sites
Thank you jeff-themovie for this implementation!
2010-01-05 17:49:28 -05:00
Evan Prodromou
7aeb11bb07 Merge branch 'master' into 0.9.x
Conflicts:
	actions/publictagcloud.php
	classes/Memcached_DataObject.php
2010-01-04 15:14:54 -10:00
Brion Vibber
af95005bc4 Ticket 2141: bugs with weighted popularity lists across year boundary.
Consolidated several separate implementations of the same weighting algorithm into common_sql_weight() and fixed some bugs...
For MySQL, now using timestampdiff() instead of subtraction for the comparison, so we get sane results when the year doesn't match, and utc_timestamp() rather than now() so we don't get negative ages for recent items with local server timezone.
Unknown whether the same problems affect PostgreSQL, but note that it lacks the timestampdiff() SQL function.
2010-01-04 13:01:17 -08:00
Brion Vibber
6911e1c797 Ticket 2141: bugs with weighted popularity lists across year boundary.
Consolidated several separate implementations of the same weighting algorithm into common_sql_weight() and fixed some bugs...
For MySQL, now using timestampdiff() instead of subtraction for the comparison, so we get sane results when the year doesn't match, and utc_timestamp() rather than now() so we don't get negative ages for recent items with local server timezone.
Unknown whether the same problems affect PostgreSQL, but note that it lacks the timestampdiff() SQL function.
2010-01-04 11:55:27 -08:00
Brion Vibber
11d7365a15 Don't spew notices when building tag cloud if there is no popularity sum to divide by. 2010-01-04 10:39:11 -08:00
Sarven Capadisli
30f58bf15f Updated element id for notice_data-geo 2010-01-04 12:43:56 +00:00
Brion Vibber
96ce2262f8 If we got an identified location at ajax check time, renormalize lat/lon and naming. This'll match other displays of the names more consistently (Opera Plaza, San Francisco, CA, US instead of Opera Plaza, US) 2009-12-29 14:30:15 -08:00
Craig Andrews
98ce7daf56 Implement user interface for user to preview what location they are sharing with a notice 2009-12-29 16:18:52 -05:00
Evan Prodromou
e119362fde Merge branch 'locshunt' into 0.9.x 2009-12-28 15:49:27 -08:00
Evan Prodromou
98a579fedf Merge branch 'master' into 0.9.x 2009-12-28 15:49:14 -08:00
Evan Prodromou
ca6669538a Move location-argument-handling code into a single function
Moved the important parts of the location-argument-handling stuff
to a single function. Handles defaults and overrides correctly, and
easy to use. Changed Web and API channels to use it.
2009-12-28 15:13:15 -08:00
Evan Prodromou
e009f613d3 let users set location prefs from profile form 2009-12-28 14:44:05 -08:00
Evan Prodromou
bb93d6b1c7 remove namespace setting from location; it's unused 2009-12-28 14:21:07 -08:00
Evan Prodromou
2ae04bb6d5 add events for unblocking a profile 2009-12-28 10:50:12 -08:00
Evan Prodromou
c5de326231 events for blocking a user 2009-12-28 10:42:55 -08:00
Zach Copley
1a462b04d7 Paths admin panel should not insist on an ssl server being specified,
ever.
2009-12-24 15:15:37 -08:00
Zach Copley
7f9b07d8c9 Move ssl settings from site admin panel to paths admin panel 2009-12-24 15:15:19 -08:00
Zach Copley
5f6df8c0c4 Paths admin panel should not insist on an ssl server being specified,
ever.
2009-12-24 16:50:28 -06:00
Zach Copley
4ed969a8ac Move ssl settings from site admin panel to paths admin panel 2009-12-24 15:25:59 -06:00
Evan Prodromou
71b7bdbcbe whitespace fixup 2009-12-23 07:38:09 -08:00
Evan Prodromou
185e229f79 Merge branch 'master' into 0.9.x 2009-12-22 22:12:15 -08:00
Evan Prodromou
725b2d0475 save location at notice post time 2009-12-22 21:58:23 -08:00
Siebrand Mazeland
0957c9fa4b Remove pleonasm in UI text 2009-12-20 20:20:35 +01:00
Evan Prodromou
90c378a81f broadcast for repeats 2009-12-15 12:29:37 -05:00
Evan Prodromou
797a0d79fb create a method for notification for new messages, and use it 2009-12-15 10:31:25 -05:00
Sarven Capadisli
f8b187d5a4 Initial representation for repeated notice 2009-12-14 18:09:08 -05:00
Evan Prodromou
2a8eee0e0b add friends_timeline with no repeats in it 2009-12-14 16:41:25 -05:00
Evan Prodromou
6ff13d6828 move full-featured timeline to apitimelinehome.php 2009-12-14 16:10:16 -05:00
Evan Prodromou
1ace5c400e parse error in retweet method 2009-12-14 15:49:19 -05:00
Siebrand Mazeland
745e35ac1f (Puctuation) consistency in clientError() calls. 2009-12-13 18:55:17 +01:00
Evan Prodromou
a5a89f50b8 Merge branch 'forward' into 0.9.x 2009-12-12 16:18:55 -05:00
Evan Prodromou
1ec54d3433 add statuses/retweeted_to_me to API 2009-12-12 16:15:23 -05:00
Evan Prodromou
cfe67a9c01 add statuses/retweets_of_me to API 2009-12-12 16:00:27 -05:00
Evan Prodromou
138ce0cd05 add statuses/retweeted_by_me api action 2009-12-12 15:35:05 -05:00
Evan Prodromou
c622d14440 add statuses/retweets to API 2009-12-12 14:46:24 -05:00
Hue Bastard
c24afa986e (fix clumsy double paste in b45be2b actions/apitimelinefavorites.php 2009-12-11 16:21:30 -08:00
Hue Bastard
59e5958d3a ticket 2055: added logos to Atom and RSS feeds 2009-12-11 16:15:22 -08:00
Evan Prodromou
683edfd199 show repeated notices correctly in API output 2009-12-11 12:40:05 -05:00
Evan Prodromou
0cb1feed51 show repeated notice's author on profile page 2009-12-11 12:16:11 -05:00
Evan Prodromou
afc86a86d3 save repeats from the form 2009-12-11 11:51:09 -05:00
Evan Prodromou
60754fc6de Merge branch '0.9.x' into forward 2009-12-11 11:38:08 -05:00
Evan Prodromou
89256fa754 fix typo in API arg creation 2009-12-11 11:33:26 -05:00
Evan Prodromou
79f81ad76d change Notice::saveNew() to use named arguments for little-used options 2009-12-11 11:29:51 -05:00
Evan Prodromou
a5724cca49 do some moving around of forwarding stuff 2009-12-11 10:10:25 -05:00
Evan Prodromou
79443d1ee2 had wrong number of arguments to NoticeList in notice inbox 2009-12-10 14:36:14 -05:00
Evan Prodromou
198e413a58 move inbox notice list to repeat plugin 2009-12-10 13:34:11 -05:00
Evan Prodromou
144faade3b move forwarding stuff to Repeat plugin 2009-12-10 13:31:16 -05:00
Craig Andrews
b36ec6da87 Fixed incorrect disabling of login_token. 2009-12-10 13:22:46 -05:00
Eric Helgeson
4db184e5b4 New Events for avatar settings 2009-12-09 22:31:07 -05:00
Evan Prodromou
21757186e9 don't allow forwarding your own notice 2009-12-08 17:52:20 -05:00
Evan Prodromou
41cbb90fae add (ugly) form to forward notices 2009-12-08 17:31:23 -05:00
Evan Prodromou
48a93810ab action to forward a notice 2009-12-08 17:20:45 -05:00
Evan Prodromou
c899e4a84e show forwards in the inbox 2009-12-08 17:02:48 -05:00
Craig Andrews
3b14b61fa7 Add a configuration option to disable the login command.
$config['logincommand']['disabled'] = true;

This commit should be reverted once the command has been sufficiently tested and trusted.
2009-12-05 21:05:33 -05:00
Craig Andrews
75cac0fd6b Added 'login' command that gives you a link that can be used to login to the website 2009-12-05 21:05:33 -05:00
Craig Andrews
51f0dd5e37 Add configuration option to toggle the indenting of the output HTML. Defaults to indent enabled. 2009-12-05 01:03:04 -05:00
Zach Copley
aef4cc0a59 Make it impossible to block (and thus unsubscribe from your
self-subscription) via the API.  Additionally, make it impossible
to block yourself or unsubscribe from yourself, period.

I also made User use the subs.php helper function for unsubscribing
during a block.

Hopefully, these changes will get rid of the problem of people
accidentally deleting their self-subscriptions once and for all
(knock on wood).
2009-12-03 17:06:58 -08:00
Brion Vibber
c89b10ffe4 Code style cleanup: dropped some unnecessary =& reference assignments where they're used only out of habit for PHP 4-style object semantics 2009-12-03 12:58:48 -08:00
Zach Copley
56b3e13d4a Reload the admin design panel page to show the new CSS when the
design gets reset.
2009-12-02 18:05:19 -08:00
Zach Copley
bb2311ea18 Only pick up new default site colors if the theme has NOT changed. 2009-12-02 17:50:51 -08:00
Zach Copley
4f359d2a8b Delete design when user chooses to restore default design, instead
of saving a design with site defaults.
2009-12-02 16:44:23 -08:00
Brion Vibber
a3a2168292 Fix regression in password settings: users have been unable to change their passwords since introduction of ChangePassword event (later StartChangePassword) November 5 in commit d6ddb84132
Logic was inversed; new password was only being saved if a plugin claimed the event; so when no auth plugin was present to take it, passwords never got saved.
2009-12-01 15:44:07 -08:00
Brion Vibber
e28e8cc1d7 typo fix: '$this' now spelled correctly. Looks like this'll fix acceptance of 'source' param for direct messages posted to API
@fixme: there's duplication of reserved sources list between at least this and apistatusesupdate module
2009-12-01 12:31:21 -08:00
Zach Copley
a36612866e Fix bad function call 2009-11-30 14:55:02 -08:00
Zach Copley
9dc888894b Merge branch 'master' into 0.9.x
* master: (67 commits)
  Ticket 2038: fix bad bug tracker link
  Fix regression in group posting: bug introduced in commit 1319002e15. Need to use actual profile object rather than an id on a variable that doesn't exist when checking blocks :D
  Log database errors when saving notice_inbox entries
  Drop the username from the log id for now; seems to trigger an error loop in some circumstances
  request id on logs... pid + random id per web request + username + method + url
  Add OpenID ini info back into statusnet.ini as a stopgap until we can
  Some changes to the OpenID DataObjects to make them emit the exact same
  OpenID plugin should set 'user_openid.display' as unique key
  Remove relationship: user_openid.user_id -> user.id. I don't think this
  Have OpenID plugin DataObjects emit their own .ini info
  Revert "Allow plugin DB_DataObject classes to not have to use the .ini file by overriding keys(), table(), and sequenceKey() for them"
  Catch and report exceptions from notice_to_omb_notice() instead of letting the OMB queue handler die.
  Fix regression in remote subscription; added hasRole() shadow method on Remote_profile.
  Fix fatal error on OMB subscription for first-timers
  Remove annoying log msg
  Drop error message on setlocale() failure; this is harmless, since we actually have a working locale set up.
  Catch uncaught exception
  Fixed bug where reply-sync bit wasn't getting saved
  Forgot to render the nav menu when on FB Connect login tab
  Facebook plugin no longer takes over Login and Connect settings nav menus
  ...

Conflicts:
	db/08to09_pg.sql
	db/statusnet_pg.sql
	locale/pt_BR/LC_MESSAGES/statusnet.mo
	plugins/Mapstraction/MapstractionPlugin.php
2009-11-30 10:28:58 -08:00
Siebrand Mazeland
1b9e801703 Fix typo in UI string 2009-11-28 20:52:46 +01:00
Brion Vibber
f1b64c4db5 Fix fatal error on OMB subscription for first-timers 2009-11-25 12:11:41 -08:00
Sarven Capadisli
d5e4360036 Removed unnecessary className 2009-11-25 12:23:58 +00:00
Siebrand Mazeland
bd063b8d5a Capitalise "same as password above" 2009-11-21 16:53:25 +01:00
Brion Vibber
a7be30857a Fix bug 1997: notice search rss utter failure
Since commit c4072ef7c9 in March there's no longer an automatic run of $this->getNotices() from RssAction parent class; added to the subclass.

It might make sense to put it back in the parent class, but of course only if those dupe calls can be resolved.
2009-11-20 14:54:59 -08:00
Brion Vibber
05a0f45de5 Fix bug 1997: notice search rss utter failure
Since commit c4072ef7c9 in March there's no longer an automatic run of $this->getNotices() from RssAction parent class; added to the subclass.

It might make sense to put it back in the parent class, but of course only if those dupe calls can be resolved.
2009-11-20 14:52:29 -08:00
Siebrand Mazeland
ac67847f9d UI text fixes and tweaks. 2009-11-20 16:03:27 +01:00
Evan Prodromou
224d82793c Revert "Added 'login' command that gives you a link that can be used to login to the website"
This reverts commit b9d40f723b.

Conflicts:

	actions/login.php
	classes/statusnet.ini
	db/08to09.sql
	db/08to09_pg.sql
	db/statusnet_pg.sql
	lib/command.php
	lib/commandinterpreter.php
2009-11-20 02:50:43 -08:00
Zach Copley
377f95a20f Left a form_data class of a <ul> in the user admin panel 2009-11-19 15:24:34 -08:00
Zach Copley
288d875b79 Added validation to fields in user admin panel 2009-11-19 15:17:24 -08:00
Zach Copley
8618b064e2 Added a user admin panel 2009-11-19 15:02:25 -08:00
Craig Andrews
9a74a094ed Add location form elements to the noticeform, and save their values on submission 2009-11-19 15:17:57 -05:00
Eric Helgeson
26a86402cd Use the $user object nickname, as login name doesnt have to == nickname anymore with plugins such as ldap/etc 2009-11-19 15:00:28 -05:00
Zach Copley
b8de14af2c Moved most path and server settings to a new paths admin panel 2009-11-19 11:55:07 -08:00
Craig Andrews
4463768bae tobyink's location RDF patch 2009-11-19 12:00:25 -05:00
Sarven Capadisli
643318e98c Updated form markup for email settings 2009-11-19 11:27:49 +00:00
Sarven Capadisli
1e5bb7fa68 Added fieldsets for site admin page 2009-11-19 10:34:43 +00:00
Zach Copley
3ec022307c Merge branch 'admin-sections/3' into 0.9.x
* admin-sections/3:
  Added locales_path to site admin panel
  Site admin panel mostly done.  Still need to add CC license chooser.
2009-11-19 01:59:50 -08:00
Zach Copley
409ce3556d Added locales_path to site admin panel 2009-11-19 01:56:29 -08:00
Zach Copley
08165c8f03 Site admin panel mostly done. Still need to add CC license chooser. 2009-11-19 01:46:14 -08:00
Sarven Capadisli
4d589e4c2d Updated markup and style for design admin fieldsets 2009-11-19 07:40:03 +00:00
Zach Copley
6165c9601d Merge branch 'admin-sections/2' into 0.9.x
* admin-sections/2:
  Design admin panel mostly done.
2009-11-18 18:52:09 -08:00
Zach Copley
cf7188a458 Design admin panel mostly done. 2009-11-18 18:25:36 -08:00
Brion Vibber
f7a3e508ba Check profile->update() result against false exactly; we may legitimately get 0 back if no rows were changed. DB objects normally would return true, but the comparisons aren't 100% reliable when we've got numbers which could be ints or strings or floats.
Caused failures saving profile settings with Geonames plugin enabled; the lat/lon/id fields would get re-set with freshly looked up values which no longer matched the previous values as far as the data object could tell, but which saved as the same ol' numbers.
2009-11-18 17:36:55 -08:00
Craig Andrews
cac5a417f2 Merge branch '0.9.x' of gitorious.org:statusnet/mainline into 0.9.x 2009-11-18 17:04:42 -05:00
Craig Andrews
745ea277d8 Should not canonicalize nickname before calling common_check_user 2009-11-18 16:09:58 -05:00
Eric Helgeson
199ccdb53f Consolidate group creation into static function in User_group 2009-11-18 15:54:24 -05:00
Craig Andrews
3bff3b2b32 Improve the not authorized error message 2009-11-18 14:44:39 -05:00
Brion Vibber
18835403fc Notice: Undefined variable: source in actions/apistatusesupdate.php on line 88 2009-11-18 09:29:55 -08:00
Sarven Capadisli
4fc99f8246 Updated admin design form markup 2009-11-18 09:47:04 +00:00
Zach Copley
7e0af92813 First draft of the admin panel for site design 2009-11-18 00:00:05 -08:00
Zach Copley
7551464d23 Get rid of empty select in theme dropdown 2009-11-17 16:55:45 -08:00
Sarven Capadisli
2c2861b867 Added form_data class 2009-11-17 21:52:33 +00:00
Sarven Capadisli
14082ada6b Updated admin forms to use form_settings styles 2009-11-17 20:09:09 +00:00
Evan Prodromou
cb4acd40bf more snapshot stuff in siteadminpanel 2009-11-17 14:51:17 -05:00
Evan Prodromou
42d6c69691 add private flag back into site admin panel 2009-11-17 10:59:50 -05:00
Evan Prodromou
bac2d80c91 Merge branch '0.9.x' into adminpanel
Conflicts:
	classes/User.php
2009-11-17 08:04:14 -05:00
Evan Prodromou
6a1afda259 Merge branch '0.9.x' of git@gitorious.org:statusnet/mainline into 0.9.x
Conflicts:
	classes/statusnet.ini
2009-11-17 06:25:07 -05:00
Brion Vibber
75c00f0054 Bug 1655/bug 1905: fix for Internet Explorer receiving FOAF output when clicking user links.
User links using the ID number (such as created for @-replies) have been failing on Internet Explorer, since IE doesn't bother to actually say it supports text/html...

We usually get something like this from IE, up through at least IE 8:
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, */*

The */* ended up matching application/rdf+xml instead of text/html, so only other browsers which are more explicit would actually get sent on to the user profile/notice stream; IE visitors were directed on to the FOAF download. :(

Swapping the order of items in the server-side of the negotiation list fixes this; clients actually asking for FOAF at a higher priority than HTML will still get it, but the wildcard */* now matches text/html which is usually what we want.

Content negotiation for the user links  was added August 2008 in commit 48fcfb8b0d.
2009-11-16 17:25:38 -08:00
Eric Helgeson
e14c88f6c5 Consistant error for groups that dont exist in API 2009-11-16 15:00:36 -05:00
Evan Prodromou
a2acb2eec5 DeleteUserAction 2009-11-16 17:04:40 +01:00
Evan Prodromou
e290f86c99 make block action use ProfileFormAction superclass 2009-11-16 16:14:49 +01:00
Evan Prodromou
985986e7e9 add sandbox and silence actions 2009-11-16 16:08:06 +01:00
Evan Prodromou
ff88ef407a make block actions use profileformaction superclass 2009-11-16 14:40:04 +01:00
Evan Prodromou
9a1a83e8eb Move some user-related stuff to useradminpanel from siteadminpanel 2009-11-15 14:37:47 +01:00
Evan Prodromou
9f8eedd5a3 add panels.txt to remember what to add where 2009-11-15 14:37:35 +01:00
Craig Andrews
ed690615de Added a User_username table that links the external username with a StatusNet user_id
Added EmailAuthenticationPlugin
Added ReverseUsernameAuthenticationPlugin
Changed the StartChangePassword and EndChangePassword events to take a user, instead of a nickname
User::allowed_nickname was declared non-static, but used as if it was static, so I made the declaration static
2009-11-12 20:12:36 -05:00
Ciaran Gultnieks
d8296df5d7 A further change to the XRDS is required if 0.9.x is to be able to remote sub to a 0.8.x account, with the OpenID plugin enabled. 2009-11-12 20:57:09 +00:00
Ciaran Gultnieks
707efadbd4 Some more XRDS fixes. With this and the previous commit, remote subs seem to work. Otherwise they don't. 2009-11-12 14:46:16 +00:00
Ciaran Gultnieks
6e601c1171 Wrong XRDS service type for OMB was being supplied. Wrong since commit 54696f7c I think 2009-11-12 14:21:47 +00:00
Craig Andrews
8a6590a7e8 initialize these variables before use to prevent warnings 2009-11-11 17:09:00 -05:00
Craig Andrews
23290f746f Do not show the URL shortener selection drop down if no shorteners are available 2009-11-11 17:05:24 -05:00
Craig Andrews
014d6b1d19 Redid how URL shorteners work. This way is much more like how Evan wants events to work (and more like how the rest of SN works). 2009-11-11 14:04:44 -05:00
Siebrand Mazeland
086759f32a Merge branch '0.9.x' of git://gitorious.org/statusnet/mainline into 0.9.x 2009-11-11 19:58:43 +01:00
Siebrand Mazeland
37c62c6356 Remove double space in message 2009-11-11 13:24:02 +01:00
Evan Prodromou
220f8771c6 store boolean values correctly in siteadminpanel 2009-11-11 01:43:34 -05:00
Evan Prodromou
4258f99d2f Add design admin panel 2009-11-11 01:09:40 -05:00
Evan Prodromou
b2145a6e4c use <li>s in form data for site admin panel 2009-11-11 01:00:41 -05:00
Evan Prodromou
935410e8dc Merge branch '0.9.x' into adminpanel 2009-11-11 00:22:42 -05:00
Zach Copley
db64b61296 Merge branch '0.9.x' into finish-account-api
* 0.9.x:
  Added a events for the settings menu items
  Bringing Sphinx search support up to code: broken out to a plugin, now supports multiple sites on a single server.
  Changed to Evan's event style and added an AuthPlugin superclass
  add geo output to statuses in json, xml, atom, rss in API
  Localisation updates from translatewiki.net (2009-11-10)
  Localisation updates from translatewiki.net
  Update pot
  add lat and long parameters to api/statuses/update
  change credential check to work more like other events
  fixup output of object attributes in db error code
  Performance fix for subscription/subscriber lists based on feedback from ops.
  Adjusting indexes to make favorites query more efficient, based on feedback from ops.
  Revert untested code; spews PHP notice warnings on every page view: "just sent a http 200 for the check-fancy from install.php"
  Added hook for the Group navigation items
  Updated block @title text (shouldn't say from group)
  Updated group block markup
  Revert "Remove more contractions"
2009-11-10 15:25:43 -08:00
Zach Copley
ee3fc8ba03 Added some notes in the comments 2009-11-10 15:23:33 -08:00
Zach Copley
4e4ba24c00 Implement /api/account/update_delivery_device.format 2009-11-10 14:36:41 -08:00
Brion Vibber
53c86c43c4 Bringing Sphinx search support up to code: broken out to a plugin, now supports multiple sites on a single server.
Upgrade notes:
* Index names have changed from hardcoded 'Identica_people' and 'Identica_notices' to use the database name and actual table names. Must reindex.

New events:
* GetSearchEngine to override default search engine class selection from plugins

New scripts:
* gen_config.php generates a sphinx.conf from database configuration (with theoretical support for status_network table, but it doesn't seem to be cleanly queriable right now without knowing the db setup info for that. Needs generalized support.)
* Replaced old sphinx-indexer.sh and sphinx-cron.sh with index_update.php

Other fixes:
* sphinx.conf.sample better matches our live config, skipping unused stopword list and using a more realistic indexer memory limit

Further notes:
* Probably doesn't work right with PostgreSQL yet; Sphinx can pull from PG but the extraction queries currently look like they use some MySQL-specific functions.
2009-11-10 13:44:40 -08:00
Craig Andrews
1cd6650ae4 Changed to Evan's event style and added an AuthPlugin superclass 2009-11-10 16:28:37 -05:00
Evan Prodromou
1f5f5474f1 Merge branch '0.9.x' into adminpanel 2009-11-10 16:27:23 -05:00
Evan Prodromou
27e6a3f36f add lat and long parameters to api/statuses/update 2009-11-10 15:36:55 -05:00
Brion Vibber
333c376c95 Merge remote branch 'statusnet/0.9.x' into 0.9.x 2009-11-10 06:44:53 -08:00
Sarven Capadisli
91da72ede0 Updated block @title text (shouldn't say from group) 2009-11-10 13:09:15 +00:00
Sarven Capadisli
2f3e414cd1 Updated group block markup 2009-11-10 13:08:58 +00:00
Zach Copley
cae06a49ea Merge branch '0.9.x' into finish-account-api
* 0.9.x: (26 commits)
  just sent a http 200 for the check-fancy from install.php
  Add a new event: CanUserChangeField
  shorten flag notification and include a class
  Added flag icon for UserFlag plugin
  Fixed notice option alignment in IE
  add a method to Theme class to list available themes
  Updated Realtime plugin to use the util's NoticeReply object
  Localisation updates from translatewiki.net (2009-11-08)
  Update pot again
  Rebuild pot file *without* --join-existing to get rid of the cruft. Not sure why "--join-existing" must be in. Only thing I can think of is manual additions, which I could not find.
  Revert "More precise field label"
  Remove more contractions
  Revert "* [Cc]an't -> [Cc]annot"
  Revert "More specifics on 'address'"
  * [Cc]an't -> [Cc]annot
  Revert "* check usage of 'people' in UI and change it to 'users' or something else in most places"
  add utilities for calculating local and installation theme root dirs
  Harmonise UI message "No such user."
  Restructure theme.php to define a class Theme
  entity_action responses look more inactive now
  ...
2009-11-10 00:43:58 -08:00
Zach Copley
c8bd6d9f7a Make /api/account/update_profile_background_image.format work even
when there isn't an existing Design for the user. Plus a few other
fixups.
2009-11-09 23:56:02 -08:00
Zach Copley
312c745884 Implement /api/account/update_profile.format 2009-11-09 23:13:59 -08:00
Zach Copley
322a4c3ed1 Implement /api/account/update_profile_colors.format 2009-11-09 22:24:32 -08:00
Craig Andrews
3be1205714 Add a new event: CanUserChangeField 2009-11-09 17:43:37 -05:00
Brion Vibber
088081675f Revert "Remove more contractions"
This reverts commit 5ab709b739.

Missed this one yesterday...
2009-11-09 20:01:46 +01:00
Evan Prodromou
badd8cccca add registration restrictions and privacy to site admin panel 2009-11-08 22:21:28 -05:00
Evan Prodromou
33f931d527 add default language to site admin panel 2009-11-08 22:12:12 -05:00
Evan Prodromou
977d5d6f85 add default timezone to site admin panel 2009-11-08 22:03:34 -05:00
Evan Prodromou
691beefd0f Merge branch '0.9.x' into adminpanel 2009-11-08 21:41:43 -05:00
Evan Prodromou
76b0e6e6f4 Merge branch '0.9.x' into adminpanel 2009-11-08 21:23:09 -05:00
Zach Copley
5c091dab9b Implement /api/account/update_profile_background_image.format 2009-11-08 15:29:04 -08:00
Siebrand Mazeland
2b16baa76a Merge branch '0.9.x' of git://gitorious.org/statusnet/mainline into 0.9.x 2009-11-08 23:36:53 +01:00
Brion Vibber
2917fad209 Revert "More precise field label"
This reverts commit 6483fbd8fa.

"SMS address" header here makes no sense; it would be inconsistent with the other tabs and headings on the same and related pages, and would look very awkward with another giant "SMS" right above it
2009-11-08 23:35:12 +01:00
Siebrand Mazeland
b10f362ede Merge branch '0.9.x' of git://gitorious.org/statusnet/mainline into 0.9.x 2009-11-08 23:33:58 +01:00
Siebrand Mazeland
5ab709b739 Remove more contractions
* doesn't
* won't
* isn't
* don't
2009-11-08 23:32:15 +01:00
Brion Vibber
fc5002015b Revert "* [Cc]an't -> [Cc]annot"
This reverts commit 0ab17f382b.
2009-11-08 23:28:51 +01:00
Brion Vibber
ec6a38a627 Merge branch '0.9.x' of gitorious.org:statusnet/mainline into 0.9.x 2009-11-08 23:27:24 +01:00
Brion Vibber
c7961fe6dc Revert "More specifics on 'address'"
This reverts commit 1872d07602.

"instant messages address" is very awkward phrasing; prefer not to be changing UI in such ways while updating localisations.
2009-11-08 23:26:16 +01:00
Siebrand Mazeland
104a47e4a2 Merge branch '0.9.x' of git://gitorious.org/statusnet/mainline into 0.9.x 2009-11-08 23:22:50 +01:00
Siebrand Mazeland
0ab17f382b * [Cc]an't -> [Cc]annot
* [Cc]ould't -> [Cc]ould not
2009-11-08 23:22:38 +01:00
Brion Vibber
a034fb0b82 Revert "* check usage of 'people' in UI and change it to 'users' or something else in most places"
This reverts commit 81b4a381d9.
IMO "user" is a bit impersonal and we shouldn't go changing the tone of the UI willy-nilly when we're updating localisations.
2009-11-08 23:22:13 +01:00
Siebrand Mazeland
221b779e88 Harmonise UI message "No such user." 2009-11-08 23:10:44 +01:00
Evan Prodromou
111f6a775d Merge branch '0.9.x' of git@gitorious.org:statusnet/mainline into 0.9.x 2009-11-08 17:06:41 -05:00
Evan Prodromou
b7e2e3fd2b Restructure theme.php to define a class Theme
For various reasons, it's nicer to have a class for theme-file paths
and such. So, I've rewritten the code for determining the locations of
theme files to be more OOPy.

I changed all the uses of the two functions in the module (theme_file
and theme_path) to use Theme::file and Theme::path respectively.

I've also removed the code in common.php that require's the module;
using a class means we can autoload it instead.
2009-11-08 17:04:46 -05:00
Siebrand Mazeland
43132eb55e Several updates to UI messages 2009-11-08 22:45:18 +01:00
Siebrand Mazeland
1872d07602 More specifics on 'address' 2009-11-08 22:37:09 +01:00
Siebrand Mazeland
6483fbd8fa More precise field label 2009-11-08 22:34:52 +01:00
Evan Prodromou
7ee9737ef6 incorrectly saving wrong values in siteadminpanel 2009-11-08 16:27:19 -05:00
Siebrand Mazeland
81b4a381d9 * check usage of 'people' in UI and change it to 'users' or something else in most places
* change some contractions to full text in UI messages
2009-11-08 22:26:13 +01:00
Evan Prodromou
2f770cecf9 add some more fields to site admin panel 2009-11-08 15:48:05 -05:00
Evan Prodromou
d0466da80b add site admin panel 2009-11-07 23:17:52 -05:00
Evan Prodromou
1de9496c7f fix constant for deleteothersnotice 2009-11-07 22:26:03 -05:00
Zach Copley
b522c401e6 Better workaround for PHP returning empty $_POST and $_FILES when
POST length > post_max_size in php.ini. I also added this check to
avatar upload, which was failing with huge files.
2009-11-06 17:21:08 -08:00
Craig Andrews
d6ddb84132 Add ChangePassword event 2009-11-05 23:27:18 -05:00
Brion Vibber
066331bdf7 Merge commit 'refs/merge-requests/2006' of git://gitorious.org/statusnet/mainline into integration 2009-11-05 15:50:29 +01:00
Zach Copley
1ef1f59fe8 Fix for Ticket #1957 - API methods are not accessible when site is private (0.8->0.9 regression) 2009-11-04 22:03:41 -08:00
Zach Copley
f28795656f Remove ugly debugging statements 2009-11-04 21:08:47 -08:00
Zach Copley
527427d3e0 Implement update avatar via API (/api/account/update_profile_image.format) 2009-11-04 21:00:26 -08:00
Shashi
b12caedb88 Widgetized user profile rendering. 2009-11-04 18:41:17 +05:30
Brion Vibber
70a950c79f Bug 1817: undefined property in registration form
http://status.net/trac/ticket/1817
2009-11-03 15:23:28 -08:00
Zach Copley
1e6aff69d6 Fix reference to sources class variable 2009-11-03 09:41:36 -08:00
Craig Andrews
b9d40f723b Added 'login' command that gives you a link that can be used to login to the website 2009-11-02 18:40:49 -05:00
Sarven Capadisli
f3287bd113 Updated XHR output to match newnotice 2009-11-01 10:42:28 +00:00
Evan Prodromou
44ce8e2fcd Merge branch '0.9.x' of git@gitorious.org:statusnet/mainline into 0.9.x 2009-10-31 14:47:21 -04:00
Evan Prodromou
d7da76ab6d Revert "Revert "Actually commit the file this time""
This reverts commit ba89c89176.
2009-10-31 14:43:13 -04:00
Evan Prodromou
4e9ec0d0e1 merge from testing 2009-10-31 14:36:04 -04:00
Evan Prodromou
ba89c89176 Revert "Actually commit the file this time"
This reverts commit 3f06bfc042.
2009-10-31 14:32:15 -04:00
Sarven Capadisli
f9bb95174b Added XHR for direct messages. 2009-10-31 16:14:38 +01:00
Sarven Capadisli
a2302e5b76 Merge branch '0.9.x' of git@gitorious.org:statusnet/mainline into 0.9.x 2009-10-30 21:45:22 +00:00
Sarven Capadisli
dcca9fbec0 IE has some issue with notices that are sent with file attachments. It
doesn't like the XHR response with XHTML DTD. New notices without the
file attachment work fine.

The rendered content (the anchor for the file attachment link) doesn't
appear to be the issue.

To fix this problem, I removed the XHTML DTD line from newnotice's XHR
response. This is unnecessary for text/xml outputs that's intended
for XHR responses any way. It just happens to fix an IE issue.

Still a mystery to me as to why it is particular to notices with file
attachments.
2009-10-30 21:44:31 +00:00
Sarven Capadisli
db9aef9f67 IE has some issue with notices that are sent with file attachments. It
doesn't like the XHR response with XHTML DTD. New notices without the
file attachment work fine.

The rendered content (the anchor for the file attachment link) doesn't
appear to be the issue.

To fix this problem, I removed the XHTML DTD line from newnotice's XHR
response. This is unnecessary for text/xml outputs that's intended
for XHR responses any way. It just happens to fix an IE issue.

Still a mystery to me as to why it is particular to notices with file
attachments.
2009-10-30 21:31:11 +00:00
Brion Vibber
b7ed31c27b Use nickname from profile, not user object, to avoid barfing warnings on Twitter messages imported into the timeline. 2009-10-30 16:55:47 -04:00
Craig Andrews
fc22bde67c Redirect to login when trying to send a direct message while not logged in.
http://status.net/trac/ticket/1359
2009-10-30 16:01:20 -04:00
Craig Andrews
35ace5562d Fix feed links which were broken when the API was restructured 2009-10-29 19:09:42 -04:00
Craig Andrews
54696f7c46 Moved the public XRDS from the OpenID plugin to core
Added 4 new events involved in XRDS: StartUserXRDS, EndUserXRDS, StartPublicXRDS, EndPublicXRDS
Added OpenID provider functionality (no delegation support [yet])
2009-10-29 16:27:22 -04:00
Evan Prodromou
c911c66fe1 Merge branch '0.9.x' of git@gitorious.org:statusnet/mainline into 0.9.x 2009-10-29 14:34:33 -04:00
Evan Prodromou
e88dd2d087 fix uninitialized variables in showstream.php 2009-10-29 14:34:08 -04:00
Brion Vibber
201cbb56b6 Don't spew warnings for URL shortener plugins that don't declare if they're free services. 2009-10-29 14:29:52 -04:00
Sarven Capadisli
968389fb45 Don't include site in gettext 2009-10-29 13:24:06 +01:00
Sarven Capadisli
f0abc0fe15 Updated bookmarklet. Created its own action 2009-10-29 13:18:51 +01:00
Evan Prodromou
2b5a5e02a4 Merge branch '0.9.x' of git@gitorious.org:statusnet/mainline into 0.9.x 2009-10-28 22:58:58 -04:00
Zach Copley
03a1436a1c Trap ClientExceptions from media upload process and hand them off to API error handler 2009-10-28 17:29:21 -07:00
Zach Copley
9ef05030fe Merge branch 'api-media-upload' into 0.9.x
* api-media-upload:
  Rearanged a couple things & removed debugging statements
  Rework MailDaemon to use the MediaFile class for uploads
  Implement media upload in the API
  Extract media upload stuff into its own library class.
2009-10-28 17:18:33 -07:00
Zach Copley
e5a2f895a0 Rearanged a couple things & removed debugging statements 2009-10-28 17:13:06 -07:00
Evan Prodromou
b73d6d18ba Merge branch '0.9.x' into location 2009-10-28 17:24:53 -04:00
Zach Copley
2d0aba49d9 Implement media upload in the API 2009-10-27 21:45:56 -07:00
Zach Copley
93a6e83d5d Extract media upload stuff into its own library class. 2009-10-27 19:11:18 -07:00
Craig Andrews
7b30e3c00f Shorten the notice text after command processing is done 2009-10-27 22:02:55 -04:00
Craig Andrews
0b4390e7f2 Make email domain checking optional, as some statusnet installations (such as those behind restrictive corporate firewalls, or on home systems on restrictive connections) cannot connect to any mail
systems, and this check will always fail.
2009-10-26 10:31:12 -04:00
Evan Prodromou
3c724ccd0d Merge branch '0.9.x' into location 2009-10-24 19:59:46 -04:00
Evan Prodromou
967de94665 update location while saving new profile 2009-10-23 11:47:00 -04:00
Jeffery To
3f06bfc042 Actually commit the file this time 2009-10-22 12:46:56 +08:00
Zach Copley
78e5a5980a Extract out Facebook app stuff into a plugin 2009-10-20 16:32:30 -07:00
Zach Copley
8a31970ff8 Twitter now puts out an error msg when the status param is empty.
Updated our API to match.
2009-10-20 15:09:18 -07:00
Zach Copley
09dfb08a39 Merge branch '0.9.x' into TwitterBridgePlugin 2009-10-20 06:06:10 +00:00
Evan Prodromou
035d4cf86e Merge branch '0.9.x' of git@gitorious.org:statusnet/mainline into 0.9.x 2009-10-19 15:36:26 -04:00
Zach Copley
0bbc05c1d5 Merge branch '0.9.x' into TwitterBridgePlugin 2009-10-16 23:42:02 +00:00
Brion Vibber
e48efd3222 Workaround for Facebook data store API behavior regression, fixes saving
of empty notice prefix text in facebook settings.

Filed bug upstream at http://bugs.developers.facebook.com/show_bug.cgi?id=7110

Per documentation, saving a pref value of "" or "0" will delete the pref key:
http://wiki.developers.facebook.com/index.php/Data.setUserPreference

which used to do what we want... Now Facebook throws back an error
"Parameter value is required" when we do this. Workaround appends a
space to empty string or "0" at save time, then trims the string when
we load it.

The input string was already trimmed at pref save time, so this won't
alter any user-visible behavior.

Thanks to ^demon in #mediawiki for pointing out the behavior regression
after testing the identi.ca Facebook app!
2009-10-16 14:48:56 -07:00
Brion Vibber
4855cb58da Workaround for Facebook data store API behavior regression, fixes saving
of empty notice prefix text in facebook settings.

Filed bug upstream at http://bugs.developers.facebook.com/show_bug.cgi?id=7110

Per documentation, saving a pref value of "" or "0" will delete the pref key:
http://wiki.developers.facebook.com/index.php/Data.setUserPreference

which used to do what we want... Now Facebook throws back an error
"Parameter value is required" when we do this. Workaround appends a
space to empty string or "0" at save time, then trims the string when
we load it.

The input string was already trimmed at pref save time, so this won't
alter any user-visible behavior.

Thanks to ^demon in #mediawiki for pointing out the behavior regression
after testing the identi.ca Facebook app!
2009-10-16 14:46:53 -07:00
Evan Prodromou
90de6eae5a add more events to profile list 2009-10-15 06:01:26 -04:00
Zach Copley
8be28f478d Fix syntax errors 2009-10-13 14:48:19 -07:00
Evan Prodromou
4f5badda94 remove inboxes option 2009-10-13 17:38:27 -04:00
Evan Prodromou
181de862ef Merge branch '0.9.x' of git@gitorious.org:statusnet/mainline into 0.9.x 2009-10-13 17:21:41 -04:00
Zach Copley
39bcd514b4 Merge branch '0.9.x' into pluginize-twitter-bridge
* 0.9.x:
  Include long-form attachment URL in notice if URL shortening is disabled.
  Updated default theme to use the CSS Sprites method for common icons
  Added a new plugin that requires a user to have a validated email address before being allowed to post notices
  Don't trigger E_NOTICE when looking for commands in the notice input
2009-10-13 11:05:39 -07:00
Brion Vibber
659a04b556 Include long-form attachment URL in notice if URL shortening is disabled.
Previously, the attachment URL would simply be dropped when shortening returned false instead of a short URL... the attachment was present if you clicked through to notice details but didn't appear in the timeline, making it nigh-impossible to see the attachment.
2009-10-13 10:32:52 -07:00
Brion Vibber
2c5aeb11b1 Include long-form attachment URL in notice if URL shortening is disabled.
Previously, the attachment URL would simply be dropped when shortening returned false instead of a short URL... the attachment was present if you clicked through to notice details but didn't appear in the timeline, making it nigh-impossible to see the attachment.
2009-10-13 16:54:57 +00:00
Zach Copley
b4b992bca7 Merge branch '0.9.x' into pluginize-twitter-bridge
* 0.9.x: (247 commits)
  Added in credits.
  Use site's name for basic auth realm
  Make apigroupcreate.php pass phpcs
  Took out some unnecessary intializations
  Implemented create group api
  CamelCase all function names in the API code
  These same params are used in most API actions; moved to base API class
  Missed some of the references to the old TwitterApiAction - removed
  Remove more redundant $formats
  Remove dead code
  Move all basic auth output and processing to base classes
  $format is used by every API action. Set it in the base class.
  Delete action/api.php and rename lib/twitterapi.php to lib/api.php
  New actions for blocks via API
  fix FBConnect so it doesn't muffle EndPrimaryNav
  don't write session if it's unchanged
  Fixed facebook connect primary nav to hide search option when site is private and user is not logged in
  Fixed facebook connect primary nav to obey sms/twitter/openid settings
  Fixed facebook connect login nav to obey openid settings
  Fixed facebook connect nav to obey sms/twitter disabled
  ...
2009-10-13 09:36:26 -07:00
Zach Copley
870b091693 Added in credits. 2009-10-12 16:36:00 -07:00
Zach Copley
da9d02b038 Make apigroupcreate.php pass phpcs 2009-10-12 14:46:22 -07:00
Zach Copley
7fcaffdf86 Took out some unnecessary intializations 2009-10-12 14:07:00 -07:00
Zach Copley
e071a8cbff Moved group create API into its own action
Merge branch '0.9.x' into refactor-api

* 0.9.x:
  Implemented create group api
  fix FBConnect so it doesn't muffle EndPrimaryNav
  don't write session if it's unchanged
  Fixed facebook connect primary nav to hide search option when site is private and user is not logged in
  Fixed facebook connect primary nav to obey sms/twitter/openid settings
  Fixed facebook connect login nav to obey openid settings
  Fixed facebook connect nav to obey sms/twitter disabled
  Fixed twitter defaulting to disabled
  Revert "Open tags should have closing tags"
  Don't show search suggestions for private sites
  Fixed E_NOTICE when returnto isn't set
  Fixed E_NOTICE when the "lite" parameter isn't included in the request
  Fixed E_NOTICE - GroupList expects an owner object in the constructor, not an array of search terms
  Returning false seems to fix IE from reclaiming window focus. I think
  Aligning notice attach label from right instead of left
  Fixed IE background image alignment for attach, favour and disfavour
  Fixed nudge and direct message background image alignment
  Using 'CSS sprites' for common icons for the identica theme. Default
  Open tags should have closing tags

Conflicts:
	actions/twitapigroups.php
	actions/twitapistatuses.php
2009-10-12 12:31:14 -07: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
Craig Andrews
96d32fb8d0 Implemented create group api 2009-10-11 13:13:15 -04:00
Zach Copley
061af8fa06 CamelCase all function names in the API code 2009-10-09 17:53:35 -07:00
Zach Copley
b08d16ef2b These same params are used in most API actions; moved to base API class 2009-10-09 17:32:53 -07:00
Zach Copley
57dfad64be Missed some of the references to the old TwitterApiAction - removed 2009-10-09 17:21:22 -07:00
Zach Copley
559918826a Remove more redundant $formats 2009-10-09 17:11:40 -07:00
Zach Copley
743c844084 Move all basic auth output and processing to base classes 2009-10-09 16:57:22 -07:00
Zach Copley
f746993c2b $format is used by every API action. Set it in the base class. 2009-10-09 14:42:01 -07:00
Zach Copley
bb08611def Delete action/api.php and rename lib/twitterapi.php to lib/api.php 2009-10-09 14:22:18 -07:00
Zach Copley
09f4d1ef23 New actions for blocks via API 2009-10-09 13:35:54 -07:00
Evan Prodromou
76ac7c358a add lots of events to customize the profile page 2009-10-09 16:14:20 -04:00
Evan Prodromou
44a59bbc2d add some hooks for the profile page 2009-10-09 15:28:12 -04:00
Zach Copley
ada84698f2 New action for test/help API method 2009-10-08 15:59:00 -07:00
Zach Copley
62059fec83 New actions for statusnet config and version API methods 2009-10-08 15:45:45 -07:00
Zach Copley
08de0f1ebd New individual actions for dealing with groups via API 2009-10-07 17:20:08 -07:00
Evan Prodromou
5702764e52 Rationalize logic in showProfile()
Pulled together some of the if() statements in showProfile() so they
weren't so redundant.

Also, reformatted the file. Lots of whitespace gar.
2009-10-07 05:55:54 -04:00
Evan Prodromou
8ade2e1c7d don't reset in showProfile() 2009-10-07 05:43:18 -04:00
Jeffery To
9449a1e39c Fixed E_NOTICE when the "lite" parameter isn't included in the request 2009-10-07 17:28:29 +08:00
Jeffery To
87f5c53dd0 Fixed E_NOTICE - GroupList expects an owner object in the constructor, not an array of search terms 2009-10-07 16:18:05 +08:00
Zach Copley
170b009865 New action for group timelines via API 2009-10-06 17:26:45 -07:00
Zach Copley
85af1c92ad phpcs cleanup 2009-10-06 17:25:10 -07:00
Zach Copley
8d284ca82c New action for tag timelines in the API 2009-10-06 15:39:13 -07:00
Zach Copley
475bdf6fba New actions for the account methods we have implemented 2009-10-05 17:10:30 -07:00
Zach Copley
dd0d907231 New actions for favorites via the API 2009-10-05 13:50:01 -07:00
Zach Copley
62d1475df1 Add in a check for proper format 2009-10-05 13:25:34 -07:00
Zach Copley
4ed8055f86 New actions for managing subscriptions (friendships) 2009-10-05 10:03:12 -07:00
Zach Copley
daa8b47306 New actions for direct messaging through the API 2009-10-02 17:23:48 -07:00
Zach Copley
eaef9b689a New action for /users/show 2009-10-02 10:31:13 -07:00
Zach Copley
1e0c36afb5 Renamed and moved stuff around to better match Twitter's API organization 2009-10-01 18:19:59 -07:00
Zach Copley
9a1dbee0fd A new action for /statuses/destroy 2009-10-01 17:35:28 -07:00
Zach Copley
b3bbaecf47 Merge branch '0.9.x' into refactor-api
* 0.9.x:
  change DB so OpenIDPlugin manages OpenID tables
  Some bug fixes
  check the schema
  add some more methods to Schema
  Added hook for Aside container
  Revert "Outputting UTF-8 charset in document header irrespective of mimetype."
  FOAF for Groups.
  use schema tool to create a table
  statusize schema-related modules
  test script for schema code
  make table def method of schema code work
  start a module for schema management
2009-10-01 16:17:43 -07:00
Zach Copley
b0ddb971e6 New action for /statuses/update 2009-10-01 16:15:52 -07:00
Zach Copley
c5f33cc6c2 Fix: last modified header wasn't showing 2009-09-30 17:11:22 -07:00
Zach Copley
8b8e0c95af Add route for /statuses/show 2009-09-30 17:08:52 -07:00
Zach Copley
a3901e0e24 New action for /statuses/show 2009-09-30 17:06:46 -07:00
Zach Copley
524c2794c9 Declare some more variables; instance variable for format 2009-09-30 17:02:04 -07:00
Toby Inkster
c5be2962ad FOAF for Groups. 2009-09-30 13:59:18 -04:00
Zach Copley
5bab0288af Merge branch '0.9.x' into refactor-api
* 0.9.x: (39 commits)
  Timeout a little incase the notice item from XHR response is
  Relocated the button for pop up window for notice stream
  Script no longer needed for Realtime plugin
  Better check to see if the XML prolog should be outputted for XML
  Outputting UTF-8 charset in document header irrespective of mimetype.
  Switched Doctype to XHTML 1.0 Strict (which best reflects the current
  Twitter API returns server errors in preferred format
  move HTTP error code strings to class variables
  remove string-checks from code using Notice::saveNew()
  change string return from Notice::saveNew to exceptions
  stop overwriting created timestamp on group edit
  Forgot to add home_timeline to the list of methods that only require
  Forgot to add home_timeline to the list of methods that only require
  moderator can delete another user's notice
  show delete button when user has deleteOthersNotice right
  let hooks override standard user rights
  user rights
  Merge DeleteAction class into DeletenoticeAction
  Fix some bugs in the URL linkification, and fixed the unit test.
  Fix URL linkification test cases for addition of 'title' attribution with long URL in f3c8fccc
  ...
2009-09-30 10:32:05 -07:00
Zach Copley
34ba2d03e9 Fix header comment 2009-09-30 10:30:06 -07:00
Zach Copley
1e7939cc48 Left opening double quotes off Etag 2009-09-30 10:27:54 -07:00
Zach Copley
e307adfbfc New actions for /statuses/friends and /statuses/followers + social graph methods 2009-09-30 10:22:26 -07:00
Evan Prodromou
fe7848e8b8 Merge branch '0.8.x' into 0.9.x
Conflicts:
	actions/twitapistatuses.php
2009-09-29 18:03:10 -04:00
Evan Prodromou
5309910b9b Twitter API returns server errors in preferred format 2009-09-29 17:57:31 -04:00
Evan Prodromou
4298f28eae Merge branch '0.9.x' of git@gitorious.org:statusnet/mainline into 0.9.x 2009-09-29 17:26:09 -04:00
Evan Prodromou
89ac81c344 remove string-checks from code using Notice::saveNew() 2009-09-29 17:25:52 -04:00
Evan Prodromou
155ba6c103 stop overwriting created timestamp on group edit 2009-09-29 09:12:44 -04:00
Zach Copley
4e6c730207 Forgot to add home_timeline to the list of methods that only require
bareauth.
2009-09-27 20:23:35 -07:00
Zach Copley
6b7a007ef2 Forgot to add home_timeline to the list of methods that only require
bareauth.
2009-09-27 20:21:16 -07:00
Evan Prodromou
ee9856c452 moderator can delete another user's notice 2009-09-27 21:14:49 -04:00
Evan Prodromou
a8d1b7e9c2 Merge DeleteAction class into DeletenoticeAction
The DeleteAction class checked for notice information, and only had
one subclass: DeletenoticeAction. I couldn't figure out any other
class that would subclass it, so I combined the two into a single class.
2009-09-27 21:10:17 -04:00
Zach Copley
f3820cc85d Fix nickname in feed title 2009-09-27 17:27:42 -07:00
Zach Copley
44dd8f833d Broke mentions API method out into its own action 2009-09-27 17:17:57 -07:00
Zach Copley
99d2999b5c Broke out public_timeline and user_timeline into their own actions 2009-09-27 16:57:06 -07:00
Zach Copley
37bdc060c5 phpcs on apifriendstimeline.php, apiauth.php and apibareauth.php 2009-09-27 15:33:46 -07:00
Zach Copley
dfa955bfda - Output entity tag
- More comments for function blocks
2009-09-27 14:11:12 -07:00
Zach Copley
ccc7caf932 Merge branch 'refactor-api' of git@gitorious.org:~zcopley/statusnet/zcopleys-clone into refactor-api 2009-09-25 16:59:51 -07:00
Zach Copley
de5ff19713 Moved basic auth stuff into its own classes 2009-09-25 16:58:35 -07:00
Zach Copley
150cf8c045 Merge branch '0.9.x' into refactor-api
* 0.9.x: (88 commits)
  Left a couple debugging statements in (removed)
  Output If-Modified-Since header for all RSS 1.0 feeds (again)
  Revert "move scripts to just before </body>, add event for scripts that need to be in <head>"
  Implemented join and leave groups api methods
  implemented etag and last modified
  Fixed broken Piwik plugin - was not using the supplied site code
  move scripts to just before </body>, add event for scripts that need to be in <head>
  some UI fixes
  Using timeline string instead of title for WindowName because IE doesn't
  Added JavaScript to initialize the poped Window
  Some layout and rendering adjustment for Realtime plugin
  Created addPop() for Realtime plugin and added param to include iconurl
  move some stuff around for realtime
  hack around address hack in util.js
  Add some more realtime feeds
  Do realtime popup with PHP instead of Javascript
  JavaScript fixes for IE
  Revert "Added realtime streams for all and showstream timelines"
  Revert "Fixed indenting"
  Revert "Made it slighly more compact with less jQuery selection"
  ...
2009-09-24 18:18:26 -07:00
Zach Copley
ed9ba9d945 Reorganize, make bare auth work, output If-Modified-Since header 2009-09-24 18:13:46 -07:00
Zach Copley
b617c608ea Left a couple debugging statements in (removed) 2009-09-24 15:28:25 -07:00
Zach Copley
e566219299 Output If-Modified-Since header for all RSS 1.0 feeds (again) 2009-09-24 15:10:55 -07:00
Craig Andrews
49bce941a9 Merge remote branch 'statusnet/0.8.x' into 0.9.x
Conflicts:
	EVENTS.txt
	actions/requesttoken.php
	classes/File.php
	install.php
	lib/action.php
	lib/noticeform.php
2009-09-24 17:15:54 -04:00
Craig Andrews
3d30ad83f8 Implemented join and leave groups api methods 2009-09-24 16:52:32 -04:00
Zach Copley
49b701f9ec Started refactoring API into individual actions 2009-09-23 13:45:51 -07:00
Zach Copley
8aad3154a7 Make statuses/home_timeline return the same thing as statuses/friends_timeline to support apps trying to use the new retweet API method. 2009-09-19 18:41:28 -07:00
Zach Copley
74296fa12c Make statuses/home_timeline return the same thing as statuses/friends_timeline to support apps trying to use the new retweet API method. 2009-09-19 18:34:07 -07:00
Adrian Lang
e0ff80f1c7 Add missing parenthesis. 2009-09-19 21:40:48 +02:00
Adrian Lang
8548e1185d Fix merges. 2009-09-19 21:38:52 +02:00
Craig Andrews
0d72456a84 Merge remote branch 'cvollick/userTagPagination' into 0.8.x 2009-09-17 14:38:08 -04:00
Zach Copley
0190785b73 Merge branch '0.9.x' into pluginize-twitter-bridge
* 0.9.x: (57 commits)
  Updated csarven emails to csarven@status.net and removed dupes
  statusize new HTTP classes
  dedupe evans
  change all evans to evan@status.net
  add post to curlclient
  fix user-agent for curlclient
  add get to curl client
  add cURL client with HEAD method
  add user agent and correct version check to httpclient
  statusize OpenID plugin
  add http client config value
  update httpclient class
  move httputil to httpclient
  Start a common library for HTTP client stuff
  check correct define (not backwards compatible)
  Fixed broken list items in installer output
  Got rid of a bunch of ugly warnings
  Add Jiminy to notice sources
  Make it impossible to delete self-subscriptions via the API
  Fix bad merge d7ae0ed4fd
  ...
2009-09-16 12:40:22 -07:00
Sarven Capadisli
83b0916457 Updated csarven emails to csarven@status.net and removed dupes 2009-09-16 11:14:26 +02:00
Christopher Vollick
c4ef2346b8 Pagination of user/tag was navigating to wrong page.
Fixes bug #1736.
2009-09-16 05:07:33 -04:00
Evan Prodromou
1618d515e6 dedupe evans 2009-09-15 22:30:52 -04:00