CWIS Developer Documentation
Home
Main Page
Namespaces
Classes
Files
File List
File Members
objects
SPTUserFactory.php
Go to the documentation of this file.
1
<?
PHP
2
3
#
4
# FILE: SPTUserFactory.php
5
#
6
# Part of the Collection Workflow Integration System (CWIS)
7
# Copyright 2003-2012 Edward Almasy and Internet Scout
8
# http://scout.wisc.edu
9
#
10
11
class
SPTUserFactory
extends
UserFactory
12
{
13
# ---- PUBLIC INTERFACE --------------------------------------------------
14
21
public
function
GetTopContributors
($Limit = 5)
22
{
23
# assume no users will be found
24
$Users = array();
25
26
# fetch the top contributors
27
$DB
=
new
Database
();
28
$DB
->Query(
"SELECT U.*"
29
.
" FROM APUsers U, Resources R"
30
.
" WHERE U.UserId = R.LastModifiedById"
31
.
" GROUP BY R.LastModifiedById"
32
.
" ORDER BY COUNT(*) DESC"
33
.
" LIMIT "
.intval($Limit));
34
$UserIds =
$DB
->FetchColumn(
"UserId"
);
35
36
# for each user id found
37
foreach
($UserIds as $UserId)
38
{
39
$Users[$UserId] =
new
SPTUser
($UserId);
40
}
41
42
# return the newest users
43
return
$Users;
44
}
45
52
public
function
GetMostRecentContributors
($Limit = 5)
53
{
54
# assume no users will be found
55
$Users = array();
56
57
# fetch the top contributors
58
$DB
=
new
Database
();
59
$DB
->Query(
"SELECT U.*"
60
.
" FROM APUsers U, Resources R"
61
.
" WHERE U.UserId = R.LastModifiedById"
62
.
" GROUP BY U.UserId"
63
.
" ORDER BY MAX(R.DateLastModified) DESC"
64
.
" LIMIT "
.intval($Limit));
65
$UserIds =
$DB
->FetchColumn(
"UserId"
);
66
67
# for each user id found
68
foreach
($UserIds as $UserId)
69
{
70
$Users[$UserId] =
new
SPTUser
($UserId);
71
}
72
73
# return the newest users
74
return
$Users;
75
}
76
77
# ---- PRIVATE INTERFACE -------------------------------------------------
78
79
}
80
81
?>
Copyright 2012 Internet Scout