Commit Graph

283 Commits

Author SHA1 Message Date
Brion Vibber
babdc430f9 Switch Twitter bridge settings page to be a ProfileSettingsAction, as ConnectSettingsAction is gone 2011-02-28 12:22:21 -08:00
Brion Vibber
2bd9532ebe Merge branch 'master' into 0.9.x 2011-02-28 10:18:18 -08:00
Brion Vibber
9ec395b07a Workaround for reply timeline since_id issue: save the notice.created value into reply.modified, so we can key off it as expected.
As a hack this removes the mysql_timestamp bit from the field settings on reply.modified so that our value actually gets saved. This *should* work ok as long as system timezone is set correctly, which we now set to UTC to match when connecting.
2011-02-25 13:22:13 -08:00
Brion Vibber
59a413cf5e Merge branch 'master' into 0.9.x 2011-02-25 10:16:00 -08:00
Brion Vibber
8eca1b8dac Fix ticket #3057: apply HTML escaping on special characters in Twitter import
Changes the replacement of Twitter "entities" from in-place reverse ordering ('to preserve indices') to a forward-facing append-in-chunks that pulls in both the text and link portions, and escapes them all.
This unfortunately means first *de*-escaping the < and > that Twitter helpfully adds for us.... and any literal &blah;s that get written. This seems to match Twitter's web UI, however horrid it is.
2011-02-21 16:36:39 -08:00
Brion Vibber
3fb4b92cd6 Fix ticket #3001: Twitter bridge was replacing original form of @-mentions with canonical form unexpectedly
Now using the original text form of @-mentions and #-tags, as in Twitter's own HTMLification.
Canonical forms are still used in generating links, where it's polite to match the canonical form.
2011-02-21 15:01:57 -08:00
Siebrand Mazeland
a86d293c93 Localisation updates from http://translatewiki.net. 2011-02-14 19:43:16 +01:00
Brion Vibber
2bf8a68908 Fix for ticket #3039: TwitterBridge was incorrectly sending repeats of Twitter-bound messages if the repeater has sending of things to Twitter disabled.
A repeat/retweet is roughly equivalent to an active direct post, so should follow the posting rules, rather than always sending over as we do for fave notifications.
2011-02-10 10:53:24 -08:00
Brion Vibber
a76f067631 Partial revert of 073f3e99: restores the original non-hashbang URLs for twitter users as the remote profile.
Should fix issue #3027: twitter user avatars not getting imported.

Due to the change in URI, all twitter users that had been previously seen were getting new profile entries, which tried to save the same avatar. This would fail as Avatar.url has a unique index.
Note: now anything new seen in the last couple days in production will still potentially conflict.
2011-02-09 13:46:48 -08:00
Evan Prodromou
c8386c7ecb TwitterBridge uses Plugin::staticPath() 2011-02-03 11:03:24 -05:00
Siebrand Mazeland
e6e402cefd Localisation updates from http://translatewiki.net. 2011-01-29 23:10:15 +01:00
Brion Vibber
621a7cb36d Merge branch '0.9.x' into testing 2011-01-25 12:57:49 -08:00
Evan Prodromou
592e2be5e1 Make new menu the default menu
There's a new menu layout in this version of the software. It was
implemented as a plugin in 0.9.x to avoid clashes with existing themes,
but we're going to break that compatibility in this version, so we're just going for it.

This change involved moving all the changes in NewMenuPlugin into the
default code that was calling it. In addition, since
accountsettingsaction and connectsettingsaction differed only by menu,
I removed them, changed all references to them to the settingsmenu, and moved
the combined nav to its own class.

Let's put that episode behind us.

