71 lines
2.7 KiB
PHP
71 lines
2.7 KiB
PHP
<?php
|
|
|
|
/**
|
|
* bp_dedication_record_activity()
|
|
*
|
|
* If the activity stream component is installed, this function will record activity items for your
|
|
* component.
|
|
*
|
|
* You must pass the function an associated array of arguments:
|
|
*
|
|
* $args = array(
|
|
* REQUIRED PARAMS
|
|
* 'action' => For example: "Andy high-fived John", "Andy posted a new update".
|
|
* 'type' => The type of action being carried out, for example 'new_friendship', 'joined_group'. This should be unique within your component.
|
|
*
|
|
* OPTIONAL PARAMS
|
|
* 'id' => The ID of an existing activity item that you want to update.
|
|
* 'content' => The content of your activity, if it has any, for example a photo, update content or blog post excerpt.
|
|
* 'component' => The slug of the component.
|
|
* 'primary_link' => The link for the title of the item when appearing in RSS feeds (defaults to the activity permalink)
|
|
* 'item_id' => The ID of the main piece of data being recorded, for example a group_id, user_id, forum_post_id - useful for filtering and deleting later on.
|
|
* 'user_id' => The ID of the user that this activity is being recorded for. Pass false if it's not for a user.
|
|
* 'recorded_time' => (optional) The time you want to set as when the activity was carried out (defaults to now)
|
|
* 'hide_sitewide' => Should this activity item appear on the site wide stream?
|
|
* 'secondary_item_id' => (optional) If the activity is more complex you may need a second ID. For example a group forum post may need the group_id AND the forum_post_id.
|
|
* )
|
|
*
|
|
* Example usage would be:
|
|
*
|
|
* bp_example_record_activity( array( 'type' => 'new_highfive', 'action' => 'Andy high-fived John', 'user_id' => $bp->loggedin_user->id, 'item_id' => $bp->displayed_user->id ) );
|
|
*
|
|
*/
|
|
function bp_dedication_record_activity( $args = '' ) {
|
|
global $bp;
|
|
|
|
if ( !function_exists( 'bp_activity_add' ) )
|
|
return false;
|
|
|
|
$defaults = array(
|
|
'id' => false,
|
|
'user_id' => $bp->loggedin_user->id,
|
|
'action' => '',
|
|
'content' => '',
|
|
'primary_link' => '',
|
|
'component' => '', //$bp->dedications->id,
|
|
'type' => false,
|
|
'item_id' => false,
|
|
'secondary_item_id' => false,
|
|
'recorded_time' => gmdate( "Y-m-d H:i:s" ),
|
|
'hide_sitewide' => false
|
|
);
|
|
|
|
$r = wp_parse_args( $args, $defaults );
|
|
extract( $r );
|
|
|
|
return bp_activity_add( array(
|
|
'id' => $id,
|
|
'user_id' => $user_id,
|
|
'action' => $action,
|
|
'content' => $content,
|
|
'primary_link' => $primary_link,
|
|
'component' => $component,
|
|
'type' => $type,
|
|
'item_id' => $item_id,
|
|
'secondary_item_id' => $secondary_item_id,
|
|
'recorded_time' => $recorded_time,
|
|
'hide_sitewide' => $hide_sitewide
|
|
) );
|
|
}
|
|
|
|
?>
|