Commit Graph

16968 Commits

Author SHA1 Message Date
abjectio 507f9a28c0 Merge branch 'nightly' of git.gnu.io:gnu/gnu-social into nightly 2015-11-05 17:34:34 +01:00
Mikael Nordfeldth 7ccd36849e Merge branch 'master' of git.gnu.io:gnu/gnu-social into nightly
Conflicts:
	plugins/OStatus/OStatusPlugin.php

master vs. nightly thing
2015-11-05 16:16:02 +01:00
mmn f345f1d605 Merge branch 'renew-pshb' into 'master'
Actually use the renew code

We have the code to check once a day and renew, but currently it's
just in a script directory.  This change adds an event listener
hook to check and renew subscriptions daily.

Closes #83

See merge request !38
2015-11-05 15:13:16 +00:00
mmn deb5275c7a Merge branch 'object-types-are-absolute' into 'master'
Stop incorrecly changing object_type to relative URI

All other data is using absolute URI for object_type.

See merge request !40
2015-11-05 15:12:41 +00:00
mmn 959f971a65 Merge branch 'fix-webfinger-link-header' into 'master'
Add all link headers, not just the last one

Given the way Link headers work, it does not make any sense to
just replace all other ones.  Especially when we ourselves are adding
in a loop.

See merge request !47
2015-11-05 15:12:10 +00:00
mmn 9f83e60f25 Merge branch 'pings-interop' into 'master'
Clean up Linkback plugin and add Webmention support

Closes #82

Fixes Pingback, adds Webmention, makes linkbacks opt-out-able for users (at request of quitter.se admin)

See merge request !36
2015-11-05 15:11:29 +00:00
Mikael Nordfeldth 0e32729e59 Merge branch 'nightly' of git.gnu.io:gnu/gnu-social into nightly 2015-11-05 16:07:42 +01:00
Mikael Nordfeldth c950f18546 Merge branch 'master' into nightly
Some merge requests that were aimed at master
2015-11-05 16:07:05 +01:00
mmn 96e0867d4c Merge branch 'master' into 'master'
update URL

bugz.foocorp.net and gitorious.net are outdated
git.gnu.io is current

See merge request !58
2015-11-05 15:05:55 +00:00
mmn 45b24286e5 Merge branch 'status-204' into 'master'
Accept 204 for PuSH subscription

Some hubs (notably, pushpress, used by wordpress.com) return 204 to mean success.

This used to be allowed by the spec, so no harm in accepting it.

See merge request !48
2015-11-05 15:03:42 +00:00
mmn f513ceac7d Merge branch 'handle-rss-guid' into 'master'
Respect isPermalLink=false on RSS guid



See merge request !49
2015-11-05 15:02:20 +00:00
mmn 5c768d7ef7 Merge branch 'twitter-verb' into 'nightly'
TwitterBridge: Add $notice->verb on import

Since /plugins/ActivityModeration::onStartNotieSave expects it to be there when calling ActivityUtils::compareVerbs. Otherwise, the following exception is unhandled:

2015-10-26 15:33:03 LOG_ERR: [sn.chromic.org:queuedaemon.php:25931] Unhandled exception: No URI to resolve in ActivityUtils::resolveUri  
 0: /lib/activityutils.php(353): ActivityUtils::resolveUri(NULL)  
 1: /lib/activityutils.php(364): ActivityUtils::compareTypes(NULL, Array)  
 2: /plugins/ActivityModeration/ActivityModerationPlugin.php(113): ActivityUtils::compareVerbs(NULL, Array)  
 3: [internal function]: ActivityModerationPlugin->onStartNoticeSave(Object(Notice))  
 4: /lib/event.php(105): call_user_func_array(Array, Array)  
 5: /plugins/TwitterBridge/lib/twitterimport.php(173): Event::handle('StartNoticeSave', Array)  
 6: /plugins/TwitterBridge/lib/twitterimport.php(72): TwitterImport->saveStatus(Object(stdClass))  
 7: /plugins/TwitterBridge/lib/tweetinqueuehandler.php(52): TwitterImport->importStatus(Object(stdClass))  
 8: /lib/dbqueuemanager.php(94): TweetInQueueHandler->handle(Array)  
 9: /lib/iomaster.php(287): DBQueueManager->poll()  
 10: /lib/iomaster.php(161): IoMaster->poll()  
 11: /scripts/queuedaemon.php(111): IoMaster->service()  
 12: /lib/spawningdaemon.php(189): QueueDaemon->runThread()  
 13: /lib/spawningdaemon.php(118): SpawningDaemon->initAndRunChild(2)  
 14: /lib/daemon.php(168): SpawningDaemon->run()  
 15: /scripts/queuedaemon.php(181): Daemon->runOnce()  
 16: {main}

