Sponsored Content
Top Forums Web Development Notes with Ravinder on Badging System Development Part II Post 303028302 by Neo on Thursday 3rd of January 2019 10:47:02 PM
Old 01-03-2019
Ravinder,

I think it quite easy to do the "sequential days active" badge. This simple logic came to me in my sleep. We simply use a query like this:

Code:
mysql> SELECT UNIX_TIMESTAMP()/(60*60*24);
+-----------------------------+
| UNIX_TIMESTAMP()/(60*60*24) |
+-----------------------------+
|                  17900.1528 |
+-----------------------------+
1 row in set (0.00 sec)

to give us the number of days since the beginning of unixtime.

We store this value, rounded down in a new lastdayactive field in the user table;

Then we insert a 1 in the in the daysinsequence field in the same table.

Then we compare UNIX_TIMESTAMP()/(60*60*24) with lastdayactive and if this is one day greater (and less than two) than before, we update lastdayactive and increment daysinsequence.

If UNIX_TIMESTAMP()/(60*60*24) - lastdayactive is greater than 1 day we update lastdayactive and reset daysinsequence to 1.

It's quite simple, I think.

Hence, you get a D on this one (for implementation logic, sorry for that) because it is very simple to do but you could not do it after many days ... but an A for a great idea Smilie


I will implement this badge when I am back from my trip upcountry.
This User Gave Thanks to Neo For This Post:
 

3 More Discussions You Might Find Interesting

1. What is on Your Mind?

New Badging System - Badges Prototype Beta 1 (Badges Only)

Today I mapped out the new badging system using FA icons, Beta 1 in no particular order except a 6 x 8 grid: https://www.unix.com/members/1-albums215-picture991.png The prototype HTML code for this layout: <style> .fa-badge-grid { font-size: 1.5em; } .row { ... (38 Replies)
Discussion started by: Neo
38 Replies

2. What is on Your Mind?

Status of Badging System - Beta 1

Dear All, Here is the current status of the badging system: The Beta 1 phase of the new badging system is close to completion. 42 prototype badges have been "allocated" 6 prototype badge slots are held in reserve The "alert you have new badges" prototype is running and is currently... (4 Replies)
Discussion started by: Neo
4 Replies

3. What is on Your Mind?

Badging System: UNIX.COM Bug Hunter Badge (New)

I have moved the bug badge out of reserve and into the main stream. Basically, I will assign a color level like the others, based on who has made a good actionable bug report for UNIX.COM. "Good" means screenshots, links, and even details from web dev tools our the HTML source code. So far,... (0 Replies)
Discussion started by: Neo
0 Replies
NNGOBACK(1)						      General Commands Manual						       NNGOBACK(1)

NAME
nngoback - make news articles unread on a day-by-day basis (nn) SYNOPSIS
nngoback [ -NQvi ] [-d] days [ group ]... DESCRIPTION
nngoback will rewind the .newsrc record file of nn(1) one or more days. It can be used to rewind all groups, or only a specified set of groups. In other words, nngoback can mark news articles which have arrived on the system during the last days days unread. Only subscribed groups that occur in the current presentation sequence are rewound. That means that if no group arguments are specified, all groups occurring in the sequence defined in the init file will be rewound. Otherwise, only the groups specified on the argument line will be rewound. When a group is rewound, the information about selections, partially read digests etc. are discarded. It will print notifications about this unless the -Q (quiet) option is used. If the -i (interactive) option is specified, nngoback will report for each how many articles can be marked unread, and ask for confirmation before going back in that group. If the -v (verbose) option is specified, nngoback will report how many articles are marked unread. If the -N (no-update) option is specified, nngoback will perform the entire goback operation, but not update the .newsrc file. If you are not up-to-date with your news reading, you can also use nngoback to catch up to only have the last few days of news waiting to be read in the following way: nn -a0 nngoback 3 The nn command will mark all articles in all groups as read (answer all to the catch-up question.) The following nngoback will then make the last three days of news unread again. Examples: nngoback 0 Mark the articles which have arrived today as unread. nngoback 1 Mark the articles which have arrived yesterday and today as unread. nngoback 6 Mark the articles which have arrived during the last week as unread. You cannot go more than 14 days back with nngoback. (You can change this limit as described below.) THE BACK_ACT DAEMON It is a prerequisite for the use of nngoback that the script back_act is executed at an appropriate time once (and only once) every day. Preferably this is done by cron right before the bacth of news for `today' is received. back_act will maintain copies of the active file for the last 14 days. Optionally, the back_act program accepts a single numerical argument specifying how many copies of the active file it should maintain. This is useful if news is expired after 7 days, in which case keeping more than 7 days of active file copies is wasteful. FILES
~/.newsrc The record of read articles. ~/.newsrc.goback The original rc file before goback. $db/active.N The N days `old' active file. $master/back_act Script run by cron to maintain old active files. SEE ALSO
nn(1), nncheck(1), nngrab(1), nngrep(1), nnpost(1), nntidy(1) nnadmin(1M), nnusage(1M), nnmaster(8) NOTES
nngoback does not check the age of the `old' active files; it will blindly believe that active.0 was created today, and that active.7 is really seven days old! Therefore, the back_act script should be run once and only once every day for nngoback to work properly. The days are counted relative to the time the active files were copied. AUTHOR
Kim F. Storm, Texas Instruments A/S, Denmark E-mail: storm@texas.dk 4th Berkeley Distribution Release 6.6 NNGOBACK(1)
All times are GMT -4. The time now is 08:04 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy