My favorites
▼
|
Sign in
reallocs-asylum
Plugins, snippets & code from realloc's asylum
Project Home
Downloads
Wiki
Issues
Source
Checkout
Browse
Changes
Source path:
svn
/
trunk
/
examples
/
whatpulse.php
‹r42
r64
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
<?php
function MemberKeys ($a, $b) {
return $a['MemberKeys'] < $b['MemberKeys'];
}
function getWhatpulseTeamData ($teamID) {
$remote = wp_remote_get (
'http://whatpulse.org/api/team.php?TeamID=' . (int) $teamID
);
$retval = array ();
if (!is_wp_error ($result)) {
$xml = simplexml_load_string ($remote['body']);
if ($xml) {
$retval['Statistics'] = (array) $xml->TeamStats->Statistics;
$members = array ();
if (!empty ($xml->TeamStats->Members->Member)) {
foreach ($xml->TeamStats->Members->Member as $member) {
$members[] = (array) $member;
}
usort ($members, 'MemberKeys');
if (count ($members) > 10)
$members = array_slice ($members, 0, 10);
}
$retval['Members'] = $members;
}
}
return $retval;
}
function my_whatpulse ($atts) {
extract (
shortcode_atts (
array (
'TeamID' => 17040,
),
$atts
)
);
$transient = 'WhatpulseTeamData_' . (int) $TeamID;
if (false === ($wptd = get_transient ($transient))) {
$wptd = getWhatpulseTeamData ($TeamID);
if (!empty ($wptd)) set_transient ($transient, $wptd, 3600);
}
$retval = '';
if (!empty ($wptd)) {
extract ($wptd['Statistics']);
$retval = sprintf (
'<p style="text-align:justify">Das Team <strong>%s</strong>, das ' .
'sich mit "%s" beschreibt, hat <em>%s</em> Mitglieder, ' .
'die insgesamt <em>%d</em> Tastenanschläge, <em>%d</em> Klicks ' .
'und <em>%d</em> Meilen mit der Maus gepulst haben und sich ' .
'damit auf Platz <em>%d</em> der Teamwertung befinden ' .
'(Stand %s). </p><p><em>Das Team wurde am %s von %s ' .
'gegründet.</em></p>',
$TeamName, $TeamDescription, $TeamMembers, $TeamKeys, $TeamClicks,
$TeamMiles, $TeamRank,
date ('d.m.Y G.i \U\h\r', strtotime ($GeneratedTime)),
date ('d.m.Y', strtotime (str_replace (' at ', ' ', $TeamDateFormed))),
$TeamFounder
);
if (!empty ($wptd['Members'])) {
$retval .=
'<p><strong>Top 10 der Gruppe</strong></p><table><tr><th>' .
'Name</th><th>Tastenanschläge</th><th>Klicks</th><th>Meilen' .
'</th><th>Letzter Pulse</th></tr>';
foreach ($wptd['Members'] as $member) {
$retval .= sprintf (
'<tr><td><a href="http://whatpulse.org/stats/users/%s">%s' .
'</a></td><td>%d</td><td>%d</td><td>%d</td><td>%s</td>' .
'</tr>',
$member['MemberUserID'], $member['MemberName'],
$member['MemberKeys'], $member['MemberClicks'],
$member['MemberMiles'],
date ('d.m.Y G.i \U\h\r', strtotime ($member['MemberLastPulse']))
);
}
$retval .=
'</table>';
}
}
return $retval;
}
add_shortcode ('whatpulse', 'my_whatpulse');
?>
Show details
Hide details
Change log
r43
by dennis.ploetner on Jun 23, 2010
Diff
[No log message]
Go to:
/trunk/examples/whatpulse.php
Project members,
sign in
to write a code review
Older revisions
r42
by dennis.ploetner on Jun 23, 2010
Diff
[No log message]
r41
by dennis.ploetner on Jun 23, 2010
Diff
[No log message]
r40
by dennis.ploetner on Jun 23, 2010
Diff
[No log message]
All revisions of this file
File info
Size: 2848 bytes, 86 lines
View raw file
Powered by
Google Project Hosting