1 InitializePlugin: a chance to initialize a plugin in a complete environment
3 CleanupPlugin: a chance to cleanup a plugin at the end of a program
5 StartPrimaryNav: Showing the primary nav menu
6 - $action: the current action
8 EndPrimaryNav: At the end of the primary nav menu
9 - $action: the current action
11 StartSecondaryNav: Showing the secondary nav menu
12 - $action: the current action
14 EndSecondaryNav: At the end of the secondary nav menu
15 - $action: the current action
17 StartShowStyles: Showing Style links; good place to add UA style resets
18 - $action: the current action
20 EndShowStyles: End showing Style links; good place to add custom styles
21 - $action: the current action
23 StartShowStylesheets: Showing stylesheet links
24 - $action: the current action
26 EndShowStylesheets: End showing stylesheet links; good place to add handheld or JavaScript dependant styles
27 - $action: the current action
29 StartShowUAStyles: Showing custom User-Agent style links
30 - $action: the current action
32 EndShowUAStyles: End showing custom User-Agent links; good place to add user-agent (e.g., filter, -webkit, -moz) specific styles
33 - $action: the current action
35 StartShowScripts: Showing JavaScript links
36 - $action: the current action
38 EndShowScripts: End showing JavaScript links; good place to add custom
39 links like Google Analytics
40 - $action: the current action
42 StartShowJQueryScripts: Showing JQuery script links (use this to link to e.g. Google mirrors)
43 - $action: the current action
45 EndShowJQueryScripts: End showing JQuery script links
46 - $action: the current action
48 StartShowStatusNetScripts: Showing StatusNet script links (use this to link to a CDN or something)
49 - $action: the current action
51 EndShowStatusNetScripts: End showing StatusNet script links
52 - $action: the current action
54 StartShowSections: Start the list of sections in the sidebar
55 - $action: the current action
57 EndShowSections: End the list of sections in the sidebar
58 - $action: the current action
60 StartShowHeader: Showing before the header container
61 - $action: the current action
63 EndShowHeader: Showing after the header container
64 - $action: the current action
66 StartShowFooter: Showing before the footer container
67 - $action: the current action
69 EndShowFooter: Showing after the footer container
70 - $action: the current action
72 StartShowContentBlock: Showing before the content container
73 - $action: the current action
75 EndShowContentBlock: Showing after the content container
76 - $action: the current action
78 StartShowAside: Showing before the Aside container
79 - $action: the current action
81 EndShowAside: Showing after the Aside container
82 - $action: the current action
84 StartShowNoticeFormData: Showing before the notice form data
85 - $action: the current action
87 EndShowNoticeFormData: Showing after the notice form data
88 - $action: the current action
90 StartNoticeSave: before inserting a notice (good place for content filters)
91 - $notice: notice being saved (no ID or URI)
93 EndNoticeSave: after inserting a notice and related code
94 - $notice: notice that was saved (with ID and URI)
96 StartShowLocalNavBlock: Showing the local nav menu
97 - $action: the current action
99 EndShowLocalNavBlock: At the end of the local nav menu
100 - $action: the current action
102 StartShowHTML: Chance to set document headers (e.g., content type, charset, language), DOCTYPE and html element properties
103 - $action: the current action
105 EndShowHTML: Showing after the html element
106 - $action: the current action
108 StartPublicGroupNav: Showing the public group nav menu
109 - $menu: the menu widget; use $menu->action for output
111 EndPublicGroupNav: At the end of the public group nav menu
112 - $menu: the menu widget; use $menu->action for output
114 StartSubGroupNav: Showing the subscriptions group nav menu
115 - $menu: the menu widget; use $menu->action for output
117 EndSubGroupNav: At the end of the subscriptions group nav menu
118 - $menu: the menu widget; use $menu->action for output
120 StartInitializeRouter: Before the router instance has been initialized; good place to add routes
121 - $m: the Net_URL_Mapper that has just been set up
123 RouterInitialized: After the router instance has been initialized
124 - $m: the Net_URL_Mapper that has just been set up
126 StartLogout: Before logging out
127 - $action: the logout action
129 EndLogout: After logging out
130 - $action: the logout action
132 ArgsInitialize: After the argument array has been initialized
133 - $args: associative array of arguments, can be modified
135 StartAddressData: Allows the site owner to provide additional information about themselves for contact (e.g., tagline, email, location)
136 - $action: the current action
138 EndAddressData: At the end of <address>
139 - $action: the current action
141 StartShowSiteNotice: Before showing site notice
142 - $action: the current action
144 EndShowSiteNotice: After showing site notice
145 - $action: the current action
147 StartLoginGroupNav: Before showing the login and register navigation menu
148 - $action: the current action
150 EndLoginGroupNav: After showing the login and register navigation menu
151 - $action: the current action
153 StartAccountSettingsNav: Before showing the account settings menu
154 - $action: the current action
156 EndAccountSettingsNav: After showing the account settings menu
157 - $action: the current action
159 StartAccountSettingsProfileMenuItem: Before showing the Profile menu item
160 - $widget: AccountSettingsNav instance being shown
162 EndAccountSettingsProfileMenuItem: After showing the Profile menu item
163 - $widget: AccountSettingsNav instance being shown
165 StartAccountSettingsAvatarMenuItem: Before showing the Avatar menu item
166 - $widget: AccountSettingsNav instance being shown
168 EndAccountSettingsAvatarMenuItem: After showing the Avatar menu item
169 - $widget: AccountSettingsNav instance being shown
171 StartAccountSettingsPasswordMenuItem: Before showing the Password menu item
172 - $widget: AccountSettingsNav instance being shown
174 EndAccountSettingsPasswordMenuItem: After showing the Password menu item
175 - $widget: AccountSettingsNav instance being shown
177 StartAccountSettingsEmailMenuItem: Before showing the Email menu item
178 - $widget: AccountSettingsNav instance being shown
180 EndAccountSettingsEmailMenuItem: After showing the Email menu item
181 - $widget: AccountSettingsNav instance being shown
183 StartAccountSettingsDesignMenuItem: Before showing the Design menu item
184 - $widget: AccountSettingsNav instance being shown
186 EndAccountSettingsDesignMenuItem: After showing the Design menu item
187 - $widget: AccountSettingsNav instance being shown
189 StartAccountSettingsOtherMenuItem: Before showing the Other menu item
190 - $widget: AccountSettingsNav instance being shown
192 EndAccountSettingsOtherMenuItem: After showing the Other menu item
193 - $widget: AccountSettingsNav instance being shown
195 Autoload: When trying to autoload a class
196 - $cls: the class being sought. A plugin might require_once the file for the class.
198 SensitiveAction: determines if an action is 'sensitive' and should use SSL
199 - $action: name of the action, like 'login'
200 - $sensitive: flag for whether this is a sensitive action
202 LoginAction: determines if an action is a 'login' action (OK for public view in private mode)
203 - $action: name of the action, like 'register'
204 - $login: flag for whether this is a login action
206 StartShowHead: called before showing the <head> element and children
207 - $action: action object being show
209 EndShowHead: called after showing the <head> element (and </head>)
210 - $action: action object being shown
212 StartShowBody: called before showing the <body> element and children
213 - $action: action object being shown
215 EndShowBody: called after showing the <body> element (and </body>)
216 - $action: action object being shown
218 StartPersonalGroupNav: beginning of personal group nav menu
219 - $action: action object being shown
221 EndPersonalGroupNav: end of personal group nav menu (good place to add a menu item)
222 - $action: action object being shown
224 StartGroupGroupNav: Showing the group nav menu
225 - $action: the current action
227 EndGroupGroupNav: At the end of the group nav menu
228 - $action: the current action
230 StartEndHTML: just before the </html> tag
231 - $action: action object being shown
233 EndEndHTML: just after the </html> tag
234 - $action: action object being shown
236 FinalAction: After prepare() (and possible handle) in Action class.
237 - $status: result of "prepare" call on action
238 - $action: Action that is currently running
240 StartShowDesign: just before showing a site, user, or group design
241 - $action: action object being shown
243 EndShowDesign: just after showing a site, user, or group design
244 - $action: action object being shown
246 StartShowExportData: just before showing the <div> with export data (feeds)
247 - $action: action object being shown
249 EndShowExportData: just after showing the <div> with export data (feeds)
250 - $action: action object being shown
252 StartShowNoticeItem: just before showing the notice item
253 - $item: The NoticeListItem object being shown
255 EndShowNoticeItem: just after showing the notice item
256 - $item: the NoticeListItem object being shown
258 StartShowNoticeInfo: just before showing notice info
259 - $item: The NoticeListItem object being shown
261 EndShowNoticeInfo: just after showing notice info
262 - $item: The NoticeListItem object being shown
264 StartShowNoticeOptions: just before showing notice options like fave, repeat, etc.
265 - $item: the NoticeListItem object being shown
267 EndShowNoticeOptions: just after showing notice options like fave, repeat, etc.
268 - $item: the NoticeListItem object being shown
270 StartShowPageNotice: just before showing the page notice (instructions or error)
271 - $action: action object being shown
273 EndShowPageNotice: just after showing the page notice (instructions or error)
274 - $action: action object being shown
276 StartShowPageTitle: just before showing the main h1 title of a page (only for registration)
277 - $action: action object being shown
279 StartProfileFormData: just before showing text entry fields on profile settings page
280 - $action: action object being shown
282 EndProfileFormData: just after showing text entry fields on profile settings page
283 - $action: action object being shown
285 StartProfileSaveForm: before starting to save a profile settings form
286 - $action: action object being shown
288 EndProfileSaveForm: after saving a profile settings form (after commit, no profile or user object!)
289 - $action: action object being shown
291 StartEmailFormData: just before showing text entry fields on email settings page
292 - $action: action object being shown
294 EndEmailFormData: just after showing text entry fields on email settings page
295 - $action: action object being shown
297 StartEmailSaveForm: before starting to save a email settings form
298 - $action: action object being shown
299 - &$user: user being saved
301 EndEmailSaveForm: after saving a email settings form (after commit)
302 - $action: action object being shown
303 - &$user: user being saved
305 StartRegistrationFormData: just before showing text entry fields on registration page
306 - $action: action object being shown
308 EndRegistrationFormData: just after showing text entry fields on registration page
309 - $action: action object being shown
311 StartRegistrationTry: before validating and saving a new user
312 - $action: action object being shown
314 EndRegistrationTry: after saving a new user (note: no profile or user object!)
315 - $action: action object being shown
317 StartAvatarFormData: before displaying avatar form
318 - $action: action object being shown
320 EndAvatarFormData: after displaying avatar form
321 - $action: action object being shown
323 StartAvatarSaveForm: before saving the avatar
324 - $action: action object being shown
326 EndAvatarSaveForm: after saving the avatar
327 - $action: action object being shown
329 StartNewQueueManager: before trying to start a new queue manager; good for plugins implementing new queue manager classes
330 - $qm: empty queue manager to set
332 RedirectToLogin: event when we force a redirect to login (like when going to a settings page on a remembered login)
333 - $action: action object being shown
334 - $user: current user
336 StartLoadDoc: before loading a help doc (hook this to show your own documentation)
337 - $title: title of the document
338 - $output: HTML output to show
340 EndLoadDoc: after loading a help doc (hook this to modify other documentation)
341 - $title: title of the document
342 - $output: HTML output to show
344 StartApiRss: after the rss <channel> element is started
345 - $action: action object being shown
347 StartApiAtom: after the <feed> element is started
348 - $action: action object being shown
350 StartEnqueueNotice: about to add a notice to the queues (good place to add a new transport)
351 - $notice: the notice being added
352 - &$transports: modifiable list of transports (as strings) to queue for
354 EndEnqueueNotice: after adding a notice to the queues
355 - $notice: the notice being added
356 - $transports: modifiable list of transports to use
358 UnqueueHandleNotice: Handle a notice when no queue manager is available
359 - $notice: the notice to handle
360 - $queue: the "queue" that is being executed
362 GetValidDaemons: Just before determining which daemons to run
363 - &$daemons: modifiable list of daemon scripts to run, filenames relative to scripts/
365 HandleQueuedNotice: Handle a queued notice at queue time (or immediately if no queue)
366 - &$notice: notice to handle
368 StartHtmlElement: Reight before outputting the HTML element - allows plugins to add namespaces
369 - $action: the current action
370 - &$attrs: attributes for the HTML element
372 EndHtmlElement: Right after outputting the HTML element
373 - $action: the current action
374 - &$attrs: attributes for the HTML element
376 StartShowHeadElements: Right after the <head> tag
377 - $action: the current action
379 EndShowHeadElements: Right before the </head> tag; put <script>s here if you need them in <head>
380 - $action: the current action
382 CheckSchema: chance to check the schema
384 StartProfileRemoteSubscribe: Before showing the link to remote subscription
385 - $userprofile: UserProfile widget
386 - &$profile: the profile being shown
388 EndProfileRemoteSubscribe: After showing the link to remote subscription
389 - $userprofile: UserProfile widget
390 - &$profile: the profile being shown
392 StartGroupSubscribe: Before showing the link to remote subscription
393 - $action: the current action
394 - $group: the group being shown
396 EndGroupSubscribe: After showing the link to remote subscription
397 - $action: the current action
398 - $group: the group being shown
400 StartProfilePageProfileSection: Starting to show the section of the
401 profile page with the actual profile data;
402 hook to prevent showing the profile (e.g.)
403 - $userprofile: UserProfile widget
404 - &$profile: the profile being shown
406 StartProfilePageProfileElements: inside the section, before the first
407 element; prepend elements here
408 - $userprofile: UserProfile widget
409 - &$profile: the profile being shown
411 EndProfilePageProfileElements: inside the section, after the last element;
413 - $userprofile: UserProfile widget
414 - &$profile: the profile being shown
416 EndProfilePageProfileSection: After showing the section of the profile
417 page with the profile elements
418 - $userprofile: UserProfile widget
419 - &$profile: the profile being shown
421 StartProfilePageActionsSection: Starting to show the section of the
422 profile page with action links; hook
423 to hide them (for example)
424 - $userprofile: UserProfile widget
425 - &$profile: the profile being shown
427 StartProfilePageActionsElements: inside the list, before the first
428 element; prepend elements here
429 - $userprofile: UserProfile widget
430 - &$profile: the profile being shown
432 EndProfilePageActionsElements: inside the list, after the last element;
434 - $userprofile: UserProfile widget
435 - &$profile: the profile being shown
437 EndProfilePageActionsSection: After showing the section of the profile
438 page with the entity actions
439 - $userprofile: UserProfile widget
440 - &$profile: the profile being shown
442 StartProfilePageAvatar: before showing the avatar on the profile page
443 - $userprofile: UserProfile widget
444 - &$profile: the profile being shown
446 EndProfilePageAvatar: after showing the avatar on the profile page
447 - $userprofile: UserProfile widget
448 - &$profile: the profile being shown
450 StartProfilePageNickname: before showing the nickname on the profile page
451 - $userprofile: UserProfile widget
452 - &$profile: the profile being shown
454 EndProfilePageNickname: after showing the nickname on the profile page
455 - $userprofile: UserProfile widget
456 - &$profile: the profile being shown
458 StartProfilePageFullName: before showing the fullname on the profile page
459 - $userprofile: UserProfile widget
460 - &$profile: the profile being shown
462 EndProfilePageFullName: after showing the fullname on the profile page
463 - $userprofile: UserProfile widget
464 - &$profile: the profile being shown
466 StartProfilePageLocation: before showing the location on the profile page
467 - $userprofile: UserProfile widget
468 - &$profile: the profile being shown
470 EndProfilePageLocation: after showing the location on the profile page
471 - $userprofile: UserProfile widget
472 - &$profile: the profile being shown
474 StartProfilePageHomepage: before showing the homepage link on the profile page
475 - $userprofile: UserProfile widget
476 - &$profile: the profile being shown
478 EndProfilePageHomepage: after showing the homepage on the profile page
479 - $userprofile: UserProfile widget
480 - &$profile: the profile being shown
482 StartProfilePageBio: before showing the bio on the profile page
483 - $userprofile: UserProfile widget
484 - &$profile: the profile being shown
486 EndProfilePageBio: after showing the bio on the profile page
487 - $userprofile: UserProfile widget
488 - &$profile: the profile being shown
490 StartProfilePageProfileTags: before showing the tags on the profile page
491 - $userprofile: UserProfile widget
492 - &$profile: the profile being shown
494 EndProfilePageProfileTags: after showing the tags on the profile page
495 - $userprofile: UserProfile widget
496 - &$profile: the profile being shown
498 StartProfileList: when starting a list of profiles (before <ul>)
499 - $profilelist: ProfileList widget, with $profile, $action, and $out
501 EndProfileList: when ending a list of profiles (after </ul>)
502 - $profilelist: ProfileList widget
504 StartProfileListItem: when starting to show a profile list item
505 - $item: ProfileListItem widget
507 EndProfileListItem: after showing a profile list item
508 - $item: ProfileListItem widget
510 StartProfileListItemProfile: the profile data part of the item
511 - $item: ProfileListItem widget
513 EndProfileListItemProfile: the profile data part of the item
514 - $item: ProfileListItem widget
516 StartProfileListItemActions: the actions (buttons) for an item
517 - $item: ProfileListItem widget
519 EndProfileListItemActions: the actions (buttons) for an item
520 - $item: ProfileListItem widget
522 StartProfileListItemProfileElements: inside the <div>
523 - $item: ProfileListItem widget
525 EndProfileListItemProfileElements: inside the <div>
526 - $item: ProfileListItem widget
528 StartProfileListItemAvatar: Showing a profile list avatar
529 - $item: ProfileListItem widget
531 EndProfileListItemAvatar: Showing a profile list avatar
532 - $item: ProfileListItem widget
534 StartProfileListItemFullName: Showing the profile list full name
535 - $item: ProfileListItem widget
537 EndProfileListItemFullName: Showing the profile list full name
538 - $item: ProfileListItem widget
540 StartProfileListItemLocation: Showing the profile list location
541 - $item: ProfileListItem widget
543 EndProfileListItemLocation: Showing the profile list location
544 - $item: ProfileListItem widget
546 StartProfileListItemHomepage: Showing the profile list homepage
547 - $item: ProfileListItem widget
549 EndProfileListItemHomepage: Showing the profile list homepage
550 - $item: ProfileListItem widget
552 StartProfileListItemBio: Showing the profile list bio
553 - $item: ProfileListItem widget
555 EndProfileListItemBio: Showing the profile list bio
556 - $item: ProfileListItem widget
558 StartProfileListItemActionElements: Showing the profile list actions (prepend a button here, or replace all buttons)
559 - $item: ProfileListItem widget
561 EndProfileListItemActionElements: Showing profile list actions (append a button here)
562 - $item: ProfileListItem widget
564 StartUserXRDS: Start XRDS output (right after the opening XRDS tag)
565 - $action: the current action
566 - &$xrdsoutputter - XRDSOutputter object to write to
568 EndUserXRDS: End XRDS output (right before the closing XRDS tag)
569 - $action: the current action
570 - &$xrdsoutputter - XRDSOutputter object to write to
572 StartPublicXRDS: Start XRDS output (right after the opening XRDS tag)
573 - $action: the current action
574 - &$xrdsoutputter - XRDSOutputter object to write to
576 EndPublicXRDS: End XRDS output (right before the closing XRDS tag)
577 - $action: the current action
578 - &$xrdsoutputter - XRDSOutputter object to write to
580 StartCheckPassword: Check a username/password
581 - $nickname: The nickname to check
582 - $password: The password to check
583 - &$authenticatedUser: set to User object if credentials match a user.
585 EndCheckPassword: After checking a username/password pair
586 - $nickname: The nickname that was checked
587 - $password: The password that was checked
588 - $authenticatedUser: User object if credentials match a user, else null.
590 StartChangePassword: Before changing a password
592 - $oldpassword: the user's old password
593 - $newpassword: the desired new password
595 EndChangePassword: After changing a password
598 StartHashPassword: Generate a hashed version of the password (like a salted crypt)
599 - &$hashed: Hashed version of the password, later put in the database
600 - $password: The password that should be hashed
601 - $profile: Profile that this password and hash belongs to. Can be null.
603 StartSetUser: Before setting the currently logged in user
606 EndSetUser: After setting the currently logged in user
609 StartSetApiUser: Before setting the current API user
612 EndSetApiUser: After setting the current API user
615 StartHasRole: Before determing if the a profile has a given role
616 - $profile: profile in question
617 - $name: name of the role in question
618 - &$has_role: does this profile have the named role?
620 EndHasRole: Before determing if the a profile has a given role
621 - $profile: profile in question
622 - $name: name of the role in question
623 - $has_role: does this profile have the named role?
625 UserDeleteRelated: Specify additional tables to delete entries from when deleting users
627 - &$related: array of DB_DataObject class names to delete entries on matching user_id.
629 GetUrlShorteners: Specify URL shorteners that are available for use
630 - &$shorteners: append your shortener to this array like so: $shorteners[shortenerName]=array('display'=>display, 'freeService'=>boolean)
632 StartShortenUrl: About to shorten a URL
633 - $url: url to be shortened
634 - $shortenerName: name of the requested shortener
635 - &$shortenedUrl: short version of the url
637 EndShortenUrl: After a URL has been shortened
638 - $url: url to be shortened
639 - $shortenerName: name of the requested shortener
640 - $shortenedUrl: short version of the url
642 StartCssLinkElement: Before a <link rel="stylesheet"..> element is written
648 EndCssLinkElement: After a <link rel="stylesheet"..> element is written
654 StartStyleElement: Before a <style...> element is written
660 EndStyleElement: After a <style...> element is written
666 StartScriptElement: Before a <script...> element is written
671 EndScriptElement: After a <script...> element is written
676 StartInlineScriptElement: Before a <script...> element is written
681 EndInlineScriptElement: After a <script...> element is written
686 StartLog: Before writing to the logs
691 EndLog: After writing to the logs
696 StartBlockProfile: when we're about to block
697 - $user: the person doing the block
698 - $profile: the person getting blocked, can be remote
700 EndBlockProfile: when a block has succeeded
701 - $user: the person doing the block
702 - $profile: the person blocked, can be remote
704 StartUnblockProfile: when we're about to unblock
705 - $user: the person doing the unblock
706 - $profile: the person getting unblocked, can be remote
708 EndUnblockProfile: when an unblock has succeeded
709 - $user: the person doing the unblock
710 - $profile: the person unblocked, can be remote
712 StartSubscribe: when a subscription is starting
713 - $profile: Profile that is subscribing
714 - $other: Profile that is being subscribed to
716 EndSubscribe: when a subscription is finished
717 - $profile: Profile that is subscribing
718 - $other: Profile that is being subscribed to
720 StartUnsubscribe: when an unsubscribe is starting
721 - $profile: Profile that is unsubscribing
722 - $other: Profile that is being unsubscribed from
724 EndUnsubscribe: when an unsubscribe is done
725 - $profile: Profile that is unsubscribing
726 - $other: Profile that is being unsubscribed from
728 StartJoinGroup: when a user is joining a group
729 - $group: the group being joined
730 - $profile: the local or remote user joining
732 EndJoinGroup: when a user finishes joining a group
733 - $group: the group being joined
734 - $profile: the local or remote user joining
736 StartLeaveGroup: when a user is leaving a group
737 - $group: the group being left
738 - $profile: the local or remote user leaving
740 EndLeaveGroup: when a user has left a group
741 - $group: the group being left
742 - $profile: the local or remote user leaving
744 StartShowContentLicense: Showing the default license for content
745 - $action: the current action
747 EndShowContentLicense: Showing the default license for content
748 - $action: the current action
750 GetImTransports: Get IM transports that are available
751 - &$transports: append your transport to this array like so: $transports[transportName]=array('display'=>display)
753 NormalizeImScreenname: Normalize an IM screenname
754 - $transport: transport the screenname is on
755 - &$screenname: screenname to be normalized
757 ValidateImScreenname: Validate an IM screenname
758 - $transport: transport the screenname is on
759 - $screenname: screenname to be validated
760 - $valid: is the screenname valid?
762 SendImConfirmationCode: Send a confirmation code to confirm a user owns an IM screenname
763 - $transport: transport the screenname exists on
764 - $screenname: screenname being confirmed
765 - $code: confirmation code for confirmation URL
766 - $user: user requesting the confirmation
768 StartUserRegister: When a new user is being registered
769 - $profile: Profile object with new profile data (no ID yet)
771 EndUserRegister: When a new user has been registered
772 - $profile: Profile object with new profile data
774 StartRobotsTxt: Before outputting the robots.txt page
775 - &$action: RobotstxtAction being shown
777 EndRobotsTxt: After the default robots.txt page (good place for customization)
778 - &$action: RobotstxtAction being shown
780 StartGetProfileUri: When determining the canonical URI for a given profile
781 - $profile: the current profile
784 EndGetProfileUri: After determining the canonical URI for a given profile
785 - $profile: the current profile
788 StartGetProfileAcctUri: Get the acct: URI for a Profile (or throw ProfileNoAcctUriException)
789 - $profile: Profile of user we want to get acct: URI for
790 - &$acct: string with the resulting acct: uri
792 EndGetProfileAcctUri: Last attempts to get the acct: URI for a Profile (or throw ProfileNoAcctUriException)
793 - $profile: Profile of user we want to get acct: URI for
794 - &$acct: string with the resulting acct: uri
796 StartFindMentions: start finding mentions in a block of text
797 - $sender: sender profile
798 - $text: plain text version of the notice
799 - &$mentions: mentions found so far. Array of arrays; each array
800 has 'mentioned' (array of mentioned profiles), 'url' (url to link as),
801 'title' (title of the link), 'position' (position of the text to
802 replace), 'text' (text to replace)
804 EndFindMentions: end finding mentions in a block of text
805 - $sender: sender profile
806 - $text: plain text version of the notice
807 - &$mentions: mentions found so far. Array of arrays; each array
808 has 'mentioned' (array of mentioned profiles), 'url' (url to link as),
809 'title' (title of the link), 'position' (position of the text to
810 replace), 'text' (text to replace)
812 StartShowSubscriptionsContent: before showing the subscriptions content
813 - $action: the current action
815 EndShowSubscriptionsContent: after showing the subscriptions content
816 - $action: the current action
818 StartShowUserGroupsContent: before showing the user groups content
819 - $action: the current action
821 EndShowUserGroupsContent: after showing the user groups content
822 - $action: the current action
824 StartShowAllContent: before showing the all (you and friends) content
825 - $action: the current action
827 EndShowAllContent: after showing the all (you and friends) content
828 - $action: the current action
830 StartShowSubscriptionsMiniList: at the start of subscriptions mini list
831 - $action: the current action
833 EndShowSubscriptionsMiniList: at the end of subscriptions mini list
834 - $action: the current action
836 StartShowGroupsMiniList: at the start of groups mini list
837 - $action: the current action
839 EndShowGroupsMiniList: at the end of groups mini list
840 - $action: the current action
842 StartDeleteUserForm: starting the data in the form for deleting a user
843 - $action: action being shown
844 - $user: user being deleted
846 EndDeleteUserForm: Ending the data in the form for deleting a user
847 - $action: action being shown
848 - $user: user being deleted
850 StartDeleteUser: handling the post for deleting a user
851 - $action: action being shown
852 - $user: user being deleted
854 EndDeleteUser: handling the post for deleting a user
855 - $action: action being shown
856 - $user: user being deleted
858 StartNoticeAsActivity: before converting a notice to an activity
859 - $notice: notice being converted
860 - &$activity: initially empty activity
862 EndNoticeAsActivity: after converting a notice to an activity (good time to customize!)
863 - $notice: notice being converted
864 - &$activity: activity, now more-or-less full
866 StartNoticeSaveWeb: before saving a notice through the Web interface
867 - $action: action being executed (instance of NewNoticeAction)
868 - &$authorId: integer ID of the author
869 - &$text: text of the notice
870 - &$options: additional options (location, replies, etc.)
872 EndNoticeSaveWeb: after saving a notice through the Web interface
873 - $action: action being executed (instance of NewNoticeAction)
874 - $notice: notice that was saved
876 StartRssEntryArray: at the start of copying a notice to an array
877 - $notice: the notice being copied
878 - &$entry: the entry (empty at beginning)
880 EndRssEntryArray: at the end of copying a notice to an array
881 - $notice: the notice being copied
882 - &$entry: the entry, with all the fields filled up
884 NoticeDeleteRelated: at the beginning of deleting related fields to a notice
885 - $notice: notice being deleted
887 FileDeleteRelated: at the beginning of deleting related fields to a File
888 - $notice: File being deleted
890 StartShowHeadTitle: when beginning to show the <title> element
891 - $action: action being shown
893 EndShowHeadTitle: when done showing the <title>
894 - $action: action being shown
896 StartShowPageTitle: when beginning to show the page title <h1>
897 - $action: action being shown
899 EndShowPageTitle: when done showing the page title <h1>
900 - $action: action being shown
902 StartDeleteOwnNotice: when a user starts to delete their own notice
903 - $user: the user doing the delete
904 - $notice: the notice being deleted
906 EndDeleteOwnNotice: when a user has deleted their own notice
907 - $user: the user doing the delete
908 - $notice: the notice being deleted
910 StartShowFeedLinkList: before showing the feed list in the sidebar
911 - $action: action being executed
912 - $feeds: list of feeds to show
914 EndShowFeedLinkList: after showing the feed list in the sidebar
915 - $action: action being executed
916 - $feeds: list of feeds shown
918 StartShowFeedLink: before showing an individual feed item
919 - $action: action being executed
920 - $feed: feed to show
922 EndShowFeedLink: after showing an individual feed
923 - $action: action being executed
924 - $feed: feed to show
926 StartShowNoticeForm: before showing the notice form (before <form>)
927 - $action: action being executed
929 EndShowNoticeForm: after showing the notice form (after <form>)
930 - $action: action being executed
932 StartShowEntryForms: microapp entry form tab data
933 - &$tabs: tab assoc array with 'tag' => (title, href to create new entry)
935 StartGrantRole: when a role is being assigned
936 - $profile: profile that will have the role
937 - $role: string name of the role
939 EndGrantRole: when a role has been successfully assigned
940 - $profile: profile that will have the role
941 - $role: string name of the role
943 StartRevokeRole: when a role is being revoked
944 - $profile: profile that will lose the role
945 - $role: string name of the role
947 EndRevokeRole: when a role has been revoked
948 - $profile: profile that lost the role
949 - $role: string name of the role
951 StartAtomPubNewActivity: When a new activity comes in through Atom Pub API
952 - &$activity: received activity
953 - $user: user publishing the entry
954 - &$notice: notice created; initially null, can be set
956 EndAtomPubNewActivity: When a new activity comes in through Atom Pub API
957 - $activity: received activity
958 - $user: user publishing the entry
959 - $notice: notice that was created
961 AdminPanelCheck: When checking whether the current user can access a given admin panel
962 - $name: Name of the admin panel
963 - &$isOK: Boolean whether the user is allowed to use the panel
965 StartAdminPanelNav: Before displaying the first item in the list of admin panels
966 - $nav The AdminPanelNav widget
968 EndAdminPanelNav: After displaying the last item in the list of admin panels
969 - $nav The AdminPanelNav widget
971 StartActivityObjectFromNotice: When converting a notice to an activity:object
972 - $notice: The notice being converted
973 - &$object: The resulting object. Fill this and return false to override defaults.
975 EndActivityObjectFromNotice: After converting a notice to an activity:object
976 - $notice: The notice being converted
977 - &$object: The resulting object. Can be edited
979 StartActivityObjectFromProfile: When converting a profile to an activity:object
980 - $profile: The profile being converted
981 - &$object: The (empty) object. Fill it up and return false to override defaults.
983 EndActivityObjectFromProfile: After converting a profile to an activity:object
984 - $profile: The profile being converted
985 - &$object: The finished object. Can be tweaked
987 StartActivityObjectFromGroup: When converting a group to an activity:object
988 - $group: The group being converted
989 - &$object: The (empty) object. Fill and return false to override.
991 EndActivityObjectFromGroup: After converting a group to an activity:object
992 - $group: The group being converted
993 - &$object: The finished object. Tweak as needed.
995 StartImportActivity: when we start to import an activity
996 - $user: User to make the author import
997 - $author: Author of the feed; good for comparisons
998 - $activity: The current activity
999 - $trusted: How "trusted" the process is
1000 - &$done: Return value; whether to continue
1002 EndImportActivity: when we finish importing an activity
1003 - $user: User to make the author import
1004 - $author: Author of the feed; good for comparisons
1005 - $activity: The current activity
1006 - $trusted: How "trusted" the process is
1008 StartProfileSettingsActions: when we're showing account-management action list
1009 - $action: Action being shown (use for output)
1011 EndProfileSettingsActions: when we're showing account-management action list
1012 - $action: Action being shown (use for output)
1014 StartOpenNoticeListItemElement: Before the opening <li> of a notice list element
1015 - $nli: The notice list item being shown
1017 EndOpenNoticeListItemElement: After the opening <li> of a notice list element
1018 - $nli: The notice list item being shown
1020 StartCloseNoticeListItemElement: Before the closing </li> of a notice list element
1021 - $nli: The notice list item being shown
1023 EndCloseNoticeListItemElement: After the closing </li> of a notice list element
1024 - $nli: The notice list item being shown
1026 StartGroupEditFormData: Beginning the group edit form entries
1027 - $form: The form widget being shown
1029 EndGroupEditFormData: Ending the group edit form entries
1030 - $form: The form widget being shown
1032 StartGroupSave: After initializing but before saving a group
1033 - &$group: group about to be saved
1035 EndGroupSave: After saving a group, aliases, and first member
1036 - $group: group that was saved
1038 StartInterpretCommand: Before running a command
1039 - $cmd: First word in the string, 'foo' in 'foo argument'
1040 - $arg: Argument, if any, like 'argument' in 'foo argument'
1041 - $user: User who issued the command
1042 - &$result: Resulting command; you can set this!
1044 EndInterpretCommand: Before running a command
1045 - $cmd: First word in the string, 'foo' in 'foo argument'
1046 - $arg: Argument, if any, like 'argument' in 'foo argument'
1047 - $user: User who issued the command
1048 - $result: Resulting command
1050 StartGroupActionsList: Start the list of actions on a group profile page (after <ul>, before first <li>)
1051 - $action: action being executed (for output and params)
1052 - $group: group for the page
1054 EndGroupActionsList: End the list of actions on a group profile page (before </ul>, after last </li>)
1055 - $action: action being executed (for output and params)
1056 - $group: group for the page
1058 StartGroupProfileElements: Start showing stuff about the group on its profile page
1059 - $action: action being executed (for output and params)
1060 - $group: group for the page
1062 EndGroupProfileElements: Start showing stuff about the group on its profile page
1063 - $action: action being executed (for output and params)
1064 - $group: group for the page
1066 StartShowProfileTagContent: When showing a people tag page
1067 - $action: action being executed (for output and params)
1069 EndShowProfileTagContent: After showing the contents of a people tag page
1070 - $action: action being executed (for output and params)
1072 StartShowTaggedProfilesMiniList: at the start of mini list of tagged profiles
1073 - $action: action being executed (for output and params)
1075 EndShowTaggedProfilesMiniList: at the end of mini list of tagged profiles
1076 - $action: action being executed (for output and params)
1078 StartShowProfileTagSubscribersMiniList: at the start of mini list of people tag subscribers
1079 - $action: action being executed (for output and params)
1081 EndShowProfileTagSubscribersMiniList: at the end of mini list of people tag subscribers
1082 - $action: action being executed (for output and params)
1084 StartTagProfileAction: When starting to show profile tagging page
1085 - $action: action being executed (for output and params)
1086 - $profile: profile being tagged
1088 EndTagProfileAction: After showing profile tagging page
1089 - $action: action being executed (for output and params)
1090 - $profile: profile being tagged
1092 StartProfileCompletionSearch: When starting a profile search for autocompletion
1093 - $action: action being executed (for output and params)
1094 - &$profile: result Profile objects
1095 - $search_engine: the search engine
1097 EndProfileCompletionSearch: After search results for profile autocompletion have been found
1098 - $action: profilec completion action
1099 - &$profile: current result Profile objects
1100 - $search_engine: The search engine object
1102 StartShowTagProfileForm: When showing people tagging form
1103 - $action: action being executed (for output and params)
1104 - $profile: profile being tagged
1106 EndShowTagProfileForm: After showing people tagging form
1107 - $action: action being executed (for output and params)
1108 - $profile: profile being tagged
1110 StartSavePeopletags: When starting to save people tags
1111 - $action: action being executed (for output and params)
1112 - $tagstring: string input, a list of tags
1114 EndSavePeopletags: After saving people tags
1115 - $action: action being executed (for output and params)
1116 - $tagstring: string input, a list of tags
1118 StartProfiletagGetUri: when generating the Uri for a people tag
1119 - $profile_list: the people tag, a Profile_list object
1122 EndProfiletagGetUri: after generating the uri for a people tag
1123 - $profile_list: the people tag, a Profile_list object
1126 StartUserPeopletagHomeUrl: when generating the homepage url for a people tag
1127 - $profile_list: the people tag, a Profile_list object
1130 EndUserPeopletagHomeUrl: after generating the homepage url for a people tag
1131 - $profile_list: the people tag, a Profile_list object
1134 StartProfiletagPermalink: when generating the permalink url for a people tag
1135 - $profile_list: the people tag, a Profile_list object
1138 EndProfiletagPermalink: after generating the permalink url for a people tag
1139 - $profile_list: the people tag, a Profile_list object
1142 StartTagProfile: when tagging a profile
1143 - $tagger: profile tagging
1144 - $tagged: profile being tagged
1147 EndTagProfile: after tagging a profile
1148 - $newtag: the newly created Profile_tag object
1150 StartUntagProfile: when deleting a people tag
1151 - $ptag: the Profile_tag object being deleted
1153 EndUntagProfile: after deleting a people tag
1154 - $orig: a copy of the deleted Profile_tag object
1156 StartSubscribePeopletag: when subscribing to a people tag
1157 - $peopletag: Profile_list object being subscribed to
1158 - $profile: subscriber's profile
1160 EndSubscribePeopletag: after subscribing to a people tag
1161 - $profile_list: the people tag, a Profile_list object: Profile_list object being subscribed to
1162 - $profile: subscriber's profile
1164 StartUnsubscribePeopletag: when unsubscribing to a people tag
1165 - $profile_list: the people tag, a Profile_list object: Profile_list object being subscribed to
1166 - $profile: subscriber's profile
1168 EndUnsubscribePeopletag: after unsubscribing to a people tag
1169 - $peopletag: Profile_list object being subscribed to
1170 - $profile: subscriber's profile
1172 StartActivityObjectFromPeopletag: while starting to create an ActivityObject from a people tag
1173 - $profile_list: the people tag, a Profile_list object
1174 - &$object: activity object
1176 EndActivityObjectFromPeopletag: after making an ActivityObject from a people tag
1177 - $profile_list: the people tag, a Profile_list object
1178 - &$object: activity object
1180 StartPeopletagGroupNav: Showing the people tag nav menu
1181 - $menu: the menu widget; use $menu->action for output
1183 EndPeopletagGroupNav: after showing the people tag nav menu
1184 - $menu: the menu widget; use $menu->action for output
1186 StartShowPeopletagItem: when showing a people tag
1187 - $widget: PeopletagListItem widget
1189 EndShowPeopletagItem: after showing a people tag
1190 - $widget: PeopletagListItem widget
1192 StartSubscribePeopletagForm: when showing people tag subscription form
1193 - $action: action being executed (for output and params)
1194 - $peopletag: people tag being subscribed to
1196 EndSubscribePeopletagForm: after showing the people tag subscription form
1197 - $action: action being executed (for output and params)
1198 - $peopletag: people tag being subscribed to
1200 StartShowPeopletags: when showing a textual list of people tags
1201 - $widget: PeopletagsWidget; use $widget->out for output
1202 - $tagger: profile of the tagger
1203 - $tagged: profile tagged
1205 EndShowPeopletags: after showing a textual list of people tags
1206 - $widget: PeopletagsWidget; use $widget->out for output
1207 - $tagger: profile of the tagger
1208 - $tagged: profile tagged
1210 StartProfileListItemTags: when showing people tags in a profile list item widget
1211 - $widget: ProfileListItem widget
1213 EndProfileListItemTags: after showing people tags in a profile list item widget
1214 - $widget: ProfileListItem widget
1216 StartActivityObjectOutputAtom: Called at start of Atom XML output generation for ActivityObject chunks, just inside the <activity:object>. Cancel the event to take over its output completely (you're responsible for calling the matching End event if so)
1217 - $obj: ActivityObject
1218 - $out: XMLOutputter to append custom output
1220 EndActivityObjectOutputAtom: Called at end of Atom XML output generation for ActivityObject chunks, just inside the </activity:object>
1221 - $obj: ActivityObject
1222 - $out: XMLOutputter to append custom output
1224 StartActivityObjectOutputJson: Called at start of JSON output generation for ActivityObject chunks: the array has not yet been filled out. Cancel the event to take over its output completely (you're responsible for calling the matching End event if so)
1225 - $obj ActivityObject
1226 - &$out: array to be serialized; you're free to modify it
1228 EndActivityObjectOutputJson: Called at end of JSON output generation for ActivityObject chunks: the array has not yet been filled out.
1229 - $obj ActivityObject
1230 - &$out: array to be serialized; you're free to modify it
1232 StartNoticeWhoGets: Called at start of inbox delivery prep; plugins can schedule notices to go to particular profiles that would otherwise not have reached them. Canceling will take over the entire addressing operation. Be aware that output can be cached or used several times, so should remain idempotent.
1234 - &$ni: in/out array mapping profile IDs to constants: NOTICE_INBOX_SOURCE_SUB etc
1236 EndNoticeWhoGets: Called at end of inbox delivery prep; plugins can filter out profiles from receiving inbox delivery here. Be aware that output can be cached or used several times, so should remain idempotent.
1238 - &$ni: in/out array mapping profile IDs to constants: NOTICE_INBOX_SOURCE_SUB etc
1240 StartDefaultLocalNav: When showing the default local nav
1242 - $user: current user
1244 EndDefaultLocalNav: When showing the default local nav
1246 - $user: current user
1248 StartShowAccountProfileBlock: When showing the profile block for an account
1249 - $out: XMLOutputter to append custom output
1250 - $profile: the profile being shown
1252 EndShowAccountProfileBlock: After showing the profile block for an account
1253 - $out: XMLOutputter to append custom output
1254 - $profile: the profile being shown
1256 StartShowGroupProfileBlock: When showing the profile block for a group
1257 - $out: XMLOutputter to append custom output
1258 - $profile: the profile being shown
1260 EndShowGroupProfileBlock: After showing the profile block for a group
1261 - $out: XMLOutputter to append custom output
1262 - $group: the group being shown
1264 StartShowConversation: start the listing of a conversation
1265 - $action: Action object (used mainly as HTMLOutputter)
1266 - $conv: Conversation object, has functions to retrieve relevant notices
1267 - $scoped: Profile for scoping (null if not logged in)
1269 EndShowConversation: after the listing of a conversation
1270 - $action: Action object (used mainly as HTMLOutputter)
1271 - $conv: Conversation object, has functions to retrieve relevant notices
1272 - $scoped: Profile for scoping (null if not logged in)
1274 StartShowThreadedNoticeTail: when showing the replies etc. to a notice
1275 - $nli: parent noticelistitem
1276 - $notice: parent notice
1277 - &$children: list of children
1279 EndShowThreadedNoticeTail: when showing the replies etc. to a notice
1280 - $nli: parent noticelistitem
1281 - $notice: parent notice
1282 - $children: list of children
1284 StartShowThreadedNoticeSub: when showing a reply to a notice
1285 - $nli: parent noticelistitem
1286 - $parent: parent notice
1287 - $child: child notice
1289 EndShowThreadedNoticeSub: when showing a reply to a notice
1290 - $nli: parent noticelistitem
1291 - $parent: parent notice
1292 - $child: child notice
1294 StartAddEmailAddress: when adding an email address through the Web UI
1295 - $user: user getting the new address
1296 - $email: email being added
1298 EndAddEmailAddress: done adding an email address through the Web UI
1299 - $user: user getting the new address
1300 - $email: email being added
1302 StartValidateEmailInvite: when validating an email address for invitations
1303 - $user: user doing the invite
1304 - $email: email address
1305 - &$valid: flag for if it's valid; can be modified
1307 EndValidateEmailInvite: after validating an email address for invitations
1308 - $user: user doing the invite
1309 - $email: email address
1310 - &$valid: flag for if it's valid; can be modified
1312 StartLocalURL: before resolving a local url for an action
1313 - &$action: action to find a path for
1314 - &$paramsi: parameters to pass to the action
1315 - &$fragment: any url fragement
1316 - &$addSession: whether to add session variable
1317 - &$url: resulting URL to local resource
1319 EndLocalURL: before resolving a local url for an action
1320 - &$action: action to find a path for
1321 - &$paramsi: parameters to pass to the action
1322 - &$fragment: any url fragement
1323 - &$addSession: whether to add session variable
1324 - &$url: resulting URL to local resource
1326 StartProfileGetAvatar: When getting an avatar for a profile
1328 - $size: size of the avatar
1331 EndProfileGetAvatar: After getting an avatar for a profile
1333 - $size: size of the avatar
1336 StartRegisterSuccess: Before showing the registration success message
1337 - $action: the registration action
1339 StartRegisterSuccess: After showing the registration success message
1340 - $action: the registration action
1342 StartDocFileForTitle: Before searching for a doc or mail template
1343 - $title: Title we're looking for
1344 - &$paths: Paths we're searching
1345 - &$filename: Filename so far (set this if you want)
1347 EndDocFileForTitle: After searching for a doc or mail template
1348 - $title: Title we looked for
1349 - $paths: Paths we searched
1350 - &$filename: Filename so far (set this if you want)
1352 StartReadWriteTables: when noting which tables must be read-write, even on read-only actions
1353 - &$tables: list of table names
1354 - &$rwdb: read-write database URI
1356 EndReadWriteTables: after noting which tables must be read-write, even on read-only actions
1357 - $tables: list of table names
1358 - $rwdb: read-write database URI
1360 StartShowInviteForm: Right before displaying the invitations form
1361 - $action: invitation action
1363 EndShowInviteForm: After displaying the invitations form
1364 - $action: invitation action
1366 StartSendInvitations: Right before sending invitations
1367 - $action: invitation action
1369 EndSendInvitations: Right after sending invitations
1370 - $action: invitation action
1372 StartShowInvitationSuccess: Right before showing invitations success msg
1373 - $action: invitation action
1375 EndShowInvitationSuccess: After showing invitations success msg
1376 - $action: invitation action
1378 StartUpgrade: when starting a site upgrade
1380 EndUpgrade: when ending a site upgrade; good place to do your own upgrades
1382 HaveIMPlugin: is there an IM plugin loaded?
1383 - &$haveIMPlugin: set me to true if you're loaded!
1385 StartShowNoticeOptionItems: Before showing first controls in a notice list item; inside the div
1386 - $nli: NoticeListItem being shown
1388 EndShowNoticeOptionItems: After showing last controls in a notice list item; inside the div
1389 - $nli: NoticeListItem being shown
1391 StartNoticeInScope: Before checking if a notice should be visible to a user
1392 - $notice: The notice to check
1393 - $profile: The profile to check for scope
1394 - &$bResult: The boolean result; fill this in if you want to skip
1396 EndNoticeInScope: After checking if a notice should be visible to a user
1397 - $notice: The notice to check
1398 - $profile: The profile to check for scope
1399 - &$bResult: The boolean result; overwrite this if you so desire
1401 StartNoticeListPrefill: Before pre-filling a list of notices with extra data
1402 - &$notices: Notices to be pre-filled
1403 - $avatarSize: The avatar size for the list
1405 EndNoticeListPrefill: After pre-filling a list of notices with extra data
1406 - &$notices: Notices that were pre-filled
1407 - &$profiles: Profiles that were pre-filled
1408 - $avatarSize: The avatar size for the list
1410 OtherAccountProfiles: Hook to add account profiles to a user account profile block
1411 - $profile: the Profile being shown
1412 - &$others: Modifiable array of profile info arrays. Each one has the following fields:
1413 href: link to the profile
1414 text: text for the profile
1415 image: mini image for the profile
1417 CreateFileImageThumbnailSource: Hook to create image thumbnail source from a File
1418 - $file: 'File' object to source the image from
1419 - &$imgPath: Path to image file which can be used as source for our thumbnail algorithm.
1420 - $media: MIME media type ('image', 'video', 'audio' etc.)
1422 StartResizeImageFile: Hook to resize an image and output it to a file. No matching End event yet.
1423 - $imagefile: ImageFile object we're resizing.
1424 - $outpath: string with output filepath
1425 - $box: array with size ('width', 'height') and boundary box('x', 'y', 'w', 'h').
1427 StartShowAttachmentRepresentation: Attachment representation, full file (or in rare cases thumbnails/previews).
1428 - $out: HTMLOutputter class to use for outputting HTML.
1429 - $file: 'File' object which we're going to show representation for.
1431 EndShowAttachmentRepresentation: Executed after Attachment representation, despite perhaps being unsupported media.
1432 - $out: HTMLOutputter class to use for outputting HTML.
1433 - $file: 'File' object which we're going to show representation for.
1435 ShowUnsupportedAttachmentRepresentation: Attachment representation, full file (or in rare cases thumbnails/previews).
1436 - $out: HTMLOutputter class to use for outputting HTML.
1437 - $file: 'File' object which we're going to show representation for.