uniacid / visitor-log
A package for Laravel 4 to log all visitors
Requires
- php: >=5.3.0
- illuminate/support: 4.x
This package is not auto-updated.
Last update: 2024-11-23 16:46:58 UTC
README
#Laravel 4 VisitorLog
A package for Laravel 4 to log all visitors
If anyone has any ideas on how to make this framework agnostic, please contact me or open a pull request.
##Installation
Add uniacid/visitor-log
as a requirement to composer.json
:
{ ... "require": { ... "uniacid/visitor-log": "dev-master" ... }, }
Update composer:
$ php composer.phar update
Add the provider to your app/config/app.php
:
'providers' => array( ... 'Uniacid\VisitorLog\VisitorLogServiceProvider', ),
Add the alias to your app/config/app.php
:
'aliases' => array( ... 'Visitor' => 'Uniacid\VisitorLog\Visitor', ),
Publish migration:
$ php artisan migrate --package=uniacid/visitor-log
(Optional) Publish package config:
$ php artisan config:publish uniacid/visitor-log
##Configuration
onlinetime
: The time (in minutes) while a visitor is still savedusermodel
: Set this to the Auth Provider you're using:Laravel
: Visitor-Log will try to get the User with Laravel's Auth ClassSentry
: Visitor-Log will try to get the User with Sentry
ignore
: This is an array of pages that will be ignored by Visitor-Log. Example "admin/online"
##The Visitor Class The Visitor Class is an Eloquent Class but has a few extra methods, which will be explained here.
static isOnline($id)
: Will check whether the user with$id
is onlinestatic getCurrent()
: Will get the current Visitor (based on their sid)static clear()
: Buggy!! This removes all old visitors from the Database. You normally don't need to call this as this happens on every request.static loggedIn()
: Will get all logged in Usersstatic guests()
: Will get all guestsstatic findUser($id)
: Will get the User provided by$id
(if online)static findIp($ip)
: Will get all visitors with$ip
isUser()
: Checks whether this visitor is a UserisGuest()
: Checks whether this visitor is a Guest
There are a few methods that wraps the specific Useragent method:
is_browser()
: Checks whether this visitor uses a browseris_robot()
: Checks whether this visitor is a botis_mobile()
: Checks whether this visitor uses a mobile clientis_referral()
: Checks whether this visitor is a referral
The Visitor Class also provides some attributes:
sid
: A random String which is used to identicate the visitorip
: The IP of the visitorpage
: The Page where the visitor isuseragent
: The useragent of the visitoruser
: The UserID of the visitor- The timestamps (
created_at
,updated_at
) agent
: Returns the useragent Instance used for this visitoragents
: Returns the modified Agentstring (eg Opera 12.16)platform
: Returns the operating Systembrowser
: Returns the Browser which is usedversion
: Returns the Browser version which is usedrobot
: Returns the Botname which is browsing your sitemobile
: Returns the mobile which is usedreferrer
: Returns the referrer
##What's with an "Who's online page"?
It's really easy to add one by yourself but Visitor-Log provides you already a very simple one: simply add @include("visitor-log::online")
to your blade template where you want. And the best: It's ready to look nice with bootstrap