Commit Graph

2319 Commits

Author SHA1 Message Date
Brion Vibber
49a872b56f OStatus: support @example.com/path/to/profile mentions as well as @profile@example.com (latter requires webfinger, former doesn't)
Plus misc warnings/notices cleanup in the submission path.
2010-03-02 15:43:32 -08:00
Brion Vibber
6b134ae4c7 Dropped deprecated timestamp-based 'since' parameter for all API methods. When it sneaks in it can cause some very slow queries due to mismatches with the indexing.
Twitter removed 'since' support some time ago, and we've already removed it from the public timeline, so it shouldn't be missed.
2010-03-02 11:54:02 -08:00
Evan Prodromou
656a977016 remove strict check on OMB exception strings 2010-03-01 18:03:18 -05:00
Evan Prodromou
c7d8641e7d return correct HTTP status code for OMB errors 2010-03-01 18:03:18 -05:00
Evan Prodromou
1414b6b849 send smaller error pages for OMB API endpoints 2010-03-01 18:03:18 -05:00
Brion Vibber
88ae7f53bb Merge branch 'master' of gitorious.org:statusnet/mainline into testing 2010-02-26 12:33:13 -08:00
Christopher Vollick
c95daacfdb Updated ShowGroup to Resolve Aliases Again.
The way we find groups changed with this new Local_group table.
I had to update this too.
2010-02-26 12:30:23 -08:00
Evan Prodromou
fc576562a3 Merge branch 'testing' of git@gitorious.org:statusnet/mainline into testing 2010-02-26 12:40:59 -05:00
Evan Prodromou
6781f95c73 Merge branch 'blacklistplus' into testing
Conflicts:
	EVENTS.txt
2010-02-26 12:40:30 -05:00
Michele
6ae39da198 Fixed object name 2010-02-26 11:35:55 +01:00
Zach Copley
6cc26a613b Remove unnecessary requires 2010-02-25 22:08:25 -08:00
Zach Copley
e650794300 Remove unnecessary requires 2010-02-25 22:06:31 -08:00
Zach Copley
c49fbb63c5 Merge branch 'testing' of gitorious.org:statusnet/mainline into testing
* 'testing' of gitorious.org:statusnet/mainline:
  init_conversation.php script to copy old notice conversations into the conversation table
  cache results of webfinger lookups
  Parse an hcard for hints, if available
  use new hcard method for webfinger
  add hkit for hCard parsing
  use new dedicated hcard method for Webfinger profile
  Add an hcard action
2010-02-25 18:13:34 -08:00
Zach Copley
792f0942f7 Fix atom feed IDs in user and group atom feeds 2010-02-25 18:13:06 -08:00
Evan Prodromou
4aa82f75ed Merge branch 'testing' of git@gitorious.org:statusnet/mainline into testing 2010-02-25 18:45:32 -05:00
Evan Prodromou
76216af806 Add an hcard action
A dedicated hcard action for users. Our profile page includes
an hcard, but it's so full of other hcards that it's ambiguous which
one is the "real" one. So, this one make sense for meaning, "This is
my hcard."
2010-02-25 18:39:55 -05:00
Brion Vibber
e254c660f6 Fix bug on subscribe/unsubscribe in profile lists. Bogus call to nonexisting profile->getProfile() was masked by DB_DataObject 2010-02-25 15:22:23 -08:00
Brion Vibber
b5b5184c88 OStatus: fix remote groups to work with new user_groups/local_groups split.
- fix <activity:subject> generation so we get the profile info (what's available so far)
- use id instead of nickname for group join/leave forms so we can join/leave remote groups
  while the rest of the groups UI remains limited to local groups
  (plugins are responsible for making sure remote notifications and permission checks are done)
- fix remote notification when joining group through OStatus's remote subscribe form
2010-02-25 13:02:08 -08:00
Evan Prodromou
d53b4b9b84 save mainpage element for groups 2010-02-25 12:05:22 -05:00
Evan Prodromou
e6858d7203 modify group actions so they use Local_group to look up by nickname 2010-02-25 08:44:15 -05:00
Evan Prodromou
1bffe42413 Drop user-only requirement for subscribe action
I removed the check for local users in the subscribe button. I replaced
it with a more specific check for OMB 0.1 remote profiles, which you
can't use with this action.

I also took the opportunity to split the handle() method into
prepare() and handle(), and added PHPCS clean documentation.
2010-02-23 08:38:23 -05:00
Brion Vibber
d410df0406 OStatus group delivery initial implementation.
- added rel="ostatus:attention" links for group delivery
- added events for plugins to override group profile/permalink pages
- pulled Notice::saveGroups up to save-time so we can override;
  it's relatively cheap and gives us a clean list of target
  groups for distrib time even with customized delivery.
- fixed notice::getGroups to return group objects as expected
- added some doc on new parameters to Notice::saveNew
 - 'groups' list of group IDs to push to in place of parsing
- messages that come in via PuSH and contain local group targets
  are delivered to local group members
- messages that come in via PuSH and contain remote group targets
  are delivered to local members of the remote group

Todo:
- handle group posts that only come through Salmon
- handle conflicts in case something comes in both through Salmon and PuSH
- better source verification
- need a cleaner interface to look up groups by URI
- need a way to handle remote groups with conflicting names
2010-02-23 00:44:45 +00:00
Sarven Capadisli
c88507fe11 Merge branch 'testing' of git@gitorious.org:statusnet/mainline into testing 2010-02-22 17:08:54 +01:00
Evan Prodromou
13ad48fab3 Merge branch 'master' into testing 2010-02-22 11:04:11 -05:00
Evan Prodromou
5a6967db6c clear the site owner when profile changes 2010-02-22 11:03:56 -05:00
Sarven Capadisli
8ccc9e2c38 Added before and after event hooks for subscriptions content 2010-02-22 17:03:28 +01:00
Brion Vibber
3c61f45de1 Merge branch 'master' of gitorious.org:statusnet/mainline into testing 2010-02-21 18:56:41 -08:00
Brion Vibber
f6ebe81538 Performance fix for FriendFeed sup interface: MySQL query optimizer was doing a table scan on notice; explicit subquery makes it run much more efficiently, only scanning items within the period under consideration. Standard subquery should be PostgreSQL-compatible. 2010-02-21 15:21:18 -08:00
Brion Vibber
3e7a2a4014 Fix for doc action on systems that return false for globbing in a non-existing dir 2010-02-21 11:11:37 -08:00
Evan Prodromou
a3de4caf49 make sure argument to Fave::addNew() is a profile 2010-02-20 20:31:06 -05:00
Evan Prodromou
f3b08461bd Change to use TagURI::base() instead of common_config()
I changed the way that tag: URIs are minted, so we now use the right
base. Ideally most of these would use HTTP URIs instead, but for
now at least they use the right base.
2010-02-20 13:31:20 -05:00
Evan Prodromou
b0a75a2ab2 replace calls to subs_(un)subscribe_user with Subscription methods 2010-02-19 08:31:20 -05:00
Brion Vibber
880acb05b0 OStatus: temporary output mode hack for apitimelineuser until PuSH feed generation is updated to use the shared code instead of output buffering 2010-02-16 22:04:57 +00:00
Zach Copley
f3a82e787c Add OStatus PuSH hub and Salmon links back into user and group feeds 2010-02-12 19:02:27 -08:00
Zach Copley
506c2d7491 Initial upgraded Atom output for group timelines 2010-02-12 12:24:29 -08:00
Zach Copley
c465f675d9 Make Atom timelines in the API use Atom10feed 2010-02-11 13:56:05 -08:00
Zach Copley
e2c0f59414 Some upgrades to Atom output for OStatus 2010-02-11 13:56:05 -08:00
Zach Copley
ce3c3be1bf Utility classes for atom feeds 2010-02-11 13:56:05 -08:00
Brion Vibber
c4557d4d07 Merge branch 'master' of git@gitorious.org:statusnet/mainline into testing 2010-02-10 11:12:11 -08:00
Brion Vibber
8449256817 OStatus partial support for group subscriptions:
* detection of group feeds is currently a nasty hack based on presence of '/groups/' in URL -- should use some property on the feed?
* listing for the remote group is kinda cruddy; needs to be named more cleanly
* still need to establish per-author profiles (easier once we have the updated Atom code in)
* group delivery probably not right yet
* saving of group messages still triggering some weird behavior

Added support for since_id and max_id on group timeline feeds as a free extra. Enjoy!
2010-02-09 18:32:52 -08:00
Zach Copley
70d5f39ed6 Better checking for duplicate app names 2010-02-08 21:57:29 -08:00
Zach Copley
602b01a755 Merge branch 'testing' of gitorious.org:statusnet/mainline into testing
* 'testing' of gitorious.org:statusnet/mainline:
  Pull GeoRSS locations over OStatus feeds
  Allow scripts/decache.php to blow out cache for objects that don't exist (anymore).
  OStatus cleanup...
  readme and version for beta5
  Delete old Twitter user record when user changes screen name instead of updating. Simpler.
  Store Twitter screen_name, not name, for foreign_user.nickname when saving Twitter user.
  Actually store the timestamp on each nonce
  OAuth app name should not be null
  Fix issue with OAuth request parameters being parsed/stored twice when
  - Fix cache handling in TwitterStatusFetcher
  Added right margin for notice text. Helps Conversation notices look
  Confirm dialog for reset OAuth consumer key and secret button
  Always check for an OAuth request. This allows OAuth clients to set an
  Linkify notice source when posting from registered OAuth apps
  Suppress notice input box on OAuth authorization page
  Better token revocation
  Allow developers to delete OAuth applications
  OAuth app names should be unique.
  Prevents app statistic text from wrapping around avatar
  Sentence case for app statistics
2010-02-08 21:55:32 -08:00
Zach Copley
b56b154b51 Better checking for duplicate app names 2010-02-08 21:52:05 -08:00
Brion Vibber
bc4e843f39 Disable deprecated 'since' parameter on public_timeline API; causes performance problems. (since_id will work cleanly) 2010-02-08 19:22:55 -08:00
Brion Vibber
384387c9b0 OStatus cleanup...
* Treat linkless feed posts as status updates; drop the "New post:" prefix and quotes on them.
* Use stable user IDs for atom/rss2 feed links instead of unstable nicknames
* Pull Atom feed preferentially when subscribing -- can now put the remote user's profile page straight into the feed subscription form and get to the right place.
* Clean up naming for push endpoints
2010-02-08 14:58:12 -08:00
Brion Vibber
dc09453a77 First steps on converting FeedSub into the pub/sub basis for OStatus communications:
* renamed FeedSub plugin to OStatus
* now setting avatar on subscriptions
* general fixes for subscription
* integrated PuSH hub to handle only user timelines on canonical ID url; sends updates directly
* set $config['feedsub']['nohub'] = true to test w/ foreign feeds that don't have hubs (won't actually receive updates though)
* a few bits of code documentation
* HMAC support for verified distributions (safest if sub setup is on HTTPS)

And a couple core changes:
* minimizing HTML output for exceptions in API requests to aid in debugging
* fix for rel=self link in apitimelineuser when id given

This does not not yet include any of the individual subscription management (Salmon notifications for sub/unsub, etc) nor a nice UI for user subscriptions.
Needs some further cleanup to treat posts as status updates instead of link references.
2010-02-08 11:15:29 -08:00
Evan Prodromou
a092aac32d add events to fine-tune user deletion 2010-02-06 12:59:41 +01:00
Evan Prodromou
5fdcd88176 Moderator can make users admins of a group 2010-02-06 11:36:59 +01:00
Zach Copley
23802e58d6 Merge branch 'temp' 2010-02-05 03:19:12 +00:00
Zach Copley
4379027432 Fix issue with OAuth request parameters being parsed/stored twice when
calling /api/account/verify_credentials.:format
2010-02-05 03:18:45 +00:00