Commit Graph

231 Commits

Author SHA1 Message Date
Mikael Nordfeldth
db7ef52d13 Better use of Nickname validation functions
Nickname verifications on registration and updates for profiles (not yet
groups) have been improved.

Minor bugs in RegisterAction were also fixed, where multiple forms would
be outputed because the function did not return after showForm(). This
will be solved more permanently with throwing exceptions in the future.
2013-10-16 15:38:54 +02:00
Mikael Nordfeldth
a8bcdc905f common_sql_now() is recommended before DB_DataObject_Cast::dateTime() 2013-10-14 13:42:27 +02:00
Mikael Nordfeldth
cc34bb48c7 OAuth related syntax fixes, nothing big
Making better use of class autoloading too.
2013-10-06 12:43:18 +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
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
3a7261f70a IMPORTANT: Making prev. Memcached_DataObject working again with schemaDef
Lots of the Memcached_DataObject classes stopped working when upgraded to
Managed_DataObject because they lacked schemaDef().

I have _hopefully_ made it so that all the references to the table uses
each class' schemaDef, rather than the more manual ColumnDef stuff. Not
all plugins have been tested thoroughly yet.

NOTE: This is applied with getKV calls instead of staticGet, as it was
important for PHP Strict Standards compliance to avoid calling the non-
static functions statically. (unfortunately DB and DB_DataObject still do
this within themselves...)
2013-08-21 09:48:42 +02:00
Mikael Nordfeldth
861e838add pkeyGet is now static and more similar to getKV
Memcached_DataObject now defines
   * pkeyGetClass to avoid collision with Managed_DataObject pkeyGet
   * getClassKV to avoid collision with Managed_DataObject getKV
2013-08-18 15:42:51 +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
Evan Prodromou
ec3f9b199f Squashed commit of the following:
commit 90620124a20d8c9da19b26920b02b521766c42e4
Author: Evan Prodromou <evan@status.net>
Date:   Mon Jul 9 16:50:05 2012 -0400

    Add a checkbox to hide OpenID links

commit 47a4a5824208868bd5f4f163456f8e08380e5f36
Author: Evan Prodromou <evan@status.net>
Date:   Mon Jul 9 16:35:15 2012 -0400

    Don't show the profile links if the hide_profile_link flag is set

commit eafd4b8ba1f7c06c92e5279b1a703c5534aa7255
Author: Evan Prodromou <evan@status.net>
Date:   Mon Jul 9 16:30:23 2012 -0400

    class for user_openid_prefs table

commit 60e3e3825b20745c08b4d30dbbcac2d7ce604a2f
Author: Evan Prodromou <evan@status.net>
Date:   Mon Jul 9 16:29:15 2012 -0400

    add User_openid_prefs table and class
2012-07-09 16:54:47 -04:00
Evan Prodromou
51687cd4db Fix formatting of header 2012-07-09 15:59:10 -04:00
Evan Prodromou
206c090688 Squashed commit of the following:
commit 7ef19ab918cc9805abb8d01e8220ae4ed63155d7
Author: Evan Prodromou <evan@status.net>
Date:   Mon Jul 9 12:53:29 2012 -0400

    Show link to facebook account on profile block

    If you've logged in with Facebook, show a link to that account on the profile block.

commit b56967479c009d702150791944dbd80746ee3ba1
Author: Evan Prodromou <evan@status.net>
Date:   Mon Jul 9 12:28:34 2012 -0400

    Add profile link from profile block to Twitter account

    Add a profile link to Twitter for accounts that are linked via Twitter login.

commit 181e441fd03c6034e737f6a3dae115557aa3e1aa
Author: Evan Prodromou <evan@status.net>
Date:   Mon Jul 9 11:57:56 2012 -0400

    OpenID shows other account links

commit ef7357883dad9e34af2746e1c6a41ea826d7c992
Author: Evan Prodromou <evan@status.net>
Date:   Mon Jul 9 11:53:12 2012 -0400

    Add a profile link for OpenIDs

    OpenID plugin now adds a profile link for each OpenID on the account.

commit 093d26b95bc453686d24c42f5a8f4739cb338fd2
Author: Evan Prodromou <evan@status.net>
Date:   Mon Jul 9 11:15:18 2012 -0400

    Better array access

commit 49d47257efdcae2101b589a1f825872bdd70667c
Author: Evan Prodromou <evan@status.net>
Date:   Mon Jul 9 10:57:16 2012 -0400

    Show list of other accounts in profile block

    We add a group of "rel-me" links to other user accounts on the Web.

    This is mostly useful for when you've used OpenID, Twitter, or
    Facebook login to associate a remote account.

    There's an extension to the profileblock recipe to show the links as
    little icons; there's a new hook in accountprofileblock to get such
    links from plugins.

    There's a modification to the base theme to show the icons correctly
    (I think).
2012-07-09 12:56:09 -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
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
Siebrand Mazeland
f34a196e83 Localisation updates from http://translatewiki.net. 2012-03-01 17:22:45 +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
1094e7c2c6 Update openid docs 2011-09-30 14:52:51 -04:00
Evan Prodromou
82badb19c7 Move docs menu to site primary menu 2011-09-30 14:24:27 -04:00
Siebrand Mazeland
e7dac240ef Localisation updates from http://translatewiki.net. 2011-09-26 00:01:00 +02:00
Siebrand Mazeland
83dc51ee79 Localisation updates from http://translatewiki.net. 2011-09-11 16:54:08 +02:00
Siebrand Mazeland
7cfbe7c2d4 Localisation updates from http://translatewiki.net. 2011-08-30 11:50:01 +02:00
Evan Prodromou
2522f888c7 Static -> static 2011-08-27 17:42:31 -04:00
Evan Prodromou
9ca3c3d1c3 move core schema to class files 2011-08-22 17:52:02 -04:00
Siebrand Mazeland
ed13c9a098 Localisation updates from http://translatewiki.net. 2011-08-20 21:30:04 +02:00
Siebrand Mazeland
31556e3c00 Localisation updates from http://translatewiki.net. 2011-08-15 16:32:26 +02:00
Siebrand Mazeland
7fcdc1a9ed Localisation updates from http://translatewiki.net. 2011-07-21 14:49:16 +02:00
Siebrand Mazeland
eb90389a22 Localisation updates from http://translatewiki.net. 2011-07-01 13:02:21 +02:00
Siebrand Mazeland
42b28547d5 Localisation updates from http://translatewiki.net. 2011-06-19 13:20:34 +02:00
Siebrand Mazeland
89aebb4ef0 Localisation updates from http://translatewiki.net. 2011-06-18 18:14:28 +02:00
Siebrand Mazeland
2906f97dd9 Fix i18n for some very visible UI messages. 2011-06-17 22:36:26 +02:00
Siebrand Mazeland
c3f081c583 Localisation updates from http://translatewiki.net. 2011-06-05 21:15:31 +02:00