See merge request !50
2015-11-05 15:01:07 +00:00
mmn 4b7c904fe0 Merge branch 'correct-author-for-repeat' into 'master'
Markup correct author for a repeat

The original author is not the author of this entry, but of the original entry.

See merge request !51
2015-11-05 15:00:35 +00:00
mmn a3ddc4ec0c Merge branch 'support-atom-namespaces-in-rss-author' into 'master'
Support more author types on RSS

Specifically, any ActivityStreams or ATOM namespaces being used on
an rss channel.

See merge request !52
2015-11-05 15:00:07 +00:00
mmn 3ca4af6868 Merge branch 'group-join' into 'nightly'
Add User_group::getObjectType

Since 174586bd51, I'm unable to join groups with the logs complaining
about getObjectType not existing on the User_group object.

Note: I'm not sure if this is the correct value to return here, but I
was able to joing groups successfully using this. Let me know if it needs
to be changed and I'll update the Merge Request!

See merge request !56
2015-11-05 14:57:29 +00:00
Matthias Fritzsche ba623d2b4e update URL
bugz.foocorp.net and gitorious.net are outdated
git.gnu.io is current
2015-11-04 12:31:23 +01:00
Stephen Paul Weber a9b1b60a97 Refactor on File::processNew
The code was so involved there was even a comment asking for a refactor.

Now, File_redirection::where always returns a nice File_redirection
object instead of an array or string or nothing.  The object is
either one which already existed or else a new, unsaved object.

Instead of duplicating "does it exist" checks everywhere, do it in
File_redirection::where.  You either get what exists or something to save.

An unsaved File_redirection may be paired with an unsaved File.
You will want to save the File first (using ->saveFile()) and put the
id in File_redirection#file_id before saving.
2015-11-02 05:15:08 +00:00
Chimo d7b58491ce Add User_group::getObjectType
Since 174586bd51, I'm unable to join groups with the logs complaining
about getObjectType not existing on the User_group object.
2015-10-29 20:11:57 -04:00
Stephen Paul Weber a74572b469 Use mb_strlen 2015-10-28 01:46:08 +00:00
Stephen Paul Weber 6ac8b845bf Improvements inspired by the OStatus code 2015-10-28 01:45:51 +00:00
Stephen Paul Weber fe4c8a771b Replace text with nickname if shorter 2015-10-28 01:24:58 +00:00
Stephen Paul Weber 0aa759fab7 Allow mentioning bare domains with OStatus 2015-10-28 01:24:42 +00:00
Stephen Paul Weber 2edf535ecd Add length argument to plugin 2015-10-28 01:24:29 +00:00
Stephen Paul Weber 85d5cfede5 Link to add to Firefox as feedreader 2015-10-28 01:10:28 +00:00
Stephen Paul Weber e58c529c53 If we are given a direct URL to a feed, use that 2015-10-28 00:54:20 +00:00
Stephen Paul Weber 2207eacc92 New length format for other kinds of mentions 2015-10-28 00:15:08 +00:00
Stephen Paul Weber fed0895d98 Move the functionality to a plugin
Use an associated model to prevent race conditions on creating the
profile object.
2015-10-28 00:11:54 +00:00
Mikael Nordfeldth 1b81131c51 Shared notices didn't save the URL 2015-10-28 00:13:17 +01:00
Stephen Paul Weber e1de6e0aa9 Support more author types on RSS
Specifically, any ActivityStreams or ATOM namespaces being used on
an rss channel.
2015-10-27 18:43:57 +00:00
Mikael Nordfeldth ebbb9a8990 Bad HTML in translation. 2015-10-27 19:05:07 +01:00
Stephen Paul Weber 54e87dd2c3 Morkup correct author for a repeat
The original author is not the author of this entry, but of the original entry.
2015-10-27 17:19:03 +00:00
Chimo 3ae81f095c TwitterBridge: Add $notice->verb on import
Since /plugins/ActivityModeration::onStartNotieSave expects it to be there when calling ActivityUtils::compareVerbs. Otherwise, the following exception is unhandled:

2015-10-26 15:33:03 LOG_ERR: [sn.chromic.org:queuedaemon.php:25931] Unhandled exception: No URI to resolve in ActivityUtils::resolveUri
 #0 /lib/activityutils.php(353): ActivityUtils::resolveUri(NULL)
 #1 /lib/activityutils.php(364): ActivityUtils::compareTypes(NULL, Array)
 #2 /plugins/ActivityModeration/ActivityModerationPlugin.php(113): ActivityUtils::compareVerbs(NULL, Array)
 #3 [internal function]: ActivityModerationPlugin->onStartNoticeSave(Object(Notice))
 #4 /lib/event.php(105): call_user_func_array(Array, Array)
 #5 /plugins/TwitterBridge/lib/twitterimport.php(173): Event::handle('StartNoticeSave', Array)
 #6 /plugins/TwitterBridge/lib/twitterimport.php(72): TwitterImport->saveStatus(Object(stdClass))
 #7 /plugins/TwitterBridge/lib/tweetinqueuehandler.php(52): TwitterImport->importStatus(Object(stdClass))
 #8 /lib/dbqueuemanager.php(94): TweetInQueueHandler->handle(Array)
 #9 /lib/iomaster.php(287): DBQueueManager->poll()
 #10 /lib/iomaster.php(161): IoMaster->poll()
 #11 /scripts/queuedaemon.php(111): IoMaster->service()
 #12 /lib/spawningdaemon.php(189): QueueDaemon->runThread()
 #13 /lib/spawningdaemon.php(118): SpawningDaemon->initAndRunChild(2)
 #14 /lib/daemon.php(168): SpawningDaemon->run()
 #15 /scripts/queuedaemon.php(181): Daemon->runOnce()
 #16 {main}
2015-10-27 10:12:33 -04:00
Stephen Paul Weber 03c68d283d Respect isPermalLink=false on RSS guid 2015-10-27 03:18:04 +00:00
Stephen Paul Weber 4c2bc465a0 Accept 204 for PuSH subscription
Some hubs (notably, pushpress, used by wordpress.com) return 204 to mean success.

This used to be allowed by the spec, so no harm in accepting it.
2015-10-27 03:16:39 +00:00
Stephen Paul Weber fae7bc0bc0 Add all link headers, not just the last one
Given the way Link headers work, it does not make any sense to
just replace all other ones.  Especially when we ourselves are adding
in a loop.
2015-10-25 18:42:37 +00:00
Stephen Paul Weber dc36621dc2 Linkback to mentioned profiles 2015-10-25 17:22:15 +00:00
Stephen Paul Weber 21979bb7d7 Allow users to @mention URLs
Because inferring who you mean (especially in the presence of remotes) can suck
2015-10-23 21:15:40 +00:00
Stephen Paul Weber 033ed7e4aa Mark up link to original as a repost for repeats
http://indiewebcamp.com/repost
2015-10-23 19:12:25 +00:00
Stephen Paul Weber cd22be3374 Only show parent wrapper if there are some 2015-10-23 18:51:33 +00:00
Stephen Paul Weber ddfb56d920 TwitterBridge also check for dupe by uri
In case a twitter item came in from some other source (such as linkback).
2015-10-23 18:03:44 +00:00
Stephen Paul Weber 983fd75ec9 Include rel-syndication link for tweets
As per: <http://microformats.org/wiki/rel-syndication>
This allows some services to find a post in Twitter.
2015-10-23 17:56:02 +00:00
Stephen Paul Weber 2030ddfc79 Reduce duplication by handling both cases in find 2015-10-23 16:26:35 +00:00
Stephen Paul Weber 439b466979 Use HTTPS for links to Twitter profiles as well 2015-10-23 16:24:04 +00:00
Stephen Paul Weber d1f1063900 Twitter URIs have changed
The #! was deprecated ages ago, and Twitter forces HTTPS these days.
2015-10-23 16:19:54 +00:00
Stephen Paul Weber 123bb445db Always send Twitter replies to Twitter
If is_twitter_notice($notice->reply_to) then send it to Twitter, even
if twitter import is off.  It's a reply to a Twitter notice, it should
go there!
2015-10-23 15:37:11 +00:00
Stephen Paul Weber 8649591626 Stop incorrecly changing object_type to relative URI
All other data is using absolute URI for object_type.
2015-10-22 17:14:59 +00:00
Stephen Paul Weber 4b31bc3fd2 Enqueue renewals
Better for request times, etc
2015-10-21 01:50:03 +00:00
Stephen Paul Weber df21c3c95d Renew 1 day *before* the end, not 1 day *after* 2015-10-21 01:49:26 +00:00
Stephen Paul Weber df46f123dd Actually use the renew code
We have the code to check once a day and renew, but currently it's
just in a script directory.  This change adds an event listener
hook to check and renew subscriptions daily.
2015-10-21 01:10:48 +00:00
Stephen Paul Weber fc3f1f6942 Add direct link to parent notice
This is partly for usability, and partly to make Linkbacks for replies
work (when the plugin is enabled).
2015-10-19 18:40:40 +00:00