Commit Graph

11652 Commits

Author SHA1 Message Date
Evan Prodromou
8eb6646716 Merge branch 'testing'
Conflicts:
	plugins/Facebook/facebookaction.php
	plugins/Facebook/facebookhome.php
	plugins/Facebook/facebookutil.php
2011-02-08 11:52:40 -05:00
Evan Prodromou
e903ff0525 Make ShowmessageAction not be a subclass of MailboxAction
The ShowmessageAction was using the MailboxAction to do its display of
a single direct message. Since we redid the nickname management, this
was breaking (MailboxAction requires a nickname argument,
ShowmessageAction does not, and nickname validation that used to
quietly fail now throws an exception).

I've moved the message list processing to its own widget class, so the
need to subclass MailboxAction has disappeared. I've rewritten this
action to use the MessageListItem widget, and it works fine now.
2011-02-08 11:33:36 -05:00
Evan Prodromou
3b19b63bab correctly show the source of messages in a message list 2011-02-08 11:32:35 -05:00
Evan Prodromou
f500d4ea5b Create and use MessageList widget
Our mailbox actions (inbox and outbox) were doing their own display of
messages. This was causing issues with especially showmessage, which
since the more rigourous nickname checks were added, no longer works as
a mailbox subclass.

I've taken the time to rip out the message listing code from MailboxAction
and moved it to a MessageList widget. The different mailboxes now have their
own subclasses that show the correct profile in the list.
2011-02-08 11:11:21 -05:00
Brion Vibber
c858e2bc34 Issue #3025: string -> boolean for profile_background_tile entry in JSON user results from Twitter-compat API
This entry was using the strings 'true' and 'false' instead of literal booleans, which could confuse clients expecting literal booleans as in other places and on Twitter in this place.
2011-02-07 14:38:35 -08:00
Brion Vibber
1c3fabbc27 Add a brief explanation of what group inbox is at the top of the page (instructions section), plus a message to show when there are no private messages in the inbox. 2011-02-07 12:39:40 -08:00
Brion Vibber
ac5e7b727a Merge branch 'testing' of gitorious.org:statusnet/mainline into testing 2011-02-07 12:20:12 -08:00
Brion Vibber
4883069177 Fix group regexes that got missed in Nickname::DISPLAY_FMT update: fixes bug where group linking happened, but not actual delivery, when using _underscores_ in the !group_name 2011-02-07 12:18:41 -08:00
Evan Prodromou
dbd496f901 hide feeds from group page if it's private-only 2011-02-07 14:24:35 -05:00
Evan Prodromou
204b5e8a63 Show a little indicator for private-only groups 2011-02-07 14:21:54 -05:00
Evan Prodromou
b41816fdc1 add hooks for Group profile information 2011-02-07 14:04:58 -05:00
Evan Prodromou
1d439ef5d8 Force notices to DMs when privacy = always 2011-02-07 12:58:42 -05:00
Evan Prodromou
80a4b9c76f Change category and copyright year 2011-02-07 12:28:58 -05:00
Evan Prodromou
c37f0f8256 Merge branch 'testing' into privategroup 2011-02-07 12:27:09 -05:00
Evan Prodromou
e759b15a92 pagination for group inbox 2011-02-07 12:08:18 -05:00
Evan Prodromou
20824292c9 Rename PrivateGroup to GroupPrivateMessage to be clearer 2011-02-07 11:57:34 -05:00
Evan Prodromou
ee0bbdf89c Add group info to new group message email 2011-02-07 11:55:16 -05:00
Evan Prodromou
951df6b02f button on the group page to post a new message 2011-02-07 11:51:38 -05:00
Evan Prodromou
5db1479a95 Form for posting a group message on group inbox 2011-02-07 11:24:00 -05:00
Evan Prodromou
8b20399932 Add a hook for group action list 2011-02-07 10:23:56 -05:00
Evan Prodromou
4a435e6670 Show group local nav on group inbox 2011-02-07 10:18:54 -05:00
Evan Prodromou
143cc4bdd0 Show private messages to groups in a list
Shows the messages to a private group in a list. New classes for
showing a group private message and list of group private messages.

New actions for showing a stream of group private messages and a
single group private message.
2011-02-07 09:46:26 -05:00
Evan Prodromou
cd536e3099 move MESSAGES_PER_PAGE to common.php 2011-02-05 16:18:59 -05:00
Evan Prodromou
842bc5708e Send a private group message with a d command 2011-02-04 15:51:59 -05:00
Evan Prodromou
d7b2b141be commands are always lowercased in interpreter 2011-02-03 17:06:15 -05:00
Evan Prodromou
21feac3bea hooks for commands 2011-02-03 17:04:16 -05:00
Evan Prodromou
a002d57736 save group privacy settings 2011-02-03 16:39:52 -05:00
Evan Prodromou
2cdba23df4 hook for new group through a form, same as editing 2011-02-03 16:19:41 -05:00
Evan Prodromou
8bf57019c1 autoload private group classes 2011-02-03 15:30:57 -05:00
Evan Prodromou
094bb9e1c3 redo the group dm schema, again 2011-02-03 15:28:41 -05:00
Evan Prodromou
5f365e75ca only blow public timeline cache if notice is in it 2011-02-03 13:58:56 -05:00
Evan Prodromou
99db745f9d Merge branch 'testing' into privategroup
Conflicts:
	lib/groupeditform.php
