Brion Vibber [Tue, 18 Jan 2011 20:52:38 +0000 (12:52 -0800)]
Start cleaning up profile sidebar: link the header text on subscription/subscriber/groups sections to the tabs so users don't have to dance around looking for the link if they don't have enough to trigger a 'more' link.
Consolidated some of that link generation; sooooo much more dupe code to kill in this section!
Brion Vibber [Tue, 18 Jan 2011 20:34:27 +0000 (12:34 -0800)]
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.
* change i18n for confirmation string to make a bit more certain that the confirmation string is consistent in all messages where it is used.
* add translator documentation.
* remove superfluous whitespace.
Brion Vibber [Sat, 8 Jan 2011 00:25:58 +0000 (16:25 -0800)]
Fix error handling for missing group in apigroupmembership -- was trying to call methods on the variable before we checked it, which triggers PHP fatal error
Brion Vibber [Fri, 7 Jan 2011 23:29:30 +0000 (15:29 -0800)]
Fix warning in subscribers/subscriptions list pages where we attempted to call free() an ArrayWrapper after it was used up, thus trying to forward the call to a nonexistent object.
Removed the free calls (unneeded since destructors now work), and added an error check w/ logging & an exception for future attempts to forward calls to nonexistent object.
Brion Vibber [Fri, 7 Jan 2011 00:36:57 +0000 (16:36 -0800)]
Fix regression in last year's update of InfiniteScroll -- having debug off caused breakage due to bad code interpreting every variable as a selector, and jQuery then failing when passed 'false'.
Note that the current version of the infinitescroll jquery plugin fixes this, but I'm not updating to it because the code's been altered from the upstream version, apparently to stop it from actually working as infinite scroll. WTF? :)
Brion Vibber [Thu, 6 Jan 2011 21:52:12 +0000 (13:52 -0800)]
Ticket #2732: add some regression tests for groups to OStatus remote-tests.php
Note that these tests won't pass on master branch yet as the join/leave don't work, and there's a bug in Activity parsing which prevents interop between new feeds and old remote subscribers (both fixed in this branch).
Brion Vibber [Thu, 6 Jan 2011 23:05:29 +0000 (15:05 -0800)]
Fix for atom/activity streams parsing: feed's <activity:subject> was being taken at a higher priority than entry's <atom:author>, which broke OStatus group posting since we retired <activity:actor>.
Added test case to ActivityParseTests.
Brion Vibber [Thu, 6 Jan 2011 21:46:39 +0000 (13:46 -0800)]
allow group join/leave commands in api posting, at least for the moment (no other way to do remote subscribe without a preexisting local id number via api)
Brion Vibber [Wed, 5 Jan 2011 23:27:17 +0000 (23:27 +0000)]
Switch autoloader from '__autoload' magic function name to registering our function with spl_autoload_register(); fixes compat problem with PHPUnit 3.5+ which seems to break the old __autoload
Brion Vibber [Wed, 5 Jan 2011 22:27:53 +0000 (14:27 -0800)]
Salmon slap / magicsig test script
Given a notice in the local system, we package it up as an Atom entry and MagicSig it up.
We run the magicenv verification on it locally to make sure our own functions can decode it.
Optionally with --verify we can send to Tuomas Koski's verification test service (not sure if this is working 100%)
If given --slap= with a target Salmon endpoint, we'll sent it on and see if it liked it. (Note that StatusNet will reject if there's not a relevant mention, but will report acceptance for dupes so you can use a message that's already been delivered as a test.)
Brion Vibber [Wed, 5 Jan 2011 17:39:36 +0000 (09:39 -0800)]
Remove json2 author's "don't hotlink my script pls" alert line from our local copy of json2.js :D
Added json2.min.js to the makefile so it can be updated easily when json2.js changes.
Brion Vibber [Tue, 4 Jan 2011 21:09:44 +0000 (13:09 -0800)]
Fix ticket #2181: Can't save #000000 (black) in color fields on design page
It seems to have actually been saving correctly, but the update of the colors on the form success page wasn't working properly.
When a design object is pulled out of the database, the numeric fields are read in as strings, so black comes back as "0".
But, when we populate the new object and then stick it live, we've populated it with actual integers; with memcache on these might live for a while in the cache...
The fallback code in Design::toWebColor() did a check ($color == null) which would be false for the string "0", but counts as true for the *integer* 0.
Thus, the display code would initially interpret the correctly-saved black color as "use default".
Changing the check to === against null and "" empty string avoids the false positive on integers, and lets us see our nice black text immediately after save.