Evan Prodromou
37c447be46
Show a single favorite for AtomPub
2010-12-10 18:50:50 -05:00
Brion Vibber
3f9b8b293d
Workaround for locally-handled sessions breaking on PHP 5.3 with APC enabled.
...
Big thanks to the folks at http://pecl.php.net/bugs/bug.php?id=16745 for the secret juju!
Classes were being torn down before session save handlers got called at the end of the request, which exploded with complaints about being unable to find various classes.
Registering a shutdown function lets us explicitly close out the session before everything gets torn down.
2010-12-10 14:12:02 -08:00
Brion Vibber
ab7a06542c
Workaround for locally-handled sessions breaking on PHP 5.3 with APC enabled.
...
Big thanks to the folks at http://pecl.php.net/bugs/bug.php?id=16745 for the secret juju!
Classes were being torn down before session save handlers got called at the end of the request, which exploded with complaints about being unable to find various classes.
Registering a shutdown function lets us explicitly close out the session before everything gets torn down.
2010-12-10 22:08:36 +00:00
Evan Prodromou
11a0bde459
AtomPub for single subscription
2010-12-09 13:11:02 -05:00
Evan Prodromou
94ff04e190
Don't cache user-specific information for Notice atom entries
2010-12-08 13:59:12 -05:00
Evan Prodromou
b8b5b87c4c
Don't cache user-specific information for Notice atom entries
2010-12-08 07:25:55 -05:00
Brion Vibber
9df856e667
Merge branch '0.9.x' into merge
...
Conflicts:
README
actions/hostmeta.php
classes/File_redirection.php
lib/common.php
lib/designsettings.php
lib/router.php
lib/util.php
lib/xmppmanager.php
plugins/OStatus/OStatusPlugin.php
2010-12-07 10:50:05 -08:00
Evan Prodromou
1fb506c27d
use codeKey() in activity caching
2010-12-06 17:28:22 -05:00
Evan Prodromou
8564fc51c5
cache generated activity info
2010-12-06 16:38:02 -05:00
Brion Vibber
2617c40e04
Merge branch 'master' of gitorious.org:statusnet/mainline into 0.9.x
...
Conflicts:
classes/User.php
2010-12-06 12:44:19 -08:00
Brion Vibber
76f3dc32e0
Added User::singleUserNickname() as (temporary?) fallback for single-user lookup as a workaround for site setup of 1user sites. We found that an external tool attempting to spin up StatusNet and then register the user would fail because StatusNet's router setup dies on being unable to find its single-user account, since the nickname is needed in setting up routing entries. This tweak will let it survive, using the configured setting as a fallback if it can't actually find the user account.
2010-12-06 12:39:09 -08:00
Evan Prodromou
b28266b3d6
Convert Notice::asAtomEntry() to use Notice::asActivity() and Activity::asString()
...
We had two ways to generate an activity entry from a notice; one through
Notice::asAtomEntry() and one through Notice::asActivity() and
Activity::asString(). The code paths had already diverged somewhat. I
took the conditions that were in Notice::asAtomEntry() and made sure
they were replicated in the other two functions. Then, I rewrote
Notice::asAtomEntry() to use the other two functions instead.
This change passes the ActivityGenerationTests unit tests, but there
may be some other stuff that's not getting covered.
2010-12-05 16:15:05 -05:00
Brion Vibber
043f0ad152
URL shortening fix for direct messages: if we're going to shorten the text, shorten the rendered text too.
2010-12-02 13:59:51 -08:00
Brion Vibber
aa96c3c1d9
Fix for tickets #2917 , #2262 : user URL shortening options not being applied in non-web channels
...
common_shorten_links() can only access the web session's logged-in user, so never properly took user options into effect for posting via XMPP, API, mail, etc.
Adds an optional $user parameter on common_shorten_links(), and a $user->shortenLinks() as a clearer interface for that.
Tweaked some lower-level functions so $user gets passed down -- making the $notice_id param previously there for saving URLs at notice save time generalized a little.
Note also ticket #2919 : there's a lot of duplicate code calling the shortening, checking the length, and reporting near-identical error messages. These should be consolidated to aid in code and translation maintenance.
2010-12-02 13:41:56 -08:00
Brion Vibber
6e249b4ab5
doc comments on User::allowed_nickname
2010-11-29 11:57:27 -08:00
Brion Vibber
826a695077
Ticket #2797 : replace addslashes() with explicit escape calls on the DB objects
2010-11-19 15:06:26 -08:00
Brion Vibber
407663fb40
Merge branch 'master' of gitorious.org:statusnet/mainline into 0.9.x
2010-11-19 12:44:43 -08:00
Brion Vibber
4b01dd8b2e
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.
2010-11-19 12:40:18 -08:00
Brion Vibber
197b56778a
Add $config['attachments']['process_links'] to allow disabling processing of mentioned URL links for attachment info (oEmbed lookups) and dereferencing of redirects that we didn't have shortened ourselves.
...
This option may be useful for intranet sites that don't have direct access to the internet, as they may be unable to successfully fetch those resources.
2010-11-17 13:03:59 -08:00
Brion Vibber
e4eb3b3dfd
Merge branch 'master' of gitorious.org:statusnet/mainline into 0.9.x
2010-11-15 17:36:48 -08:00
Brion Vibber
0d0e51292d
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.
2010-11-15 15:32:57 -08:00
Brion Vibber
5c00848b74
Merge branch '0.9.x' of gitorious.org:statusnet/mainline into 0.9.x
2010-11-15 12:38:53 -08:00
Brion Vibber
1c90d09ec8
Workaround for yfrog.com photo attachments: fudge File_redirection::lookupWhere()'s HTTP handling -- when we get a 204 on a HEAD, double-check it by re-running as a GET. yfrog.com returns a 204 incorrectly for this case.
2010-11-15 11:01:00 -08:00
Brion Vibber
e1ffbfed04
doc comments on File::processNew
2010-11-15 11:00:42 -08:00
Evan Prodromou
8a21b13ee9
Merge remote branch 'gitorious/0.9.x' into 0.9.x
2010-11-15 11:57:31 -05:00
Evan Prodromou
c1cee3b27f
Merge branch 'atompub' into 0.9.x
...
Conflicts:
actions/apistatusesshow.php
actions/apitimelineuser.php
2010-11-15 11:57:19 -05:00
Brion Vibber
4f323efdf7
Encapsulate the oEmbed -> oohembed fallback into oEmbedHelper class. Also added a chance to whitelist sites that don't show discovery info but do have oEmbed API endpoints, and to provide alternate APIs for some common services.
...
Newly supported:
- TwitPic: added a local function using TwitPic's API, since the oohembed implementation for TwitPic produced invalid output which Services_oEmbed rejects. (bug filed upstream)
Tweaked...
- Flickr: works, now using whitelist to use their endpoint directly instead of going through oohembed
- Youtube: worked around a bug in Services_oEmbed which broke the direct use of API discovery info, so we don't have to use oohembed.
Not currently working...
- YFrog: whitelisting their endpoint directly as the oohembed output is broken, but this doesn't appear to work currently as I think things are confused by YFrog's servers giving a '204 No Content' response on our HEAD checks on the original link.
2010-11-12 17:41:35 -08:00
Brion Vibber
2c4313467f
Save oEmbed photo references as thumbnails if there's not a separate thumbnail_url entry in the return data. This fixes thumb saving for Flickr photo references.
2010-11-12 14:03:08 -08:00
Brion Vibber
dbb95b76a4
Allow YouTube-style media links to be counted as enclosures for purposes of listing attachments/thumbs
2010-11-09 12:04:07 -08:00
Brion Vibber
694448e0aa
Add attachments 'thumb_width' and 'thumb_height' settings for inline thumbs, defaulting to 100x75.
...
This is used as the max thumb width/height for oEmbed requests (replacing the old default of 500x400 which was more suitable for the lightbox).
2010-11-08 17:36:02 -08:00
Brion Vibber
6d7f02ff31
Pass file attachment thumbnails along with oEmbed data.
2010-11-08 17:22:01 -08:00
Brion Vibber
c36fecb794
Save a thumbnail image when uploading an image file into the file attachments system. Currently hardcoded to 100x75, needs aspect-sensitivity etc.
2010-11-08 17:20:04 -08:00
Brion Vibber
a2994e3aa2
Testing... using photo info for temp thumbnails
2010-11-08 15:50:06 -08:00
Brion Vibber
883f7a6c0b
Avoid marking files as attachments that are not locally uploaded, unless they're really oembedable. HTML-y things now excluded properly.
2010-11-08 13:27:54 -08:00
Siebrand Mazeland
6aeba0cb7c
i18n/L10n updates.
2010-11-04 18:33:39 +01:00
Brion Vibber
4f63e3be7d
Fix for ticket #2804 : bad non-cache fallback code for dupe checks of prolific posters
...
The old code attempted to compare the value of the notice.created field against now() directly, which tends to explode in our current systems. now() comes up as the server/connection local timezone generally, while the created field is currently set as hardcoded UTC from the web servers. This would lead to breakage when we got a difference in seconds that's several hours off in either direction (depending on the local timezone). New code calculates a threshold by subtracting the number of seconds from the current UNIX timestamp and passing that in in correct format for a simple comparison. As a bonus, this should also be more efficient, as it should be able to follow the index on profile_id and created.
2010-11-03 17:25:29 -07:00
Brion Vibber
2692b5fc84
Fix for ticket #2853 : fix for some unknown MIME type error cases by adjusting the PEAR error handling temporarily around MIME_Type_Extension usage.
2010-11-03 17:05:26 -07:00
Brion Vibber
b716d01a41
Merge branch '0.9.x' into 1.0.x
2010-11-03 16:09:49 -07:00
Brion Vibber
b0d7900530
Add getFancyName() to User_group to match the one on Profile: encapsulates the "fullname (nickname)" vs "nickname" logic and allows for localization of the parentheses in a common place.
2010-11-03 12:53:51 -07:00
Siebrand Mazeland
a65362f7fa
Add context for different uses of "%1$s (%2$s)"
2010-11-02 23:08:59 +01:00
Brion Vibber
0229c22d23
Merge branch '1.0.x' into schema-x
2010-11-02 15:02:55 -07:00
Brion Vibber
04ca706601
Merge branch '0.9.x' of gitorious.org:statusnet/mainline into 1.0.x
...
Conflicts:
actions/confirmaddress.php
actions/othersettings.php
2010-11-02 15:02:10 -07:00
Brion Vibber
426cda5e1f
Alternate pretty-title tweaks for #2668
2010-11-02 13:42:44 -07:00
Brion Vibber
62d4701148
fix a couple bugs in Managed_DataObject
2010-11-01 14:31:32 -07:00
Brion Vibber
96521f38d2
Fix for changed cache functions in code merged up from 0.9.x
2010-10-29 16:31:25 -07:00
Brion Vibber
e7c7fd39fc
Merge branch '1.0.x' into schema-x
...
Conflicts:
plugins/CacheLog/locale/nb/LC_MESSAGES/CacheLog.po
2010-10-28 16:27:53 -07:00
Brion Vibber
b26eccf33c
Merge branch '0.9.x' into 1.0.x
2010-10-28 16:26:34 -07:00
Evan Prodromou
b5206fe6ca
fall back to siteowner on bad nickname (Bug#2861)
2010-10-28 10:46:57 -04:00
Brion Vibber
b483a0549f
Merge branch '1.0.x' into schema-x
...
Conflicts:
plugins/CacheLog/locale/nb/LC_MESSAGES/CacheLog.po
2010-10-25 13:14:33 -07:00
Brion Vibber
ca489631db
Merge branch '0.9.x' into 1.0.x
...
Conflicts:
actions/subscriptions.php
lib/router.php
lib/xmppmanager.php
lib/xmppoutqueuehandler.php
2010-10-25 13:08:57 -07:00
Evan Prodromou
b60b9b4fa2
Merge branch '0.9.x' into atompub
2010-10-25 11:18:56 -04:00
Evan Prodromou
aef88c7cee
max_id is inclusive
2010-10-25 11:18:49 -04:00
Evan Prodromou
75fcf1e081
Merge branch '0.9.x' into atompub
2010-10-25 11:09:11 -04:00
Evan Prodromou
968f9b0513
change max_id from < to <=
2010-10-25 11:08:53 -04:00
Evan Prodromou
e51ed96b89
add rel=self links to atom entries
2010-10-25 09:48:01 -04:00
Evan Prodromou
698818bd7e
show rel=edit links in notices for authenticated users
2010-10-24 23:05:33 -04:00
Siebrand Mazeland
0b6cc7c33d
* translator documentation added.
...
* superfluous whitespace removed.
2010-10-23 19:20:51 +02:00
Evan Prodromou
1d85bfece1
New events when granting and revoking roles
...
Four new events for when roles are granted or revoked.
2010-10-22 10:31:50 -04:00
James Walker
8ac8f3d2dc
Memcache::set() 3rd param should be flags (4th is expire). This throws a "2 lowest bytes reserved" error in Memcache > 3.0.3
2010-10-21 12:20:14 -04:00
Siebrand Mazeland
fb12094f61
i18n/L10n updates, translator docs updated, superfluous whitespace removed.
2010-10-21 03:10:46 +02:00
Zach Copley
bfdb8385ec
Merge branch '0.9.x' of gitorious.org:statusnet/mainline into 0.9.x
...
Conflicts:
actions/apioauthauthorize.php
lib/apioauthstore.php
2010-10-20 17:28:28 -07:00
Zach Copley
e56385a7bb
Use a new table (oauth_token_association) to associate authorized
...
request tokins with OAuth client applications and profiles.
2010-10-20 17:21:04 -07:00
Siebrand Mazeland
28ec9d6463
* translator documentation added.
...
* moved some translator comments that were not directly above the line with the message to the correct location.
* i18n for UI text.
* superfluous whitespace removed.
2010-10-21 01:12:56 +02:00
Brion Vibber
8004e2809d
Fix for ticket #2845 : singleuser nickname configuration was being overridden by site owner in router setup.
...
I've consolidated the checks for which user to use for single-user mode into User::singleUser(), which now uses the configured nickname by preference, falling back to the site owner if it's unset.
This is now called consistently from the places that needed to use the primary user's nickname in routing setup.
Setting $config['singleuser']['nickname'] should now work again as expected.
2010-10-20 14:34:25 -07:00
Zach Copley
3d6a0f730d
Revert DB change for OAuth. Change compound key for oauth_application_user
...
back to (profile_id, application_id). I think we can get away without
a DB change by only issuing one anonymous access token per user.
2010-10-20 11:41:04 -07:00
Zach Copley
e8b6d7c946
Add support for an anonymous OAuth consumer. Note: this requires a
...
small DB tweak. Oauth_application_user needs to have the primary
compound key: (profile_id, application_id, token).
http://status.net/open-source/issues/2761
This should also make it possible to have multiple access tokens
per application.
http://status.net/open-source/issues/2788
2010-10-19 20:54:53 -07:00
Brion Vibber
4f7eae8702
Add stub schema_version table
2010-10-19 15:38:53 -07:00
Brion Vibber
4c3aebd396
Merge branch '1.0.x' into schema-x
2010-10-15 11:40:40 -07:00
Brion Vibber
a7d98435f6
Tweak DB query logging to also log queries that fail; the exceptions we get are often not very descriptive like "No such table" without saying which table. :)
2010-10-15 11:26:06 -07:00
Craig Andrews
0721d8d3e2
Merge remote branch 'statusnet/0.9.x' into 1.0.x
2010-10-14 15:27:17 -04:00
Evan Prodromou
b31c49c5d4
Make HTTPS urls in File::url() if necessary
2010-10-14 14:22:17 -04:00
Evan Prodromou
97a7fb246c
correctly use sslserver if it is set
2010-10-14 01:35:11 -04:00
Evan Prodromou
aafd95dc0c
Design::url() will use HTTPS if page is HTTPS
2010-10-14 01:18:19 -04:00
Evan Prodromou
76038fe20c
better deletion of related objects in User_group::delete()
2010-10-13 22:44:06 -04:00
Brion Vibber
4101de7dd7
Merge branch '1.0.x' into schema-x
2010-10-13 15:46:45 -07:00
Brion Vibber
5f81f6119b
Merge branch '0.9.x' into 1.0.x
2010-10-12 16:33:36 -07:00
Brion Vibber
112b6c4079
Improve cache-friendliness of user_group->delete().
...
Doesn't clear all possible cached entries, but this should get the ones that matter most: lookups by id, nickname, and alias. This should ensure that if a group name gets reused as a new group or alias, it should work properly.
There are some user-visible areas that aren't clear such as the 'top groups' lists on the GroupsAction sidebar; if a deleted group appears in those lists it'll go away within an hour when the cached query expires.
2010-10-12 16:29:13 -07:00
Brion Vibber
3579ccac8e
Cascading deletion for user_group; doesn't yet work properly with caching.
2010-10-12 16:13:07 -07:00
Brion Vibber
f4f16af8ac
Add a basic group deletion for moderator users.
2010-10-12 15:49:20 -07:00
Brion Vibber
1cd60579f5
Ticket #2811 use more consistent max limit for OAuth application registration descriptions; now using the field max of 255 rather than $config['site']['textlimit'] as fallback if $config['application']['desclimit'] is unset or out of bounds.
2010-10-11 12:52:32 -07:00
Brion Vibber
1f4b168e69
tweak for Managed_DataObject table defs
2010-10-07 14:21:06 -07:00
Brion Vibber
99194e03fa
Merge branch '1.0.x' into schema-x
...
Conflicts:
plugins/OStatus/classes/Ostatus_profile.php
2010-10-06 17:16:13 -07:00
Brion Vibber
8ff45823ba
Merge branch '0.9.x' into 1.0.x
2010-10-05 11:40:49 -07:00
Brion Vibber
d6b3d7fb1a
Fix unescaped dollar signs in double-quoted strings due to localization updates (%1$s etc)
2010-10-04 14:24:04 -07:00
Brion Vibber
59119482ca
Merge branch '0.9.x' of gitorious.org:statusnet/mainline into 1.0.x
...
Conflicts:
actions/hostmeta.php
actions/imsettings.php
classes/User.php
lib/adminpanelaction.php
lib/channel.php
lib/default.php
lib/router.php
lib/util.php
2010-10-04 12:54:36 -07:00
Brion Vibber
6e58a926e3
ForceGroup plugin: optionally force new users to join a particular group or set of groups on registration; and/or to force posts by members of particular groups to be posted into those groups even if not explicitly mentioned. The posting feature requires a couple quick hook additions in core.
2010-09-30 18:05:44 -07:00
Brion Vibber
55a080ea4e
ForceGroup plugin: optionally force new users to join a particular group or set of groups on registration; and/or to force posts by members of particular groups to be posted into those groups even if not explicitly mentioned. The posting feature requires a couple quick hook additions in core.
2010-09-30 16:25:15 -07:00
Zach Copley
3960c9ad39
Move blowFavesCache() to Profile
2010-09-29 16:35:12 -07:00
Zach Copley
c19e592fa8
Move hasFave() to Profile
2010-09-29 16:35:12 -07:00
Siebrand Mazeland
9587f9f55b
* i18n/L10n and translator documentation updates.
...
* whitespace and indentation updates
2010-09-28 23:42:18 +02:00
Siebrand Mazeland
b03ece26eb
* i18n/L10n and translator documentation updates.
...
* whitespace and indentation updates
2010-09-28 23:21:09 +02:00
Evan Prodromou
4d01f8fbb6
save a URI with the user
2010-09-22 12:08:17 -04:00
Evan Prodromou
b5cfcba471
Merge branch '0.9.x' into activityexport
...
Conflicts:
plugins/OStatus/OStatusPlugin.php
2010-09-22 10:45:34 -04:00
Brion Vibber
42dd460d3b
Merge branch 'master' into 0.9.x
2010-09-21 12:48:16 -07:00
Evan Prodromou
556a2a8fd8
use Profile::getUri() to get a profile's URI
2010-09-21 06:21:47 -04:00
Brion Vibber
28b06864fb
Fix for #2227 : 'view profile designs' and other default-on options are initially mis-set to off due to caching at account creation
2010-09-20 17:37:21 -07:00
Brion Vibber
521daf5562
Ticket #2327 : fixing block to remove the blocking user's subscription to the blockee if present; also cleaning up inbox delivery to apply the block checks more consistently, instead of just to group posts.
2010-09-20 16:00:25 -07:00
James Walker
444959a789
Status_network::encache() doesn't exist
2010-09-17 16:33:02 -04:00
Evan Prodromou
fac1942dad
better output for group membership as activity
2010-09-15 07:11:24 -04:00
Evan Prodromou
43ad609600
Add Group_member::asActivity() to record group joins
2010-09-14 11:01:29 -04:00
Evan Prodromou
9f4891568f
bugs in function calls in Notice::asActivity
2010-09-13 16:27:02 -04:00
Evan Prodromou
9771a7193f
bug in time and object handling in Subscription::asActivity
2010-09-13 16:22:42 -04:00
Evan Prodromou
4338bc1ee7
bug in time and object handling in Fave::asActivity
2010-09-13 16:22:27 -04:00
Evan Prodromou
d634f9cf17
Notice::asActivity
2010-09-13 11:44:20 -04:00
Evan Prodromou
d9b959fc64
move code for making activities from OStatus plugin to Subscription and Fave classes
2010-09-13 11:44:20 -04:00
Evan Prodromou
4419e43f7f
Merge branch '0.9.x' into 1.0.x
...
Conflicts:
EVENTS.txt
plugins/TwitterBridge/daemons/twitterstatusfetcher.php
plugins/TwitterBridge/twitterbasicauthclient.php
2010-09-09 15:01:03 -04:00
Brion Vibber
7407754c27
Merge branch 'master' into testing
2010-09-08 11:47:44 -07:00
Evan Prodromou
a319b40c97
common_cache_key() -> Cache::key()
2010-09-06 10:07:43 -04:00
Evan Prodromou
e42d2124a3
common_keyize() -> Cache::keyize()
2010-09-06 10:03:51 -04:00
Evan Prodromou
8f81762d68
common_memcache() => Cache::instance()
2010-09-06 09:56:45 -04:00
Brion Vibber
0ef422593b
Don't explode if we fail to load a listed attachment id in Notice::attachments()
2010-09-02 15:39:22 -07:00
Brion Vibber
2196d00b1b
Merge branch '0.9.x' into 1.0.x
...
Conflicts:
lib/command.php
2010-09-02 15:04:25 -07:00
Evan Prodromou
82b1d6daef
Merge branch 'swat0' into 0.9.x
2010-09-02 16:58:55 -04:00
Evan Prodromou
974ac48771
bug in Profile::fromURI() wasn't returning profile
2010-09-01 16:55:16 -04:00
Evan Prodromou
a2de30b767
Notice::saveReplies() uses Profile::fromURI() to handle remote profiles too
2010-09-01 16:15:51 -04:00
Evan Prodromou
7bec455a21
Static method to get a profile based on an URI
2010-09-01 16:15:22 -04:00
Evan Prodromou
468a15db00
Merge branch 'master' into 0.9.x
2010-09-01 14:21:36 -04:00
Brion Vibber
8f06e3b281
Fix for failover error in status_network_tag caching; when no tags present in table we would return an array with one empty element instead of no elements when getting the cached data.
2010-08-26 13:52:03 -07:00
Brion Vibber
63fd2332f0
Use Status_network's caching settings when loading Status_network_tag entries; cache entries are batched per site and will be cleared when tags are inserted/deleted using the main interface.
...
(with fixes from tagcache branch)
2010-08-25 12:22:42 -07:00
Brion Vibber
0cfaae48a3
Merge branch '0.9.x' into 1.0.x
2010-08-16 16:56:27 -07:00
Brion Vibber
1a7d830fff
prettify code
2010-08-16 15:28:00 -07:00
Brion Vibber
eaa4ded053
first pass at columndef->drupal-style array converter (need to handle some more things probably; untested)
2010-08-16 15:14:16 -07:00
Brion Vibber
aff54d8efb
Managed_DataObject initial sketches (pulling Drupal-style schema def into the data that DB_DataObject and Memcached_DataObject use; not yet functional. Converted OStatus_profile for demo.)
2010-08-16 14:02:31 -07:00
Evan Prodromou
21bf50bad6
Merge branch 'noticetitle' into 0.9.x
2010-08-14 12:03:25 -07:00
Evan Prodromou
6d89aa0931
on deleting a notice
2010-08-14 11:54:20 -07:00
Evan Prodromou
1dadb8efc0
Merge branch '0.9.x' into 1.0.x
2010-08-13 14:51:51 -07:00
Evan Prodromou
7183175429
Merge branch 'master' into 1.0.x
2010-08-13 14:33:41 -07:00
Brion Vibber
f7d599f8ea
Fix for ticket 2513: "Can't linkify" error when some links are shortened
...
When bogus SSL sites etc were hit through a shortening redirect, sometimes link resolution kinda blew up and the user would get a "Can't linkify" error, aborting their post.
Now catching this case and just passing through the URL without attempting to resolve it. Could benefit from an overall scrubbing of the freaky link/attachment code though...! :)
http://status.net/open-source/issues/2513
2010-08-12 15:25:32 -07:00
Brion Vibber
6787b377c0
Fix for ticket 2513: "Can't linkify" error when some links are shortened
...
When bogus SSL sites etc were hit through a shortening redirect, sometimes link resolution kinda blew up and the user would get a "Can't linkify" error, aborting their post.
Now catching this case and just passing through the URL without attempting to resolve it. Could benefit from an overall scrubbing of the freaky link/attachment code though...! :)
http://status.net/open-source/issues/2513
2010-08-12 15:19:47 -07:00
Brion Vibber
dcfc13cc08
Fix PHP notice spew when Notice::saveNew() called without passing any options; default empty vars weren't being set.
2010-08-12 15:18:50 -07:00
Brion Vibber
ae696728f5
Merge branch '0.9.x' into 1.0.x
2010-08-12 12:56:23 -07:00
Brion Vibber
08fc6053ec
Fix for regression with OStatus mention processing (duplicated new and old style lead to trying to save a reply entry twice).
2010-08-10 13:49:11 -07:00
Brion Vibber
855f1f6623
Merge branch '0.9.x' of gitorious.org:statusnet/mainline into 1.0.x
2010-08-09 13:11:41 -07:00
Brion Vibber
7e55fc0044
OStatus/FeedSub: tweaked PuSH feed garbage collection so other plugins can declare usage of a low-level feed or an OStatus profile besides profile subscriptions & group memberships.
...
SubMirror: redid add-mirror frontend to accept a feed URL, then pass that on to OStatus, instead of pulling from your subscriptions.
Profile: tweaked subscriberCount() so it doesn't subtract 1 for foreign profiles who aren't subscribed to themselves; instead excludes the self-subscription in the count query.
Memcached_DataObject: tweak to avoid extra error spew in the DB error raising
Work in progress: tweaking feedsub garbage collection so we can count other uses
2010-08-06 11:49:52 -07:00
Evan Prodromou
9f0715a993
Merge branch '0.9.x' into 1.0.x
2010-08-03 16:05:03 -07:00
Evan Prodromou
e2c90576c0
re-add mentioned link lost in last merge
2010-08-03 16:01:50 -07:00
Evan Prodromou
2ba36fc242
Merge branch 'activityhooks' into 0.9.x
...
Conflicts:
classes/Notice.php
2010-08-03 16:01:18 -07:00
Evan Prodromou
cc71f1ae82
output Atom dates in UTC
2010-08-03 15:55:40 -07:00
Evan Prodromou
f83171824f
correctly show <source> for atom feeds
2010-08-03 15:50:21 -07:00
Evan Prodromou
f12cafb275
correct output for EndActivityInReplyTo event
2010-08-02 17:56:44 -07:00
Evan Prodromou
fe2b4fdf1c
add some activity hooks
2010-08-02 17:16:04 -07:00
James Walker
e603632f13
add support for Salmon's new "mentioned" rel value
2010-08-02 14:06:14 -04:00
Siebrand Mazeland
8f8588026b
Fixes for messages after review by Brion.
2010-07-30 19:25:55 +02:00
Siebrand Mazeland
e753422480
* Address i18n related FIXMEs after talk with Brion.
...
* Tweak message
2010-07-30 19:15:07 +02:00
Zach Copley
fb2e00eacc
Merge branch 'master' into 0.9.x
...
Conflicts:
classes/Notice.php
2010-07-29 20:44:11 +00:00
James Walker
3fa76463ed
oops. really embarassing typo (that explains some weird behaviour)
2010-07-29 16:32:41 -04:00
Zach Copley
4e8e77f6b0
Return HTTP 403 instead of 400 when silenced users try to post via API
2010-07-29 18:47:28 +00:00
Siebrand Mazeland
125ff142e8
* mark a few message for translation
...
* add translator documentation
2010-07-29 13:36:08 +02:00
Siebrand Mazeland
312c6b6865
* add FIXME for messages that may need i18n.
...
* trailing whitespace removed.
2010-07-29 13:18:41 +02:00
Siebrand Mazeland
5813ecada2
* add translator documentation
...
* mark strings for translation
* add FIXME for unclear/confusing message
2010-07-29 13:01:04 +02:00
Siebrand Mazeland
e7acb45b57
* add string for translation with translator documentation
...
* add FIXMEs for strings that may need i18n, but leaving decision to other dev(s)
2010-07-29 12:58:48 +02:00
Siebrand Mazeland
f241cdcbb3
* mark two untranslatable server exceptions as translatable
...
* number parameters when multiple are user in a message
* update translator documentation
2010-07-29 11:34:58 +02:00
Siebrand Mazeland
e694da24a9
Number parameters
2010-07-28 22:17:54 +02:00
Brion Vibber
189d341733
Merge branch 'master' into testing
2010-07-28 11:56:55 -07:00
James Walker
5688c635a6
backwards compatibility for old tags format in hasTag
2010-07-28 12:13:53 -04:00
James Walker
29b8a6a18f
don't try to save empty tags
2010-07-28 11:57:54 -04:00
James Walker
772018810b
Merge branch 'master' into testing
2010-07-27 12:18:40 -04:00
Zach Copley
25e963769c
Revert "Revert "Change the cache window on notices from 61 to 200, the max number""
...
This reverts commit a65b3f171c
.
2010-07-21 12:29:47 -07:00
James Walker
7065450f03
normalizing tags for status_network
2010-07-20 17:34:58 -07:00
Eric Helgeson
9b899eea75
Make some messages gender neutral.
2010-07-19 21:09:09 -05:00
Zach Copley
a65b3f171c
Revert "Change the cache window on notices from 61 to 200, the max number"
...
This reverts commit d51820adc5
.
2010-07-19 17:38:11 -07:00
Zach Copley
d51820adc5
Change the cache window on notices from 61 to 200, the max number
...
of notices available at one time through the API. Note: this will
require a memcache restart.
2010-07-19 13:47:42 -07:00
Evan Prodromou
d73feb82d8
cache sitemap notice and user counts for 4h
2010-07-14 10:38:34 -04:00
Evan Prodromou
dfd65a4290
push exception on missing profile down to Notice::getProfile()
2010-07-13 10:51:25 -04:00
Zach Copley
4c5098cd32
Handle the case where a screen name has shifted from one Twitter ID to another
2010-07-08 21:17:11 +00:00
Brion Vibber
dcfe5b24f6
Fix regression in 92ded7c6cb
: spewed PHP notices when checking for enclosures due to uninitialized variables.
2010-06-28 15:20:50 -04:00
Brion Vibber
fa282823d9
Merge branch '0.9.x' of gitorious.org:statusnet/mainline into 1.0.x
2010-06-26 15:10:47 -04:00
Brion Vibber
c6b1e25d17
Merge branch 'testing' of gitorious.org:statusnet/mainline into 0.9.x
2010-06-26 15:09:30 -04:00
Brion Vibber
ef7e85c0ab
Merge branch 'master' of gitorious.org:statusnet/mainline into testing
2010-06-26 15:09:08 -04:00
Brion Vibber
f0c5e7eca3
Fix for bug #2382 : releasing claim on failed queue item works again with DB-based queues.
...
Warning: DB-based queue doesn't currently implement discarding of items after a retry limit. Failed items will be retried until they succeed.
2010-06-26 15:07:32 -04:00
Brion Vibber
00e129b013
Merge branch '0.9.x' of gitorious.org:statusnet/mainline into 1.0.x
2010-06-26 10:18:03 -04:00
Brion Vibber
696e4ba393
Merge branch 'testing' of gitorious.org:statusnet/mainline into 0.9.x
...
Conflicts:
plugins/OpenID/openidserver.php (cleaned up mismatched comment)
2010-06-26 10:17:36 -04:00
Brion Vibber
d9e56e15cc
Merge branch 'master' into testing
2010-06-26 10:16:27 -04:00
Zach Copley
1eec7f779f
- Add profile_info tag to Atom author
...
- Normalize xmlns:statusnet links in the API
2010-06-22 16:28:06 -07:00
Zach Copley
105c1a22d6
Include source client's related URL (if any) in source attribution for
...
Atom notice feeds
2010-06-17 23:08:40 +00:00
James Walker
b667092153
adding a Status_network::updateKeys() method, since DB_DataObject update doesn't do keys.
2010-06-17 13:44:17 -04:00
Zach Copley
d3d499879c
- More useful group info from api/statusnet/group/show
...
- Add statusnet:group_info tag to group Atom feeds
2010-06-16 14:29:24 -07:00
Brion Vibber
004200f958
Merge branch '0.9.x' of gitorious.org:statusnet/mainline into 1.0.x
2010-06-11 12:09:55 -07:00
Brion Vibber
7f3b3620af
Merge branch 'testing' of gitorious.org:statusnet/mainline into 0.9.x
2010-06-11 12:05:53 -07:00
Brion Vibber
b1a68e15b7
Merge branch '0.9.x' of gitorious.org:statusnet/mainline into 1.0.x
...
Conflicts:
lib/default.php
lib/util.php
plugins/UrlShortener/UrlShortenerPlugin.php (has been removed?)
2010-06-10 15:37:06 -07:00
Brion Vibber
5a96b9e805
Merge branch 'master' of gitorious.org:statusnet/mainline into testing
2010-06-07 10:34:00 -07:00
Brion Vibber
d88b208edc
Merge branch 'testing' of gitorious.org:statusnet/mainline into 0.9.x
...
Conflicts:
plugins/OpenID/openid.php
2010-06-07 10:19:40 -07:00
Evan Prodromou
6d39a75137
use DB_DataObject_Cast objects in a couple of different places in the code
2010-06-04 15:29:38 -04:00
Evan Prodromou
cbdeb6fb8f
Merge branch 'master' of gitorious.org:statusnet/mainline
2010-06-04 13:26:25 -04:00
Evan Prodromou
f1ea678aae
memcache_dataobject supports some DB_DataObject_Cast objects as values
2010-06-04 12:52:05 -04:00
Brion Vibber
8b9436e8ae
Option to divert PuSH items directly to the target site's queue when local
2010-06-03 18:06:55 -07:00
Brion Vibber
5f4c6ec626
Skip enqueueing to outgoing bridges on incoming remote messages. Twitter, Facebook, RSSCloud, and OStatus checks were enqueued on these when they'd never do anything but churn the queue servers.
...
Notice::isLocal() can replace a number of manual checks for $notice->is_local being LOCAL_PUBLIC or LOCAL_NONPUBLIC.
2010-06-03 16:58:45 -07:00
Zach Copley
1a44d4272f
Add repeated attr to Atom notices_info element
2010-06-03 22:24:55 +00:00
Brion Vibber
17ab15a3d0
Fix memory leak in Inbox::addToInbox() (usage of raw DB_DataObject::staticGet, which leaks memory into a process-global cache).
...
On my test setup, this fixes inbox delivery to 10,000 local recipients from background queuedaemon running with a 32mb memory limit, completes the job within a minute from start.
2010-06-01 13:53:44 -07:00
Craig Andrews
6317f7d92b
Assigning my copyrights to the Free Software Foundation
2010-05-27 18:27:33 -04:00
Brion Vibber
696aeea113
Merge branch 'testing' of gitorious.org:statusnet/mainline into 0.9.x
...
Conflicts:
lib/language.php
plugins/OpenID/finishaddopenid.php
2010-05-27 14:57:32 -07:00
Zach Copley
80d1e86a7c
Add repeat info to statusnet:notice_info Atom element
2010-05-26 00:39:44 +00:00
Brion Vibber
e68d2c9015
Merge branch 'master' of gitorious.org:statusnet/mainline
2010-05-25 13:11:36 -07:00
Brion Vibber
95159112b2
Hotpatch for infinite redirection-following loop seen processing URLs to http://clojure.org/ -- if we end up with an unstable redirect target (final item in a redirect chain ends up redirecting us somewhere else when we visit it again), just save the last version we saw instead of trying to start over.
...
Pretty much everything in File and File_redirection initial processing needs to be rewritten to be non-awful; this code is very hard to follow and very easy to make huge bugs. A fair amount of the complication is probably obsoleted by the redirection following being built into HTTPClient now.
2010-05-25 13:09:21 -07:00
Brion Vibber
f7add6f25f
Handle funky notice deletion cases more gracefully: if we already have a deleted_notice entry, don't freak out when we try to save it again on the second try.
2010-05-24 07:47:15 -07:00
Zach Copley
114df39822
Need to always emit statusnet:notice_info so it's available in profile feeds
2010-05-18 15:17:05 -07:00
Zach Copley
5ea019c41a
Remove errant double HTML entity encoding in API source attribution
2010-05-18 15:16:23 -07:00
Zach Copley
68634f0496
Add source link attr to statusnet:notice_info element in Atom output for notices
2010-05-18 15:15:41 -07:00
Zach Copley
c78f67aa73
Refactor and centralize notice source link calculation
2010-05-18 15:15:27 -07:00
Zach Copley
d9fddff539
Add xmlns:statusnet and statusnet:notice_info element to Atom entries for notices
2010-05-18 15:15:14 -07:00
Brion Vibber
91367dbc21
Merge branch '0.9.x' into 1.0.x
2010-05-14 12:15:13 -07:00
Zach Copley
df034f0a1e
Need to always emit statusnet:notice_info so it's available in profile feeds
2010-05-12 15:08:01 -07:00
Brion Vibber
d9c1ac9053
Merge branch '0.9.x' into 1.0.x
2010-05-06 18:49:01 -07:00
Zach Copley
869bc32d0d
Remove errant double HTML entity encoding in API source attribution
2010-05-06 21:48:12 +00:00
Zach Copley
292ea33dbd
Add source link attr to statusnet:notice_info element in Atom output for notices
2010-05-06 21:48:11 +00:00
Zach Copley
22fde00def
Refactor and centralize notice source link calculation
2010-05-06 21:48:11 +00:00
Zach Copley
b547079b28
Add xmlns:statusnet and statusnet:notice_info element to Atom entries for notices
2010-05-06 21:48:11 +00:00
Brion Vibber
173778eab1
Merge branch '0.9.x' of gitorious.org:statusnet/mainline into 1.0.x
...
Conflicts:
lib/xmppmanager.php (resolved: code has moved to XmppPlugin.php)
2010-05-05 17:11:23 -07:00
Brion Vibber
e05415f621
Merge branch 'testing' of gitorious.org:statusnet/mainline into 0.9.x
...
Conflicts:
locale/ca/LC_MESSAGES/statusnet.po
locale/de/LC_MESSAGES/statusnet.po
locale/statusnet.pot
2010-05-05 17:07:50 -07:00
Zach Copley
b50f300566
Implement since_id and max_id param handling for /api/favorites
2010-05-05 14:46:36 -07:00
Brion Vibber
5414396a2e
IM cleanup on 1.0.x branch:
...
* Fake_XMPP back to Queued_XMPP, refactor how we use it and don't create objects and load classes until we need them.
* fix fatal error in IM settings while waiting for a Jabber confirmation.
* Caching fix for user_im_prefs
* fix for saving multiple transport settings
* some fixes for AIM & using normalized addresses for lookups
2010-04-30 15:29:05 -07:00
Brion Vibber
cae1329f3b
Merge branch '0.9.x' into 1.0.x
...
Conflicts:
lib/util.php
2010-04-30 13:16:13 -07:00
Brion Vibber
2260d6ec7c
Merge branch 'testing' into 0.9.x
...
Conflicts:
index.php
2010-04-29 15:14:51 -07:00
Evan Prodromou
5c05cd2b1a
Merge branch '1.0.x' of gitorious.org:statusnet/mainline into 1.0.x
2010-04-26 02:43:33 -04:00
Evan Prodromou
14adb7cc41
Give users more control over URL shortening
...
Users and administrators can set how long an URL can be before it's
shortened, and how long a notice can be before all its URLs are
shortened. They can also turn off shortening altogether.
Squashed commit of the following:
commit d136b39011
Author: Evan Prodromou <evan@status.net>
Date: Mon Apr 26 02:39:00 2010 -0400
use site and user settings to determine when to shorten URLs
commit 1e1c851ff3
Author: Evan Prodromou <evan@status.net>
Date: Mon Apr 26 02:38:40 2010 -0400
add a method to force shortening URLs
commit 4d29ca0b91
Author: Evan Prodromou <evan@status.net>
Date: Mon Apr 26 02:37:41 2010 -0400
static method for getting best URL shortening service
commit a9c6a3bace
Author: Evan Prodromou <evan@status.net>
Date: Mon Apr 26 02:37:11 2010 -0400
allow 0 in numeric entries in othersettings
commit 767ff2f7ec
Author: Evan Prodromou <evan@status.net>
Date: Mon Apr 26 02:36:46 2010 -0400
allow 0 or blank string in inputs
commit 1e21af42a6
Author: Evan Prodromou <evan@status.net>
Date: Mon Apr 26 02:01:11 2010 -0400
add more URL-shortening options to othersettings
commit 869a6be0f5
Author: Evan Prodromou <evan@status.net>
Date: Sat Apr 24 14:22:51 2010 -0400
move url shortener superclass to lib from plugin
commit 9c0c9863d5
Author: Evan Prodromou <evan@status.net>
Date: Sat Apr 24 14:20:28 2010 -0400
documentation and whitespace on UrlShortenerPlugin
commit 7a1dd5798f
Author: Evan Prodromou <evan@status.net>
Date: Sat Apr 24 14:05:46 2010 -0400
add defaults for URL shortening
commit d259c37ad2
Author: Evan Prodromou <evan@status.net>
Date: Sat Apr 24 13:40:10 2010 -0400
Add User_urlshortener_prefs
Add a table for URL shortener prefs, a corresponding class, and the
correct mumbo-jumbo in statusnet.ini to make everything work.
2010-04-26 02:40:36 -04:00
Brion Vibber
dd7b95c2cf
Merge branch 'master' into testing
2010-04-23 14:26:57 -07:00
Brion Vibber
7bdea95ccb
Fix to make blowing of replies stream cache more consistent when receiving replies. (Was being done at mail notify time instead of at save time for local replies; now moved to reply save time internally so it can't get forgotten)
2010-04-23 06:55:46 -07:00
Brion Vibber
df41287226
Merge branch 'testing' of gitorious.org:statusnet/mainline into 0.9.x
2010-04-20 13:52:58 +02:00
Brion Vibber
61098faf5d
Merge branch 'master' of gitorious.org:statusnet/mainline into testing
2010-04-20 13:52:18 +02:00
Brion Vibber
c48caa85e1
Fix email notifications for @-replies that come via OStatus.
...
* Moved notification sending from Notice::saveReplies to distrib queue handler, so it'll pull from the reply set we've saved regardless of how we got it.
* Set up gettext infrastructure for command-line scripts; gets localization mail notifications etc working from background queues.
* Adjusted locale switching: common_switch_locale() works at runtime for bg scripts, forces a message catalog update
2010-04-20 13:49:29 +02:00
Craig Andrews
39392e03a7
Merge branch '0.9.x' into 1.0.x
...
Conflicts:
actions/confirmaddress.php
actions/imsettings.php
2010-04-18 19:21:15 -04:00
Brion Vibber
f789928942
Merge branch 'testing' into 0.9.x
2010-04-14 11:15:48 +02:00
Brion Vibber
3da50c19df
Merge branch 'master' into testing
2010-04-14 11:15:21 +02:00
Brion Vibber
a21a172639
Fix for "#foo !foo" in same notice failing during save, causing failout before distribution. Move saveGroups after saveTags when saving notices; groups may save additional tags, so need to be moved after so the check for duplicates actually works.
2010-04-14 11:11:02 +02:00
Brion Vibber
d445b977fc
move comment to correct place
2010-04-14 11:09:54 +02:00
Brion Vibber
1eeb23e1e3
Merge branch 'testing' of gitorious.org:statusnet/mainline into 0.9.x
...
Conflicts:
actions/confirmaddress.php
2010-04-10 17:56:11 -07:00
Brion Vibber
edd883d3b0
Merge branch 'master' of gitorious.org:statusnet/mainline into testing
2010-04-10 17:54:37 -07:00
Brion Vibber
71c828de89
Allow blocking someone who's not currently subscribed to you (prevents seeing @-replies from them, or them subbing to you in future)
2010-04-10 17:52:40 -07:00
Siebrand Mazeland
af06c554a0
* DB -> Database in message
...
* some translator documentation added
2010-04-11 01:08:51 +02:00
Brion Vibber
6fb60fb57f
Fix for conversation check in @-reply notification email; i18n cleanup on mail messages: fixed some bad gettext usage, added trans doc comments.
2010-04-09 12:02:11 -07:00
Brion Vibber
d00942cce1
Fix for conversation check in @-reply notification email; i18n cleanup on mail messages: fixed some bad gettext usage, added trans doc comments.
2010-04-09 11:56:27 -07:00
Evan Prodromou
ce40425533
Merge branch 'master' of gitorious.org:statusnet/mainline
2010-04-09 14:06:24 -04:00
Brion Vibber
9cb0dab270
Run block checks on remote OStatus replies
2010-04-09 10:48:18 -07:00
Brion Vibber
f5b00404d8
Merge branch 'testing' of git@gitorious.org:statusnet/mainline into 0.9.x
2010-04-09 10:47:45 -07:00
Brion Vibber
80bd77ced3
Run block checks on remote OStatus replies
2010-04-09 10:46:18 -07:00
Evan Prodromou
727ea5a516
Merge branch '0.9.x' into 1.0.x
2010-04-07 10:47:29 -04:00
Evan Prodromou
76cce8a3c5
Merge branch 'master' into 0.9.x
2010-04-07 10:46:23 -04:00
Evan Prodromou
08745e4eac
Merge branch 'master' into testing
2010-04-07 10:45:44 -04:00
Evan Prodromou
82326a3b69
show PEAR_Error message, not the object
2010-04-07 10:43:14 -04:00
Brion Vibber
2f4438fe24
Merge branch '0.9.x' into 1.0.x
...
Conflicts:
actions/imsettings.php
lib/jabber.php
Made a quick attempt to merge the new JID validation into the XmppPlugin, have not had a chance to test that version live yet.
Should also move over the test cases.
2010-04-02 15:56:25 -07:00
Brion Vibber
e4d934827b
Merge branch 'testing' into 0.9.x
2010-04-02 15:48:39 -07:00
Brion Vibber
ec24f283dd
Don't save duplicate messages into a user's packed inbox. We've already got the packed box loaded at insert time, so we can simply unpack it and check before doing the update query.
...
Should help with dupes that come in when inbox distrib jobs die and get restarted, etc.
Conflicts:
classes/Inbox.php
Looks like this was implemented on master recently and not copied up to testing. Merging to my version on testing as I've added some doc comments and extracted a couple functions for future ease of use.
2010-04-02 15:45:03 -07:00
Brion Vibber
61394aa8ac
Don't save duplicate messages into a user's packed inbox. We've already got the packed box loaded at insert time, so we can simply unpack it and check before doing the update query.
...
Should help with dupes that come in when inbox distrib jobs die and get restarted, etc.
2010-04-02 15:43:30 -07:00
Brion Vibber
d844e6bde5
Merge branch 'testing' of git@gitorious.org:statusnet/mainline into 0.9.x
2010-04-01 11:09:45 -07:00
Brion Vibber
f1c01f9ead
Temporary hack until notice_profile_id_idx is updated
...
to (profile_id, id) instead of (profile_id, created, id).
It's been falling back to PRIMARY instead, which is really
very inefficient for a profile that hasn't posted in a few
months. Even though forcing the index will cause a filesort,
it's usually going to be better. Even for large profiles it
seems much faster than the badly-indexed query.
2010-04-01 10:17:17 -07:00
Brion Vibber
9f2cfd20f8
Temporary hack until notice_profile_id_idx is updated
...
to (profile_id, id) instead of (profile_id, created, id).
It's been falling back to PRIMARY instead, which is really
very inefficient for a profile that hasn't posted in a few
months. Even though forcing the index will cause a filesort,
it's usually going to be better. Even for large profiles it
seems much faster than the badly-indexed query.
2010-04-01 10:15:40 -07:00
Evan Prodromou
9efe5393ff
Revert "Revert "don't insert the same notice twice into an inbox""
...
This reverts commit a09b27ff41
.
2010-04-01 12:57:52 -04:00
Evan Prodromou
a09b27ff41
Revert "don't insert the same notice twice into an inbox"
...
This reverts commit 650074c648
.
2010-04-01 12:52:26 -04:00
Evan Prodromou
650074c648
don't insert the same notice twice into an inbox
2010-03-31 15:54:35 -04:00
Brion Vibber
df9eb4164a
Merge branch 'testing' of git@gitorious.org:statusnet/mainline into 0.9.x
2010-03-31 12:48:24 -07:00