Evan Prodromou [Thu, 20 Jan 2011 21:08:22 +0000 (16:08 -0500)]
new group message layout
Evan Prodromou [Wed, 19 Jan 2011 23:31:07 +0000 (18:31 -0500)]
data structures
Evan Prodromou [Wed, 19 Jan 2011 15:13:47 +0000 (10:13 -0500)]
Merge branch 'testing' into privategroup
Brion Vibber [Tue, 18 Jan 2011 23:18:55 +0000 (15:18 -0800)]
add rss.me to notice_source defaults
Evan Prodromou [Tue, 18 Jan 2011 21:55:51 +0000 (16:55 -0500)]
non-working version of private groups
Brion Vibber [Tue, 18 Jan 2011 21:32:12 +0000 (13:32 -0800)]
SubMirror: add mirrored feeds count & management link to stats section when showing your own profile sidebar.
Brion Vibber [Tue, 18 Jan 2011 21:21:59 +0000 (13:21 -0800)]
Refactor profile sidebar statistics output so plugins can hook it and add entries.
Brion Vibber [Tue, 18 Jan 2011 21:12:08 +0000 (13:12 -0800)]
Refactor profile sidebar stats generation: factor out giant chunk of repeated method calls
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.
Brion Vibber [Tue, 18 Jan 2011 20:34:04 +0000 (12:34 -0800)]
SubMirror: switch the mirror setup tab from account settings to subscriptions/groups/invites area
Evan Prodromou [Mon, 17 Jan 2011 23:04:10 +0000 (18:04 -0500)]
wrap account actions in a section
Evan Prodromou [Mon, 17 Jan 2011 22:32:44 +0000 (17:32 -0500)]
Erroneous code ensuring Webfinger accounts
Ostatus_profile::ensureProfileURI() was accidentally falling through to
the default switch case, and was also calling common_log() incorrectly.
Evan Prodromou [Mon, 10 Jan 2011 19:59:07 +0000 (14:59 -0500)]
Merge remote branch 'gitorious/testing' into testing
Evan Prodromou [Sat, 8 Jan 2011 00:28:18 +0000 (19:28 -0500)]
Merge branch 'newmenuplugin' into testing
Evan Prodromou [Sat, 8 Jan 2011 00:27:59 +0000 (19:27 -0500)]
remove help link; Everyone => Public; Logo goes home
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 [Sat, 8 Jan 2011 00:23:54 +0000 (16:23 -0800)]
Ticket #2166: accept aliases for local group names in API
Also simplifies the code by using User_group::getForNickname instead of duplicating half of it :D
Evan Prodromou [Sat, 8 Jan 2011 00:22:27 +0000 (19:22 -0500)]
Show some menu fixup for settings for some themes
Evan Prodromou [Fri, 7 Jan 2011 23:57:34 +0000 (18:57 -0500)]
change 'Everyone' to 'Public'
Evan Prodromou [Fri, 7 Jan 2011 23:56:18 +0000 (18:56 -0500)]
combine account and connect menus
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 01:43:00 +0000 (17:43 -0800)]
Fix ticket #2392: sending invitation email fails when site name contains double quotes
Gotta escape quotes!
Brion Vibber [Fri, 7 Jan 2011 00:53:39 +0000 (16:53 -0800)]
Ticket #1968: fix favoriting, reply when using InfiniteScroll
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 [Thu, 6 Jan 2011 21:22:08 +0000 (13:22 -0800)]
Fix for PHP notice spew in group creation via API: set default 'mainpage' in User_group::register() rather than forcing all callers to do it manually.
Brion Vibber [Thu, 6 Jan 2011 00:04:32 +0000 (16:04 -0800)]
Merge branch 'testing-sig' of gitorious.org:~brion/statusnet/brion-fixes into testing
Brion Vibber [Thu, 6 Jan 2011 00:01:42 +0000 (00:01 +0000)]
Salmon signature checks on incoming slaps now check both old and new signature formats.
Brion Vibber [Wed, 5 Jan 2011 23:54:16 +0000 (23:54 +0000)]
Outgoing Salmon slaps now use the corrected signature format; if the first hit is rejected with an HTTP error, we try again with the old format.
(This is not 100% ideal; possibly should try to distinguish between server errors and rejections, etc.)
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 23:26:09 +0000 (23:26 +0000)]
Add test cases for internal change in Salmon signing; fix for the new code.
Updated sig passes Tuomas's verifier, which is a good sign
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 22:05:59 +0000 (14:05 -0800)]
Added doc comments on Salmon magicsig-related stuff to help in figuring out what's going on
Evan Prodromou [Wed, 5 Jan 2011 19:24:24 +0000 (11:24 -0800)]
move profile to subgroupnav
Evan Prodromou [Wed, 5 Jan 2011 18:52:44 +0000 (10:52 -0800)]
Revert "Revert "0.9.7alpha1""
This reverts commit
fd205546512b75016b1e055aec24eab586ae818b.
Conflicts:
lib/common.php
Brion Vibber [Wed, 5 Jan 2011 17:41:29 +0000 (09:41 -0800)]
Merge branch '0.9.x' into testing
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.
Evan Prodromou [Wed, 5 Jan 2011 03:32:36 +0000 (19:32 -0800)]
new menu layout plugin
Evan Prodromou [Tue, 4 Jan 2011 21:10:32 +0000 (13:10 -0800)]
change bookmark-info from a <p> to a <div>
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.
Brion Vibber [Tue, 4 Jan 2011 20:14:08 +0000 (12:14 -0800)]
Merge branch 'master' of gitorious.org:statusnet/mainline into 0.9.x
Brion Vibber [Tue, 4 Jan 2011 20:04:11 +0000 (12:04 -0800)]
Ticket #2649: fix for undefined $base_url in lighttpd code path
The $base_url var is never defined, and the code has actually always been wrong since it was added.
Just removing it seems to work fine :)
Brion Vibber [Tue, 4 Jan 2011 19:03:42 +0000 (11:03 -0800)]
Typo fix: http://status.net/open-source/issues/2976
Evan Prodromou [Mon, 3 Jan 2011 18:51:42 +0000 (10:51 -0800)]
Merge branch 'revertversion' into 0.9.x
Evan Prodromou [Mon, 3 Jan 2011 18:51:29 +0000 (10:51 -0800)]
Revert "0.9.7alpha1"
This reverts commit
3d62c1cf5114760c0a7b97cd69ba363ac059e215.
Evan Prodromou [Mon, 3 Jan 2011 18:38:32 +0000 (10:38 -0800)]
Configuration options for using an HTTP proxy
We can make a lot of HTTP requests from the server side. This change
adds some configuration options for using an HTTP proxy, which can
cache hits from multiple sites (good for status.net-like services, for example).
Brion Vibber [Fri, 31 Dec 2010 20:42:26 +0000 (12:42 -0800)]
Bookmark plugin: tweak post-upload success message to distinguish between "already done" (UnQueueManager) and "started, should finish eventually" (other queue manager)
Brion Vibber [Fri, 31 Dec 2010 20:33:51 +0000 (12:33 -0800)]
Bookmark plugin: fix for delicious import with queues enabled
We were passing DOM nodes directly into the queues for the final bookmark import stage; unfortunately these don't actually survive serialization.
Moved the extraction of properties from the HTML up to the first-stage handler, so now we don't have to worry about moving DOM nodes from one handler to the next. Instead passing an associative array of properties, which is fed into the Bookmark::saveNew by the per-bookmark handler.
Brion Vibber [Fri, 31 Dec 2010 20:09:54 +0000 (12:09 -0800)]
Bookmark plugin: fixes for bad DOM element nesting in delicious import data
delicious bookmark exports use the godawful HTML bookmark file format that ancient versions of Netscape used (and has thus been the common import/export format for bookmarks since the dark ages of the web :)
This arranges bookmark entries as an HTML definition list, using a lot of implied close tags (leaving off the </dt> and </dd>).
DOMDocument->loadHTML() uses libxml2's HTML mode, which generally does ok with muddling through things but apparently is really, really bad about handling those implied close tags.
Sequences of adjacent <dt> elements (eg bookmark without a description, followed by another bookmark "<dt><dt>"), end up interpreted as nested ("<dt><dt></dt></dt>") instead of as siblings ("<dt></dt><dt></dt>").
The first round of code tried to resolve the nesting inline, but ended up a bit funky in places.
I've replaced this with a standalone run through the data to re-order the elements, based on our knowing that <dt> and <dd> cannot directly contain one another; once that's done, our main logic loop can be a bit cleaner. I'm not 100% sure it's doing nested sublists correctly, but these don't seem to show up in delicious export (and even if they do, with the way we flatten the input it shouldn't make a difference).
Also fixed a clearer edge case where some bookmarks didn't get imported when missing descriptions.
Brion Vibber [Fri, 31 Dec 2010 20:09:15 +0000 (12:09 -0800)]
Bookmark plugin: graceful error out for failure to import a delicious bookmark due to it being already bookmarked
Brion Vibber [Fri, 31 Dec 2010 01:11:16 +0000 (17:11 -0800)]
Fix up edge case in nickname processing: overlong display forms should be rejected before normalization (storage of display forms will also have fields with limited length)
Evan Prodromou [Fri, 31 Dec 2010 00:57:28 +0000 (16:57 -0800)]
Generated an extra class on bookmark notice <li>s
Evan Prodromou [Fri, 31 Dec 2010 00:57:05 +0000 (16:57 -0800)]
Events to hook for NoticeListElement <li> generation
Evan Prodromou [Fri, 31 Dec 2010 00:54:01 +0000 (16:54 -0800)]
switch bookmark CSS classes to use dash instead of underscore
Evan Prodromou [Fri, 31 Dec 2010 00:21:45 +0000 (16:21 -0800)]
Merge branch 'testing' of gitorious.org:statusnet/mainline into testing
Evan Prodromou [Fri, 31 Dec 2010 00:21:22 +0000 (16:21 -0800)]
don't show some bookmark elements if empty
Brion Vibber [Fri, 31 Dec 2010 00:14:41 +0000 (16:14 -0800)]
Tweak the post-form return on bookmarklet if we're not in a popup that we can close
Brion Vibber [Thu, 30 Dec 2010 21:37:05 +0000 (13:37 -0800)]
Make sure the UUIDs are unique too :)
Brion Vibber [Thu, 30 Dec 2010 21:21:59 +0000 (13:21 -0800)]
Update ActivityCreationTests for our switch away from the obsolete <activity:actor>
Evan Prodromou [Thu, 30 Dec 2010 21:21:14 +0000 (13:21 -0800)]
Use UUIDs for Bookmark unique ID
I was trying to generate URIs for Bookmarks based on (profile, crc32(url), created).
I failed at that. CRC32s are unsigned ints, and our schema code didn't like that.
On top of that, my code to encode and restore created timestamps was problematic.
So, I switched back to using a meaningless unique ID for Bookmarks.
One way to do this would be to use an auto-incrementing integer ID. However, we've been
kind of crabbed out a few times for exposing auto-incrementing integer IDs as URIs, so
I thought maybe using a random UUID would be a better way to do it.
So, this patch sets random UUIDs for URIs of bookmarks.
Evan Prodromou [Thu, 30 Dec 2010 20:15:34 +0000 (12:15 -0800)]
UUID-generation tools
Evan Prodromou [Thu, 30 Dec 2010 00:18:43 +0000 (16:18 -0800)]
version 0.9.8dev
Evan Prodromou [Thu, 30 Dec 2010 00:15:57 +0000 (16:15 -0800)]
0.9.7alpha1
Evan Prodromou [Thu, 30 Dec 2010 00:14:00 +0000 (16:14 -0800)]
update version to 0.9.7
Evan Prodromou [Wed, 29 Dec 2010 23:33:57 +0000 (15:33 -0800)]
Show <activity:subject> in Atom group notice feed
Version 0.9.6 and below of StatusNet assume anything in <author> is a
Person. So, we include an <activity:subject> element, which will be
checked first by those versions of the code, only for group feeds.
At some point we'll take this out, but it's useful for now.
Evan Prodromou [Wed, 29 Dec 2010 23:29:29 +0000 (15:29 -0800)]
Merge branch '0.9.x' into noactor
Evan Prodromou [Wed, 29 Dec 2010 22:53:38 +0000 (14:53 -0800)]
Merge branch '0.9.x' of gitorious.org:statusnet/mainline into 0.9.x
Evan Prodromou [Wed, 29 Dec 2010 22:52:43 +0000 (14:52 -0800)]
don't distribute when restoring archived delicious bookmarks
Evan Prodromou [Wed, 29 Dec 2010 22:24:30 +0000 (14:24 -0800)]
phpcs showbookmark.php
Evan Prodromou [Wed, 29 Dec 2010 22:22:41 +0000 (14:22 -0800)]
phpcs noticebyurl.php
Evan Prodromou [Wed, 29 Dec 2010 22:21:25 +0000 (14:21 -0800)]
phpcs importdelicious.php
Evan Prodromou [Wed, 29 Dec 2010 22:17:32 +0000 (14:17 -0800)]
phpcs Bookmark.php
Evan Prodromou [Wed, 29 Dec 2010 22:16:15 +0000 (14:16 -0800)]
phpcs BookmarkPlugin.php
Evan Prodromou [Wed, 29 Dec 2010 22:02:31 +0000 (14:02 -0800)]
Add link to delicious bookmark importer to profile settings
Evan Prodromou [Wed, 29 Dec 2010 22:02:04 +0000 (14:02 -0800)]
add hooks for the account-management tools
Evan Prodromou [Wed, 29 Dec 2010 21:51:59 +0000 (13:51 -0800)]
Web UI for importing delicious backup files
Evan Prodromou [Wed, 29 Dec 2010 21:28:32 +0000 (13:28 -0800)]
Bad method call in File_to_post
Evan Prodromou [Tue, 28 Dec 2010 23:36:25 +0000 (23:36 +0000)]
fixup date handling in showbookmark for PHP 5.2
Evan Prodromou [Tue, 28 Dec 2010 21:45:24 +0000 (13:45 -0800)]
show count of other bookmarks with link to stream
Evan Prodromou [Tue, 28 Dec 2010 21:44:49 +0000 (13:44 -0800)]
method to count notices linking to an URL
Evan Prodromou [Tue, 28 Dec 2010 21:44:18 +0000 (13:44 -0800)]
Delete file links when Notice is deleted
Evan Prodromou [Tue, 28 Dec 2010 21:42:44 +0000 (13:42 -0800)]
Merge branch '0.9.x' into socialbookmark
Evan Prodromou [Tue, 28 Dec 2010 20:58:10 +0000 (12:58 -0800)]
Page with a list of notices that link to an URL
Evan Prodromou [Tue, 28 Dec 2010 20:57:31 +0000 (12:57 -0800)]
Fixes from testing File::stream()
Evan Prodromou [Tue, 28 Dec 2010 19:58:55 +0000 (11:58 -0800)]
Stream of notices linking to an URL
Brion Vibber [Tue, 28 Dec 2010 19:37:38 +0000 (11:37 -0800)]
Merge branch 'master' into 0.9.x
Brion Vibber [Tue, 28 Dec 2010 19:34:02 +0000 (11:34 -0800)]
Prevent group creation by silenced users.
* adds Right::CREATEGROUP
* logic in Profile::hasRight() checks for silencing
* NewgroupAction checks for the permission before letting you see or process the form in the UI
* User_group::register() logic does a low-level check on the specified initial group admin, and rejects creation if that user doesn't have the right; guaranteeing that API methods etc will also have this restriction applied sensibly.
Evan Prodromou [Tue, 28 Dec 2010 06:58:13 +0000 (22:58 -0800)]
If notice has been deleted before, don't store URI again
Evan Prodromou [Tue, 28 Dec 2010 06:57:35 +0000 (22:57 -0800)]
import bookmarks from backups
Evan Prodromou [Tue, 28 Dec 2010 06:57:11 +0000 (22:57 -0800)]
Don't double-insert a bookmark
Evan Prodromou [Tue, 28 Dec 2010 06:38:36 +0000 (22:38 -0800)]
Merge branch '0.9.x' into socialbookmark
Evan Prodromou [Tue, 28 Dec 2010 06:37:34 +0000 (22:37 -0800)]
document events for activity import
Evan Prodromou [Tue, 28 Dec 2010 06:35:57 +0000 (22:35 -0800)]
pass through $idField and $createdField in Notice queries
Evan Prodromou [Tue, 28 Dec 2010 06:28:20 +0000 (22:28 -0800)]
add events for restoring activities
Evan Prodromou [Tue, 28 Dec 2010 06:16:34 +0000 (22:16 -0800)]
return saved notice to AtomPub for Bookmarks
Evan Prodromou [Tue, 28 Dec 2010 06:13:23 +0000 (22:13 -0800)]
Merge branch '0.9.x' into socialbookmark
Evan Prodromou [Tue, 28 Dec 2010 06:13:17 +0000 (22:13 -0800)]
Documentation for change in atompub events