mirror of
https://codeberg.org/grunfink/snac2.git
synced 2024-11-22 05:15:04 +00:00
The nodeinfo file returns more useful information.
This commit is contained in:
parent
3495c69b35
commit
1d00c4ef66
1 changed files with 28 additions and 4 deletions
32
httpd.c
32
httpd.c
|
@ -39,11 +39,35 @@ const char *nodeinfo_2_0_template = ""
|
||||||
xs_str *nodeinfo_2_0(void)
|
xs_str *nodeinfo_2_0(void)
|
||||||
/* builds a nodeinfo json object */
|
/* builds a nodeinfo json object */
|
||||||
{
|
{
|
||||||
xs *users = user_list();
|
int n_utotal = 0;
|
||||||
int n_users = xs_list_len(users);
|
int n_umonth = 0;
|
||||||
int n_posts = 0; /* to be implemented someday */
|
int n_uhyear = 0;
|
||||||
|
int n_posts = 0;
|
||||||
|
xs *users = user_list();
|
||||||
|
xs_list *p;
|
||||||
|
char *v;
|
||||||
|
|
||||||
return xs_fmt(nodeinfo_2_0_template, n_users, n_users, n_users, n_posts);
|
p = users;
|
||||||
|
while (xs_list_iter(&p, &v)) {
|
||||||
|
/* build the full path name to the last usage log */
|
||||||
|
xs *llfn = xs_fmt("%s/user/%s/lastlog.txt", srv_basedir, v);
|
||||||
|
double llsecs = (double)time(NULL) - mtime(llfn);
|
||||||
|
|
||||||
|
if (llsecs < 60 * 60 * 24 * 30 * 6) {
|
||||||
|
n_uhyear++;
|
||||||
|
|
||||||
|
if (llsecs < 60 * 60 * 24 * 30)
|
||||||
|
n_umonth++;
|
||||||
|
}
|
||||||
|
|
||||||
|
n_utotal++;
|
||||||
|
|
||||||
|
/* build the file to each user public.idx */
|
||||||
|
xs *pidxfn = xs_fmt("%s/user/%s/private.idx", srv_basedir, v);
|
||||||
|
n_posts += index_len(pidxfn);
|
||||||
|
}
|
||||||
|
|
||||||
|
return xs_fmt(nodeinfo_2_0_template, n_utotal, n_umonth, n_uhyear, n_posts);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue