Commit Graph

2833 Commits

Author SHA1 Message Date
Zach Copley
15736ea435 Really make sure we return 'true' and 'false' strings for boolean vals in api/statusnet/config.:format. 2010-03-26 19:59:05 +00:00
Zach Copley
c9a3916c34 Really make sure we return 'true' and 'false' strings for boolean vals in api/statusnet/config.:format. 2010-03-26 19:58:26 +00:00
Sarven Capadisli
b4a4438abd Using unique @for, @id pair for jabber and sms options in subscriptions 2010-03-25 22:20:20 +01:00
Sarven Capadisli
321093886f Assigned an identifier for the representative user and group profile 2010-03-25 21:32:28 +01:00
Sarven Capadisli
9fe12be41e Using unique @for, @id pair for jabber and sms options in subscriptions 2010-03-24 21:34:53 +01:00
Julien C
a3da5b24c9 Misc small fixes, plus a new hook in tag.php 2010-03-23 23:02:17 -04:00
Brion Vibber
2ae61307bb Merge branch 'testing' of git@gitorious.org:statusnet/mainline into 0.9.x 2010-03-23 14:20:14 -07:00
Brion Vibber
7dc24b4ca7 FOAF was missing OStatus remote subscriptions, now fixed. 2010-03-23 13:10:23 -07:00
Brion Vibber
7277b59734 Merge branch 'master' of git@gitorious.org:statusnet/mainline into testing 2010-03-23 12:13:32 -07:00
Brion Vibber
44caa3a93f Consistently send Profiles into Fave::addNew() 2010-03-23 11:08:30 -07:00
Brion Vibber
533a3bf6a3 Consistently send Profiles into Fave::addNew() 2010-03-23 11:06:37 -07:00
Brion Vibber
7e2af3dcae Merge branch 'testing' of git@gitorious.org:statusnet/mainline into 0.9.x
Conflicts:
	plugins/OStatus/extlib/hkit/hkit.class.php
	plugins/OStatus/lib/discoveryhints.php
2010-03-19 15:51:22 -07:00
Brion Vibber
79ec565104 Merge branch 'master' of git@gitorious.org:statusnet/mainline into testing 2010-03-19 15:29:00 -07:00
Brion Vibber
8a221228eb Fix typo in public tag cloud query setup which caused the cutoff to get skipped. 2010-03-19 12:51:27 -07:00
Brion Vibber
2097e6a293 Fix typo in public tag cloud query setup which caused the cutoff to get skipped. 2010-03-19 12:50:34 -07:00
Zach Copley
348412f9c9 Allow admins to set a min site textlimit of 0 (unlimited) 2010-03-19 10:30:04 -07:00
Brion Vibber
3e2e88b0df Merge branch 'testing' of git@gitorious.org:statusnet/mainline into 0.9.x 2010-03-18 17:19:28 -07:00
Brion Vibber
01a1e882af Handle "forgot to upload an avatar on avatarsettings" a little more gracefully. 2010-03-18 17:18:01 -07:00
Zach Copley
e10d023d03 API - handle any exceptions thrown during notice save. The API was
occasionally spitting out HTML, which is hard for clients to deal
with.
2010-03-18 15:26:13 -07:00
Zach Copley
54c6dc090b Remove deprecated call-by-reference. Was causing a warning on Dreamhost. 2010-03-18 13:49:28 -07:00
Zach Copley
c09db79b95 Remove deprecated call-by-reference. Was causing a warning on Dreamhost. 2010-03-18 13:46:11 -07:00
Brion Vibber
67f2f01c5e Merge branch 'testing' into 0.9.x 2010-03-17 12:15:40 -07:00
Brion Vibber
b9fc4c24b4 Pulling the stub plugin panel back out; we'll flesh it out more for 1.0.x and see if we can make it easier to disable through the config file for now.
Revert "Stub plugins administration panel, allows for disabling/re-enabling plugins from the default plugins list."