2011-02-03 12:56:55 -05:00
Evan Prodromou
70cf37cb88 fix variable name in NewMenu 2011-02-03 11:42:36 -05:00
Brion Vibber
ec93184d7b Merge branch '3022' into testing 2011-02-01 14:37:46 -08:00
Brion Vibber
7977454456 Ticket #3022: fix formatting output for ApiAction::clientError and ApiAction::serverError when caller doesn't explicitly pass the format.
Format's already available as a member variable, so use it!

Fixes some error reponses in api/statusnet/groups/leave.json which were coming through as XML.
May fix some others as well.
2011-02-01 14:35:42 -08:00
Zach Copley
b595c3f0d5 API - Return integers instead of strings for group IDs and DM sender/recipients in JSON output 2011-01-31 21:01:03 -08:00
Zach Copley
c35d8e3a3e Remove old Facebook Plugin (use FacebookBridge now) 2011-01-31 23:50:22 +00:00
Zach Copley
ad12384d8c FacebookPlugin: Fix up FBML canvas app so it keeps working after
Facebook removed Profile Boxes and some API calls it relied upon.
See: http://developers.facebook.com/roadmap/deprecations
2011-01-31 23:48:25 +00:00
Zach Copley
7f1b872088 FacebookPlugin: Fix up FBML canvas app so it keeps working after
Facebook removed Profile Boxes and some API calls it relied upon.
See: http://developers.facebook.com/roadmap/deprecations
2011-01-31 23:42:43 +00:00
Brion Vibber
b46ce3b67d Fix "$s"s that slipped into double-quoted translatable strings' '%1$s' pattern. Switch to single-quote to fix. 2011-01-31 14:00:22 -08:00
Brion Vibber
de7726dd00 Performance counters: records number of total and unique cache get/set/incr/deletes and queries, and logs to syslog.
$config['site']['logperf'] = true; // to record & dump total hits of each type and the runtime to syslog
$config['site']['logperf_detail'] = true; // very verbose -- dump the individual cache keys and queries as they get used (may contain private info in some queries)

Seeing 180 cache gets on a timeline page seems not unusual currently; since these run in serial, even relatively small roundtrip times can add up heavily.
We should consider ways to reduce the number of round trips, such as more frequently storing compound objects or the output of processing in memcached.
Doing parallel multi-key lookups could also help by collapsing round-trip times, but might not be easy to fit into SN's object model. (For things like streams this should actually work pretty well -- grab the list, then when it's returned go grab all the individual items in parallel and return the list)
2011-01-31 13:12:56 -08:00
Brion Vibber
b896a37da0 Use cachedQuery on File::getAttachments, plus other cleanups:
* dropped unnecessary join on notice table
* made the function actually static, since it makes no sense as an instance variable. The only caller (in AttachmentList) is updated.
2011-01-31 12:22:50 -08:00
Brion Vibber
2a29738dc1 Revert "Session GC fix: save session.modified field as UTC so our comparisons work." - no longer needed with ticket #3020 fix to time zone settings
This reverts commit a7abb2323e.
2011-01-31 11:50:24 -08:00
Brion Vibber
47f31bce47 Merge branch 'master' into testing
Conflicts:
	classes/Profile.php
2011-01-31 11:50:06 -08:00
Brion Vibber
54f7154db8 Fix for ticket #3020: set MySQL session time_zone variable to UTC ('+0:00') so TIMESTAMP column values are comparable against our other UTC timestamp values.
MySQL stores TIMESTAMP columns as UTC, but with a local time interface. (SRSLY?!) DATETIME columns are always bare and assumed to be local time, but we keep only UTC in them.
Forcing the session time_zone to UTC means we won't have to worry as much about what we're sending/receiving in there.

Also will let us remove the hack in master commit a7abb2323e for session tweaks
2011-01-31 11:45:19 -08:00
Brion Vibber
5b8e74f8d4 normalize line endings in shiny/css/display.css 2011-01-31 11:09:20 -08:00
Brion Vibber
9573f725c1 Merge branch '0.9.x' into testing 2011-01-31 11:08:15 -08:00
Brion Vibber
9567308b70 Merge branch 'testing' of gitorious.org:statusnet/mainline into testing 2011-01-31 11:03:46 -08:00
Brion Vibber
b2f4a02377 Update jquery.form.js to 2.63 -- 2.60 fixed our Opera regression per issue #3015
Thanks to the fine folks at http://forum.jquery.com/topic/regression-form-plugin-ajaxform-cannot-access-xml-return-data-in-opera#14737000001950332 :D
2011-01-31 11:02:29 -08:00
Evan Prodromou
adaad5bb5e Merge branch 'runtime' into testing 2011-01-31 14:02:17 -05:00