0, "thisday"=>date("Y-m-d"), "alltime"=>0, "month"=>0, "thismonth"=>date("n")));
$views = get_option("pmpro_views", array("today"=>0, "thisday"=>date("Y-m-d"), "alltime"=>0, "month"=>0, "thismonth"=>date("n")));
$logins = get_option("pmpro_logins", array("today"=>0, "thisday"=>date("Y-m-d"), "alltime"=>0, "month"=>0, "thismonth"=>date("n")));
?>
ID))
{
$visits = $current_user->pmpro_visits;
if(empty($visits))
$visits = array("last"=>"N/A", "month"=>0, "alltime"=>0);
//track logins for user
$visits['last'] = date(get_option("date_format"));
$visits['alltime']++;
$thismonth = date("n");
if($thismonth == $visits['thismonth'])
$visits['month']++;
else
{
$visits['month'] = 1;
$visits['thismonth'] = $thismonth;
}
//update user data
update_user_meta($current_user->ID, "pmpro_visits", $visits);
}
//track for all
$visits = get_option("pmpro_visits");
if(empty($visits))
$visits = array("today"=>0, "month"=>0, "alltime"=>0);
$visits['alltime']++;
$thisdate = date("Y-d-m");
if($thisdate == $visits['thisdate'])
$visits['today']++;
else
{
$visits['today'] = 1;
$visits['thisdate'] = $thisdate;
}
if($thismonth == $visits['thismonth'])
$visits['month']++;
else
{
$visits['month'] = 1;
$visits['thismonth'] = $thismonth;
}
update_option("pmpro_visits", $visits);
}
add_action("wp", "pmpro_report_login_wp_visits");
//we want to clear the pmpro_visit cookie on login/logout
function pmpro_report_login_clear_visit_cookie()
{
if(isset($_COOKIE['pmpro_visit']))
unset($_COOKIE['pmpro_visit']);
}
add_action("wp_login", "pmpro_report_login_clear_visit_cookie");
add_action("wp_logout", "pmpro_report_login_clear_visit_cookie");
//track views
function pmpro_report_login_wp_views()
{
//don't track admin
if(is_admin())
return;
global $current_user;
//track for user
if(!empty($current_user->ID))
{
$views = $current_user->pmpro_views;
if(empty($views))
$views = array("last"=>"N/A", "month"=>0, "alltime"=>0);
//track logins for user
$views['last'] = date(get_option("date_format"));
$views['alltime']++;
$thismonth = date("n");
if(isset($views['thismonth']) && $thismonth == $views['thismonth'])
$views['month']++;
else
{
$views['month'] = 1;
$views['thismonth'] = $thismonth;
}
//update user data
update_user_meta($current_user->ID, "pmpro_views", $views);
}
//track for all
$views = get_option("pmpro_views");
if(empty($views))
$views = array("today"=>0, "month"=>0, "alltime"=>0);
$views['alltime']++;
$thisdate = date("Y-d-m");
if($thisdate == $views['thisdate'])
$views['today']++;
else
{
$views['today'] = 1;
$views['thisdate'] = $thisdate;
}
$thismonth = date("n");
if(isset($views['thismonth']) && $thismonth == $views['thismonth'])
$views['month']++;
else
{
$views['month'] = 1;
$views['thismonth'] = $thismonth;
}
update_option("pmpro_views", $views);
}
add_action("wp", "pmpro_report_login_wp_views");
//track logins
function pmpro_report_login_wp_login($user_login)
{
//get user data
$user = get_user_by("login", $user_login);
$logins = $user->pmpro_logins;
if(empty($logins))
$logins = array("last"=>"N/A", "month"=>0, "alltime"=>0);
//track logins for user
$logins['last'] = date(get_option("date_format"));
$logins['alltime']++;
$thismonth = date("n");
if($thismonth == $logins['thismonth'])
$logins['month']++;
else
{
$logins['month'] = 1;
$logins['thismonth'] = $thismonth;
}
//update user data
update_user_meta($user->ID, "pmpro_logins", $logins);
//track logins overall
$logins = get_option("pmpro_logins");
if(empty($logins))
$logins = array("today"=>0, "month"=>0, "alltime"=>0);
$logins['alltime']++;
$thisdate = date("Y-d-m");
if($thisdate == $logins['thisdate'])
$logins['today']++;
else
{
$logins['today'] = 1;
$logins['thisdate'] = $thisdate;
}
if($thismonth == $logins['thismonth'])
$logins['month']++;
else
{
$logins['month'] = 1;
$logins['thismonth'] = $thismonth;
}
update_option("pmpro_logins", $logins);
}
add_action("wp_login", "pmpro_report_login_wp_login");