New Last 10 Callers
This commit is contained in:
parent
ac4c525415
commit
70dcde1f75
1
.gitignore
vendored
1
.gitignore
vendored
@ -80,3 +80,4 @@ core
|
|||||||
docs/site
|
docs/site
|
||||||
utils/reset_pass/reset_pass
|
utils/reset_pass/reset_pass
|
||||||
.vscode
|
.vscode
|
||||||
|
last10v2.dat
|
||||||
|
@ -35,6 +35,10 @@ LINE: 280 NEW
|
|||||||
OLDSTRING: (NONE)
|
OLDSTRING: (NONE)
|
||||||
NEWSTRING: "Read Now ? (Y / N): "
|
NEWSTRING: "Read Now ? (Y / N): "
|
||||||
|
|
||||||
|
LINE: 5 MODIFIED
|
||||||
|
OLDSTRING: "\e[1;37m%-16s \e[1;36m%-32s \e[1;32m%02d:%02d %02d-%02d-%02d\e[0m\r\n"
|
||||||
|
NEWSTRING: "\e[1;37m%-16s \e[1;36m%-32s \e[1;32m%02d:%02d %02d-%02d-%02d \e[1;33m%c\e[0m\r\n"
|
||||||
|
|
||||||
Changes from v0.8-alpha -> v0.9-alpha
|
Changes from v0.8-alpha -> v0.9-alpha
|
||||||
--------------------------------------------------------------
|
--------------------------------------------------------------
|
||||||
LINE: 255 NEW
|
LINE: 255 NEW
|
||||||
|
BIN
dist/ansis/bulletin1.ans
vendored
BIN
dist/ansis/bulletin1.ans
vendored
Binary file not shown.
2
dist/magicka.strings
vendored
2
dist/magicka.strings
vendored
@ -2,7 +2,7 @@
|
|||||||
\r\n\r\nTimeout waiting for input..\r\n
|
\r\n\r\nTimeout waiting for input..\r\n
|
||||||
\r\n\e[1;37mLast 10 callers:\r\n
|
\r\n\e[1;37mLast 10 callers:\r\n
|
||||||
\e[1;30m-------------------------------------------------------------------------------\r\n
|
\e[1;30m-------------------------------------------------------------------------------\r\n
|
||||||
\e[1;37m%-16s \e[1;36m%-32s \e[1;32m%02d:%02d %02d-%02d-%02d\e[0m\r\n
|
\e[1;37m%-16s \e[1;36m%-32s \e[1;32m%02d:%02d %02d-%02d-%02d \e[1;33m%c\e[0m\r\n
|
||||||
\e[1;30m-------------------------------------------------------------------------------\e[0m\r\n
|
\e[1;30m-------------------------------------------------------------------------------\e[0m\r\n
|
||||||
\e[1;37mPress any key to continue...\e[0m\r\n
|
\e[1;37mPress any key to continue...\e[0m\r\n
|
||||||
\r\n\r\n\e[1;37mSystem Information\r\n
|
\r\n\r\n\e[1;37mSystem Information\r\n
|
||||||
|
6
dist/scripts/login_stanza.lua
vendored
6
dist/scripts/login_stanza.lua
vendored
@ -60,10 +60,14 @@ bbs_write_string("\r\n\r\n\027[1;37mLast 10 callers:\r\n");
|
|||||||
bbs_write_string("\027[1;30m-------------------------------------------------------------------------------\r\n");
|
bbs_write_string("\027[1;30m-------------------------------------------------------------------------------\r\n");
|
||||||
|
|
||||||
while (i < 10) do
|
while (i < 10) do
|
||||||
user, location, ltime = bbs_read_last10(i);
|
user, location, ltime, calls = bbs_read_last10(i);
|
||||||
if (user ~= nil) then
|
if (user ~= nil) then
|
||||||
|
if calls == 1 then
|
||||||
|
bbs_write_string(string.format("\027[1;37m%-16s \027[1;36m%-32s \027[1;32m%s \027[1;33mN\r\n", user, location, os.date("%H:%M %d-%m-%y" ,ltime)));
|
||||||
|
else
|
||||||
bbs_write_string(string.format("\027[1;37m%-16s \027[1;36m%-32s \027[1;32m%s\r\n", user, location, os.date("%H:%M %d-%m-%y" ,ltime)));
|
bbs_write_string(string.format("\027[1;37m%-16s \027[1;36m%-32s \027[1;32m%s\r\n", user, location, os.date("%H:%M %d-%m-%y" ,ltime)));
|
||||||
end
|
end
|
||||||
|
end
|
||||||
|
|
||||||
i = i + 1;
|
i = i + 1;
|
||||||
end
|
end
|
||||||
|
BIN
dist/www-bootstrap/static/newuser.png
vendored
Normal file
BIN
dist/www-bootstrap/static/newuser.png
vendored
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.5 KiB |
13
dist/www-bootstrap/static/style-mobile.css
vendored
13
dist/www-bootstrap/static/style-mobile.css
vendored
@ -341,6 +341,19 @@
|
|||||||
max-width: 100%;
|
max-width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.last10-new {
|
||||||
|
position: relative;
|
||||||
|
width: 100%;
|
||||||
|
min-height: 1px;
|
||||||
|
padding-right: 15px;
|
||||||
|
padding-left: 15px;
|
||||||
|
|
||||||
|
-webkit-box-flex: 0;
|
||||||
|
-ms-flex: 100%;
|
||||||
|
flex: 0 0 100%;
|
||||||
|
max-width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
#msgbody {
|
#msgbody {
|
||||||
background-color: black;
|
background-color: black;
|
||||||
color: gray;
|
color: gray;
|
||||||
|
19
dist/www-bootstrap/static/style.css
vendored
19
dist/www-bootstrap/static/style.css
vendored
@ -331,9 +331,22 @@
|
|||||||
padding-left: 15px;
|
padding-left: 15px;
|
||||||
|
|
||||||
-webkit-box-flex: 0;
|
-webkit-box-flex: 0;
|
||||||
-ms-flex: 0 0 33.333333%;
|
-ms-flex: 0 0 23.333333%;
|
||||||
flex: 0 0 33.333333%;
|
flex: 0 0 23.333333%;
|
||||||
max-width: 33.333333%;
|
max-width: 23.333333%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.last10-new {
|
||||||
|
position: relative;
|
||||||
|
width: 100%;
|
||||||
|
min-height: 1px;
|
||||||
|
padding-right: 15px;
|
||||||
|
padding-left: 15px;
|
||||||
|
|
||||||
|
-webkit-box-flex: 0;
|
||||||
|
-ms-flex: 0 0 10%;
|
||||||
|
flex: 0 0 10%;
|
||||||
|
max-width: 10%;
|
||||||
}
|
}
|
||||||
|
|
||||||
#msgbody {
|
#msgbody {
|
||||||
|
12
src/bbs.c
12
src/bbs.c
@ -672,7 +672,7 @@ void record_last10_callers(struct user_record *user) {
|
|||||||
struct last10_callers callers[10];
|
struct last10_callers callers[10];
|
||||||
|
|
||||||
int i,j;
|
int i,j;
|
||||||
FILE *fptr = fopen("last10.dat", "rb");
|
FILE *fptr = fopen("last10v2.dat", "rb");
|
||||||
|
|
||||||
if (fptr != NULL) {
|
if (fptr != NULL) {
|
||||||
for (i=0;i<10;i++) {
|
for (i=0;i<10;i++) {
|
||||||
@ -690,13 +690,13 @@ void record_last10_callers(struct user_record *user) {
|
|||||||
strcpy(new_entry.name, user->loginname);
|
strcpy(new_entry.name, user->loginname);
|
||||||
strcpy(new_entry.location, user->location);
|
strcpy(new_entry.location, user->location);
|
||||||
new_entry.time = time(NULL);
|
new_entry.time = time(NULL);
|
||||||
|
new_entry.calls = user->timeson;
|
||||||
if (i == 10) {
|
if (i == 10) {
|
||||||
j = 1;
|
j = 1;
|
||||||
} else {
|
} else {
|
||||||
j = 0;
|
j = 0;
|
||||||
}
|
}
|
||||||
fptr = fopen("last10.dat", "wb");
|
fptr = fopen("last10v2.dat", "wb");
|
||||||
for (;j<i;j++) {
|
for (;j<i;j++) {
|
||||||
fwrite(&callers[j], sizeof(struct last10_callers), 1, fptr);
|
fwrite(&callers[j], sizeof(struct last10_callers), 1, fptr);
|
||||||
}
|
}
|
||||||
@ -710,7 +710,7 @@ void display_last10_callers(struct user_record *user) {
|
|||||||
|
|
||||||
int i,z;
|
int i,z;
|
||||||
struct tm l10_time;
|
struct tm l10_time;
|
||||||
FILE *fptr = fopen("last10.dat", "rb");
|
FILE *fptr = fopen("last10v2.dat", "rb");
|
||||||
time_t l10_timet;
|
time_t l10_timet;
|
||||||
|
|
||||||
s_printf("\e[2J\e[1;1H");
|
s_printf("\e[2J\e[1;1H");
|
||||||
@ -735,9 +735,9 @@ void display_last10_callers(struct user_record *user) {
|
|||||||
l10_timet = callers[z].time;
|
l10_timet = callers[z].time;
|
||||||
localtime_r(&l10_timet, &l10_time);
|
localtime_r(&l10_timet, &l10_time);
|
||||||
if (conf.date_style == 1) {
|
if (conf.date_style == 1) {
|
||||||
s_printf(get_string(4), callers[z].name, callers[z].location, l10_time.tm_hour, l10_time.tm_min, l10_time.tm_mon + 1, l10_time.tm_mday, l10_time.tm_year - 100);
|
s_printf(get_string(4), callers[z].name, callers[z].location, l10_time.tm_hour, l10_time.tm_min, l10_time.tm_mon + 1, l10_time.tm_mday, l10_time.tm_year - 100, (callers[z].calls == 1 ? 'N' : ' '));
|
||||||
} else {
|
} else {
|
||||||
s_printf(get_string(4), callers[z].name, callers[z].location, l10_time.tm_hour, l10_time.tm_min, l10_time.tm_mday, l10_time.tm_mon + 1, l10_time.tm_year - 100);
|
s_printf(get_string(4), callers[z].name, callers[z].location, l10_time.tm_hour, l10_time.tm_min, l10_time.tm_mday, l10_time.tm_mon + 1, l10_time.tm_year - 100, (callers[z].calls == 1 ? 'N' : ' '));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
s_printf(get_string(5));
|
s_printf(get_string(5));
|
||||||
|
@ -43,6 +43,7 @@ struct last10_callers {
|
|||||||
char name[17];
|
char name[17];
|
||||||
char location[33];
|
char location[33];
|
||||||
time_t time;
|
time_t time;
|
||||||
|
int calls;
|
||||||
}__attribute__((packed));
|
}__attribute__((packed));
|
||||||
|
|
||||||
struct text_file {
|
struct text_file {
|
||||||
|
@ -87,7 +87,7 @@ int l_bbsReadLast10(lua_State *L) {
|
|||||||
struct last10_callers l10;
|
struct last10_callers l10;
|
||||||
FILE *fptr;
|
FILE *fptr;
|
||||||
|
|
||||||
fptr = fopen("last10.dat", "rb");
|
fptr = fopen("last10v2.dat", "rb");
|
||||||
if (!fptr) {
|
if (!fptr) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -100,8 +100,8 @@ int l_bbsReadLast10(lua_State *L) {
|
|||||||
lua_pushstring(L, l10.name);
|
lua_pushstring(L, l10.name);
|
||||||
lua_pushstring(L, l10.location);
|
lua_pushstring(L, l10.location);
|
||||||
lua_pushnumber(L, l10.time);
|
lua_pushnumber(L, l10.time);
|
||||||
|
lua_pushnumber(L, l10.calls);
|
||||||
return 3;
|
return 4;
|
||||||
}
|
}
|
||||||
|
|
||||||
int l_bbsGetEmailCount(lua_State *L) {
|
int l_bbsGetEmailCount(lua_State *L) {
|
||||||
|
@ -17,7 +17,7 @@ char *www_last10() {
|
|||||||
|
|
||||||
int i,z;
|
int i,z;
|
||||||
struct tm l10_time;
|
struct tm l10_time;
|
||||||
FILE *fptr = fopen("last10.dat", "rb");
|
FILE *fptr = fopen("last10v2.dat", "rb");
|
||||||
|
|
||||||
if (fptr != NULL) {
|
if (fptr != NULL) {
|
||||||
|
|
||||||
@ -56,10 +56,18 @@ char *www_last10() {
|
|||||||
for (z=0;z<i;z++) {
|
for (z=0;z<i;z++) {
|
||||||
localtime_r(&callers[z].time, &l10_time);
|
localtime_r(&callers[z].time, &l10_time);
|
||||||
if (conf.date_style == 1) {
|
if (conf.date_style == 1) {
|
||||||
|
if (callers[z].calls == 1) {
|
||||||
|
sprintf(buffer, "<div class=\"last10-row\"><div class=\"last10-name\">%s</div><div class=\"last10-location\">%s</div><div class=\"last10-date\">%.2d:%.2d %.2d-%.2d-%.2d</div><div class=\"last10-new\"><img src=\"%sstatic/newuser.png\" /></div></div>\n", callers[z].name, callers[z].location, l10_time.tm_hour, l10_time.tm_min, l10_time.tm_mon + 1, l10_time.tm_mday, l10_time.tm_year - 100, conf.www_url);
|
||||||
|
} else {
|
||||||
sprintf(buffer, "<div class=\"last10-row\"><div class=\"last10-name\">%s</div><div class=\"last10-location\">%s</div><div class=\"last10-date\">%.2d:%.2d %.2d-%.2d-%.2d</div></div>\n", callers[z].name, callers[z].location, l10_time.tm_hour, l10_time.tm_min, l10_time.tm_mon + 1, l10_time.tm_mday, l10_time.tm_year - 100);
|
sprintf(buffer, "<div class=\"last10-row\"><div class=\"last10-name\">%s</div><div class=\"last10-location\">%s</div><div class=\"last10-date\">%.2d:%.2d %.2d-%.2d-%.2d</div></div>\n", callers[z].name, callers[z].location, l10_time.tm_hour, l10_time.tm_min, l10_time.tm_mon + 1, l10_time.tm_mday, l10_time.tm_year - 100);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if (callers[z].calls == 1) {
|
||||||
|
sprintf(buffer, "<div class=\"last10-row\"><div class=\"last10-name\">%s</div><div class=\"last10-location\">%s</div><div class=\"last10-date\">%.2d:%.2d %.2d-%.2d-%.2d</div><div class=\"last10-new\"><img src=\"%sstatic/newuser.png\" /></div></div>\n", callers[z].name, callers[z].location, l10_time.tm_hour, l10_time.tm_min, l10_time.tm_mday, l10_time.tm_mon + 1, l10_time.tm_year - 100, conf.www_url);
|
||||||
} else {
|
} else {
|
||||||
sprintf(buffer, "<div class=\"last10-row\"><div class=\"last10-name\">%s</div><div class=\"last10-location\">%s</div><div class=\"last10-date\">%.2d:%.2d %.2d-%.2d-%.2d</div></div>\n", callers[z].name, callers[z].location, l10_time.tm_hour, l10_time.tm_min, l10_time.tm_mday, l10_time.tm_mon + 1, l10_time.tm_year - 100);
|
sprintf(buffer, "<div class=\"last10-row\"><div class=\"last10-name\">%s</div><div class=\"last10-location\">%s</div><div class=\"last10-date\">%.2d:%.2d %.2d-%.2d-%.2d</div></div>\n", callers[z].name, callers[z].location, l10_time.tm_hour, l10_time.tm_min, l10_time.tm_mday, l10_time.tm_mon + 1, l10_time.tm_year - 100);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
if (len + strlen(buffer) > max_len - 1) {
|
if (len + strlen(buffer) > max_len - 1) {
|
||||||
max_len += 4096;
|
max_len += 4096;
|
||||||
page = (char *)realloc(page, max_len);
|
page = (char *)realloc(page, max_len);
|
||||||
|
Reference in New Issue
Block a user