This reverts commit d9a9fd3779.
2010-03-17 08:55:16 -07:00
Brion Vibber
d9a9fd3779 Stub plugins administration panel, allows for disabling/re-enabling plugins from the default plugins list. 2010-03-16 16:01:00 -07:00
Zach Copley
d1ea448c27 Always output a site logo via /api/statusnet/config.:format (so client devs have something to use) 2010-03-15 18:41:15 -07:00
Brion Vibber
441e52718e Background deletion of user accounts. Notices are deleted in chunks, then the user itself when they're all gone.
While deletion is in progress, the account is locked with the 'deleted' role, which disables all actions with rights control.

Todo:
* Pretty up the notice on the profile page about the pending delete. Show status?
* Possibly more thorough account disabling, such as disallowing all use for login and access.
* Improve error recovery; worst case is that an account gets left locked in 'deleted' state but the queue jobs have gotten dropped out. This would leave the username in use and any undeleted notices in place.
2010-03-15 16:08:00 -07:00
Zach Copley
40cde2f710 Initial Twitpic-like media upload endpoint /api/statusnet/media/upload 2010-03-15 22:16:33 +00:00
Brion Vibber
c89e1865f7 Merge branch 'testing' into 0.9.x 2010-03-15 12:45:38 -07:00
Brion Vibber
e9b671e3af Consolidate and patch up redirection to remote notices.
Now using the correct order consistently (URL, then URI if http/s), and as a niceness measure skipping the redirect if the only URL we have stored is the local one. (Could happen if remote OStatus feed has tag URIs and no alt link.)
2010-03-15 11:38:37 -07:00
Sarven Capadisli
5b078eadd9 Assigned an identifier for the representative user and group profile 2010-03-13 16:48:21 -05:00
Brion Vibber
d2c4ff5f7c Ticket 2239: white space before apostrophe in metadata of status of notice 2010-03-13 11:54:04 -08:00
Brion Vibber
f72eb17304 Merge commit 'origin/testing' into 0.9.x 2010-03-12 09:41:49 -08:00
Zach Copley
13556e7ba9 Add Atom self link to tag timeline 2010-03-12 04:08:31 +00:00
Zach Copley
d31004653f Add Atom self link to favorites timeline 2010-03-12 03:42:00 +00:00
Zach Copley
4b41a8ebbf - Output correct content header for Atom output in mentions timeline
- Add self link
2010-03-12 03:27:37 +00:00
Zach Copley
849d0b5dcd Output Atom self link in home timeline 2010-03-12 03:15:51 +00:00
Zach Copley
0444cc7bfb Calculate Atom self link for friends timeline 2010-03-12 02:18:53 +00:00
Brion Vibber
b9e9030201 Fixes for password recovery; lookups for unconfirmed addresses were failing or inconsistent (using staticGet with unindexed fields, which would not get decached correctly and could get confused if multiple pending confirmations of different types are around).
Also uses updated email functions to include extra headers and ensure the proper address is used.
2010-03-11 18:01:50 -08:00
Zach Copley
d10cb89f6a - Output correct content type header for public timeline Atom feed
- Also calculate Atom link and self links properly
2010-03-12 02:00:53 +00:00
Zach Copley
e1537d8387 More generalized method for calculating Atom rel="self" links 2010-03-12 01:40:52 +00:00
Zach Copley
212b20e876 Add self link to user and group rss2 feeds 2010-03-11 23:43:03 +00:00
Sarven Capadisli
20cb9fa28f foaf:holdsAccount is deprecated in favour of foaf:account. See
http://lists.foaf-project.org/pipermail/foaf-dev/2009-December/009903.html
for the news. Patch by Toby Inkster <mail@tobyinkster.co.uk>.
2010-03-11 17:16:37 -05:00
Zach Copley
2a426f24c0 Allow site-specific doc files 2010-03-10 22:27:28 +00:00
Zach Copley
4741683298 Allow site-specific doc files 2010-03-10 22:05:28 +00:00
Brion Vibber
6c4ade4251 Merge branch 'testing' into 0.9.x 2010-03-09 11:27:53 -08:00
Michele
b98f956c6b API config return textlimit value 2010-03-09 15:39:40 -08:00
Evan Prodromou
0d66dc543d an otp is a real login 2010-03-08 18:06:21 -05:00
Zach Copley
421041c51a No need to pass in $this->limit and $this-tag 2010-03-05 16:53:48 -08:00
Zach Copley
d59284d42d No need to pass in $this->limit and $this-tag 2010-03-05 16:52:15 -08:00
Zach Copley
4ada86560c Fix undefined variable error and some other cleanup 2010-03-05 16:42:27 -08:00
Christopher Vollick
1a03820628 UserRSS Didn't Use the Tag Propery.
This meant that server.com/user/tag/TAG/rss just returned all user data.
That was incorrect.
2010-03-05 16:42:17 -08:00
Zach Copley
f653c3b914 Fix undefined variable error and some other cleanup 2010-03-05 16:40:35 -08:00
Christopher Vollick
43cc24a0cc UserRSS Didn't Use the Tag Propery.
This meant that server.com/user/tag/TAG/rss just returned all user data.
That was incorrect.
2010-03-05 16:29:14 -08:00
Zach Copley
ab8aa67008 Fix for blank RSS1 tag feeds 2010-03-05 16:23:28 -08:00
Zach Copley
f39d3e34bb Fix for blank RSS1 tag feeds 2010-03-05 16:20:33 -08:00
Rasmus Lerdorf
086d517b87 Fix a few typos 2010-03-04 23:30:04 -05:00
Brion Vibber
f969d6349c Merge branch 'testing' into 0.9.x
Conflicts:
	db/08to09.sql
