Brion Vibber [Mon, 22 Nov 2010 19:10:10 +0000 (11:10 -0800)]
Fixes for delete_status_network.sh:
* add some sanity checking: abort on failures instead of plodding through
* add some progress / error output
* fetch the target database server name from the status_network entry and use that to target the DROP DATABASE
Note that database names and other overrides in status_network entry may still not be seen.
Brion Vibber [Sat, 20 Nov 2010 00:12:28 +0000 (16:12 -0800)]
Fix ticket #2700: some numeric IDs were misinterpreted as hex numbers instead of strings when '0x123' passed in.
Switched from is_numeric() to a custom self::is_decimal() which is more strict.
This makes our behavior match Twitter's API a bit better, so eg this:
http://identi.ca/api/statuses/home_timeline/0x6d686b.xml
should now be equivalent to:
http://identi.ca/api/statuses/home_timeline.xml?screen_name=0x6d686b
instead of:
http://identi.ca/api/statuses/home_timeline.xml?user_id=
7170155
Brion Vibber [Fri, 19 Nov 2010 23:51:08 +0000 (15:51 -0800)]
Ticket #2724: gracefully handle attempts to delete or fave/unfave a remote Twitter notice if a failure occurs.
Most annoying error case being where the notice was already faved or deleted on Twitter! :)
Such errors will now just fail out and log a note to the syslog -- the rest of what we were doing will continue on unhindered, so you can still delete, favorite, etc and it just won't sync the info over in that case.
Brion Vibber [Fri, 19 Nov 2010 23:30:52 +0000 (15:30 -0800)]
Ticket #2796: don't allow arbitrary overriding of the 'action' class and other parameters pulled from the URL mapper.
This protects against oddities such as manual invocation of the ClientError action, which can spoof error messages.
Brion Vibber [Fri, 19 Nov 2010 22:00:22 +0000 (14:00 -0800)]
Ticket #1987: support since_id on API notice search methods.
max_id is not yet implemented, as it'll need support added to the search backends. (since_id we get 'for free' by just cropping off the list, it'll do for now)
Brion Vibber [Fri, 19 Nov 2010 20:39:07 +0000 (12:39 -0800)]
Ticket #2441: fix deletion of avatars when a profile is deleted.
Code was doing a batch call to $avatar->delete() which fails to properly engage the file deletion code. Calling the existing profile->delete_avatars() function deletes them individually, which makes it all work nice again.
Brion Vibber [Fri, 19 Nov 2010 19:56:03 +0000 (11:56 -0800)]
Ticket #2899: clean up inbox/outbox DM form a bit:
- "To" drop-down list now defaults to showing "Select recipient:" instead of the first person on your list, reducing liklihood of accidentally sending a message to the wrong person.
- When there are no mutual subscribers to send to, instead of an empty list the list now shows 'No mutual subscribers.'
In both cases, attempting to send when the default is selected displays an error message.
I'm not disabling form elements in part because our themes right now don't show disabled button state correctly; we might want to tighten that up a bit more once fixed.
Brion Vibber [Thu, 18 Nov 2010 22:40:05 +0000 (14:40 -0800)]
scripts/deletegroup.php -- basic CLI script to delete a group by id or local nickname. Like deleteuser.php, this can be used in batch runs by providing the -y override.
Brion Vibber [Thu, 18 Nov 2010 22:30:00 +0000 (14:30 -0800)]
Fix regression in PopularNoticeSection: tag parameter was broken, causing sidebar on tag pages to show untagged favorites.
Brion Vibber [Tue, 16 Nov 2010 19:13:52 +0000 (11:13 -0800)]
Ticket 2895: exclude silenced users from popular notice lists
Brion Vibber [Tue, 16 Nov 2010 19:10:32 +0000 (11:10 -0800)]
Prep for ticket #2895: consolidate common code from PopularNoticeList and FavoritedAction for fetching popular notice lists
Brion Vibber [Tue, 16 Nov 2010 01:45:58 +0000 (17:45 -0800)]
Forgot to commit the JS for ModPlus. :)
Brion Vibber [Tue, 16 Nov 2010 01:32:33 +0000 (17:32 -0800)]
visual cleanup on ModPlus remote profile info popup menu
Brion Vibber [Tue, 16 Nov 2010 00:38:18 +0000 (16:38 -0800)]
Tweak remote profile action: hide stats from sidebar, tweak wording on remote notice
Brion Vibber [Tue, 16 Nov 2010 00:12:16 +0000 (16:12 -0800)]
RemoteProfileAction cleanup:
- meta robots to prevent spidering
- a little notice if silenced
Brion Vibber [Mon, 15 Nov 2010 23:57:57 +0000 (15:57 -0800)]
visual tweaks for RemoteProfileAction
Brion Vibber [Mon, 15 Nov 2010 23:40:07 +0000 (15:40 -0800)]
RemoteProfileAction: redirect to the regular user profile page if given a local user.
Brion Vibber [Mon, 15 Nov 2010 23:39:42 +0000 (15:39 -0800)]
Workaround for display of Twitter remote users in remoteprofile (ModPlus plugin): use 73px avatar if no 96px present
Brion Vibber [Mon, 15 Nov 2010 23:34:12 +0000 (15:34 -0800)]
Stub RemoteprofileAction to show the standard profile header stuff for offsite users -- provides a way to get at the mod & block controls for remote users.
Brion Vibber [Mon, 15 Nov 2010 23:32:57 +0000 (15:32 -0800)]
some User -> Profile cleanup to help in adapting the profile page action to show stuff for remote users. Subscriptions, groups, roles, etc are all on profiles now so go ahead and use em.
Brion Vibber [Mon, 15 Nov 2010 22:15:41 +0000 (14:15 -0800)]
Stub ModPlus plugin: will hold experimental UI improvements for mod actions
Brion Vibber [Mon, 15 Nov 2010 21:26:42 +0000 (13:26 -0800)]
clear_jabber.php script to clear confirmed jabber/xmpp addresses from one or more accounts
Brion Vibber [Tue, 2 Nov 2010 21:03:50 +0000 (14:03 -0700)]
fix syntax error introduced in i18n tweaks: newgroup action
Brion Vibber [Fri, 12 Nov 2010 21:34:04 +0000 (13:34 -0800)]
Revert "Missing one close-paren in newgroup.php" - incorrect fix for paren bug
This reverts commit
3afb031d9270a29db7f1ac4a964bb4b796759827.
Brion Vibber [Fri, 12 Nov 2010 21:06:41 +0000 (13:06 -0800)]
Fix for failure edge case in TwitterBridge outgoing repeat/retweets.
When the retweet failed with a 403 error (say due to it being a private tweet, which can't be retweeted) we would end up mishandling the return value from our internal error handling.
Instead of correctly discarding the message and closing out the queue item, we ended up trying to save a bogus twitter<->local ID mapping, which threw another exception and lead the queue system to re-run it.
- Fixed the logic check and return values for the retweet case in broadcast_twitter().
- Added doc comments explaining the return values on some functions in twitter.php
- Added check on Notice_to_status::saveNew() for empty input -- throw an exception before we try to actually insert into db. :)
Evan Prodromou [Fri, 12 Nov 2010 16:46:45 +0000 (11:46 -0500)]
don't try to initialize the mapstraction canvas if it doesn't exist
Zach Copley [Thu, 11 Nov 2010 18:33:26 +0000 (10:33 -0800)]
Fix missing close of comment block
Brion Vibber [Wed, 10 Nov 2010 23:26:18 +0000 (15:26 -0800)]
Add error logging for a couple send-fail cases in XMPP out
Evan Prodromou [Tue, 9 Nov 2010 22:08:11 +0000 (17:08 -0500)]
Missing one close-paren in newgroup.php
Evan Prodromou [Tue, 9 Nov 2010 17:53:57 +0000 (12:53 -0500)]
session table was missing from upgrade scripts
Brion Vibber [Fri, 29 Oct 2010 21:17:18 +0000 (14:17 -0700)]
README bump for 0.9.6 final
Brion Vibber [Fri, 29 Oct 2010 18:22:35 +0000 (11:22 -0700)]
Merge branch 'master' into 0.9.x
Evan Prodromou [Fri, 29 Oct 2010 15:14:00 +0000 (11:14 -0400)]
Merge remote branch 'gitorious/master'
Evan Prodromou [Fri, 29 Oct 2010 15:13:33 +0000 (11:13 -0400)]
add a hack to show ads on single-notice pages
Brion Vibber [Thu, 28 Oct 2010 23:25:28 +0000 (16:25 -0700)]
Merge remote branch 'origin/0.9.x' into 0.9.x
Siebrand Mazeland [Thu, 28 Oct 2010 23:21:42 +0000 (01:21 +0200)]
Localisation updates from http://translatewiki.net
Brion Vibber [Thu, 28 Oct 2010 20:01:10 +0000 (13:01 -0700)]
Merge branch 'master' into 0.9.x
Brion Vibber [Thu, 28 Oct 2010 19:58:30 +0000 (12:58 -0700)]
Kill a ping queue item if we get an error on loading up the notice's poster's profile, rather than letting the item be retried over and over as if it were a transitory error.
This shouldn't generally happen as it's an indicator of database inconsistency, but it's a condition we know happens.
Brion Vibber [Thu, 28 Oct 2010 19:19:19 +0000 (12:19 -0700)]
Fix for regression: fatal error on group page display when not logged in.
Bug was introduced with group deletion feature.
Evan Prodromou [Thu, 28 Oct 2010 14:46:57 +0000 (10:46 -0400)]
fall back to siteowner on bad nickname (Bug#2861)
Brion Vibber [Thu, 28 Oct 2010 00:15:59 +0000 (00:15 +0000)]
Merge branch '0.9.x' of gitorious.org:statusnet/mainline into 0.9.x
Brion Vibber [Thu, 28 Oct 2010 00:14:45 +0000 (00:14 +0000)]
Tweak for OAuth headers not seen in $_SERVER
Siebrand Mazeland [Wed, 27 Oct 2010 23:59:45 +0000 (01:59 +0200)]
Merge branch '0.9.x' of git://gitorious.org/statusnet/mainline into 0.9.x
Siebrand Mazeland [Wed, 27 Oct 2010 23:58:43 +0000 (01:58 +0200)]
Localisation updates from http://translatewiki.net.
Brion Vibber [Wed, 27 Oct 2010 23:47:06 +0000 (16:47 -0700)]
Merge branch 'instrument' into 0.9.x
Brion Vibber [Wed, 27 Oct 2010 23:30:11 +0000 (16:30 -0700)]
ApiLogger plugin: dumps some information about API hits to aid in researching future HTTP-level cachability improvements.
Data are sent to the 'info' level of logging, like so:
[lazarus.local:4812.
86b23603 GET /mublog/api/statuses/friends_timeline.atom?since_id=1353]
STATLOG action:apitimelinefriends method:GET ssl:no query:since_id cookie:no auth:yes
ifmatch:no ifmod:no agent:Appcelerator Titanium/1.4.1 (iPhone/4.1; iPhone OS; en_US;)
Fields:
* action: case-normalized name of the action class we're acting on
* method: GET, POST, HEAD, etc
* ssl: Are we on HTTPS? 'yes' or 'no'
* query: Were we sent a query string? 'yes', 'no', or 'since_id' if the only parameter is a since_id
* cookie: Were we sent any cookies? 'yes' or 'no'
* auth: Were we sent an HTTP Authorization header? 'yes' or 'no'
* ifmatch: Were we sent an HTTP If-Match header for an ETag? 'yes' or 'no'
* ifmod: Were we sent an HTTP If-Modified-Since header? 'yes' or 'no'
* agent: User-agent string, to aid in figuring out what these things are
The most shared-cache-friendly requests will be non-SSL GET requests with no or very predictable
query parameters, no cookies, and no authorization headers. Private caching (eg within a supporting
user-agent) could still be friendly to SSL and auth'd GET requests.
We kind of expect that the most frequent hits from clients will be GETs for a few common timelines,
with auth headers, a since_id-only query, and no cookies. These should at least be amenable to
returning 304 matches for etags or last-modified headers with private caching, but it's very
possible that most clients won't actually think to save and send them. That would leave us expecting
to handle a lot of timeline since_id hits that return a valid API response with no notices.
At this point we don't expect to actually see if-match or if-modified-since a lot since most of our
API responses are marked as uncacheable; so even if we output them they're not getting sent back to
us.
Random subsampling can be enabled by setting the 'frequency' parameter smaller than 1.0:
addPlugin('ApiLogger', array(
'frequency' => 0.5 // Record 50% of API hits
));
Siebrand Mazeland [Wed, 27 Oct 2010 23:42:09 +0000 (01:42 +0200)]
Update translator documentation.
Siebrand Mazeland [Wed, 27 Oct 2010 23:35:40 +0000 (01:35 +0200)]
i18n/L10n updates and superfluous whitespace removed.
Siebrand Mazeland [Wed, 27 Oct 2010 23:23:57 +0000 (01:23 +0200)]
* Superfluous whitespace removed.
* i18n review (no changes needed).
Siebrand Mazeland [Wed, 27 Oct 2010 23:19:04 +0000 (01:19 +0200)]
* i18n/L10n fixes.
* translator documentation updated.
* superfluous whitespace removed.
Siebrand Mazeland [Mon, 25 Oct 2010 21:51:00 +0000 (23:51 +0200)]
* i18n/L10n fixes.
* translator documentation updated.
* superfluous whitespace removed.
Evan Prodromou [Wed, 27 Oct 2010 17:53:39 +0000 (13:53 -0400)]
Merge branch 'nofollowexternallink' into 0.9.x
Conflicts:
lib/default.php
Craig Andrews [Tue, 26 Oct 2010 21:55:09 +0000 (17:55 -0400)]
Set cookies with "secure" flag on SSL sites. Improves security.
Zach Copley [Tue, 26 Oct 2010 20:19:23 +0000 (13:19 -0700)]
Fix OAuth verifier display page title and msgs for i18n
Evan Prodromou [Tue, 26 Oct 2010 19:33:35 +0000 (15:33 -0400)]
UI on profile settings page to opt out of following everyone
Evan Prodromou [Tue, 26 Oct 2010 19:21:30 +0000 (15:21 -0400)]
flag to let users opt out of following everyone
Evan Prodromou [Tue, 26 Oct 2010 19:10:18 +0000 (15:10 -0400)]
Plugin to follow all new users by default
Evan Prodromou [Tue, 26 Oct 2010 15:48:27 +0000 (11:48 -0400)]
can't subscribe to blacklisted domains/users
Evan Prodromou [Tue, 26 Oct 2010 15:20:43 +0000 (11:20 -0400)]
Blacklist plugin checks PuSH and Salmon notices
Evan Prodromou [Tue, 26 Oct 2010 15:19:47 +0000 (11:19 -0400)]
userrole.php will take a profile id for remote profiles
Brion Vibber [Mon, 25 Oct 2010 21:49:29 +0000 (14:49 -0700)]
readme: release candidate 0.9.6
Zach Copley [Mon, 25 Oct 2010 21:35:56 +0000 (14:35 -0700)]
Merge commit 'refs/merge-requests/2223' of git://gitorious.org/statusnet/mainline into integration
Michele macno Azzolari [Mon, 25 Oct 2010 21:08:29 +0000 (23:08 +0200)]
Updated mustard description and link
Zach Copley [Mon, 25 Oct 2010 20:30:38 +0000 (13:30 -0700)]
Supress header, footer, sidebar on OAuth verifier pin page when in "desktop" mode
Samantha Doherty [Mon, 25 Oct 2010 20:00:34 +0000 (16:00 -0400)]
Base theme styling for oauth pin and desktop mode.
Zach Copley [Mon, 25 Oct 2010 19:36:03 +0000 (12:36 -0700)]
Forgot to add the OAuth verifier pin page to sensitive array
Zach Copley [Mon, 25 Oct 2010 19:10:52 +0000 (12:10 -0700)]
We don't need to have editapplication (only showapplication) in the
sensitive array because it doesn't expose the consumer keypair
Zach Copley [Mon, 25 Oct 2010 18:52:17 +0000 (11:52 -0700)]
Add OAuth token exchange endpoint to 'sensitive' array; i.e.: use SSL if
available
Zach Copley [Mon, 25 Oct 2010 18:25:35 +0000 (11:25 -0700)]
Add special CSS classes to OAuth authorization and pin pages when
in desktop mode
Zach Copley [Mon, 25 Oct 2010 17:38:40 +0000 (10:38 -0700)]
Less scary OAuth authorization messages when using anonymous consumer
Evan Prodromou [Mon, 25 Oct 2010 15:18:49 +0000 (11:18 -0400)]
max_id is inclusive
Evan Prodromou [Mon, 25 Oct 2010 15:08:53 +0000 (11:08 -0400)]
change max_id from < to <=
Siebrand Mazeland [Sat, 23 Oct 2010 18:50:55 +0000 (20:50 +0200)]
Localisation updates from http://translatewiki.net.
Siebrand Mazeland [Sat, 23 Oct 2010 17:23:25 +0000 (19:23 +0200)]
* onPluginVersion added.
* i18n fix: use _m() in plugins, don't use _()
* some translator documentation added.
* superfluous whitespace removed.
Siebrand Mazeland [Sat, 23 Oct 2010 17:20:51 +0000 (19:20 +0200)]
* translator documentation added.
* superfluous whitespace removed.
Brion Vibber [Fri, 22 Oct 2010 20:53:10 +0000 (13:53 -0700)]
Additional fixes found while looking at ticket #2532: when given a screen name as API parameter for a profile, do the nickname lookup on local users only. The profile table can't guarantee unique lookups, so using names isn't currently safe there. This won't affect anything using local nicknames correctly, and may avoid some weird bugs if there were conflicts between local and remote nicknames.
Brion Vibber [Fri, 22 Oct 2010 20:51:28 +0000 (13:51 -0700)]
Fix for ticket #2532: fixed API block create/destroy when specifying the target user/profile as a separate query parameter, such as api/blocks/create.xml?param=xxx
The router settings weren't quite right so we ended up with bogus regex values passed in as the 'id' parameter, which broke the regular fallback ordering of parameter checks.
Brion Vibber [Fri, 22 Oct 2010 19:14:45 +0000 (12:14 -0700)]
Merge branch '0.9.x' of gitorious.org:statusnet/mainline into 0.9.x
Brion Vibber [Fri, 22 Oct 2010 19:10:11 +0000 (12:10 -0700)]
Fix for 140-char replies being unexpectedly cropped when bridged to Twitter.
This drops the '@' -> ' @' hack for CURL meta-chars in outgoing Twitter bridge, added in commit
04b95c25 back in the day.
The Twitter bridge has since been switched from using direct CURL calls to using HTTPClient, which even with the CURL backend enabled doesn't trigger this issue, as POST parameters are formatted directly.
Prepending the space before we did the message cropping was leading to 140-char messages getting cropped unnecessarily, which was confusing:
Examples of broken messages:
http://identi.ca/notice/
57172587 vs http://twitter.com/marjoleink/status/
28398050691
http://identi.ca/notice/
57172878 vs http://twitter.com/marjoleink/status/
28398492563
Zach Copley [Fri, 22 Oct 2010 18:32:08 +0000 (18:32 +0000)]
Normalize HTML body ids to lowercase when the user is logged out as well.
Zach Copley [Fri, 22 Oct 2010 18:23:37 +0000 (11:23 -0700)]
Merge branch '0.9.x' of gitorious.org:statusnet/mainline into 0.9.x
Zach Copley [Fri, 22 Oct 2010 18:21:44 +0000 (11:21 -0700)]
Updated styling for OAuth authorization page's desktop mode.
TODO: move these styles into the main CSS file.
Brion Vibber [Fri, 22 Oct 2010 18:07:19 +0000 (11:07 -0700)]
RegisterThrottlePlugin tweak for silencing checks: make sure we don't crash during registration if another profile registered from this address has been since deleted.
Followup to commit
1caa08429f591b170da210d72f3501843f2bc657
Evan Prodromou [Fri, 22 Oct 2010 17:29:51 +0000 (13:29 -0400)]
Collective guilt for registrants from the same IP address
If someone tries to register from an IP address that a silenced user
has registered from, prevent it.
When silencing someone, silence everyone else who registered from the
same IP address.
Evan Prodromou [Fri, 22 Oct 2010 14:31:50 +0000 (10:31 -0400)]
New events when granting and revoking roles
Four new events for when roles are granted or revoked.
Evan Prodromou [Fri, 22 Oct 2010 13:25:13 +0000 (09:25 -0400)]
Merge branch 'bettercachelog' into 0.9.x
Evan Prodromou [Fri, 22 Oct 2010 13:24:49 +0000 (09:24 -0400)]
Merge remote branch 'gitorious/0.9.x' into 0.9.x
Evan Prodromou [Fri, 22 Oct 2010 13:24:19 +0000 (09:24 -0400)]
more detailed information in cachelogplugin
Brion Vibber [Fri, 22 Oct 2010 02:10:43 +0000 (19:10 -0700)]
Workaround for http_build_query() oddities in low-level router parent code when PHP config is set with non-default separator.
Zach Copley [Fri, 22 Oct 2010 02:08:38 +0000 (02:08 +0000)]
Pass OAuth authorize page's mode paramater to OpenID plugin so it can create a correct
returnto URL
Zach Copley [Fri, 22 Oct 2010 01:38:54 +0000 (18:38 -0700)]
Fix regression (whoops!)
Zach Copley [Fri, 22 Oct 2010 01:16:35 +0000 (18:16 -0700)]
Merge branch '0.9.x' of gitorious.org:statusnet/mainline into 0.9.x
Zach Copley [Fri, 22 Oct 2010 01:15:11 +0000 (18:15 -0700)]
Re-camelcase ApiOauthAuthorizeAction so it will be accessible when
a site is in pivate mode
Zach Copley [Fri, 22 Oct 2010 00:48:26 +0000 (00:48 +0000)]
Fix syntax errors
Zach Copley [Fri, 22 Oct 2010 00:11:59 +0000 (17:11 -0700)]
OAuth - inform consumer when user refused to authorize a request token
http://status.net/open-source/issues/2848
Zach Copley [Thu, 21 Oct 2010 23:42:59 +0000 (16:42 -0700)]
Don't show 'anonymous' app in OAuth application list.
Zach Copley [Thu, 21 Oct 2010 21:52:41 +0000 (14:52 -0700)]
Fix bad reference.
Zach Copley [Thu, 21 Oct 2010 21:45:42 +0000 (14:45 -0700)]
OAuth - proper callback handling and better styling for authorization
page when in desktop mode
Zach Copley [Thu, 21 Oct 2010 20:03:56 +0000 (13:03 -0700)]
Normalize all action HTML body ids to lowercase
Zach Copley [Thu, 21 Oct 2010 20:00:03 +0000 (13:00 -0700)]
Change OAuth authorization page's action name to be inline with
other web page action names so the body id outputs correctly. Fix
some other bugs.