Commit Graph

56 Commits

Author SHA1 Message Date
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
Siebrand Mazeland
97ee2c2f12 Fix a typo and small error in translator documentation 2010-04-11 23:22:36 +02:00
Siebrand Mazeland
76d3fdacae Add translator documentation.
Fixed a few inconsistencies in the process. Apparently this code has been copied to imsettings.php, and some cases of 'email' had not been changed to 'IM'. Added FIXME for using globals/macros (?) in messages like "%%site.name%%". For easier/more consistent translation, this should preferably be plain %s parameters.
2010-04-11 22:37:03 +02:00
Brion Vibber
0841fa712e Ticket #1281: JID validation now more or less follows spec instead of calling e-mail validator
Basic splitting/validation code submitted via http://status.net/wiki/XMPP/JID_validation -- Copyright 2009 Patrick Georgi <patrick@georgi-clan.de> Licensed under ISC-L, which is compatible with everything else that keeps the copyright notice intact.

Added PEAR Net_IDNA package to extlib to handle IDN normalization (also used by Validate's email verifier if present).

* added test suite, supplemented my own test cases with JID validation and normalization test cases from libpurple
* follows XMPP rules for validation of name part
* fixes for normalization with non-ASCII names
* will do domain checks if $config['email']['check_domain'] is on, checking for an XMPP-server SRV record or any lookup. (We don't actually need to ping those direct though.)
* some more obscure stringprep validation rules aren't quite followed yet, but we err on the side of permissiveness.
* we still don't actually let you save your address with a resource on it, as we strip resources when looking up users who've sent us presence or message updates. I would recommend saving the outgoing resource as a separate field if/when we add that..?
2010-03-30 17:35:27 -07:00
Craig Andrews
e9995b0f6a Create IM plugin, Pluginize XMPP, Create AIM plugin 2010-01-27 13:48:35 -05:00
Brion Vibber
c7507e7e9d XMPP queued output & initial retooling of DB queue manager to support non-Notice objects.
Queue handlers for XMPP individual & firehose output now send their XML stanzas
to another output queue instead of connecting directly to the chat server. This
lets us have as many general processing threads as we need, while all actual
XMPP input and output go through a single daemon with a single connection open.

This avoids problems with multiple connected resources:
* multiple windows shown in some chat clients (psi, gajim, kopete)
* extra load on server
* incoming message delivery forwarding issues

Database changes:
* queue_item drops 'notice_id' in favor of a 'frame' blob.
  This is based on Craig Andrews' work branch to generalize queues to take any
  object, but conservatively leaving out the serialization for now.
  Table updater (preserves any existing queued items) in db/rc3to09.sql

Code changes to watch out for:
* Queue handlers should now define a handle() method instead of handle_notice()
* QueueDaemon and XmppDaemon now share common i/o (IoMaster) and respawning
  thread management (RespawningDaemon) infrastructure.
* The polling XmppConfirmManager has been dropped, as the message is queued
  directly when saving IM settings.
* Enable $config['queue']['debug_memory'] to output current memory usage at
  each run through the event loop to watch for memory leaks

To do:
* Adapt XMPP i/o to component connection mode for multi-site support.
* XMPP input can also be broken out to a queue, which would allow the actual
  notice save etc to be handled by general queue threads.
* Make sure there are no problems with simply pushing serialized Notice objects
  to queues.
* Find a way to improve interactive performance of the database-backed queue
  handler; polling is pretty painful to XMPP.
* Possibly redo the way QueueHandlers are injected into a QueueManager. The
  grouping used to split out the XMPP output queue is a bit awkward.

Conflicts:

	scripts/xmppdaemon.php
2010-01-22 12:52:36 -08:00
Brion Vibber
0e852def6a XMPP queued output & initial retooling of DB queue manager to support non-Notice objects.
Queue handlers for XMPP individual & firehose output now send their XML stanzas
to another output queue instead of connecting directly to the chat server. This
lets us have as many general processing threads as we need, while all actual
XMPP input and output go through a single daemon with a single connection open.

This avoids problems with multiple connected resources:
* multiple windows shown in some chat clients (psi, gajim, kopete)
* extra load on server
* incoming message delivery forwarding issues

Database changes:
* queue_item drops 'notice_id' in favor of a 'frame' blob.
  This is based on Craig Andrews' work branch to generalize queues to take any
  object, but conservatively leaving out the serialization for now.
  Table updater (preserves any existing queued items) in db/rc3to09.sql

Code changes to watch out for:
* Queue handlers should now define a handle() method instead of handle_notice()
* QueueDaemon and XmppDaemon now share common i/o (IoMaster) and respawning
  thread management (RespawningDaemon) infrastructure.
* The polling XmppConfirmManager has been dropped, as the message is queued
  directly when saving IM settings.
* Enable $config['queue']['debug_memory'] to output current memory usage at
  each run through the event loop to watch for memory leaks

To do:
* Adapt XMPP i/o to component connection mode for multi-site support.
* XMPP input can also be broken out to a queue, which would allow the actual
  notice save etc to be handled by general queue threads.
* Make sure there are no problems with simply pushing serialized Notice objects
  to queues.
* Find a way to improve interactive performance of the database-backed queue
  handler; polling is pretty painful to XMPP.
* Possibly redo the way QueueHandlers are injected into a QueueManager. The
  grouping used to split out the XMPP output queue is a bit awkward.
2010-01-21 22:40:35 -08:00
Siebrand Mazeland
4af6b7f5c3 Lots of tiny message changes.
* Mostly punctuation updates so that the same message is used consistently in all of StatusNet.
* Some cases of "Title Case" removed, because that does not appear to be used consistently.
2010-01-10 12:26:24 +01:00
Evan Prodromou
df86aa7214 define LACONICA and accept LACONICA for backwards compatibility 2009-08-26 10:41:36 -04:00
Evan Prodromou
865b716f09 change LACONICA to STATUSNET 2009-08-25 18:42:34 -04:00
Evan Prodromou
ae883ceb9b change controlyourself.ca to status.net 2009-08-25 18:19:04 -04:00
Evan Prodromou
d35b2d3f3c change laconi.ca to status.net 2009-08-25 18:16:46 -04:00
Evan Prodromou
c8b8f07af1 change Laconica and Control Yourself to StatusNet in PHP files 2009-08-25 18:12:20 -04:00
Jeffery To
93f585446e Added configuration options to enable/disable SMS and Twitter integration.
This disables the IM, SMS and Twitter settings pages and queue handlers
depending on the config options.
2009-08-07 01:18:17 +08:00
sarven
0b5f0f4faa Renamed form_datas to form_data 2009-01-19 03:09:13 +00:00
sarven
d46c2cc8a7 IM settings markup and style.
Added confirmed/unconfirmed styles
2009-01-18 20:36:50 +00:00
Evan Prodromou
97c98cf59a Break up settings into two tabset
Made two tabsets: account and connect. Removed "Invite" from
the global nav to make room.
2009-01-17 22:30:44 +00:00
Evan Prodromou
d1b5233eac Update IM settings to new system 2009-01-16 21:39:39 +00:00
Evan Prodromou
4b0cf99e56 Convert use of common_server_error and common_user_error to methods on Action 2009-01-15 23:03:38 +00:00
Evan Prodromou
eaa81d25fa Convert all actions to use new UI functions
I did a massive search-and-replace to get all the action subclasses to
use the new output function (common_element() -> $this->element(), etc.)

There's still a lot to do, but it's a first step
2009-01-15 22:57:15 +00:00
Evan Prodromou
b264c03d32 move opening brace of class declaration to next line
Another gigantor PEAR coding standards patch. Here, I've moved the
opening curly bracket on a class statement to the following line.

darcs-hash:20081223194923-84dde-77a93de314caadbcb5b70bf346a4648be77a864e.gz
2008-12-23 14:49:23 -05:00
Evan Prodromou
7ad2f2a371 TRUE
More PEAR coding standards global changes. Here, I've changed all
instances of TRUE to true and FALSE to false.

darcs-hash:20081223194428-84dde-cb1a1e6f679acd68e864545c4d4dd8752d6a6257.gz
2008-12-23 14:44:28 -05:00
Evan Prodromou
04ef1ba8ee change function headers to K&R style
Another huge change, for PEAR code standards compliance. Function
headers have to be in K&R style (opening brace on its own line),
instead of having the opening brace on the same line as the function
and parameters. So, a little perl magic found all the function
definitions and move the opening brace to the next line (properly
indented... usually).

darcs-hash:20081223193323-84dde-a28e36ecc66672c783c2842d12fc11043c13ab28.gz
2008-12-23 14:33:23 -05:00
Evan Prodromou
eb2f9c98ac replace NULL with null
Another global search-and-replace update. Here, I've replaced the PHP
keyword 'NULL' with its lowercase version. This is another PEAR code
standards change.

darcs-hash:20081223192129-84dde-4a0182e0ec16a01ad88745ad3e08f7cb501aee0b.gz
2008-12-23 14:21:29 -05:00
Evan Prodromou
edbc0c665c replace all tabs with four spaces
The PEAR coding standards decree: no tabs, but indent by four spaces.
I've done a global search-and-replace on all tabs, replacing them by
four spaces. This is a huge change, but it will go a long way to
getting us towards phpcs-compliance. And that means better code
readability, and that means more participation.

darcs-hash:20081223191907-84dde-21e8efe210e6d5d54e935a22d0cee5c7bbfc007d.gz
2008-12-23 14:19:07 -05:00
Zach Copley
2e239e3fbb CSRF protection in imsettings.php
darcs-hash:20080829035707-7b5ce-69a9ff98390ff8b9671ede948d78fdb37371aac6.gz
2008-08-28 23:57:07 -04:00
mikec
334c652e80 Publish MicroIDs for email and mpp on profile and notice pages.
darcs-hash:20080721120036-edabd-838335c0e23c80a657d353955b25b52a9a8624b2.gz
2008-07-21 08:00:36 -04:00
Mike Cochrane
4b8ae3e339 Resolve conflict
darcs-hash:20080714025853-533db-e215a2ab0277acafc1c01d2c12c20ec452ed53e2.gz
2008-07-13 22:58:53 -04:00
Mike Cochrane
d9aea8cb9a Fixed location of bracket for gettext.
darcs-hash:20080713053033-533db-c1b4e827abd764dc173173556ec889290b0643bf.gz
2008-07-13 01:30:33 -04:00
Evan Prodromou
499afd8c22 replies from people you're not subscribed to over Jabber
darcs-hash:20080715195513-84dde-454419c971015be385d9c4c35f7acbee419031f9.gz
2008-07-15 15:55:13 -04:00
Evan Prodromou
342dec8b86 fixing IM message, AGAIN
darcs-hash:20080714022055-84dde-385e62dcea9c692262556d4e78b52f95212b512a.gz
2008-07-13 22:20:55 -04:00
Evan Prodromou
e3f4165d69 conflict resolution after pulling from mikenz
darcs-hash:20080713215601-84dde-371d54221d9ffbed500e8d3c9e0ad4bb15bd5c30.gz
2008-07-13 17:56:01 -04:00
Mike Cochrane
b104da04fb Colapse a lot of strings to make like easier for translators and more consisitant for users
darcs-hash:20080713053748-533db-1cdb0cf3a9e4102eb139b74a7a9d4f97dadb20b8.gz
2008-07-13 01:37:48 -04:00
Mike Cochrane
834c21b2aa Merge some gettext strings to one line so translation tools are happier
darcs-hash:20080713044608-533db-ee16aecee9b6d82b22ce6a25f6a9573c23eee9f8.gz
2008-07-13 00:46:08 -04:00
Evan Prodromou
a55044ac03 twiddle some parens in imsettings for gettext
darcs-hash:20080713130112-84dde-b3727f84de7db3bbe96b9d1003380b89402495de.gz
2008-07-13 09:01:12 -04:00
Mike Cochrane
4d65b99c68 Translate a few more strings.
darcs-hash:20080708100519-533db-b326ea0bb16ea6c8244cfd00a0dd639d0553dd21.gz
2008-07-08 06:05:19 -04:00
Mike Cochrane
0f502b8d86 Remove tralling whitespace on lines and a gettext replacement that I missed.
darcs-hash:20080708095113-533db-ad63bbde67b6275fb7ae944cc9882adf6f3be517.gz
2008-07-08 05:51:13 -04:00
Mike Cochrane
87b494f1eb Convert _t() to _() for gettext.
darcs-hash:20080708094531-533db-83399a46e6ec4c0fcc6249b0235961f969d1ae73.gz
2008-07-08 05:45:31 -04:00
Evan Prodromou
e4a1b9cde9 optionally queue jabber confirmations
darcs-hash:20080706035707-84dde-5403fe9bcb017c401fe5847527628df548e54499.gz
2008-07-05 23:57:07 -04:00
Evan Prodromou
721d6f94c7 method
darcs-hash:20080702131507-84dde-507a6380fcab66c1fbcbaad6d1399c8a2f210acf.gz
2008-07-02 09:15:07 -04:00
Evan Prodromou
5121cbebe4 return instructions
darcs-hash:20080630170653-84dde-e13ebf4ea364a6f12bb2692bc0278491a804c0fc.gz
2008-06-30 13:06:53 -04:00
Evan Prodromou
c64f137497 refactor common behaviour in settings pages
darcs-hash:20080630170342-84dde-5d7feb88a0a707b24c8070802a7ec99dd1f35687.gz
2008-06-30 13:03:42 -04:00
Evan Prodromou
453751263b add a space between address and to
darcs-hash:20080627154825-84dde-b876f7dff5e1b72b94432e26cf8af02e2c36d0cc.gz
2008-06-27 11:48:25 -04:00
Evan Prodromou
450d727458 "subscribe" -> "add to buddy list"
darcs-hash:20080627143025-84dde-fee234fbcdf825cccc2ce0c9c812dcb27ebe6433.gz
2008-06-27 10:30:25 -04:00
Evan Prodromou
48cac45fd9 don't bother with subscription hoohaw; just ask the user to do it
darcs-hash:20080626203103-34904-19ef53bc734622a310a705608f3e227e2f387904.gz
2008-06-26 16:31:03 -04:00
Evan Prodromou
31b5ae1523 compile error with lost dot
darcs-hash:20080626190538-34904-d160176208203bcc806e824874c75021b32b6f92.gz
2008-06-26 15:05:38 -04:00
Evan Prodromou
201a988bf7 better instructions on confirmation code
darcs-hash:20080626190307-34904-5aca9b62944d4e8f6170705dec822d30a1163401.gz
2008-06-26 15:03:07 -04:00
Evan Prodromou
0b0beda026 some variable names swapped around when I split up the big method
darcs-hash:20080626184811-34904-d5d7373acb89b06eb3f0854d83b0ac425a70d1e2.gz
2008-06-26 14:48:11 -04:00
Evan Prodromou
fcc12459ed forgot to clone user
darcs-hash:20080626183721-34904-7c03b34e911ddb0c4adba959402d49476be932c1.gz
2008-06-26 14:37:21 -04:00
Evan Prodromou
f5caccc827 show checkbox as checked or not
darcs-hash:20080626182705-34904-893d72f480c330beb2d8f871da0d2cd9b902ffbf.gz
2008-06-26 14:27:05 -04:00