Package Data | |
---|---|
Maintainer Username: | dmyers |
Maintainer Contact: | arcticpro@gmail.com (Derek Myers) |
Package Create Date: | 2014-07-31 |
Package Last Update: | 2015-07-13 |
Home Page: | |
Language: | PHP |
License: | MIT |
Last Refreshed: | 2024-11-20 03:02:08 |
Package Statistics | |
---|---|
Total Downloads: | 14 |
Monthly Downloads: | 0 |
Daily Downloads: | 0 |
Total Stars: | 7 |
Total Watchers: | 3 |
Total Forks: | 3 |
Total Open Issues: | 0 |
Activity is a activity/news feed system for Laravel 4 applications.
Add this to you composer.json file, in the require object:
"dmyers/laravel-activity": "dev-master"
After that, run composer install to install Activity.
Add the service provider to app/config/app.php
, within the providers
array.
'providers' => array(
// ...
'Dmyers\Activity\ActivityServiceProvider',
)
Add a class alias to app/config/app.php
, within the aliases
array.
'aliases' => array(
// ...
'Activity' => 'Dmyers\Activity\Activity',
)
Publish the package's model, migration, and view.
php artisan model:publish dmyers/laravel-activity
php artisan migration:publish dmyers/laravel-activity
php artisan view:publish dmyers/laravel-activity
Finally, add the trait to the models you want to track activity on.
use ActivityTrait;
protected $activity_item_field = 'id';
protected $activity_doer_field = 'user_id';
protected $activity_events = array('created', 'updated', 'deleted');
protected $activity_feed_type = 'user';
First get an instance of an item type (model):
$object = Model::find(1);
Fetch all the activity:
$object->activity(array(
'id' => $activity_id, // optional
'doer_id' => $doer_id, // optional
'victim_id' => $victim_id, // optional
'item_id' => $item_id, // optional
'item_type' => $item_type, // optional
'feed_type' => $feed_type, // optional
));
Track an activity event:
$object->addActivity($item_type, $doer_id, $victim_id, $action);
Update an activity event:
$object->updateActivity($item_type, $doer_id, $victim_id, $action);
Delete an activity event:
$object->deleteActivity($item_type, $doer_id, $victim_id, $action);
Display an activity feed:
$object->renderActivityFeed($type, $doer_id, $victim_id);
Push a feed into another activity feed:
$object->pushActivityFeed($type, $doer_id, $victim_id);