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 StartShowStatusNetStyles: Showing StatusNet Style links
24 - $action: the current action
26 EndShowStatusNetStyles: End showing StatusNet Style links; good place to add handheld or JavaScript dependant styles
27 - $action: the current action
29 StartShowLaconicaStyles: backwards compatibility; deprecated
30 - $action: the current action
32 EndShowLaconicaStyles: backwards compatibility; deprecated
33 - $action: the current action
35 StartShowUAStyles: Showing custom User-Agent style links
36 - $action: the current action
38 EndShowUAStyles: End showing custom User-Agent links; good place to add user-agent (e.g., filter, -webkit, -moz) specific styles
39 - $action: the current action
41 StartShowScripts: Showing JavaScript links
42 - $action: the current action
44 EndShowScripts: End showing JavaScript links; good place to add custom
45 links like Google Analytics
46 - $action: the current action
48 StartShowJQueryScripts: Showing JQuery script links (use this to link to e.g. Google mirrors)
49 - $action: the current action
51 EndShowJQueryScripts: End showing JQuery script links
52 - $action: the current action
54 StartShowStatusNetScripts: Showing StatusNet script links (use this to link to a CDN or something)
55 - $action: the current action
57 EndShowStatusNetScripts: End showing StatusNet script links
58 - $action: the current action
60 StartShowLaconicaScripts: backwards compatibility; deprecated
61 - $action: the current action
63 EndShowLaconicaScripts: backwards compatibility; deprecated
64 - $action: the current action
66 StartShowSections: Start the list of sections in the sidebar
67 - $action: the current action
69 EndShowSections: End the list of sections in the sidebar
70 - $action: the current action
72 StartShowHeader: Showing before the header container
73 - $action: the current action
75 EndShowHeader: Showing after the header container
76 - $action: the current action
78 StartShowFooter: Showing before the footer container
79 - $action: the current action
81 EndShowFooter: Showing after the footer container
82 - $action: the current action
84 StartShowContentBlock: Showing before the content container
85 - $action: the current action
87 EndShowContentBlock: Showing after the content container
88 - $action: the current action
90 StartShowAside: Showing before the Aside container
91 - $action: the current action
93 EndShowAside: Showing after the Aside container
94 - $action: the current action
96 StartShowNoticeFormData: Showing before the notice form data
97 - $action: the current action
99 EndShowNoticeFormData: Showing after the notice form data
100 - $action: the current action
102 StartNoticeSave: before inserting a notice (good place for content filters)
103 - $notice: notice being saved (no ID or URI)
105 EndNoticeSave: after inserting a notice and related code
106 - $notice: notice that was saved (with ID and URI)
108 StartShowLocalNavBlock: Showing the local nav menu
109 - $action: the current action
111 EndShowLocalNavBlock: At the end of the local nav menu
112 - $action: the current action
114 StartShowHTML: Chance to set document headers (e.g., content type, charset, language), DOCTYPE and html element properties
115 - $action: the current action
117 EndShowHTML: Showing after the html element
118 - $action: the current action
120 StartPublicGroupNav: Showing the public group nav menu
121 - $action: the current action
123 EndPublicGroupNav: At the end of the public group nav menu
124 - $action: the current action
126 StartSubGroupNav: Showing the subscriptions group nav menu
127 - $action: the current action
129 EndSubGroupNav: At the end of the subscriptions group nav menu
130 - $action: the current action
132 StartInitializeRouter: Before the router instance has been initialized; good place to add routes
133 - $m: the Net_URL_Mapper that has just been set up
135 RouterInitialized: After the router instance has been initialized
136 - $m: the Net_URL_Mapper that has just been set up
138 StartLogout: Before logging out
139 - $action: the logout action
141 EndLogout: After logging out
142 - $action: the logout action
144 ArgsInitialized: After the argument array has been initialized
145 - $args: associative array of arguments, can be modified
147 StartAddressData: Allows the site owner to provide additional information about themselves for contact (e.g., tagline, email, location)
148 - $action: the current action
150 EndAddressData: At the end of <address>
151 - $action: the current action
153 StartShowSiteNotice: Before showing site notice
154 - $action: the current action
156 EndShowSiteNotice: After showing site notice
157 - $action: the current action
159 StartLoginGroupNav: Before showing the login and register navigation menu
160 - $action: the current action
162 EndLoginGroupNav: After showing the login and register navigation menu
163 - $action: the current action
165 StartAccountSettingsNav: Before showing the account settings menu
166 - $action: the current action
168 EndAccountSettingsNav: After showing the account settings menu
169 - $action: the current action
171 StartAccountSettingsProfileMenuItem: Before showing the Profile menu item
172 - $widget: AccountSettingsNav instance being shown
174 EndAccountSettingsProfileMenuItem: After showing the Profile menu item
175 - $widget: AccountSettingsNav instance being shown
177 StartAccountSettingsAvatarMenuItem: Before showing the Avatar menu item
178 - $widget: AccountSettingsNav instance being shown
180 EndAccountSettingsAvatarMenuItem: After showing the Avatar menu item
181 - $widget: AccountSettingsNav instance being shown
183 StartAccountSettingsPasswordMenuItem: Before showing the Password menu item
184 - $widget: AccountSettingsNav instance being shown
186 EndAccountSettingsPasswordMenuItem: After showing the Password menu item
187 - $widget: AccountSettingsNav instance being shown
189 StartAccountSettingsEmailMenuItem: Before showing the Email menu item
190 - $widget: AccountSettingsNav instance being shown
192 EndAccountSettingsEmailMenuItem: After showing the Email menu item
193 - $widget: AccountSettingsNav instance being shown
195 StartAccountSettingsDesignMenuItem: Before showing the Design menu item
196 - $widget: AccountSettingsNav instance being shown
198 EndAccountSettingsDesignMenuItem: After showing the Design menu item
199 - $widget: AccountSettingsNav instance being shown
201 StartAccountSettingsOtherMenuItem: Before showing the Other menu item
202 - $widget: AccountSettingsNav instance being shown
204 EndAccountSettingsOtherMenuItem: After showing the Other menu item
205 - $widget: AccountSettingsNav instance being shown
207 Autoload: When trying to autoload a class
208 - $cls: the class being sought. A plugin might require_once the file for the class.
210 SensitiveAction: determines if an action is 'sensitive' and should use SSL
211 - $action: name of the action, like 'login'
212 - $sensitive: flag for whether this is a sensitive action
214 LoginAction: determines if an action is a 'login' action (OK for public view in private mode)
215 - $action: name of the action, like 'register'
216 - $login: flag for whether this is a login action
218 StartShowHead: called before showing the <head> element and children
219 - $action: action object being show
221 EndShowHead: called after showing the <head> element (and </head>)
222 - $action: action object being shown
224 StartShowBody: called before showing the <body> element and children
225 - $action: action object being shown
227 EndShowBody: called after showing the <body> element (and </body>)
228 - $action: action object being shown
230 StartPersonalGroupNav: beginning of personal group nav menu
231 - $action: action object being shown
233 EndPersonalGroupNav: end of personal group nav menu (good place to add a menu item)
234 - $action: action object being shown
236 StartGroupGroupNav: Showing the group nav menu
237 - $action: the current action
239 EndGroupGroupNav: At the end of the group nav menu
240 - $action: the current action
242 StartEndHTML: just before the </html> tag
243 - $action: action object being shown
245 EndEndHTML: just after the </html> tag
246 - $action: action object being shown
248 StartShowDesign: just before showing a site, user, or group design
249 - $action: action object being shown
251 EndShowDesign: just after showing a site, user, or group design
252 - $action: action object being shown
254 StartShowExportData: just before showing the <div> with export data (feeds)
255 - $action: action object being shown
257 EndShowExportData: just after showing the <div> with export data (feeds)
258 - $action: action object being shown
260 StartShowNoticeItem: just before showing the notice item
261 - $action: action object being shown
263 EndShowNoticeItem: just after showing the notice item
264 - $action: action object being shown
266 StartShowPageNotice: just before showing the page notice (instructions or error)
267 - $action: action object being shown
269 EndShowPageNotice: just after showing the page notice (instructions or error)
270 - $action: action object being shown
272 StartShowPageTitle: just before showing the main h1 title of a page (only for registration)
273 - $action: action object being shown
275 StartProfileFormData: just before showing text entry fields on profile settings page
276 - $action: action object being shown
278 EndProfileFormData: just after showing text entry fields on profile settings page
279 - $action: action object being shown
281 StartProfileSaveForm: before starting to save a profile settings form
282 - $action: action object being shown
284 EndProfileSaveForm: after saving a profile settings form (after commit, no profile or user object!)
285 - $action: action object being shown
287 StartRegistrationFormData: just before showing text entry fields on registration page
288 - $action: action object being shown
290 EndRegistrationFormData: just after showing text entry fields on registration page
291 - $action: action object being shown
293 StartRegistrationTry: before validating and saving a new user
294 - $action: action object being shown
296 EndRegistrationTry: after saving a new user (note: no profile or user object!)
297 - $action: action object being shown
299 StartAvatarFormData: before displaying avatar form
300 - $action: action object being shown
302 EndAvatarFormData: after displaying avatar form
303 - $action: action object being shown
305 StartAvatarSaveForm: before saving the avatar
306 - $action: action object being shown
308 EndAvatarSaveForm: after saving the avatar
309 - $action: action object being shown
311 StartNewQueueManager: before trying to start a new queue manager; good for plugins implementing new queue manager classes
312 - $qm: empty queue manager to set
314 RedirectToLogin: event when we force a redirect to login (like when going to a settings page on a remembered login)
315 - $action: action object being shown
316 - $user: current user
318 StartLoadDoc: before loading a help doc (hook this to show your own documentation)
319 - $title: title of the document
320 - $output: HTML output to show
322 EndLoadDoc: after loading a help doc (hook this to modify other documentation)
323 - $title: title of the document
324 - $output: HTML output to show
326 StartApiRss: after the rss <channel> element is started
327 - $action: action object being shown
329 StartApiAtom: after the <feed> element is started
330 - $action: action object being shown
332 StartEnqueueNotice: about to add a notice to the queues (good place to add a new transport)
333 - $notice: the notice being added
334 - &$transports: modifiable list of transports (as strings) to queue for
336 EndEnqueueNotice: after adding a notice to the queues
337 - $notice: the notice being added
338 - $transports: modifiable list of transports to use
340 UnqueueHandleNotice: Handle a notice when no queue manager is available
341 - $notice: the notice to handle
342 - $queue: the "queue" that is being executed
344 GetValidDaemons: Just before determining which daemons to run
345 - &$daemons: modifiable list of daemon scripts to run, filenames relative to scripts/
347 HandleQueuedNotice: Handle a queued notice at queue time (or immediately if no queue)
348 - &$notice: notice to handle
350 StartShowHeadElements: Right after the <head> tag
351 - $action: the current action
353 EndShowHeadElements: Right before the </head> tag; put <script>s here if you need them in <head>
354 - $action: the current action
356 CheckSchema: chance to check the schema
358 StartProfileRemoteSubscribe: Before showing the link to remote subscription
359 - $userprofile: UserProfile widget
360 - &$profile: the profile being shown
362 EndProfileRemoteSubscribe: After showing the link to remote subscription
363 - $userprofile: UserProfile widget
364 - &$profile: the profile being shown
366 StartProfilePageProfileSection: Starting to show the section of the
367 profile page with the actual profile data;
368 hook to prevent showing the profile (e.g.)
369 - $userprofile: UserProfile widget
370 - &$profile: the profile being shown
372 StartProfilePageProfileElements: inside the section, before the first
373 element; prepend elements here
374 - $userprofile: UserProfile widget
375 - &$profile: the profile being shown
377 EndProfilePageProfileElements: inside the section, after the last element;
379 - $userprofile: UserProfile widget
380 - &$profile: the profile being shown
382 EndProfilePageProfileSection: After showing the section of the profile
383 page with the profile elements
384 - $userprofile: UserProfile widget
385 - &$profile: the profile being shown
387 StartProfilePageActionsSection: Starting to show the section of the
388 profile page with action links; hook
389 to hide them (for example)
390 - $userprofile: UserProfile widget
391 - &$profile: the profile being shown
393 StartProfilePageActionsElements: inside the list, before the first
394 element; prepend elements here
395 - $userprofile: UserProfile widget
396 - &$profile: the profile being shown
398 EndProfilePageActionsElements: inside the list, after the last element;
400 - $userprofile: UserProfile widget
401 - &$profile: the profile being shown
403 EndProfilePageActionsSection: After showing the section of the profile
404 page with the entity actions
405 - $userprofile: UserProfile widget
406 - &$profile: the profile being shown
408 StartProfilePageAvatar: before showing the avatar on the profile page
409 - $userprofile: UserProfile widget
410 - &$profile: the profile being shown
412 EndProfilePageAvatar: after showing the avatar on the profile page
413 - $userprofile: UserProfile widget
414 - &$profile: the profile being shown
416 StartProfilePageNickname: before showing the nickname on the profile page
417 - $userprofile: UserProfile widget
418 - &$profile: the profile being shown
420 EndProfilePageNickname: after showing the nickname on the profile page
421 - $userprofile: UserProfile widget
422 - &$profile: the profile being shown
424 StartProfilePageFullName: before showing the fullname on the profile page
425 - $userprofile: UserProfile widget
426 - &$profile: the profile being shown
428 EndProfilePageFullName: after showing the fullname on the profile page
429 - $userprofile: UserProfile widget
430 - &$profile: the profile being shown
432 StartProfilePageLocation: before showing the location on the profile page
433 - $userprofile: UserProfile widget
434 - &$profile: the profile being shown
436 EndProfilePageLocation: after showing the location on the profile page
437 - $userprofile: UserProfile widget
438 - &$profile: the profile being shown
440 StartProfilePageHomepage: before showing the homepage link on the profile page
441 - $userprofile: UserProfile widget
442 - &$profile: the profile being shown
444 EndProfilePageHomepage: after showing the homepage on the profile page
445 - $userprofile: UserProfile widget
446 - &$profile: the profile being shown
448 StartProfilePageBio: before showing the bio on the profile page
449 - $userprofile: UserProfile widget
450 - &$profile: the profile being shown
452 EndProfilePageBio: after showing the bio on the profile page
453 - $userprofile: UserProfile widget
454 - &$profile: the profile being shown
456 StartProfilePageProfileTags: before showing the tags on the profile page
457 - $userprofile: UserProfile widget
458 - &$profile: the profile being shown
460 EndProfilePageProfileTags: after showing the tags on the profile page
461 - $userprofile: UserProfile widget
462 - &$profile: the profile being shown
464 StartProfileList: when starting a list of profiles (before <ul>)
465 - $profilelist: ProfileList widget, with $profile, $action, and $out
467 EndProfileList: when ending a list of profiles (after </ul>)
468 - $profilelist: ProfileList widget
470 StartProfileListItem: when starting to show a profile list item
471 - $item: ProfileListItem widget
473 EndProfileListItem: after showing a profile list item
474 - $item: ProfileListItem widget
476 StartProfileListItemProfile: the profile data part of the item
477 - $item: ProfileListItem widget
479 EndProfileListItemProfile: the profile data part of the item
480 - $item: ProfileListItem widget
482 StartProfileListItemActions: the actions (buttons) for an item
483 - $item: ProfileListItem widget
485 EndProfileListItemActions: the actions (buttons) for an item
486 - $item: ProfileListItem widget
488 StartProfileListItemProfileElements: inside the <div>
489 - $item: ProfileListItem widget
491 EndProfileListItemProfileElements: inside the <div>
492 - $item: ProfileListItem widget
494 StartProfileListItemAvatar: Showing a profile list avatar
495 - $item: ProfileListItem widget
497 EndProfileListItemAvatar: Showing a profile list avatar
498 - $item: ProfileListItem widget
500 StartProfileListItemFullName: Showing the profile list full name
501 - $item: ProfileListItem widget
503 EndProfileListItemFullName: Showing the profile list full name
504 - $item: ProfileListItem widget
506 StartProfileListItemLocation: Showing the profile list location
507 - $item: ProfileListItem widget
509 EndProfileListItemLocation: Showing the profile list location
510 - $item: ProfileListItem widget
512 StartProfileListItemHomepage: Showing the profile list homepage
513 - $item: ProfileListItem widget
515 EndProfileListItemHomepage: Showing the profile list homepage
516 - $item: ProfileListItem widget
518 StartProfileListItemBio: Showing the profile list bio
519 - $item: ProfileListItem widget
521 EndProfileListItemBio: Showing the profile list bio
522 - $item: ProfileListItem widget
524 StartProfileListItemActionElements: Showing the profile list actions (prepend a button here, or replace all buttons)
525 - $item: ProfileListItem widget
527 EndProfileListItemActionElements: Showing profile list actions (append a button here)
528 - $item: ProfileListItem widget
530 StartUserXRDS: Start XRDS output (right after the opening XRDS tag)
531 - $action: the current action
532 - &$xrdsoutputter - XRDSOutputter object to write to
534 EndUserXRDS: End XRDS output (right before the closing XRDS tag)
535 - $action: the current action
536 - &$xrdsoutputter - XRDSOutputter object to write to
538 StartPublicXRDS: Start XRDS output (right after the opening XRDS tag)
539 - $action: the current action
540 - &$xrdsoutputter - XRDSOutputter object to write to
542 EndPublicXRDS: End XRDS output (right before the closing XRDS tag)
543 - $action: the current action
544 - &$xrdsoutputter - XRDSOutputter object to write to
546 StartCheckPassword: Check a username/password
547 - $nickname: The nickname to check
548 - $password: The password to check
549 - &$authenticatedUser: set to User object if credentials match a user.
551 EndCheckPassword: After checking a username/password pair
552 - $nickname: The nickname that was checked
553 - $password: The password that was checked
554 - $authenticatedUser: User object if credentials match a user, else null.
556 StartChangePassword: Before changing a password
558 - $oldpassword: the user's old password
559 - $newpassword: the desired new password
561 EndChangePassword: After changing a password
564 StartSetUser: Before setting the currently logged in user
567 EndSetUser: After setting the currently logged in user
570 StartSetApiUser: Before setting the current API user
573 EndSetApiUser: After setting the current API user
576 StartHasRole: Before determing if the a profile has a given role
577 - $profile: profile in question
578 - $name: name of the role in question
579 - &$has_role: does this profile have the named role?
581 EndHasRole: Before determing if the a profile has a given role
582 - $profile: profile in question
583 - $name: name of the role in question
584 - $has_role: does this profile have the named role?
586 UserDeleteRelated: Specify additional tables to delete entries from when deleting users
588 - &$related: array of DB_DataObject class names to delete entries on matching user_id.
590 GetUrlShorteners: Specify URL shorteners that are available for use
591 - &$shorteners: append your shortener to this array like so: $shorteners[shortenerName]=array('display'=>display, 'freeService'=>boolean)
593 StartShortenUrl: About to shorten a URL
594 - $url: url to be shortened
595 - $shortenerName: name of the requested shortener
596 - &$shortenedUrl: short version of the url
598 EndShortenUrl: After a URL has been shortened
599 - $url: url to be shortened
600 - $shortenerName: name of the requested shortener
601 - $shortenedUrl: short version of the url
603 StartCssLinkElement: Before a <link rel="stylesheet"..> element is written
609 EndCssLinkElement: After a <link rel="stylesheet"..> element is written
615 StartStyleElement: Before a <style...> element is written
621 EndStyleElement: After a <style...> element is written
627 StartScriptElement: Before a <script...> element is written
632 EndScriptElement: After a <script...> element is written
637 StartInlineScriptElement: Before a <script...> element is written
642 EndInlineScriptElement: After a <script...> element is written
647 StartLog: Before writing to the logs
652 EndLog: After writing to the logs
657 StartBlockProfile: when we're about to block
658 - $user: the person doing the block
659 - $profile: the person getting blocked, can be remote
661 EndBlockProfile: when a block has succeeded
662 - $user: the person doing the block
663 - $profile: the person blocked, can be remote
665 StartUnblockProfile: when we're about to unblock
666 - $user: the person doing the unblock
667 - $profile: the person getting unblocked, can be remote
669 EndUnblockProfile: when an unblock has succeeded
670 - $user: the person doing the unblock
671 - $profile: the person unblocked, can be remote
673 StartSubscribe: when a subscription is starting
674 - $user: the person subscribing
675 - $other: the person being subscribed to
677 EndSubscribe: when a subscription is finished
678 - $user: the person subscribing
679 - $other: the person being subscribed to
681 StartUnsubscribe: when an unsubscribe is starting
682 - $user: the person unsubscribing
683 - $other: the person being unsubscribed from
685 EndUnsubscribe: when an unsubscribe is done
686 - $user: the person unsubscribing
687 - $other: the person being unsubscribed to
689 StartJoinGroup: when a user is joining a group
690 - $group: the group being joined
691 - $user: the user joining
693 EndJoinGroup: when a user finishes joining a group
694 - $group: the group being joined
695 - $user: the user joining
697 StartLeaveGroup: when a user is leaving a group
698 - $group: the group being left
699 - $user: the user leaving
701 EndLeaveGroup: when a user has left a group
702 - $group: the group being left
703 - $user: the user leaving
705 StartShowContentLicense: Showing the default license for content
706 - $action: the current action
708 EndShowContentLicense: Showing the default license for content
709 - $action: the current action
711 StartUserRegister: When a new user is being registered
712 - &$profile: new profile data (no ID)
713 - &$user: new user account (no ID or URI)
715 EndUserRegister: When a new user has been registered
716 - &$profile: new profile data
717 - &$user: new user account
719 StartRobotsTxt: Before outputting the robots.txt page
720 - &$action: RobotstxtAction being shown
722 EndRobotsTxt: After the default robots.txt page (good place for customization)
723 - &$action: RobotstxtAction being shown
725 StartGetProfileUri: When determining the canonical URI for a given profile
726 - $profile: the current profile
729 EndGetProfileUri: After determining the canonical URI for a given profile
730 - $profile: the current profile
733 StartFavorNotice: Saving a notice as a favorite
734 - $profile: profile of the person faving (can be remote!)
735 - $notice: notice being faved
736 - &$fave: Favor object; null to start off with, but feel free to override.
738 EndFavorNotice: After saving a notice as a favorite
739 - $profile: profile of the person faving (can be remote!)
740 - $notice: notice being faved
742 StartDisfavorNotice: Saving a notice as a favorite
743 - $profile: profile of the person faving (can be remote!)
744 - $notice: notice being faved
745 - &$result: result of the disfavoring (if you override)
747 EndDisfavorNotice: After saving a notice as a favorite
748 - $profile: profile of the person faving (can be remote!)
749 - $notice: notice being faved