CMS  Version 3.9
user_activity.inc
Go to the documentation of this file.
1 <?php
8 class UserActivity extends DataItem
9 {
10  var $table = "user_activity";
11  var $primary_key = "activity_id";
12 
13  // Fields
14 
15  var $fields = array("activity_id" => Number,
16  "user_id" => Number,
17  "uri" => String,
18  "session_id" => String,
19  "method" => String,
20  "referer" => String,
21  "activity_time" => DateTime,
22  "response_time" => Number,
23  "memory_usage" => Number);
24 
25  var $relations = array("User" => SiteUser);
26 
27  function User()
28  {
29  $mgr = new UserManager();
30  return $mgr->getUser($this->user_id);
31  }
32 
33  function __construct()
34  {
35  $mgr = new UserManager();
36  $this->relations["User"] = $mgr->getUserClass();
37 
38  parent::__construct(func_get_args());
39  }
40 }
41 
42 class UserActivitySession extends DataItem
43 {
44  var $table = "user_activity_session";
45  var $primary_key = "session_id";
46 
47  // Fields
48 
49  var $fields = array("session_id" => Number,
50  "session_identifier" => String,
51  "user_id" => Number,
52  "session_start" => DateTime,
53  "session_end" => DateTime,
54  "request_count" => Number,
55  "feedback_count" => Number,
56  "action_count" => Number,
57  "page_views" => Number,
58  "ip_address" => String,
59  "user_agent" => String);
60 
61  var $relations = array("User" => SiteUser);
62 
63  function User()
64  {
65  $mgr = new UserManager();
66  return $mgr->getUser($this->user_id);
67  }
68 
69  function __construct()
70  {
71  $mgr = new UserManager();
72  $this->relations["User"] = $mgr->getUserClass();
73 
74  parent::__construct(func_get_args());
75  }
76 
77  static function fromIdentifier($identifier)
78  {
79  return Query::create(UserActivitySession, "WHERE session_identifier=:i")
80  ->bind(":i", $identifier)
81  ->executeSingle();
82  }
83 
84  // We have an issue where multiple UserActivitySessions have been created for the same identifier.
85  // This method helps work around that in the error log.
86 
87  static function getSessions($identifier)
88  {
89  return Query::create(UserActivitySession, "WHERE session_identifier=:i")
90  ->bind(":i", $identifier)
91  ->execute();
92  }
93 
94 }
95 
96 // view
97 class ActivitySession extends DataItem
98 {
99  // view
100 
101  var $table = "activity_sessions";
102  var $primary_key = "session_id";
103 
104  // Fields
105 
106  var $fields = array("session_id" => String,
107  "page_views" => Number,
108  "session_start" => DateTime,
109  "session_end" => DateTime,
110  "user_id" => Number,
111  "num_feedback" => Number);
112 
113  var $relations = array("User" => SiteUser,
114  "Activity" => UserActivity);
115 
116  function User()
117  {
118  $mgr = new UserManager();
119  return $mgr->getUser($this->user_id);
120  }
121 
122  function Activity($constraint = "")
123  {
124  return $this->getRelatedList(UserActivity, "", $constraint);
125  }
126 
127  function __construct()
128  {
129  $mgr = new UserManager();
130  $this->relations["User"] = $mgr->getUserClass();
131 
132  parent::__construct(func_get_args());
133  }
134 }
135  ?>
$constraint
Activity($constraint="")
This class maps the site_user table.
Definition: site_user.inc:43
static fromIdentifier($identifier)
static getSessions($identifier)
Provides the interface to the user model for the application.
$identifier
Definition: rss.inc:37
$feedback user_id
Definition: save.inc:14