2010-03-04 10:16:59 -08:00
Brion Vibber
9f861e9d89 Fix on sitenotice admin panel save 2010-03-04 06:39:46 -08:00
Brion Vibber
b218aee94e Merge commit 'origin/testing' into 0.9.x
Conflicts:
	lib/action.php
	lib/adminpanelaction.php
2010-03-04 06:07:28 -08:00
Zach Copley
61de37ec7b Move snapshot configuration to its own admin panel
Turn on with: $config['admin']['panels'][] = 'snapshot';
2010-03-03 16:49:14 -08:00
Brion Vibber
8436306d28 Fix notice warning in RSS friends timeline 2010-03-03 16:38:51 -08:00
Brion Vibber
9fadf8da11 Put all required field setup into AtomUserNoticeFeed and AtomGroupNoticeFeed, consolidating some code. (RSS feeds pulling title, logo etc from the Atom data structure so we don't dupe it.)
OStatus now calling the feed classes directly instead of faking a call into the API, should be less flakey.
2010-03-03 16:33:20 -08:00
Brion Vibber
4a2511139e Initial user role controls on profile pages, for owner to add/remove administrator and moderator options.
Buttons need to be themed.
2010-03-03 15:43:49 -08:00
Zach Copley
337b1aaaa1 Site-wide notice text admin panel 2010-03-03 14:37:30 -08:00
Sarven Capadisli
2a96d1d59d Merge branch 'testing' of git@gitorious.org:statusnet/mainline into testing 2010-03-03 16:27:19 -05:00
Sarven Capadisli
6ff994b14c Fix to group join event position. 2010-03-03 16:25:17 -05:00
Brion Vibber
c04c8ae59a quick fix: skip notice from unused variable on group atom feed generation 2010-03-03 13:00:09 -08:00
Sarven Capadisli
13713a09bb Merge branch 'testing' of git@gitorious.org:statusnet/mainline into testing 2010-03-03 15:31:44 -05:00
Sarven Capadisli
2ce9ae004d Added event hooks for before and after user groups content 2010-03-03 15:29:51 -05:00
Zach Copley
09169d6f3c Merge branch 'testing' of gitorious.org:statusnet/mainline into testing
* 'testing' of gitorious.org:statusnet/mainline:
  Language setting fixes:
2010-03-03 12:11:20 -08:00
Zach Copley
82ea0f7884 Merge branch 'testing' of gitorious.org:statusnet/mainline into testing
* 'testing' of gitorious.org:statusnet/mainline:
  subscribers list wasn't firing correct events
2010-03-03 12:10:48 -08:00
Brion Vibber
0881eba80e Language setting fixes:
- switch 'en_US' to 'en', fixes the "admin panel switches to Arabic" bug
- tweak setting descriptions to clarify that most of the time we'll be using browser language
- add a backend switch to disable language detection (should this be exposed to ui?)
2010-03-03 12:10:43 -08:00
Zach Copley
2f167f2663 Fix syntax errors 2010-03-03 12:10:21 -08:00
Evan Prodromou
c82efb7fd8 subscribers list wasn't firing correct events 2010-03-03 15:09:07 -05:00
Sarven Capadisli
b65ee23e82 Added event hooks for group subscribe 2010-03-03 12:01:38 -05:00
Brion Vibber
ddf3614c84 Merge branch 'testing' of git@gitorious.org:statusnet/mainline into 0.9.x 2010-03-02 13:38:10 -08:00
Brion Vibber
72460091dd Merge branch 'master' of git@gitorious.org:statusnet/mainline into testing 2010-03-02 12:21:48 -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
Sarven Capadisli
350e1289af Added event hook for before and after personal timeline content 2010-03-02 12:33:25 -05:00
Siebrand Mazeland
767d49495d Add translator documentation
Signed-off-by: Siebrand Mazeland <s.mazeland@xs4all.nl>
2010-03-02 17:45:15 +01:00
Siebrand Mazeland
d08fd8254a Document 404 "Page not found" server error for translators. 2010-03-02 17:30:22 +01:00
Siebrand Mazeland
53ac232f91 Documented all but one UI string in actions/accessadminpanel.php to get a feel on what documenting them in code actually means.
Signed-off-by: Siebrand Mazeland <s.mazeland@xs4all.nl>
2010-03-02 17:23:40 +01:00
Siebrand Mazeland
284b1dc014 * Change translator documentation using _m() as designed together with Brion
* Add more translator documentation

Signed-off-by: Siebrand Mazeland <s.mazeland@xs4all.nl>
2010-03-02 16:38:36 +01:00
Brion Vibber
493b5479c1 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-01 16:43:36 -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
Siebrand Mazeland
8e102da76c Add contextual documentation to allow better localisation. 2010-03-01 22:28:38 +01:00
Siebrand Mazeland
63ff9d86b8 Add content for all 3 Send buttons (2 are the same as far as I can tell) 2010-03-01 15:57:27 +01:00
Siebrand Mazeland
78ea4c711e Add context for Send button on invite.php 2010-03-01 15:49:53 +01:00
Brion Vibber
9b366547d7 Merge branch 'testing' of gitorious.org:statusnet/mainline into 0.9.x 2010-02-26 12:33:50 -08: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
Brion Vibber
8dfc8f1635 Merge branch 'testing' into 0.9.x 2010-02-26 09:35:28 -08: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
Brion Vibber
59be4b8cae Merge branch 'testing' of gitorious.org:statusnet/mainline into 0.9.x 2010-02-24 15:47:51 -08: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
85528ccb1f Merge branch 'testing' of gitorious.org:statusnet/mainline into 0.9.x 2010-02-21 11:12:56 -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
5a6cbb248f Merge branch 'testing' into 0.9.x 2010-02-17 10:14:08 -08: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
Brion Vibber
d5cbfe8071 Merge branch 'testing' into 0.9.x
Conflicts:
	lib/iomaster.php
2010-02-16 09:25:09 -08: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
Brion Vibber
f8a459a88a Merge branch 'testing' of git@gitorious.org:statusnet/mainline into 0.9.x 2010-02-12 15:32:12 -08:00
Zach Copley
506c2d7491 Initial upgraded Atom output for group timelines 2010-02-12 12:24:29 -08:00
Brion Vibber
122c8677b7 Merge branch 'testing' of gitorious.org:statusnet/mainline into 0.9.x 2010-02-12 11:18:35 -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
2600ad9643 Better checking for duplicate app names 2010-02-08 21:56:47 -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
b2e8d8407c Merge branch 'testing' of git@gitorious.org:statusnet/mainline into 0.9.x 2010-02-08 15:48:52 -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
ff509feff0 Updated /api/statusnet/config.xml to show new config params potentially relevant to client devs 2010-02-05 13:40:00 -08:00
Michele
b65ed56c7a API config return textlimit value 2010-02-05 13:12:49 -08: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
Zach Copley
7931875bbb Confirm dialog for reset OAuth consumer key and secret button 2010-02-05 03:18:44 +00:00
Zach Copley
e9ecd8062a Suppress notice input box on OAuth authorization page 2010-02-05 03:18:44 +00:00
Zach Copley
b31c79cee1 Better token revocation 2010-02-05 03:18:43 +00:00
Zach Copley
e495ac356c Allow developers to delete OAuth applications 2010-02-05 03:18:43 +00:00
Zach Copley
dc183f23cf OAuth app names should be unique. 2010-02-05 03:18:43 +00:00
Sarven Capadisli
52397f1474 Sentence case for app statistics 2010-02-05 03:18:43 +00:00
Zach Copley
6cf5df505a Fix issue with OAuth request parameters being parsed/stored twice when
calling /api/account/verify_credentials.:format
2010-02-05 02:09:50 +00:00
Zach Copley
8d320d7cc2 Merge branch 'testing' of git@gitorious.org:statusnet/mainline into testing 2010-02-05 02:08:37 +00:00
Zach Copley
5e0cc07b0e Fix issue with OAuth request parameters being parsed/stored twice when
calling /api/account/verify_credentials.:format
2010-02-05 01:13:23 +00:00
Eric Helgeson
2eadeca745 Missed change when refactoring groups. Thanks macno 2010-02-04 14:00:46 -08:00
Eric Helgeson
37f3a3d558 Missed change when refactoring groups. Thanks macno 2010-02-04 14:00:06 -08:00
Brion Vibber
0d0749e224 Merge branch 'testing' of gitorious.org:statusnet/mainline into 0.9.x 2010-02-04 13:12:18 -08:00
Brion Vibber
ed8553eea8 Merge branch 'master' of gitorious.org:statusnet/mainline into testing 2010-02-04 13:11:41 -08:00
Brion Vibber
239b88025e Should fix spurious 'nickname taken' and 'email taken' errors on registration. Form's checks for existing nicks & emails would incorrectly return true on the second lookup due to bad interaction with negative caching.
(was checking $obj !== false but we return null now on negative cache hits, with false for cache misses)
2010-02-04 13:08:34 -08:00
Brion Vibber
c59eee72a8 Merge branch 'testing' of gitorious.org:statusnet/mainline into 0.9.x 2010-02-04 12:23:56 -08:00
Brion Vibber
a020e23086 Merge branch 'master' of gitorious.org:statusnet/mainline into testing 2010-02-04 11:56:07 -08:00
Brion Vibber
5a1cbdc6f1 Add time-based cutoffs for public tag cloud, favorited lists to speed up those queries.
Defaulting to only looking at last 90 days of activity, can be adjusted up or down.

$config['tag']['cutoff'] = 86400 * 90;
$config['popular']['cutoff'] = 86400 * 90;

Per-user and per-group tag clouds do not use the cutoff (and it doesn't help with indexing on them).
2010-02-04 11:06:01 -08:00
Sarven Capadisli
48782ee1d9 Fixes minor remote subscription profile layout 2010-02-04 17:55:24 +01:00
Sarven Capadisli
d2dc3e41c5 Fixes minor remote subscription profile layout 2010-02-04 16:27:34 +00:00
Zach Copley
ac8a4a7e56 Confirm dialog for reset OAuth consumer key and secret button 2010-02-03 05:43:08 +00:00
Zach Copley
03e8ba144e Confirm dialog for reset OAuth consumer key and secret button 2010-02-03 01:43:59 +00:00
Brion Vibber
f4c81fa1e1 Merge branch 'testing' of git@gitorious.org:statusnet/mainline into 0.9.x 2010-02-02 09:57:50 -08:00
Zach Copley
3906713b2a Suppress notice input box on OAuth authorization page 2010-02-02 08:50:45 +00:00
Zach Copley
8191273078 Better token revocation 2010-02-02 08:50:33 +00:00
Zach Copley
f0875ceea1 Allow developers to delete OAuth applications 2010-02-02 08:50:18 +00:00
Zach Copley
df2a081265 OAuth app names should be unique. 2010-02-02 08:50:01 +00:00
Zach Copley
c03883fc88 Suppress notice input box on OAuth authorization page 2010-02-02 07:59:28 +00:00
Zach Copley
f1094185e4 Better token revocation 2010-02-02 07:35:54 +00:00
Zach Copley
38bebb4c0d Allow developers to delete OAuth applications 2010-02-02 06:26:03 +00:00
Sarven Capadisli
803c6d954c Revert "Removed hAtom pattern from registration page."
This reverts commit d6fe865133.

Screws up list rendering when registration is complete.
2010-02-01 23:10:44 +00:00
Zach Copley
59d16cf16a OAuth app names should be unique. 2010-02-01 20:58:30 +00:00
Sarven Capadisli
95e70f5e53 Merge branch 'testing' of git@gitorious.org:statusnet/mainline into testing 2010-02-01 20:32:48 +01:00
Sarven Capadisli
0e49b3525d Sentence case for app statistics 2010-02-01 20:31:56 +01:00
Brion Vibber
c14ac57b19 Merge branch 'testing' of git@gitorious.org:statusnet/mainline into 0.9.x 2010-02-01 10:30:45 -08:00
Brion Vibber
1625a13b93 Merge remote branch 'statusnet/master' into testing 2010-02-01 09:04:13 -08:00
Brion Vibber
6159edcebb Improve name validation checks on local File references 2010-02-01 08:49:59 -08:00
Evan Prodromou
0787daff2c Merge branch 'testing' of git@gitorious.org:statusnet/mainline into testing 2010-02-01 11:49:50 -05:00
Brion Vibber
d9e7d4c4ad Merge branch '0.9.x' of gitorious.org:statusnet/mainline into 0.9.x 2010-02-01 08:49:19 -08:00
Brion Vibber
84ab0156b4 Improve name validation checks on local File references 2010-02-01 08:48:31 -08:00
Evan Prodromou
7390b1d1ac Merge branch 'master' into testing 2010-02-01 11:21:50 -05:00
Evan Prodromou
57d8f22a3a fix local file include vulnerability in doc.php
Conflicts:

	actions/doc.php
2010-02-01 11:20:22 -05:00
Evan Prodromou
d264db6119 fix local file include vulnerability in doc.php
Conflicts:

	actions/doc.php
2010-02-01 11:10:36 -05:00
Sarven Capadisli
d6fe865133 Removed hAtom pattern from registration page. 2010-02-01 13:14:35 +01:00
Evan Prodromou
779204b194 Merge branch 'testing' into 0.9.x
Conflicts:
	actions/apioauthauthorize.php
2010-01-31 15:27:58 -05:00
Evan Prodromou
30268cff78 Add Really Simple Discovery (RSD) support
Anil Dash suggested that all implementers of the Twitter API include
support for the remedial RSD format. This commit adds an RSD action
that returns the API root and additional API data to help client
developers discover and use our Twitter-compatible API.

http://dashes.com/anil/2009/12/the-twitter-api-is-finished.html
http://tales.phrasewise.com/rfc/rsd
2010-01-31 15:16:59 -05:00
Evan Prodromou
dc62246443 Add a robots.txt URL to the site root
Adds a robots.txt file to the site root. Defaults defined by
'robotstxt' section of config. New events StartRobotsTxt and
EndRobotsTxt to let plugins add information. Probably not
useful if path is not /, but won't hurt anything, either.
2010-01-31 10:12:26 -05:00
Evan Prodromou
def5d56ce1 add lat, lon, location and remove closing tag from geocode.php 2010-01-30 12:47:21 -05:00
Evan Prodromou
1b7cc3393a Use passed-in lat long in geocode.php
Don't rewrite the lat-long for a location in geocode.php.
2010-01-30 12:43:00 -05:00
Zach Copley
5868511716 Move sessions settings to its own panel 2010-01-28 22:06:01 -08:00
Zach Copley
440ee00b1e Move sessions settings to its own panel 2010-01-28 22:04:14 -08:00
Sarven Capadisli
17f2096d70 Removed avatar from repeat of username (matches noticelist) 2010-01-28 15:08:33 +01:00
Sarven Capadisli
5b1245a32a Removed avatar from repeat of username (matches noticelist) 2010-01-28 15:06:03 +01:00
Zach Copley
5182cc686d Numbered format specifiers 2010-01-28 01:39:18 +00:00
Zach Copley
420ae06faf These API methods should return true for ->isReadOnly($args)! 2010-01-28 00:44:55 +00:00
Zach Copley
9589985e29 Merge branch '0.9.x' of git@gitorious.org:statusnet/mainline into 0.9.x 2010-01-28 00:43:24 +00:00
Zach Copley
77aed28f17 These API methods should return true for ->isReadOnly($args)! 2010-01-28 00:40:44 +00:00
Siebrand Mazeland
fcc48155ed L10n updates:
* app -> application
* number parameters when using more than one in a message
2010-01-28 01:32:48 +01:00
Zach Copley
78079f34e2 Merge branch 'testing' into -1.9.x
* testing: (130 commits)
  HTTP auth provided is evaluated even if it's not required
  Rename rc3to09.sql to rc3torc4.sql to avoid confusion if we add a last-minute change after this!
  Add new oauth tables and modifications to 'consumer' table for rc4
  Centred leaderboard ad
  camelcase the uap param names
  move leaderboard to after the header
  Moved rectangle ad into aside and leaderboard to the right in header.
  Aligning wide skyscraper to the right instead of left
  CSS ids and classes fixed in UAPPlugin
  wrong height for rectangle in BlankAd
  Add the moved BlankAdPlugin
  make BlankAd dir and change to use a 1x1 image
  move BlankAdPlugin to its own dir
  Add BlankAdPlugin to test ad layout in different themes
  make uapplugin an abstract class
  move UAP plugin to core
  Lowercased switch cases in UAP Plugin
  Plugin for Universal Ad Package. Outputs four most widely used ad types.
  Add persistent:true property to Stomp messages so ActiveMQ doesn't decide to discard them even though persistence is enabled on the broker. :) (Thanks Aric!)
  quick fix: use common_path() on realtime update JS so it works with the new JS path code (will pull from main server for now)
  ...

Conflicts:
	actions/apioauthaccesstoken.php
	actions/apioauthauthorize.php
	actions/apioauthrequesttoken.php
	actions/editapplication.php
	actions/newapplication.php
	lib/apiauth.php
	lib/queuemanager.php
	lib/router.php
2010-01-27 14:27:22 -08:00
Evan Prodromou
c52951cef5 Optionally set a separate Javascript server and path
We have about 10-12 JavaScript pages per Web page. They usually
are based on the same server as the Web pages, but since they're
static files, it makes sense to offload them to a lite server that
handles static files well.

This commit lets you set a separate Javascript server and path for the
default Javascript code in StatusNet.

Squashed commit of the following:

commit 139d1622fdafe5ad00c820224416d9021efc3234
Author: Evan Prodromou <evan@status.net>
Date:   Wed Jan 27 11:30:24 2010 -0500

    modules that call htmloutputter::script() don't prescribe js/ path

commit c6ca3174af73efed55eaed5ff1e2a3bdc77d2d87
Author: Evan Prodromou <evan@status.net>
Date:   Wed Jan 27 11:28:07 2010 -0500

    configurable server and path for javascript files
2010-01-27 11:37:22 -05:00
Zach Copley
756da7bc51 s/LOG_WARN/LOG_WARNING/ 2010-01-27 08:45:56 +00:00
Zach Copley
923b7de3c6 - Check for read-only vs. read-write access to protected API resources (OAuth)
- Some cleanup
2010-01-27 08:41:26 +00:00
Siebrand Mazeland
97e1acdc32 Fix casing for HMAC-SHA1. 2010-01-27 00:56:45 +00:00
Siebrand Mazeland
492950b784 Fix inconsistent title case in page title 2010-01-27 00:56:31 +00:00
Zach Copley
aad42427cc New access admin panel for site registration settings 2010-01-26 15:56:19 -08:00
Zach Copley
03685bba1e - Remove redudant/unused 'server' setting from site admin panel
- Move 'fancy urls' checkbox from site admin panel to paths admin panel
2010-01-26 15:11:09 -08:00
Evan Prodromou
663e4e02a1 Merge branch 'master' into testing
Conflicts:
	lib/queuemanager.php
2010-01-25 18:13:09 -05:00
Evan Prodromou
b6aa1511eb Merge branch 'master' into 0.9.x 2010-01-25 18:10:59 -05:00
Evan Prodromou
e26a843caf Offload inbox updates to a queue handler to speed up posting online
Moved much of the writing that happens when posting a notice to a new
queuehandler, distribqueuehandler. This updates tags, groups, replies
and inboxes at queue time (or at Web time, if queues are disabled).

To make this work well, I had to break up the monolithic
Notice::blowCaches() and make cache blowing happen closer to where
data is updated.

Squashed commit of the following:

commit 5257626c62750ac4ac1db0ce2b71410c5711cfa3
Author: Evan Prodromou <evan@status.net>
Date:   Mon Jan 25 14:56:41 2010 -0500

    slightly better handling of blowing tag memory cache

commit 8a22a3cdf6ec28685da129a0313e7b2a0837c9ef
Author: Evan Prodromou <evan@status.net>
Date:   Mon Jan 25 01:42:56 2010 -0500

    change 'distribute' to 'distrib' so not too long for dbqueue

commit 7a063315b0f7fad27cb6fbd2bdd74e253af83e4f
Author: Evan Prodromou <evan@status.net>
Date:   Mon Jan 25 01:39:15 2010 -0500

    change handle_notice() to handle() in distributqueuehandler

commit 1a39ccd28b9994137d7bfd21bb4f230546938e77
Author: Evan Prodromou <evan@status.net>
Date:   Mon Jan 25 16:05:25 2010 -0500

    error with queuemanager

commit e6b3bb93f305cfd2de71a6340b8aa6fb890049b7
Author: Evan Prodromou <evan@status.net>
Date:   Mon Jan 25 01:11:34 2010 -0500

    Blow memcache at different point rather than one big function for Notice class

commit 94d557cdc016187d1d0647ae1794cd94d6fb8ac8
Author: Evan Prodromou <evan@status.net>
Date:   Mon Jan 25 00:48:44 2010 -0500

    Blow memcache at different point rather than one big function for Notice class

commit 1c781dd08c88a35dafc5c01230b4872fd6b95182
Author: Evan Prodromou <evan@status.net>
Date:   Wed Jan 20 08:54:18 2010 -0500

    move broadcasting and distributing to new queuehandler

commit da3e46d26b84e4f028f34a13fd2ee373e4c1b954
Author: Evan Prodromou <evan@status.net>
Date:   Wed Jan 20 08:53:12 2010 -0500

    Move distribution of notices to new distribute queue handler
2010-01-25 18:08:21 -05:00
Evan Prodromou
089305ac7a fix interpolation of positional arguments to sprintf in tag action 2010-01-24 22:59:22 -05:00
Evan Prodromou
a9da43a416 fix interpolation of positional arguments to sprintf in show group 2010-01-24 22:57:33 -05:00
Evan Prodromou
019dad95e1 fix interpolation of positional arguments to sprintf in show favorites 2010-01-24 22:56:41 -05:00
Evan Prodromou
73fdec6c12 fix interpolation of positional arguments to sprintf in usergroups 2010-01-24 22:55:29 -05:00
Evan Prodromou
9077db00a5 fix interpolation of positional arguments to sprintf in inbox 2010-01-24 22:54:25 -05:00
Evan Prodromou
02526f1100 fix interpolation of positional arguments to sprintf in outbox 2010-01-24 22:53:29 -05:00
Evan Prodromou
fc7afed924 fix interpolation for positional arguments in replies 2010-01-24 22:52:03 -05:00
Evan Prodromou
e400437d57 fix interpolation for positional arguments in showstream 2010-01-24 22:50:07 -05:00
Zach Copley
4daf76212a - Had to remove checking read vs. read-write in OAuth authenticated methods
- Will now pick up source attr from OAuth app
2010-01-25 00:51:56 +00:00
Zach Copley
9e7f47652d Revoke access token UI 2010-01-24 16:36:05 -08:00
Sarven Capadisli
dbcbc2fe7f Changed legend text from Login to Account because it is not really
logging iny
2010-01-24 16:36:05 -08:00
Sarven Capadisli
6d58ef4abb Updated apioauthauthorize markup and styles 2010-01-24 16:36:05 -08:00
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