The CSS shim that was loaded by NewMenuPlugin for certain themes and certain actions
was removed.
2011-01-23 12:35:35 -05:00
Evan Prodromou
e53793edf4 make 'admin' a safe user name
'admin' is a pretty common username that people try when installing;
it was blacklisted because all of our admin panels were at /admin/*,
which would conflict with the admin user's namespace.

Changed the location of all admin panels to /panel/*, blacklisted the
nickname 'panel', and allowed 'admin'. Tested with a fresh install;
seems to work great.
2011-01-23 10:18:35 -05:00
Siebrand Mazeland
4642b024cc Localisation updates from http://translatewiki.net. 2011-01-22 20:17:19 +01:00
Brion Vibber
1f4b63d533 Add email field to Twitter registration form; needed when RequireValidatedEmail plugin is present.
Since Twitter doesn't provide email address back to us here, we only prefill the field if we have an invite.
2011-01-20 17:02:34 -08:00
Brion Vibber
c1e4be6ab9 Event hook points needed to run Recaptcha on Twitter registration 2011-01-20 15:49:57 -08:00
Brion Vibber
7a9040e360 Fix inconsistent use of 'name' vs 'fullname' in tw_fields member variable 2011-01-20 15:47:51 -08:00
Brion Vibber
6fa0bea76d Merge branch '0.9.x' into testing 2011-01-20 15:12:57 -08:00
Brion Vibber
6455461c19 Merge branch 'master' into 0.9.x 2011-01-20 15:08:31 -08:00
Brion Vibber
963e7576f2 Merge branch 'testing' into moveaccount 2011-01-19 10:41:14 -08:00
Brion Vibber
56e2bc10d9 Cleanup stray PHP 4-style references in hook calls for navigation bars. We can't replace the live action from here, and don't need a reference to keep the object mutable. Dumping the references helps ensure we don't end up getting errors when things calling the hooks might forget to use the reference and the PHP error reporting settings expose this fact at us. 2011-01-18 12:34:27 -08:00
Brion Vibber
ea31051401 TwitterBridge fix: merge down remaining 64-bit Snowflake ID fixes for twitterstatusfetcher.php from 0.9.x
Original fixes in c169dcb5221cf3dd452c291bf97374bb459cc5b9; didn't get merged in 39cad55711 because the code had been broken out to another file, but manual merge went smooth.

These affect twitterstatusfetcher.php on all 32-bit installs and some 64-bit installs (depending on whether the version of the JSON library reads the large numbers as long or double internally). 64-bit bug is harder to see as it tends to manifest as off-by-one due to losing a bit of precision off the end.
2011-01-18 11:08:32 -08:00
Siebrand Mazeland
f1820459a8 Localisation updates from http://translatewiki.net. 2011-01-15 01:30:01 +01:00
Siebrand Mazeland
380ca7187c Localisation updates from http://translatewiki.net. 2011-01-14 12:10:05 +01:00
Brion Vibber
d0d39b51b8 Fixes for RegisterThrottle plugin: alt registration methods (OpenID, FBConnect, Twitter) weren't triggering the throttle check or recording of IPs.
Added StartRegistrationTry/EndRegistrationTry calls into those three, and moved the actual recording hook to EndUserRegister which is guaranteed to be called from User::register (so we don't need to worry about other auth methods forgetting to call the other UI-code hooks).
2011-01-05 12:28:02 -08:00
Zach Copley
073f3e99cb Update Twitter calls to use documented API endpoints
see: http://groups.google.com/group/twitter-api-announce/msg/34b013f4d092737f
2010-12-17 15:57:22 -08:00
Siebrand Mazeland
cf824621b9 Localisation updates from http://translatewiki.net. 2010-12-16 16:30:30 +01:00
Brion Vibber
39cad55711 TwitterBridge: partial merge of id_str usage from 0.9.x for improved 32-bit and pre-5.2.10 compatibility. (on 64-bit in 5.2.6 we can pull the integer IDs, but silently lose some precision on the end.)
Fixes for Twitter bridge breakage on 32-bit servers. New "Snowflake" 64-bit IDs have become too big to fit in the integer portion of double-precision floats, so to reliably use these IDs we need to pull the new string form now.
Machines with 64-bit PHP installation should have had no problems (except on Windows, where integers are still 32 bits)

Conflicts:

	plugins/TwitterBridge/twitterimport.php <- as this hasn't been broken out, the import code is NOT FULLY UPDATED HERE.
2010-12-13 12:13:24 -08:00
Brion Vibber
d8d9edfc99 Merge branch 'master' into 0.9.x 2010-12-08 15:01:25 -08:00
Brion Vibber
db4d69f099 Quick hack to discard twitter broadcast queue items on failure *IF* config option 'twitter' 'ignore_errors' is on:
$config['twitter']['ignore_errors'] = true;

A longer-term solution is to patch up the indirect retry handling to count retries better, or delay for later retry sensibly.
2010-12-07 12:11:37 -08:00
Brion Vibber
749367e12f Merge branch 'master' of gitorious.org:statusnet/mainline into 0.9.x
Conflicts:
	lib/router.php
2010-11-30 16:34:52 -08:00
Brion Vibber
b4fc54c308 Flush router cache when saving Twitter admin settings: adding/removing keys can enable/disable some actions. This avoids having users' Twitter settings unreachable after adding your keys to an installation with TwitterBridge on but not pre-configured. 2010-11-30 12:46:33 -08:00
Siebrand Mazeland
6bdce2b1e5 Localisation updates from http://translatewiki.net. 2010-11-30 21:35:25 +01:00
Siebrand Mazeland
ee67a0673d Localisation updates from http://translatewiki.net. 2010-11-30 18:53:04 +01:00
Brion Vibber
8161bf0797 Merge branch 'namecase' into 0.9.x 2010-11-29 16:47:51 -08:00
Brion Vibber
dc350b5463 Work in progress on nickname validation changes. lib/nickname.php appears to have been destroyed by NetBeans and will be rewritten shortly. Sigh. 2010-11-29 14:15:25 -08:00
Siebrand Mazeland
ed0e91c7a1 Localisation updates from http://translatewiki.net. 2010-11-29 20:28:28 +01:00
Brion Vibber
c65f199486 logging tweak for Twitter status ID issue 2010-11-23 09:49:32 -08:00
Brion Vibber
c169dcb522 Fixes for Twitter bridge breakage on 32-bit servers. New "Snowflake" 64-bit IDs have become too big to fit in the integer portion of double-precision floats, so to reliably use these IDs we need to pull the new string form now.
Machines with 64-bit PHP installation should have had no problems (except on Windows, where integers are still 32 bits)
2010-11-23 09:28:47 -08:00
Brion Vibber
37994e3ff1 Merge branch 'master' into 0.9.x 2010-11-19 15:53:29 -08:00
Brion Vibber
94f2f96f2e 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.
2010-11-19 15:51:08 -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
398e622fec Save attached URLs when importing a Twitter status: this lets our thumbnail detection handle photos and videos linked to by Twitter posters. 2010-11-12 17:40:34 -08:00
Brion Vibber
65eeb7cba5 Merge branch 'master' of gitorious.org:statusnet/mainline into 0.9.x
Conflicts:
	actions/newgroup.php
2010-11-12 13:32:48 -08:00
Brion Vibber
6291e8201f 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. :)
2010-11-12 13:06:41 -08:00
Siebrand Mazeland
ca6d7f1042 Localisation updates from http://translatewiki.net. 2010-11-05 01:25:50 +01:00
Brion Vibber
9cbda32768 Pull out the 'tweetctl' queue for now; these should go over control signals, and actual handling isn't implemented yet anyway. 2010-11-02 16:51:07 -07:00
Brion Vibber
a2f0f68d75 fakestream.php can now take --all option to pull the latest messages from multiple locally-authed accounts when generating simulated sitestreams info 2010-11-02 16:43:01 -07:00
Brion Vibber
445b306b54 fakestream.php: script to build an emulated Twitter Site Stream from live Twitter data, for testing. 2010-11-02 16:27:14 -07:00
Brion Vibber
28703deb8f Allow custom apiroot for site streams testing on streamtest 2010-11-02 16:26:51 -07:00
Brion Vibber
62408fef09 Work in progress on twitter import daemon 2010-10-29 14:12:40 -07:00
Brion Vibber
d743539cf7 Fixups for twitter streaming daemon 2010-10-29 13:41:15 -07:00
Brion Vibber
47eada3a95 Work in progress on site streams-aware TwitterDaemon 2010-10-29 13:18:03 -07:00
Brion Vibber
86adc575ec TweetInQueueHandler: run incoming tweets through the queues to keep the Twitter streaming daemon clear. 2010-10-29 13:14:12 -07:00
Brion Vibber
15b108620e Fix a couple 'continue's from old looping code in Twitter importer (-> return null) 2010-10-29 13:06:32 -07:00
Brion Vibber
e76028b629 Work in progress: starting on new TwitterDaemon using the Site Streams API -- code is incomplete, pulling bits from streamtest.php pending a chance to test the actual site-streams mode 2010-10-28 18:26:48 -07:00
Brion Vibber
e62254f8cc Merge branch '0.9.x' into twitstream 2010-10-28 16:30:40 -07:00
Siebrand Mazeland
7a564276a9 Localisation updates from http://translatewiki.net. 2010-10-28 01:58:43 +02:00
Brion Vibber
8ff44a1fb9 Merge branch '0.9.x' into twitstream 2010-10-26 15:39:31 -07:00
Siebrand Mazeland
1545c1228b Localisation updates from http://translatewiki.net. 2010-10-23 20:50:55 +02:00
Brion Vibber
e292d8fb65 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
2010-10-22 12:10:11 -07:00
Siebrand Mazeland
e6df1b19df Localisation updates from http://translatewiki.net 2010-10-18 22:03:29 +02:00
Brion Vibber
22047f6412 Merge branch '0.9.x' into twitstream 2010-10-13 15:37:54 -07:00
Siebrand Mazeland
5215423ea9 Localisation updates from http://translatewiki.net. 2010-10-09 16:15:48 +02:00
Brion Vibber
67dc78b621 Merge branch 'fatals' into 0.9.x 2010-10-08 11:28:51 -07:00
Brion Vibber
5fe59322bc Check for Twitter foreign link actually existing before trying to delete it; friendlier error message in TwittersettingsAction 2010-10-08 11:12:36 -07:00
Brion Vibber
9c3fd10257 Prelim --all mode on streamtest.php to use site streams; doesn't use the destination user for import yet, and not actually tested yet until I'm whitelisted for the beta. :) 2010-10-05 17:08:04 -07:00
Brion Vibber
408483f771 Fix up Twitter JSON formatting to be consistent between the polling and streaming API interfaces; basic stream tester can now import your notices (ooooh) 2010-10-05 14:26:11 -07:00
Brion Vibber
0eaa26476c Split the guts of Twitter status -> notice import from twitterstatusfetcher daemon into TwitterImport class which can be called from other places, letting us reuse code for the streaming API. 2010-10-05 13:57:32 -07:00
Brion Vibber
dc6c0f325c Cleanup on input path 2010-10-05 13:41:15 -07:00
Brion Vibber
eb04df583a Buncha cleanup 2010-10-05 13:25:28 -07:00
Brion Vibber
76353ede54 Clean up event handling a bit 2010-10-05 12:42:55 -07:00
Brion Vibber
5058e8fd14 Twitter streaming API reader: Cleanup input handling & split from HTTP headers to body 2010-10-05 12:17:16 -07:00
Brion Vibber
3b304fc0ef Initial stub code for pulling data from Twitter's User Streams and Site Streams interfaces. This should allow us to make a much more efficient background importer which can use a relatively small number of connections getting push data for either a single user or for many users with credentials on the site. 2010-10-04 18:28:54 -07:00
Siebrand Mazeland
458512aafd Localisation updates from http://translatewiki.net 2010-10-03 22:46:38 +02:00
Siebrand Mazeland
08054e85fe Localisation updates from http://translatewiki.net. 2010-10-01 22:34:59 +02:00
Brion Vibber
1acc7d66c6 Always specify UTF-8 targt charset for html_entity_decode(); default is 8-bit ISO-8859-1 which causes things to break when we later pass them through things that expect to work with UTF-8. For instance, running through preg_replace() with the /u option results in NULL, leading to problems with OStatus and SubMirror generating their plaintext versions and doing length-cropping. 2010-09-30 11:29:31 -07:00
Siebrand Mazeland
ec7ab3af4d Localisation updates from http://translatewiki.net
* first export of L10n for languages other than English. Could use some testing/QA.
2010-09-28 01:09:29 +02:00
Siebrand Mazeland
870be512d2 Update POT files for plugins. 2010-09-23 00:37:16 +02:00
Evan Prodromou
78ed0348b0 Merge remote branch 'gitorious/0.9.x' into 0.9.x 2010-09-21 14:07:48 -04:00
Siebrand Mazeland
c932c0fdc1 Update pot files for plugins. 2010-09-19 17:44:29 +02:00
Siebrand Mazeland
ecafae8472 * Remove trailing newline in e-mail message.
* Superfluous whitespace removed.
2010-09-19 15:52:53 +02:00
Siebrand Mazeland
8135f7d960 Update pot files for plugins. 2010-09-19 00:24:48 +02:00
Siebrand Mazeland
02299d5bd7 * i18n/L10n updates.
* add FIXMEs for bad i18n.
* add translator hints.
2010-09-19 00:06:21 +02:00
Siebrand Mazeland
16d234f9af Remove superfluous whitespace 2010-09-18 23:49:49 +02:00
Siebrand Mazeland
ba6538ed78 * i18n/L10n updates
* whitespace updates.
2010-09-18 17:45:18 +02:00
Evan Prodromou
b2abae433d Merge remote branch 'gitorious/0.9.x' into 0.9.x 2010-09-15 15:57:41 -04:00
Siebrand Mazeland
db1d348135 Update/add pot files for plugins. 2010-09-15 01:16:45 +02:00
Evan Prodromou
398df867de use capturing parens for matching at-mentions in twitterstatusfetcher 2010-09-10 09:21:01 -04:00
Evan Prodromou
deb8f2a38b make our own twitter links if Twitter doesn't give us entities 2010-09-10 09:10:53 -04:00
Evan Prodromou
42f1ec85ea change the event we use for deleting a linked status on Twitter 2010-09-08 16:40:37 -04:00
Evan Prodromou
e40ed1fd56 move notice_to_status initialization code to run-once script 2010-09-08 16:10:07 -04:00
Evan Prodromou
5c98dfd58c text substitution is Unicode-aware for twitterstatusfetcher 2010-09-07 15:54:06 -04:00
Evan Prodromou
2d18963b4c Fix pkeyget call
Fix the pkeyget call in Twitter_synch_Status
2010-09-07 15:34:10 -04:00
Evan Prodromou
b6440a206d staticGet -> pkeyGet in Twitter_synch_status 2010-09-07 15:29:36 -04:00
Evan Prodromou
d37f0da077 debug statements for setting/getting last id 2010-09-07 11:53:26 -04:00
Evan Prodromou
9793e4ceb4 Store foreign ID for synch info, not user ID 2010-09-07 10:53:11 -04:00
Evan Prodromou
21bea14140 remove data dump of retrieved statuses 2010-09-07 04:42:23 -04:00
Evan Prodromou
8facfdcfee Correct DB_DataObject constant in Twitter_synch_status 2010-09-07 04:35:14 -04:00