Evan Prodromou
e11c69fd81
always allow author to see own notices
2011-03-26 16:47:18 -04:00
Evan Prodromou
82b38b62a4
clearer scope rules for anonymous and author
2011-03-26 16:23:20 -04:00
Evan Prodromou
c7f866b032
Caller can set scope for Notice::saveNew()
2011-03-26 15:49:46 -04:00
Evan Prodromou
0c3f8208cd
Merge branch 'limitdist' into limitdist2
2011-03-25 11:46:49 -04:00
Evan Prodromou
44bcc942b8
Break up stream code to use separate notice stream classes
...
Rearchitect (again!) notice stream code to delegate different functionality up and down the stack.
Now, different classes implement NoticeStream.
2011-03-24 18:04:19 -04:00
Siebrand Mazeland
3be26565fb
Update translator documentation.
...
i18n/L10n updates.
Superfluous whitespace removed.
Add FIXME in files with missing documentation.
2011-03-24 11:48:51 +01:00
Evan Prodromou
eb1faa7865
Merge branch '1.0.x' into limitdist
...
Conflicts:
classes/Notice.php
2011-03-23 15:58:27 -04:00
Evan Prodromou
2b901894c2
Some fixes to make the notice stream class work
2011-03-23 11:59:01 -04:00
Evan Prodromou
efb6a7b441
let Inbox class go fingerpokin' in streams
2011-03-23 11:42:52 -04:00
Evan Prodromou
0b35ce7c37
New NoticeStream class to reify streams of notices
...
We've been muddling through with 6- or 8-argument functions for managing streams. I'd
like to start thinking of streams as their own thing, and give them some more value.
So, the new NoticeStream class takes over the Notice::stream() function and Notice::getStreamByIds().
There's probably some fine-tuning to do on the object interface.
2011-03-23 11:29:55 -04:00
Brion Vibber
14a6ab2b04
Refactoring on notification mail generation: common profile & footer chunks pulled out, notifications added for group joins.
2011-03-22 16:50:27 -07:00
Evan Prodromou
fd8dad3963
Merge branch 'limitdist' of gitorious.org:~evan/statusnet/evans-mainline into limitdist
...
Conflicts:
classes/Notice.php
2011-03-22 18:17:09 -04:00
Evan Prodromou
31e7d46a5b
add profile to stream function
2011-03-22 18:15:53 -04:00
Evan Prodromou
26a4bd7dbf
move scope check to Notice so we can have a null profile
2011-03-22 11:56:28 -04:00
Evan Prodromou
7fc5679e7e
function for checking scope rules for Profile
2011-03-22 11:56:28 -04:00
Evan Prodromou
6cdbe47e72
add scope flags for Notice
2011-03-22 11:56:28 -04:00
Evan Prodromou
7f74aa6c20
Add scope bitmap for notices
2011-03-22 11:56:28 -04:00
Evan Prodromou
83fb5e6023
Mass replacement of #-comments with //-comments
...
like leprous boils in our code. So, I've replaced all of them with //
comments instead. It's a massive, meaningless, and potentially buggy
change -- great one for the middle of a release cycle, eh?
2011-03-22 11:54:23 -04:00
Brion Vibber
942887ca8c
Split up some list/form classes, and get the 'approve' and 'cancel' links on group member queue working.
2011-03-21 17:17:18 -07:00
Brion Vibber
6bdb1053ad
Pending members queue list -- doesn't yet allow approval.
2011-03-21 16:40:10 -07:00
Brion Vibber
471a480587
Logic to have group joins turn into pending joins automatically when group is set to mod; allow users to cancel their pending group requests.
2011-03-21 16:26:41 -07:00
Brion Vibber
a54eb0941e
Tweaking request_queue -> group_join_queue, easier to deal with the indexes and keys and caching this way.
2011-03-21 15:05:36 -07:00
Brion Vibber
541dfa04fe
Switch things from calling Group_member::join & leave & calling events manually to running through Profile::joinGroup() && Profile::leaveGroup(), with the events encapsulated.
2011-03-21 14:35:29 -07:00
Brion Vibber
0bec9cfdbc
Add request_queue table and user_group.join_policy column, for upcoming join & subscription moderation.
...
UI for setting the join policy is in, but not yet used.
2011-03-21 13:51:13 -07:00
Brion Vibber
90a7631592
Caching for conversation root lookup, some logic fixes in threaded view
2011-03-17 17:36:53 -07:00
Brion Vibber
0c2c73659c
Use cached sources for favorites & repeats info on threaded notice lists
2011-03-17 17:06:04 -07:00
Evan Prodromou
9af92f94bd
function for checking scope rules for Profile
2011-03-17 12:16:09 -04:00
Evan Prodromou
b8735f4911
add scope flags for Notice
2011-03-17 12:16:09 -04:00
Evan Prodromou
ef638b0f22
Add scope bitmap for notices
2011-03-17 12:16:09 -04:00
Brion Vibber
8de24335d2
Doc comment on Notice->getTags() to clarify the return data type
2011-03-15 12:51:29 -07:00
Brion Vibber
b66250c6aa
Add StartNoticeWhoGets, EndNoticeWhoGets events to allow upcoming TagSub plugin to do extra inbox delivery.
2011-03-15 12:49:17 -07:00
Evan Prodromou
e1d177de7e
store reply_to notices as comment activity objects
2011-03-07 14:27:23 -05:00
Evan Prodromou
32f4daf44d
Notice saves its object type
2011-03-07 14:20:55 -05:00
Brion Vibber
d09aa9c947
Workaround for bug causing fatal error during favoriting; Profile::getCurrentNotice() was returning an ArrayList instead of a Notice directly due to pulling through Profile::getNotices(). This caused failure in Fave::addNew() which specifies it wants a Notice. Caused failure of the 'fav' IM command.
2011-03-01 17:01:35 -08:00
Brion Vibber
a7005f3975
Alternate Inbox streaming function optimized for threaded paging (for /all stream, while things using the existing API inbox methods won't be affected)
2011-03-01 15:16:39 -08:00
Zach Copley
b7d0746694
Merge branch '0.9.x' into 1.0.x
...
Conflicts:
actions/confirmaddress.php
actions/emailsettings.php
actions/hostmeta.php
actions/imsettings.php
actions/login.php
actions/profilesettings.php
actions/showgroup.php
actions/smssettings.php
actions/urlsettings.php
actions/userauthorization.php
actions/userdesignsettings.php
classes/Memcached_DataObject.php
index.php
lib/accountsettingsaction.php
lib/action.php
lib/common.php
lib/connectsettingsaction.php
lib/designsettings.php
lib/personalgroupnav.php
lib/profileaction.php
lib/userprofile.php
plugins/ClientSideShorten/ClientSideShortenPlugin.php
plugins/Facebook/FBConnectSettings.php
plugins/Facebook/FacebookPlugin.php
plugins/NewMenu/NewMenuPlugin.php
plugins/NewMenu/newmenu.css
2011-02-28 15:39:43 -08:00
Brion Vibber
2bd9532ebe
Merge branch 'master' into 0.9.x
2011-02-28 10:18:18 -08:00
Brion Vibber
9ec395b07a
Workaround for reply timeline since_id issue: save the notice.created value into reply.modified, so we can key off it as expected.
...
As a hack this removes the mysql_timestamp bit from the field settings on reply.modified so that our value actually gets saved. This *should* work ok as long as system timezone is set correctly, which we now set to UTC to match when connecting.
2011-02-25 13:22:13 -08:00
Brion Vibber
0291c6f7cd
Merge branch 'unicode-tag' into 0.9.x
2011-02-25 10:17:03 -08:00
Zach Copley
17176ee445
Merge branch 'json-activities' into 0.9.x
2011-02-25 00:15:26 -08:00
Brion Vibber
295e2bde56
Unicodize a couple regexes for tags: fixes linking & detection of non-ASCII tags that match the current regexes.
...
(Checks for 'letter' and 'number' characters, underscore, dash, and period.)
2011-02-23 16:37:55 -08:00
Evan Prodromou
f743a233ab
Merge branch '0.9.x' of gitorious.org:statusnet/mainline into 0.9.x
2011-02-21 16:36:12 -05:00
Evan Prodromou
1525acdca1
Extend authorization framework to cover login and API use
...
I've extended the rights framework (centering on the Right class and Profile::hasRight()) to cover
Web login and API use. This will make it possible to prevent login and API use by users.
I added two new Right constants to the Right class: WEBLOGIN and API. I check these rights using
Profile::hasRight() when initializing users. If the rights check fails, I throw an exception.
I created a new AuthorizationException class for this particular
exception, in order to allow a different UI for these kinds of exceptions (or whatever).
2011-02-21 10:20:42 -05:00
Zach Copley
29ce5dd19a
Reinstate profile_info in author/actor
2011-02-17 19:02:57 -08:00
Brion Vibber
98b1fe07c6
Blow user:site_owner cache when granting/revoking 'owner' role
2011-02-17 16:46:08 -08:00
Evan Prodromou
ccdd47bdb4
use fallback URIs for groups when filling in attention in Notice::asActivity()
2011-02-17 10:51:00 -05:00
Zach Copley
764a29e2ff
Remove debugging statements I accidentally left in
2011-02-16 16:21:31 -08:00
Zach Copley
a1b436a8c6
First cut at some JSON Activity Streams output
2011-02-15 20:25:39 -08:00
Brion Vibber
454a980bd4
Fix for failure/exception on subscription/subscriber lists when deleted profiles are stuck in cached list.
...
Workaround for deleted profiles still appearing in cached subscriptions/subscribers lists: if we couldn't fetch them, don't include them in the ArrayWrapper.
ArrayWrapper doesn't deal well with null entries, which aren't meant to happen in how it works. This code has recently changed from dying directly with a PHP fatal error in that case to throwing an exception, which allows tracking down the caller.
It looks like there might be some cases where profiles and their matching subscriptions get deleted, but the subscription entries don't get properly cleared from cache... that still bears further investigation. The regular code path looks ok; calls Subscription::cancel() from code called in Profile::delete(); but if they're batch-deleted instead of one row at a time, that could fail to trigger.
2011-02-11 13:21:53 -08:00
Zach Copley
df19e88323
Atom output - Reinstate activity:actor and activity:subject
...
w/deprecation warnings. Also add statusnet:profile_info back into
author/actor.
2011-02-09 23:18:14 -08:00