Mikael Nordfeldth
d3a8896b2a
Merge commit 'refs/merge-requests/26' of https://gitorious.org/social/mainline into merge-requests/26
2014-12-09 13:45:15 +01:00
Joshua Judson Rosen
f71eeaee5a
OStatus/scripts/update-profile-data.php: print updated fullnames
...
Now that we can actually update them again.
2014-12-08 22:06:29 -05:00
Mikael Nordfeldth
812d1eead9
Stronger typing in Ostatus_profile
2014-12-08 19:52:00 +01:00
Mikael Nordfeldth
72d1c3c73e
fetch conversation URI in processPost, not processShare
2014-11-27 16:51:21 +01:00
Mikael Nordfeldth
bdb4a41696
Use remote conversation URI info to stitch convos together
...
If we know the URI sent from the remote party, and we don't know the
notice it is replying to, we might still be able to put it in the same
conversation thread!
2014-11-27 14:06:10 +01:00
Mikael Nordfeldth
8056097478
Try to lookup the profile if we don't know it yet
2014-11-24 23:50:42 +01:00
Mikael Nordfeldth
720c2c9ff2
Ostatus_profile->checkAuthorship returns Profile
...
not Ostatus_profile
2014-11-24 23:40:06 +01:00
Mikael Nordfeldth
3bf1478f97
Bad parameter count for checkAuthorship
...
At the same time we change this to call ActivityUtils::checkAuthorship
instead to let the retrieval/verification go through event handling.
rozzin (Joshua Judson Rosen) found this error. Thanks.
2014-11-24 12:49:20 +01:00
Joshua Judson Rosen
4b875e0fd0
Fix OStatus groups by making Ostatus_profile::localProfile() work for groups
...
We need to look up a feed profile for HandleFeedEntryWithProfile events,
regardless of whether they're an OStatus user, group, or something else;
this is the least hairy way of doing that--the alternative being
to keep spreading the same logic all over the calling code.
Theoretically, this change might allow OStatusGroups to be recorded
as the authors of activities if they pass through any authorless
activities; but that's why we have checkAuthorship().
2014-11-24 12:30:37 +01:00
Joshua Judson Rosen
d2e1a8c706
Ostatus_profile::checkAuthorship(): throw ServerException when bogus non-authorship is detected
...
Similarly to what ActivityUtils::checkAuthorship does; try to ensure
that activities from ambiguous OStatus feeds (groups and peopletags)
that require explicit authorship don't get in without explicit authors.
2014-11-24 12:29:41 +01:00
Mikael Nordfeldth
496acdc7d9
normalizing acct: URI just to be sure
2014-11-16 18:29:05 +01:00
Mikael Nordfeldth
faae9d069a
We're using URLMapper, not Net_URL_Mapper
2014-11-07 15:24:05 +01:00
Mikael Nordfeldth
29ac42addd
Diaspora public key published in WebFinger
2014-11-06 21:05:31 +01:00
Mikael Nordfeldth
57b5e2483d
A little bit more debugging.
2014-10-25 14:23:15 +02:00
Mikael Nordfeldth
2d0c7c2c99
ensureWebfinger was never complete in StatusNet. Worked a bit on it.
2014-07-27 23:08:02 +02:00
Mikael Nordfeldth
ae62b91940
Unifying HTML stripping functions to common_strip_html
2014-07-14 13:52:23 +02:00
Mikael Nordfeldth
fffacaa27c
FavorAction now uses Notice::saveActivity
2014-07-06 01:37:03 +02:00
Mikael Nordfeldth
eda69cabaf
Remove Ostatus_profile when releted Profile is deleted
2014-07-04 11:45:42 +02:00
Mikael Nordfeldth
4b40d6bb2a
TagprofileAction fiddled with, now doesn't require OStatus override
...
But it still doesn't quite work properly, so a lot of work is necessary for this.
2014-07-03 14:02:21 +02:00
Mikael Nordfeldth
b63f6e949c
Converted all ActivityObject::fromProfile to $profile->asActivityObject
2014-07-03 10:51:36 +02:00
Mikael Nordfeldth
c44146d6f8
Favorites are now being stored from activities
2014-07-02 18:38:19 +02:00
Mikael Nordfeldth
9f4bcbad8a
checkAuthorship events, Ostatus_profile rewrite to handle it
...
Lost dependency of OStatus plugin for lib/microappplugin.php, whoo!
also noting which plugins should be upgraded to new saveActivity support.
Favorite plugin won't work with the new system just yet, it doesn't have
the necessary functions to extract activity objects, but that's coming
in the next (few) commits.
2014-07-02 11:38:45 +02:00
Mikael Nordfeldth
acb07ef52f
Added saveActivity method to Notice class
...
saveActivity will accept an Activity which gets parsed and saved through
plugins. So when an ActivityHandlerPlugin (such as Favorite will be soon)
gets a feed to save, this will be the function called instead of saveNew.
2014-07-02 11:38:37 +02:00
Mikael Nordfeldth
d0da552722
SalmonAction and extensions simplified
2014-06-28 20:33:09 +02:00
Mikael Nordfeldth
c74dc15173
DiscoveryHints gets microformats2 parsing abilities
2014-06-24 01:27:03 +02:00
Mikael Nordfeldth
55418685c4
DiscoveryHints now properly returns hcard url
2014-06-23 20:51:37 +02:00
Mikael Nordfeldth
d350a20e1f
Less verbose debugging (also don't log private keys)
...
Magicsig private keys were logged. That's probably not a good thing.
MagicEnvelope full XML entries no longer spam the log either.
2014-06-03 12:53:04 +02:00
Mikael Nordfeldth
aaef11077d
Default of Magicsig keypair toString should be secure
...
Prevent crappy coders from leaking private keys.
2014-06-03 12:51:52 +02:00
Mikael Nordfeldth
0bc122ff58
Magicsig::generate is now static
...
This also fixes a problem with "initial salmon slap", which was a
problem for newly registered accounts which would have their first
salmon slap fail to distribute since there was a problem with Magicsig
keys. Apparently we have to re-read them with importKeys so the
Crypt_RSA objects publicKey and privateKey match later instances of them.
I think it may have been that generate() doesn't specify a signatureMode,
but I leave experimentation of that to the future.
2014-06-02 21:50:40 +02:00
Mikael Nordfeldth
537dff7987
Salmon posts can only be made for local users. More typing!
...
Since we of course don't have the remote party's private keys anyway.
I made some small fixes in Magicsig class too, removing unnecessary code.
2014-06-02 19:46:42 +02:00
Mikael Nordfeldth
2cd25039af
Quick-return is more comprehensible than long if statements
2014-06-02 19:37:06 +02:00
Mikael Nordfeldth
f7479e3f57
Prepare for WebFinger magicsig data for remote profiles
2014-06-02 19:33:09 +02:00
Mikael Nordfeldth
78805d113a
MagicEnvelope discoverKeyPair now returns string
...
getKeyPair fills in missing data so it's a complete Magicsig.
We may use insert() here in the future so the Magicsig is cached locally.
2014-06-02 18:31:48 +02:00
Mikael Nordfeldth
d44588f98b
Only use a Profile in MagicEnvelope keypair retrieval
...
So we _know_ there is a profile for the submitter we're about to verify.
2014-06-02 16:12:26 +02:00
Mikael Nordfeldth
56194b3cd9
Magicsig importKeys finetuning and getHash() use
2014-06-02 16:11:15 +02:00
Mikael Nordfeldth
dc52a8ff43
Don't ensureProfile before we verify signature
2014-06-02 16:10:26 +02:00
Mikael Nordfeldth
00b2bddc7c
Clarify it's not base64, but base64url, encoding in Magicsig
2014-06-02 14:51:15 +02:00
Mikael Nordfeldth
993ad00333
Improve debugging for Salmon slaps
2014-06-02 14:20:58 +02:00
Mikael Nordfeldth
d534ea7bd6
Try the whole Salmon action for AlreadyFulfilledException
...
If we have already fulfilled the action, we don't have to send an error back.
2014-06-02 13:57:30 +02:00
Mikael Nordfeldth
c1dc13bef0
Magicsig warning message would fail to get bits
2014-06-02 13:35:29 +02:00
Mikael Nordfeldth
3ef8322b03
There could be unresolvable FeedSub entries
2014-06-01 16:07:08 +02:00
Mikael Nordfeldth
75711ae06a
Magicsig is made a bit less cumbersome
2014-05-31 13:41:49 +02:00
Mikael Nordfeldth
411f3b86a4
Use locally cached Salmon keys for profiles
...
Please note that we're not yet actually caching them ourselves.
2014-05-31 12:51:51 +02:00
Mikael Nordfeldth
0c2134f9ad
Last objectification of MagicEnvelope. Smarter SalmonAction
2014-05-31 12:00:46 +02:00
Mikael Nordfeldth
9e6599b9fb
Salmon log message tidying up
2014-05-28 14:07:47 +02:00
Mikael Nordfeldth
03fc02c26f
Bad variable names (fixes last commit)
2014-05-27 13:02:26 +02:00
Mikael Nordfeldth
41773d3f67
MagicEnvelope object orientation (no passing arrays)
...
MagicEnvelope now uses object properties instead of passing arrays
around everywhere.
2014-05-27 12:01:12 +02:00
Mikael Nordfeldth
14251d26ad
Make MagicEnvelope self-reference
...
Also, a stricer typing for DOMDocument in fromDom parsing function.
2014-05-27 10:18:36 +02:00
Mikael Nordfeldth
54ae0ed3cc
Removed MagicEnvelopeCompat, legacy from SN <0.9.7
2014-05-26 23:54:22 +02:00
Mikael Nordfeldth
7c7426b473
Minor changes in Salmon lib for Magicsig retrieval.
2014-05-26 20:06:45 +02:00
Mikael Nordfeldth
ba10da27da
Should not normalize Salmon author URIs.
...
It's normalized in Discovery->lookup later anyway.
2014-05-26 14:20:42 +02:00
Mikael Nordfeldth
8c348c96e7
getAuthorUri is a more appropriate function name
2014-05-26 14:14:54 +02:00
Mikael Nordfeldth
fac102a50a
checkAuthor not used anywhere
2014-05-26 14:13:35 +02:00
Mikael Nordfeldth
3c322abafc
There's no guarantee we have an Ostatus_profile for Feedsub
2014-05-19 18:34:44 +02:00
Mikael Nordfeldth
0dad11bb85
Inform and make use of NoProfileException in OStatus actions
...
This is because Ostatus_profile->localProfile() throws NoProfileException
instead of returning null for profiles which don't exist in Profile table.
2014-05-19 18:07:57 +02:00
Mikael Nordfeldth
63c20e59aa
UsersalmonAction cleanup
2014-05-19 18:07:14 +02:00
Mikael Nordfeldth
228dc1f851
Ostatus_profile throws NoProfileException from localProfile()
...
Some implementations of the exception handling is included here,
the actions come in a later commit.
2014-05-19 17:59:36 +02:00
Mikael Nordfeldth
d2c749c7de
NoUriException added and implemented in FeedSub class
...
This is a specific exception for objects which require URI but lack it,
first implemented in FeedSub to allow for identification of bad entries.
2014-05-19 17:30:04 +02:00
Mikael Nordfeldth
1207f4f06f
isLocal() for User_group
2014-05-19 14:46:54 +02:00
Mikael Nordfeldth
7977361193
Too many bird wings ({), sorry Erkan :)
2014-05-07 09:52:50 +02:00
Mikael Nordfeldth
b59beb50e6
misplaced dollar sign, also URLs != attention URIs
2014-05-07 09:20:57 +02:00
Mikael Nordfeldth
c01138c16b
Forgot 'new' before the Exception class
2014-05-07 00:06:04 +02:00
Mikael Nordfeldth
074b2b621c
Garbage collection script didn't loop through anything
2014-05-06 16:18:47 +02:00
Mikael Nordfeldth
8b12e41351
User object didn't have getNickname() function
...
We're just jumping on to the Profile->getNickname() function.
2014-05-06 16:08:36 +02:00
Mikael Nordfeldth
869ca2d20b
Missed a $user->id to $profile->id translation
2014-05-06 15:43:06 +02:00
Mikael Nordfeldth
c279a33feb
More Exceptions for FeedSub doSubscribe and related functions
...
Now also garbageCollect will now throw exceptions of failures of all kinds
and only reply true/false on entirely successful runs of sub/unsub.
2014-05-06 15:40:57 +02:00
Mikael Nordfeldth
0fa00d5106
Type testing instead of just empty() in OStatusPlugin
2014-05-06 14:36:52 +02:00
Mikael Nordfeldth
1a0171ef61
MagicEnvelope class now throws exception on XRD fail
2014-05-06 13:11:29 +02:00
Mikael Nordfeldth
fc3125cf28
More modern coding, stuff related to subscriptions
...
Also trying to use the newly implemented AlreadyFulfilledException
2014-05-05 23:58:05 +02:00
Mikael Nordfeldth
805958cc23
UsersalmonAction updated to stronger typing standards
2014-05-05 19:38:01 +02:00
Mikael Nordfeldth
595d231d9a
GroupsalmonAction updated to stronger typing standards
2014-05-05 19:25:39 +02:00
Mikael Nordfeldth
cdefeda659
More debugging for Salmon activities
2014-05-05 19:10:44 +02:00
Mikael Nordfeldth
bbada781b7
Stronger typing and function access control in OStatus
2014-05-05 19:06:22 +02:00
Mikael Nordfeldth
2ea5f00666
Success debugging was too much noise
2014-05-05 18:59:44 +02:00
Mikael Nordfeldth
960baae1d1
More debugging in Magicsig class verify method
2014-05-05 17:48:21 +02:00
Joshua Judson Rosen
7440dc2145
Prevent spurious refusals of legitimate notices posted to users via Salmon.
...
Make the logic match the intent described in the comments.
The intent is clearly "accept notices whenever (A or B or C)", but
the logic implemented was more like "not ((not A) or (not B) or (not C))",
which is a basical boolean algebra fail (each of those ORs need to
become ANDs for double-negation to work).
The practical implication was that, for example, writing a reply
to someone else's notice and including an @-reference to _another_
user on another site to bring them into the discussion would
fail to deliver the notice to the new user because their server
would basically say `oh no, you can't message this user
from someone else's thread' because an earlier check for
the `A' or `C' parts of `(A or B or C)' prevents `B' from
being checked.
cf.: <http://status.hackerposse.com/notice/55846 >, which was
refused by the nhcrossing.com server because it didn't know
about <http://sn.jonkman.ca/notice/93724 >, even though it would
have passed the later `notice contains a reference to a local user'
check if not for an exception being prematurely thrown.
The whole idea of reporting `which specific check FAILED'
in an `if ANY SUCCEEDS' analysis is just bogus, so nix all of
the distinct ClientExceptions--a single `ALL FAILED' exception
is the only one that makes sense.
2014-05-05 13:35:38 +02:00
Mikael Nordfeldth
b77a09fdee
Notice URIs are not necessarily URLs.
...
Let's use getUrl() for URL retrieval. May throw exceptions, but
only if it's a Notice that cannot be linked like that anyway.
2014-04-30 20:44:23 +02:00
Mikael Nordfeldth
5fd6053220
Code cleanup and enabling User object's etc. getUri()
2014-04-28 14:08:42 +02:00
Mikael Nordfeldth
639cf48cc7
OStatus onStartNoticeSourceLink to use exceptions
2014-04-19 22:18:36 +02:00
Mikael Nordfeldth
c00491cd7a
Cosmetic changes to common_redirect, clientError, serverError
...
Since these functions exit (or throw exception) after running, there
is no need to have a 'return' statement or similar afterwards.
2014-03-10 00:25:57 +01:00
Mikael Nordfeldth
8d655bc706
Add support for 'nohub' sub_state in FeedSub
...
(requires upgrade.php run)
2014-03-09 23:03:54 +01:00
Mikael Nordfeldth
779ce40ac3
Add functions to avoid direct variable access
2014-03-09 13:31:05 +01:00
Mikael Nordfeldth
a1b0d5fa7e
FeedSub gets a plugin event handler for sub/unsub
2014-03-09 13:27:28 +01:00
Mikael Nordfeldth
e571e64e9e
Make ostatussub conform to coding standards a bit
2014-03-05 13:44:45 +01:00
Mikael Nordfeldth
dc0ae2785d
SubMirror now works again against old PuSH
...
There was a problem with (specifically at least) PuSHpress for
Wordpress. A previous attempt to perform a DB transaction backfired
because the remote side could connect to the callback before our
commit had gone through.
I take full responsibility for introducing the bug in the first place :)
2014-03-03 00:01:13 +01:00
Mikael Nordfeldth
8b04bcb310
Prepare for >1024 RSA keys for Salmon signatures
2014-03-02 11:47:38 +01:00
Mikael Nordfeldth
fc047bd6e6
Minor code cleanup with group related actions (thanks brw12)
...
Originated from brw12 who noticed an incorrect variable name used in
an error message in actions/apigroupjoin.php:109
2014-03-01 12:01:17 +01:00
Mikael Nordfeldth
698a7adb83
mentions from OStatus lookup were missing a 'type' attribute in common_linkify_mention
2014-02-23 21:49:55 +01:00
Mikael Nordfeldth
b81d7c425d
better comment for PuSH <0.4 hack
2014-01-01 19:47:41 +01:00
Mikael Nordfeldth
b6f5f58f1a
Attention structure has changed recently
2013-11-19 13:38:38 +01:00
Mikael Nordfeldth
3dcce8d987
Don't miss integer 0 values from find()
2013-11-19 13:30:14 +01:00
Mikael Nordfeldth
700dce386a
WebFingerResource for profiles now WebFingerResource_Profile
2013-11-09 00:49:00 +01:00
Mikael Nordfeldth
1223c17568
Remote StatusNet sites would throw 400 if no hub.verify_token
2013-11-06 12:46:59 +01:00
Mikael Nordfeldth
ab4113168f
PuSH 0.4: No outgoing 'sync' verifications. Feed renewal script. No auto-renewal.
...
Among other things (such as permanent subscriptions), Pubsubhubbub 0.4
removed the "sync" verification method. This means that any incoming
PuSH subscription requests that follow the 0.4 spec won't really
_require_that we handle it as a background process, but if we were to
try direct verification of the subscription - and fail - there's no way
we could pick up the ball again. So _essentially_ we require background
processing with retries.
This means we must implement something like the "poorman cron" or
similar, so background processing can be handled
on-demand/on-site-visit. This is how Friendica, Drupal etc. handles it
and is necessary for environments where we can't run separate queue
daemons.
When the poorman-cron-ish thing is implemented, auto-renewal will work
for all users.
PuSH 0.4 spec:
https://pubsubhubbub.googlecode.com/git/pubsubhubbub-core-0.4.html
More on PuSH 0.4 release (incl. breaking changes):
https://groups.google.com/forum/#!msg/pubsubhubbub/7RPlYMds4RI/2mIHQTdV3aoJ
2013-11-02 20:02:28 +01:00
Mikael Nordfeldth
db889922ac
We don't do local_push_bypass
2013-11-02 17:42:32 +01:00
Mikael Nordfeldth
6ef1967cec
Notice metadata for WebFinger. Not sure if implemented properly.
...
This is more of a proof of concept and will likely not stay in exactly
this form. We should reasonably deliver the entire notice upon webfinger
querying.
2013-11-01 17:37:18 +01:00
Mikael Nordfeldth
7ddd561837
Salmon only has one "rel" value now, so start deprecating
2013-11-01 17:00:12 +01:00
Mikael Nordfeldth
f110fc5c9a
Using GNUSOCIAL_VERSION instead of STATUSNET_VERSION
2013-11-01 13:51:41 +01:00
Mikael Nordfeldth
ca66860a4f
Better typing and minor fixes to OStatus related stuff
2013-11-01 13:20:45 +01:00
Mikael Nordfeldth
be62f44ef4
OStatus remote address example now more generic
2013-10-30 15:04:54 +01:00
Mikael Nordfeldth
f75ddaa8aa
Getting a profile from URI would throw exceptions on remote URL lookup failures
2013-10-30 14:43:40 +01:00
Mikael Nordfeldth
603d2d3891
Minor Ostatus_profile class reference fixes
2013-10-30 14:14:02 +01:00
Mikael Nordfeldth
9b6633698c
Group discovery from text functions polished
...
Also removed the entirely unused saveGroups function.
Now avoiding multiGet and using listFind in Profile->getGroups()
so we don't have to deal with ArrayWrapper.
2013-10-29 13:40:14 +01:00
Mikael Nordfeldth
f8b49e69d0
Protected function prepare with array $args defaulting to array()
2013-10-29 10:26:46 +01:00
Mikael Nordfeldth
23a6b4595f
Reworked the ActivityContext->attention structure
...
Removing Evan's obscure attentionType solution and directly using the attention array
2013-10-28 22:21:14 +01:00
Mikael Nordfeldth
3ba6374b9d
Memcached_DataObject extensions got their update functions more consistent
2013-10-28 19:36:05 +01:00
Mikael Nordfeldth
fcba540a14
Removed legacy OMB. Use OStatus for remote profiles.
2013-10-28 16:22:09 +01:00
Mikael Nordfeldth
38da5ec7f7
Ostatus_profile->processShare now backwards compatible against federating StatusNet nodes
...
StatusNet was improperly defining the id (URI) of the shared object as a
TagURI, while it should've really been the object's URI of course.
2013-10-21 23:25:47 +02:00
Mikael Nordfeldth
ba46c3d360
SHARE activities would not be imported from federated instances for local notices
...
"[...] posts _local_ users (like you) make won't get data about "repeated by"
from federated users"
This was because the ActivityObject would processShare where the shared object
has a _local_ 'actor' URI. Ostatus_profile would complain this meant that a
"Local user cannot be referenced as remote.".
So we see if the shared activity object's id (URI) is in our Notice table, so
we don't have to processActivity - and can skip ensureActivityObjectProfile.
2013-10-21 23:25:43 +02:00
Mikael Nordfeldth
3cab5b36c1
Replace common_good_random with common_random_hexstr
2013-10-21 13:20:30 +02:00
Mikael Nordfeldth
a8804010c4
Profile creation always failed because we didn't COMMIT
2013-10-20 17:22:44 +02:00
Mikael Nordfeldth
2729c622ff
Minor function definitions so they match Action parent
2013-10-20 17:21:56 +02:00
Mikael Nordfeldth
e868ebfe77
WebFingerResource introduced, instead of strict Profile object
...
This is the beginning of getting notice URI info via WebFinger
*XrdActionLinks is renamed *WebFingerProfileLinks, check EVENTS.txt
in WebFinger plugin for new events.
2013-10-20 15:48:14 +02:00
Mikael Nordfeldth
8912cdc7a4
Validate::uri replaced with filter_var for HTTP[S] URL checks
...
Also, a bug in checking the OAuth callback URL for validity was fixed,
where it referenced the wrong variable when going through form data.
2013-10-07 14:46:09 +02:00
Mikael Nordfeldth
4cfd0d24c1
Group logos would not be fetched
...
update_ostatus_profiles.php did this correctly, but not Ostatus_profile.php
2013-10-06 01:33:27 +02:00
Mikael Nordfeldth
ba481d1e31
LOG_WARNING, not LOG_WARN
2013-10-06 01:33:10 +02:00
Mikael Nordfeldth
1795267df9
Latest phpseclib stuff and moved into its own dir.
...
Source: https://github.com/phpseclib/phpseclib/
Commit: 77447a3fc7869773007fa3beeb8d6f8de842ec2a
There were bugs.
2013-10-05 00:22:14 +02:00
Mikael Nordfeldth
cd6fa512ac
Twitter Import + avatar fixes (cleaning up + fixing)
...
...there was also a typo in OstatussubAction ($avatarUrl not defined)
2013-10-03 15:28:51 +02:00
Mikael Nordfeldth
b0dfc70a54
Properly unlink all old avatars when deleting/uploading a new
...
We're also now using $config['image']['jpegquality'] to determine the
quality setting for resized images.
To set Avatar max size, adjust $config['avatar']['maxsize']
The getAvatar call now throws exceptions too. Related changes applied.
Now let's move Profile->avatarUrl to the Avatar class!
2013-10-01 17:00:10 +02:00
Mikael Nordfeldth
a7e748479c
Fixed regression in OStatus sub from WebFinger/XML_XRD update
...
XML_XRD::getAll requires arguments (at least relation). If one really
want all links, just get the 'links' array. It's public!
Also, not all XML_XRD_Element_Link were migrated from the previous
array style.
2013-09-30 23:33:28 +02:00
Mikael Nordfeldth
a0e107f17f
Implemented WebFinger and replaced our XRD with PEAR XML_XRD
...
New plugins:
* LRDD
LRDD implements client-side RFC6415 and RFC7033 resource descriptor
discovery procedures. I.e. LRDD, host-meta and WebFinger stuff.
OStatus and OpenID now depend on the LRDD plugin (XML_XRD).
* WebFinger
This plugin implements the server-side of RFC6415 and RFC7033. Note:
WebFinger technically doesn't handle XRD, but we serve both that and
JRD (JSON Resource Descriptor), depending on Accept header and one
ugly hack to check for old StatusNet installations.
WebFinger depends on LRDD.
We might make this even prettier by using Net_WebFinger, but it is not
currently RFC7033 compliant (no /.well-known/webfinger resource GETs).
Disabling the WebFinger plugin would effectively render your site non-
federated (which might be desired on a private site).
Disabling the LRDD plugin would make your site unable to do modern web
URI lookups (making life just a little bit harder).
2013-09-30 22:04:52 +02:00
Joshua Judson Rosen
44f7ad612a
Correctly distribute notices from remote posters through local groups to remote group-members via OStatus.
...
Allow the OStatus queue-handler to handle all posts,
and give it the smarts required to make correct decisions
about whether it should or shouldn't relay notices
over OStatus.
cf. http://status.net/open-source/issues/3540
Conflicts (staticGet => getKV):
plugins/OStatus/lib/ostatusqueuehandler.php
2013-09-29 23:19:11 +02:00
Mikael Nordfeldth
633191d808
Making sure scripts and tests check for GNUSOCIAL defined (instead of STATUSNET)
...
Orbited plugin may not work at all anymore, I had no means to try it.
But there's a check whether 'LACONICA' is defined there, which is a
very unlikely thing in the future. So far only tests and scripts have
been migrated consistently, though.
2013-09-28 15:20:10 +02:00
Mikael Nordfeldth
f7719b57f2
phpseclib extlib updated from phpseclib.sf.net
2013-09-24 02:09:37 +02:00
Mikael Nordfeldth
1c6f9df80e
PHP5.5 fix: Better use of startXML for Action classes (mostly AJAX)
...
I had a problem with PHP5.5 that caused ajax responses to be empty. This
fixes it, as the problem was related to pretty inconsistent calling to
headers, XMLWriter::startDocument etc. etc.
2013-09-24 01:18:33 +02:00
Mikael Nordfeldth
8205c56e25
Stylesheet event now removed of StatusNet-remnants
2013-09-23 22:13:12 +02:00
Mikael Nordfeldth
63306081bc
Subscription "get by" functions now don't use ArrayWrappers
...
They were getting in the way of some strict-typing stuff.
2013-09-21 18:38:14 +02:00
Mikael Nordfeldth
dfa1b15dd6
Changing js .live calls to .on for jquery 2.x
2013-09-10 18:52:09 +02:00
Mikael Nordfeldth
747fe9d59b
Tidying up getUser calls to profiles and some events
...
getUser calls are much more strict, and one place where this was found was
in the (un)subscribe start/end event handlers, which resulted in making the
Subscription class a bit stricter, regarding ::start and ::cancel at least.
Several minor fixes in many files were made due to this.
This does NOT touch the Foreign_link function, which should also have a more
strict getUser call. That is a future project.
2013-09-09 23:03:34 +02:00
Mikael Nordfeldth
de55d8f83b
plugins onAutoload now only overloads if necessary (extlibs etc.)
...
lib/plugin.php now has a parent onAutoload function that finds most common
files that are used in plugins (actions, dataobjects, forms, libs etc.) if
they are put in the standardised directories ('actions', 'classes', 'forms',
'lib' and perhaps some others in the future).
2013-08-28 16:10:30 +02:00
Mikael Nordfeldth
40fe10e002
Woops, forgot auto_increment (comes with 'serial')
...
There are still some classes not ported (like Yammer import)
2013-08-21 15:02:44 +02:00
Mikael Nordfeldth
0bbcfa7bdf
IMPORTANT - fixed HubSub to properly fetch primary keys
...
In commit e95f77d34c
HubSub lost the
'staticGet' function in a consolidation into the Managed_DataObject class.
This was done carelessly by me as HubSub::staticGet was actually taking
two arguments, none of which was a key and merging them in HubSub::hashkey()
(staticGet was renamed getKV 2a4dc77a63
).
NOTE: This complements commit 7e4718a4eb
which
fixed a similar issue for the Magicsig class.
2013-08-21 11:25:08 +02:00
Mikael Nordfeldth
66997f2bec
OStatus classes now has modern schemaDef
2013-08-21 11:01:31 +02:00
Mikael Nordfeldth
6f4c572389
Unnecessary UTF-8 declaration for database
2013-08-20 09:43:23 +02:00
Mikael Nordfeldth
e40044e2fa
Further static declarations of functions
...
Validate could probably be replaced with filter_var if desired (PHP>=5.2.0)
2013-08-19 14:26:44 +02:00
Mikael Nordfeldth
7e4718a4eb
IMPORTANT - fixed Magicsig to properly overload getKV (prev. staticGet)
...
In commit e95f77d34c
Magicsig lost the 'staticGet' function (later renamed to getKV in 2a4dc77a63
), which was important to properly initialize the Magicsig object (fromString)
2013-08-18 19:07:18 +02:00
Mikael Nordfeldth
1710a619a8
Magicsig class now Managed_DataObject with nicer schemaDef
2013-08-18 15:31:18 +02:00
Mikael Nordfeldth
2a4dc77a63
The overloaded DB_DataObject function staticGet is now called getKV
...
I used this hacky sed-command (run it from your GNU Social root, or change the first grep's path to where it actually lies) to do a rough fix on all ::staticGet calls and rename them to ::getKV
sed -i -s -e '/DataObject::staticGet/I!s/::staticGet/::getKV/Ig' $(grep -R ::staticGet `pwd`/* | grep -v -e '^extlib' | grep -v DataObject:: |grep -v "function staticGet"|cut -d: -f1 |sort |uniq)
If you're applying this, remember to change the Managed_DataObject and Memcached_DataObject function definitions of staticGet to getKV!
This might of course take some getting used to, or modification fo StatusNet plugins, but the result is that all the static calls (to staticGet) are now properly made without breaking PHP Strict Standards. Standards are there to be followed (and they caused some very bad confusion when used with get_called_class)
Reasonably any plugin or code that tests for the definition of 'GNUSOCIAL' or similar will take this change into consideration.
2013-08-18 13:13:56 +02:00
Mikael Nordfeldth
e95f77d34c
Updating all Memcached_DataObject extended classes to Managed_DataObject
...
In some brief tests, this causes no problems.
In this state however, you would need to modify DB_DataObject to have a static declaration of staticget (and probably pkeyGet). The next commit will change the staticGet overload to a unique function name (like getKV for getKeyValue), which means we can properly call the function by PHP Strict Standards.
2013-08-18 12:32:32 +02:00
Mikael Nordfeldth
6c4c4319ef
Plugins with classes that extend Managed_DataObject get better code reuse
...
The switch to having a function in Managed_DataObject is now being applied
to plugins which can use this as well.
There are some plugins that still use Memcached_DataObject, but these will
be taken care of later.
2013-08-12 20:00:01 +02:00
Mikael Nordfeldth
f79aec36fe
Merge remote-tracking branch 'statusnet/master'
...
This merges GNU Social with current development of StatusNet. The only conflicts were some documentation, where GNU Social's versions were retained.
Conflicts:
doc-src/about
doc-src/faq
plugins/OpenID/doc-src/openid
2013-08-12 12:23:17 +02:00
Jean Baptiste Favre
246e840dd3
Fix INSTALLDIR constant definition.
2013-06-15 15:20:19 +02:00
Evan Prodromou
330041e8bf
Merge branch 'master' of gitorious.org:statusnet/mainline
2012-07-28 13:59:40 -04:00
Mikael Nordfeldth
19c3cd541d
Issue 3401, ostatus group subscription lands on blank page
2012-07-28 13:58:26 -04:00
Evan Prodromou
d5564fb8d8
Add a trace, too
2012-07-04 15:14:35 -04:00
Evan Prodromou
7e60bb04e5
Add an exception on remote group join
2012-07-04 15:12:08 -04:00
Siebrand Mazeland
51b28eda19
Localisation updates from http://translatewiki.net .
2012-06-30 11:10:38 +00:00
Siebrand Mazeland
f2d66082b4
Localisation updates from http://translatewiki.net .
2012-06-24 18:26:18 +00:00
Siebrand Mazeland
707076fca9
Localisation updates from http://translatewiki.net .
2012-06-17 23:26:20 +00:00
Siebrand Mazeland
c658ede37c
Localisation updates from http://translatewiki.net .
2012-06-10 23:42:52 +00:00
Siebrand Mazeland
bc733a200f
Localisation updates from http://translatewiki.net .
2012-06-04 15:02:34 +00:00
Siebrand Mazeland
f059977c57
Localisation updates from http://translatewiki.net .
2012-05-26 21:15:30 +00:00
Siebrand Mazeland
cd77348852
Localisation updates from http://translatewiki.net .
2012-05-20 11:10:38 +00:00
Siebrand Mazeland
2e4e2f693d
Localisation updates from http://translatewiki.net .
2012-05-12 18:47:41 +00:00
Siebrand Mazeland
6f557d3654
Localisation updates from http://translatewiki.net .
2012-05-06 17:08:47 +00:00
Evan Prodromou
961607bc5d
Ignore non-atom updates links in Webfinger
2012-05-04 12:01:13 -04:00
Siebrand Mazeland
eafe507068
Localisation updates from http://translatewiki.net .
2012-05-03 22:13:22 +00:00
Siebrand Mazeland
c7013ceb1a
Localisation updates from http://translatewiki.net .
2012-04-29 23:12:10 +00:00
Siebrand Mazeland
3898500ff9
Localisation updates from http://translatewiki.net .
2012-04-21 10:21:38 +00:00
Siebrand Mazeland
b2c5b9de52
Localisation updates from http://translatewiki.net .
2012-04-15 12:11:05 +00:00
Siebrand Mazeland
71a9644b35
Localisation updates from http://translatewiki.net .
2012-04-09 01:38:31 +02:00
Siebrand Mazeland
3b3671b228
Localisation updates from http://translatewiki.net .
2012-03-11 22:12:10 +01:00
Evan Prodromou
b4da5f3785
Merge branch 'master' into 1.0.x
...
Conflicts:
plugins/Blacklist/BlacklistPlugin.php
2012-03-08 06:08:11 -06:00
Siebrand Mazeland
f34a196e83
Localisation updates from http://translatewiki.net .
2012-03-01 17:22:45 +01:00
Evan Prodromou
5b6ecef24b
script to gc all feeds
2012-01-27 16:12:54 -05:00
Siebrand Mazeland
cebb565f18
Localisation updates from http://translatewiki.net .
2012-01-20 20:07:45 +01:00
Siebrand Mazeland
31305cb743
Localisation updates from http://translatewiki.net .
2011-12-28 14:00:49 +01:00
Siebrand Mazeland
7f257ddb95
Localisation updates from http://translatewiki.net .
2011-12-19 02:02:49 +01:00
Siebrand Mazeland
03657a90e1
Localisation updates from http://translatewiki.net .
2011-12-03 13:09:10 +01:00
Siebrand Mazeland
b4ecb24907
Localisation updates from http://translatewiki.net .
2011-11-12 23:35:01 +01:00
Siebrand Mazeland
151ff6beb7
Localisation updates from http://translatewiki.net .
2011-10-29 14:30:42 +02:00
Siebrand Mazeland
6120af3901
Localisation updates from http://translatewiki.net .
2011-10-10 15:58:00 +02:00
Evan Prodromou
9f954eddc5
remove unsupported hcard action
2011-09-27 11:43:41 -04:00
Siebrand Mazeland
e7dac240ef
Localisation updates from http://translatewiki.net .
2011-09-26 00:01:00 +02:00
Evan Prodromou
0ee660af23
fix problem with using wrong arg to EndLeaveGroup event
2011-09-18 19:28:17 -04:00
Evan Prodromou
bba39c4aaf
reorder routes for ostatus for better matches
2011-09-18 17:32:59 -04:00
Evan Prodromou
dbb7324b25
test for missing profile in ostatus queue handler
2011-09-18 14:36:49 -04:00
Evan Prodromou
2f1953ca25
Correct args for join event
2011-09-18 14:06:35 -04:00
Evan Prodromou
915dd9c9b5
Copy-and-paste error in OStatus button output
2011-09-18 12:44:16 -04:00
Evan Prodromou
f52d33753e
problem with remote subscription on groups in OStatus
2011-09-17 17:28:01 -04:00
Siebrand Mazeland
83dc51ee79
Localisation updates from http://translatewiki.net .
2011-09-11 16:54:08 +02:00
Evan Prodromou
c5d332f40a
move yet-another-rediscover-script to OStatus plugin
2011-09-07 16:56:38 -04:00
Siebrand Mazeland
7cfbe7c2d4
Localisation updates from http://translatewiki.net .
2011-08-30 11:50:01 +02:00
Evan Prodromou
01fd24ce6a
Make joinAdd() explicit in OStatusPlugin::onStartProfileCompletionSearch()
2011-08-27 12:06:34 -04:00
Samantha Doherty
37bb0e6d20
Style cleanup for ostatus forms.
2011-08-26 12:51:55 -04:00
Siebrand Mazeland
ed13c9a098
Localisation updates from http://translatewiki.net .
2011-08-20 21:30:04 +02:00
Siebrand Mazeland
1fa689e913
tag -> list
2011-08-20 20:30:37 +02:00
Siebrand Mazeland
083e9773f2
Add translator documentation.
...
doxygen fixes.
2011-08-19 17:13:15 +02:00
Siebrand Mazeland
31556e3c00
Localisation updates from http://translatewiki.net .
2011-08-15 16:32:26 +02:00
Siebrand Mazeland
bd32b69355
Fix punctuation.
2011-08-15 16:18:21 +02:00
Siebrand Mazeland
7fcdc1a9ed
Localisation updates from http://translatewiki.net .
2011-07-21 14:49:16 +02:00
Evan Prodromou
ebc5d6f676
fix call to Notice::saveNew() in Ostatus_profile::processShare()
2011-07-20 11:47:55 -04:00
Evan Prodromou
0ad7411343
Make process*() functions return existing or new notice
2011-07-20 11:33:28 -04:00
Evan Prodromou
0eeb175904
ID is a string
2011-07-20 11:13:25 -04:00
Evan Prodromou
17b1492690
better ID from shared activities
2011-07-20 11:11:05 -04:00
Evan Prodromou
e7ad9bf17a
ensure a shared item's author element
2011-07-19 16:47:37 -04:00
Evan Prodromou
982426a790
handle incoming SHARE verbs
2011-07-19 15:20:06 -04:00
Zach Copley
6f0bd73e6c
Squashed commit of the following:
...
Move OMB to a plugin
commit 75d21f00246bcc56d7f854936be1e28395e079a2
Merge: cea0199 d594d07
Author: Zach Copley <zach@status.net>
Date: Fri Jul 15 11:16:54 2011 -0700
Merge branch 'kill-omb2' of gitorious.org:~zcopley/statusnet/zcopleys-clone into kill-omb2
* 'kill-omb2' of gitorious.org:~zcopley/statusnet/zcopleys-clone:
Fix paths
Oops, I left out the ability to authorize a token in ApiStatusNetOAuthDataStore
Some odds and ends
Remove omb stuff from queuemanager defaults
Add check to make sure we're not untagging an OMB profile to OMB plugin
Move some more subscription stuff and peopletag checks to OMB plugin
Move some OMB-specific unsubscribe stuff to OMB plugin
Finish removing libomb from core extlibs
Fix more conflicts
Fix queuing/queuehandling
Move some stuff around; fix references
Fix conflicts
Move OMB-specific files to OMB plugin
Move some stuff around; fix references
Add OMB plugin README and rm references to OMB in mail StatusNet README
Update paths
Fix define
Basic plugin finished
Move OMB-specific files to OMB plugin
Remove OMB stuff from router
commit cea019967f343042ebaea14b7bbb0d54289bcc1a
Author: Zach Copley <zach@status.net>
Date: Wed Jul 13 14:38:40 2011 -0700
Fix paths
commit d412aa3c0ea0e21e65a72a16c7b9edd64ff373e1
Author: Zach Copley <zach@status.net>
Date: Tue Jul 12 18:17:06 2011 -0700
Oops, I left out the ability to authorize a token in ApiStatusNetOAuthDataStore
commit b459c9f10ac283d6e774ef13f3293fc8a6948143
Author: Zach Copley <zach@status.net>
Date: Wed Jul 6 19:02:08 2011 -0700
Some odds and ends
commit 895cfbfce58ffb3a05beebf48a90c549e00f1cce
Author: Zach Copley <zach@status.net>
Date: Wed Jul 6 19:01:23 2011 -0700
Remove omb stuff from queuemanager defaults
commit b41b9e994f291ff83afb2460d9b37aee8ec1ec2b
Author: Zach Copley <zach@status.net>
Date: Wed Jul 6 18:46:44 2011 -0700
Add check to make sure we're not untagging an OMB profile to OMB plugin
commit 94374d26ddd428dac8e4cd4541fd56db748c248b
Author: Zach Copley <zach@status.net>
Date: Wed Jul 6 18:34:20 2011 -0700
Move some more subscription stuff and peopletag checks to OMB plugin
commit b91043b7820d5cd8b0ba4e9ee2a9d03c99248f11
Author: Zach Copley <zach@status.net>
Date: Wed Jul 6 16:37:25 2011 -0700
Move some OMB-specific unsubscribe stuff to OMB plugin
commit d9430fe52975d9497b4a0d3d54da35b222e207ad
Author: Zach Copley <zach@status.net>
Date: Wed Jul 6 15:26:30 2011 -0700
Finish removing libomb from core extlibs
commit bb6257eb85cc7ba392e91468c01503f51faeb989
Author: Zach Copley <zach@status.net>
Date: Wed Jul 13 12:47:32 2011 -0700
Fix more conflicts
commit 3c760d0a4b4a083ae5fca2530d22aad5f4a9fdae
Author: Zach Copley <zach@status.net>
Date: Tue Jul 5 15:49:22 2011 -0700
Fix queuing/queuehandling
commit ed635fa0c20e150673709c04ecc7f285d12e0ce2
Author: Zach Copley <zach@status.net>
Date: Tue Jul 5 15:29:35 2011 -0700
Move some stuff around; fix references
commit cbc553a147941cad16e205a6b66ab4b32a5e3d3d
Author: Zach Copley <zach@status.net>
Date: Wed Jul 13 12:46:05 2011 -0700
Fix conflicts
commit 5d77c81f75b57f5d5357d6b46d503650a4b3225d
Author: Zach Copley <zach@status.net>
Date: Thu Jun 30 19:10:38 2011 -0700
Move OMB-specific files to OMB plugin
commit 2ed051dbce0ce9b44723b14922026849c39ed603
Author: Zach Copley <zach@status.net>
Date: Tue Jul 5 15:29:35 2011 -0700
Move some stuff around; fix references
commit 8809b5e35b1aacb67d70ae3e55a43003b6f591b7
Author: Zach Copley <zach@status.net>
Date: Tue Jul 5 15:28:59 2011 -0700
Add OMB plugin README and rm references to OMB in mail StatusNet README
commit 35ced4067c1915baca0b3e184f9533a91a951d2d
Author: Zach Copley <zach@status.net>
Date: Thu Jun 30 23:50:09 2011 -0700
Update paths
commit 0ee5bafbce95fc9b8db98c1e828d33d26d08bc73
Author: Zach Copley <zach@status.net>
Date: Thu Jun 30 23:38:03 2011 -0700
Fix define
commit e309dd22ffb9087d7fcf9180ede4f531dbd88c3c
Author: Zach Copley <zach@status.net>
Date: Thu Jun 30 23:30:43 2011 -0700
Basic plugin finished
commit 00f1e930f27e080b04d1e82952f7886c84e01d97
Author: Zach Copley <zach@status.net>
Date: Thu Jun 30 19:10:38 2011 -0700
Move OMB-specific files to OMB plugin
commit 39dcd031a79b49da0b4fe25f1594d2e406b5eb65
Author: Zach Copley <zach@status.net>
Date: Thu Jun 30 19:10:01 2011 -0700
Remove OMB stuff from router
commit d594d071be1ec42518dd5465db61e01e7e8ec036
Author: Zach Copley <zach@status.net>
Date: Wed Jul 13 14:38:40 2011 -0700
Fix paths
commit 48c1064b4b50e89cf51d2cab388f708f60601247
Author: Zach Copley <zach@status.net>
Date: Tue Jul 12 18:17:06 2011 -0700
Oops, I left out the ability to authorize a token in ApiStatusNetOAuthDataStore
commit 1e1168978f38c31dbf0206b3493b2b6dcbe61589
Author: Zach Copley <zach@status.net>
Date: Wed Jul 6 19:02:08 2011 -0700
Some odds and ends
commit ac43af2b497d8b9286c49a9469a1dff950e41650
Author: Zach Copley <zach@status.net>
Date: Wed Jul 6 19:01:23 2011 -0700
Remove omb stuff from queuemanager defaults
commit 2471af2f8800515a3db544b3a186a18f3e8a43af
Author: Zach Copley <zach@status.net>
Date: Wed Jul 6 18:46:44 2011 -0700
Add check to make sure we're not untagging an OMB profile to OMB plugin
commit df974646459ac6d5d97a40d008f1aab66f998226
Author: Zach Copley <zach@status.net>
Date: Wed Jul 6 18:34:20 2011 -0700
Move some more subscription stuff and peopletag checks to OMB plugin
commit 8a1427b759e791c14a7a7a22128ba05f0b4b6d12
Author: Zach Copley <zach@status.net>
Date: Wed Jul 6 16:37:25 2011 -0700
Move some OMB-specific unsubscribe stuff to OMB plugin
commit bd24220dbb5170af22ea0dea8a3062e6d1aeb6a2
Author: Zach Copley <zach@status.net>
Date: Wed Jul 6 15:26:30 2011 -0700
Finish removing libomb from core extlibs
commit 4c3c6f1fabb0f2c92635ccc5e8f38db2293f5456
Author: Zach Copley <zach@status.net>
Date: Wed Jul 13 12:47:32 2011 -0700
Fix more conflicts
commit db44deefd731a412685c5669c4c6fa69833de922
Author: Zach Copley <zach@status.net>
Date: Tue Jul 5 15:49:22 2011 -0700
Fix queuing/queuehandling
commit ea2d84d2f3d518950d3aa1956ddc8f3a25ca55f3
Author: Zach Copley <zach@status.net>
Date: Tue Jul 5 15:29:35 2011 -0700
Move some stuff around; fix references
commit 8ac3e010444b41bd9a78766f5e37e49dff023b45
Author: Zach Copley <zach@status.net>
Date: Wed Jul 13 12:46:05 2011 -0700
Fix conflicts
commit 0aad6e10e3637b3189a87b42c24c1d6de1b346bc
Author: Zach Copley <zach@status.net>
Date: Thu Jun 30 19:10:38 2011 -0700
Move OMB-specific files to OMB plugin
commit d982d7076c5cb28c7b8e4b1dde8d07d7e58e278f
Author: Zach Copley <zach@status.net>
Date: Tue Jul 5 15:29:35 2011 -0700
Move some stuff around; fix references
commit 4b9d39c93562ff4c45c37c940013e8b78197dec1
Author: Zach Copley <zach@status.net>
Date: Tue Jul 5 15:28:59 2011 -0700
Add OMB plugin README and rm references to OMB in mail StatusNet README
commit dab0fb6647a85e6835298496d7127a398b6b9293
Author: Zach Copley <zach@status.net>
Date: Thu Jun 30 23:50:09 2011 -0700
Update paths
commit 2cb73dac8ad971f1545dcf6ba57746c777e232ef
Author: Zach Copley <zach@status.net>
Date: Thu Jun 30 23:38:03 2011 -0700
Fix define
commit 6f226b18a059f175b1bdd3abcb8cb95eedc22ee7
Author: Zach Copley <zach@status.net>
Date: Thu Jun 30 23:30:43 2011 -0700
Basic plugin finished
commit 7be304beaa0f39755c3978e0b852fde768950da4
Author: Zach Copley <zach@status.net>
Date: Thu Jun 30 19:10:38 2011 -0700
Move OMB-specific files to OMB plugin
commit 5b30da01cfa2802d6e7a4a4a4f39b8043c54f472
Author: Zach Copley <zach@status.net>
Date: Thu Jun 30 19:10:01 2011 -0700
Remove OMB stuff from router
2011-07-15 12:13:57 -07:00
Evan Prodromou
15dafffb3b
Merge branch '1.0.x' of gitorious.org:statusnet/mainline into 1.0.x
2011-07-04 12:26:41 -04:00
Evan Prodromou
db85774f25
only update the avatar of an Ostatus_profile if it's a profile
2011-07-04 12:24:59 -04:00