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


 
Thread Tools Search this Thread
The Lounge What is on Your Mind? New Badging System - Badges Prototype Beta 1 (Badges Only)
# 29  
Old 12-29-2018
OK.. just idling ... made two trival badges related to the user profile, contact and info field, not really necesary, but wanted to cover the UIM:

Code:
<?php
$idfields = 0; 
if ($modaluserfields['field1']) { 
    $idfields++; 
} 
if ($modaluserfields['field2']) { 
    $idfields++; 
} 
if ($modaluserfields['field3']) { 
    $idfields++; 
} 
if ($modaluserfields['field4']) { 
    $idfields++; 
} 

switch ($idfields) { 
    case 0: 
        $color['faidbadge'] = 'lightgray'; 
        break; 
    case 1: 
        $color['faidbadge'] = 'limegreen'; 
        break; 
    case 2: 
        $color['faidbadge'] = 'blue'; 
        break; 
    case 3: 
        $color['faidbadge']  = 'indigo'; 
        break; 
    case 4: 
        $color['faidbadge']  = 'black'; 
        break;        
} 

$contacts = 0; 
if ($show['pm']) { 
    $contacts++; 
} 
if ($show['email']) { 
    $contacts++; 
} 

switch ($contacts) { 
    case 0: 
        $color['faaddressbook'] = 'lightgray'; 
        break; 
    case 1: 
        $color['faaddressbook'] = 'blue'; 
        break; 
    case 2: 
        $color['faaddressbook'] = 'black'; 
        break; 
    default: 
        $color['faaddressbook'] = 'lightgray'; 
}

Code:
<?php
$badgejs .= 'badge["contacttotal"] = "' . $contacts . '";'; 
$badgejs .= 'badge["profilenumber"] = "' . $idfields . '";';

Code:
$('.fa-id-badge').css("color",badge["profile"]);
$('.fa-id-badge').css("cursor","pointer").attr("title","Profile Fields Completed: "+badge["profilenumber"]);
$('.fa-id-badge').closest('div').find('.fa-circle').css("color",badge["profile"]);

$('.fa-address-book').css("color",badge["contact"]);
$('.fa-address-book').css("cursor","pointer").attr("title","Contacts: "+badge["contacttotal"]);
$('.fa-address-book').closest('div').find('.fa-circle').css("color",badge["contact"]);

No really necessary, but it's covered now... and 19 out of 48 badge protos are done.
# 30  
Old 12-29-2018
Just doing some clean up, added to profile field related badges:

Code:
<?php
$idfields = 0; 
if ($modaluserfields['field1']) { 
    $idfields++; 
} 
if ($modaluserfields['field2']) { 
    $idfields++; 
} 
if ($modaluserfields['field3']) { 
    $idfields++; 
} 
if ($modaluserfields['field4']) { 
    $idfields++; 
} 

switch ($idfields) { 
    case 0: 
        $color['faidbadge'] = 'lightgray'; 
        break; 
    case 1: 
        $color['faidbadge'] = 'limegreen'; 
        break; 
    case 2: 
        $color['faidbadge'] = 'blue'; 
        break; 
    case 3: 
        $color['faidbadge']  = 'indigo'; 
        break; 
    case 4: 
        $color['faidbadge']  = 'black'; 
        break;        
} 

$contacts = 0; 
if ($show['pm']) { 
    $contacts++; 
} 
if ($show['email']) { 
    $contacts++; 
} 

if($modaluser[homepage]){ 
    $contacts++; 
} 


switch ($contacts) { 
    case 0: 
        $color['faaddressbook'] = 'lightgray'; 
        break; 
    case 1: 
        $color['faaddressbook'] = 'limegreen'; 
        break; 
    case 2: 
        $color['faaddressbook'] = 'blue'; 
        break; 
    case 3: 
        $color['faaddressbook'] = 'black'; 
        break; 
    default: 
        $color['faaddressbook'] = 'lightgray'; 
} 
 
$badgejs .= 'badge["profile"] = "' . $color['faidbadge'] . '";'; 
$badgejs .= 'badge["contact"] = "' . $color['faaddressbook'] . '";'; 
$badgejs .= 'badge["contacttotal"] = "' . $contacts . '";'; 
$badgejs .= 'badge["profilenumber"] = "' . $idfields . '";';

jQuery:

Code:
$('.fa-id-badge').css("color",badge["profile"]);
$('.fa-id-badge').css("cursor","pointer").attr("title","Profile Fields Completed: "+badge["profilenumber"]);
$('.fa-id-badge').closest('div').find('.fa-circle').css("color",badge["profile"]);

$('.fa-address-book').css("color",badge["contact"]);
$('.fa-address-book').css("cursor","pointer").attr("title","Contacts: "+badge["contacttotal"]);
$('.fa-address-book').closest('div').find('.fa-circle').css("color",badge["contact"]);

19 of 48 badges done.... (I think, lost count LOL)
# 31  
Old 12-29-2018
Two badges added for bits... bringing us to 21 out of 24 prototype badges. Maybe expand bits to more more badge later, let's see:

Code:
<?php
$color['fabtc'] = 'lightgray';
$color['fauniversity'] = 'lightgray';

if ($total_bits < -20000) { 
    $color['fabtc'] = 'red'; 
} 

else if ($total_bits < 0) { 
    $color['fabtc'] = 'dark orange'; 
} 

if ($total_bits > 0) {
    $color['fabtc'] = 'limegreen';
}

if ($total_bits > 100000) {
    $color['fabtc'] = 'blue';
}

if ($total_bits > 1000000) {
    $color['fabtc'] = 'indigo';
}

if ($total_bits > 10000000) {
    $color['fabtc'] = 'black';
    $color['fauniversity'] = 'blue';
}

if ($total_bits > 1000000000) {
    $color['fauniversity'] = 'blue';
}

$badgejs .= 'badge["fabtc"] = "' . $color['fabtc'] . '";';
$badgejs .= 'badge["fauniversity"] = "' . $color['fauniversity'] . '";';
$badgejs .= 'badge["bits"] = "' . $totalbits . '";';

jQuery:

Code:
$('.fa-btc').css("color",badge["fabtc"]);
$('.fa-btc').css("cursor","pointer").attr("title",badge["bits"] + " Bits in the Bank");
$('.fa-btc').closest('div').find('.fa-circle').css("color",badge["fabtc"]);

$('.fa-university').css("color",badge["fauniversity"]);
$('.fa-university').css("cursor","pointer").attr("title","Bits Banker");
$('.fa-university').closest('div').find('.fa-circle').css("color",badge["fauniversity"]);

# 32  
Old 12-29-2018
Certainly subject to change, here is the prototype "current activity badge"

Code:
<?php
$color['fausergraduate'] = 'lightgray'; 
$time_inactive = time() - $modaluser['lastactivity']; 
$week = 7 * 24 * 60 * 60; 
$month = 4* $week; 
$quarter = $week * (52 / 4); 
$halfyear = $week * (52 / 2); 
$year = $week * 52; 
$twoyears = 2 * $year; 
$threeyears = 3 * $year; 

if ($time_inactive < $week) { 
    $color['fausergraduate'] = 'black'; 
} elseif ($time_inactive < $month) { 
    $color['fausergraduate'] = 'indigo'; 
} elseif ($time_inactive < $quarter) { 
    $color['fausergraduate'] = 'blue'; 
} elseif ($time_inactive < $halfyear) { 
    $color['fausergraduate'] = 'green'; 
} elseif ($time_inactive < $year) { 
    $color['fausergraduate'] = 'lightgray'; 
} elseif ($time_inactive < $twoyears) { 
    $color['fausergraduate'] = 'darkorange'; 
} elseif ($time_inactive < $threeyears) { 
    $color['fausergraduate']  = 'red'; 
}

jQuery:

Code:
$('.fa-user-graduate').css("color",badge["activity"]);
$('.fa-user-graduate').css("cursor","pointer").attr("title","Current Forum Activity");
$('.fa-user-graduate').closest('div').find('.fa-circle').css("color",badge["activity"]);

# 33  
Old 12-29-2018
Subject to change, here is the proto "forum activity badge" logic:

Code:
<?php
$color['fausergraduate'] = 'lightgray'; 
$time_inactive = time() - $modaluser['lastactivity']; 
$week = 7 * 24 * 60 * 60; 
$month = 4* $week; 
$quarter = $week * (52 / 4); 
$halfyear = $week * (52 / 2); 
$year = $week * 52; 
$twoyears = 2 * $year; 
$threeyears = 3 * $year; 

if ($time_inactive < $week) { 
    $color['fausergraduate'] = 'black'; 
} elseif ($time_inactive < $month) { 
    $color['fausergraduate'] = 'indigo'; 
} elseif ($time_inactive < $quarter) { 
    $color['fausergraduate'] = 'blue'; 
} elseif ($time_inactive < $halfyear) { 
    $color['fausergraduate'] = 'green'; 
} elseif ($time_inactive < $year) { 
    $color['fausergraduate'] = 'lightgray'; 
} elseif ($time_inactive < $twoyears) { 
    $color['fausergraduate'] = 'darkorange'; 
} elseif ($time_inactive < $threeyears) { 
    $color['fausergraduate']  = 'red'; 
} 


$badgejs .= 'badge["activity"] = "' . $color['fausergraduate'] . '";';


jQuery:

Code:
$('.fa-user-graduate').css("color",badge["activity"]);
$('.fa-user-graduate').css("cursor","pointer").attr("title","Current Forum Activity");
$('.fa-user-graduate').closest('div').find('.fa-circle').css("color",badge["activity"]);

# 34  
Old 12-29-2018
Great. I'm nearly done with the first half of this badge system prototyping (and this thread, will start a new one).

Just added another badge based on posts per day:

Code:
<?php
$color['fabolt'] = 'lightgray'; 
$activity = floatval($prepared['postsperday']); 
if ($activity < 0.02) { 
    $color['fabolt'] = 'red'; 
} elseif ($activity < 0.1) { 
    $color['fabolt'] = 'darkorange'; 
} elseif ($activity < 0.5) { 
    $color['fabolt'] = 'green'; 
} elseif ($activity < 1.0) { 
    $color['fabolt'] = 'blue'; 
} elseif ($activity < 2.0) { 
    $color['fabolt'] = 'indigo'; 
} else { 
    $color['fabolt'] = 'black'; 
}

jQuery:

Code:
$('.fa-bolt').css("color",badge["ppd"]);
$('.fa-bolt').css("cursor","pointer").attr("title", badge["ppdval"]+ " Posts Per day");
$('.fa-bolt').closest('div').find('.fa-circle').css("color",badge["ppd"]);

# 35  
Old 12-30-2018
Have added one simple line of jQuery so that all badges in the grid are marked "Reserved" when they are not yet active:

Code:
$('.fa-stack').find('.fas, .fab').css("cursor","pointer").attr("title","Reserved");

Login or Register to Ask a Question

Previous Thread | Next Thread

7 More Discussions You Might Find Interesting

1. What is on Your Mind?

My Badges Page - A Major UserCP Update (v0.661):

Another major upgrade on the new UserCP today. I have created the "My Badges" page in the new control panel, and it's looking very cool :) If you have visited the new UserCP recently, you will more-than-likely need to close your browser (completely) and then restart it to clear out the old... (2 Replies)
Discussion started by: Neo
2 Replies

2. What is on Your Mind?

Patreon Badges Now Available as BBCODE at UNIX.COM

Dear All, We have a lot of amazing moderators and other very talented unix.com members who provide tireless top quality free technical support assistance to others. As a service to those long term unix.com members, I am making a new Patreon BBCODE badge available which can be posted in forum... (8 Replies)
Discussion started by: Neo
8 Replies

3. What is on Your Mind?

Current Array of Badges (Beta 1)

Here is the current array of the short description of badges for the new prototype badging system (Beta 1) with 42 icons allocated (prototype logic written) and 6 reserved (for future use); <?php $badges_desc = array( "fauser" => "Total Post Count", "faaward" => "First Post", ... (6 Replies)
Discussion started by: Neo
6 Replies

4. 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

5. Web Development

Notes with Ravinder on Badging System Development Part II

Part II: Current PHP file Beta 73 Not Optimized: <?php $version = 73; $query = "SELECT * FROM " . TABLE_PREFIX . "user WHERE userid='" . $uid . "'"; $usertable = $db->query_read_slave($query); $modaluser = $db->fetch_array($usertable); $modaluser = gmdate("d F Y", $modaluser); $modaluser... (48 Replies)
Discussion started by: Neo
48 Replies

6. What is on Your Mind?

Four More UNIX.COM Achievement Award Badges to Award

Happy New Year! There are currently four UNIX.COM achievement awards up for grabs, as the say. Here they are, in no particular order: The Order of the Raven The Order of the Hippo The Order of the Spider The Order of the Dragon Don't ask me what they mean, or who who will get those... (0 Replies)
Discussion started by: Neo
0 Replies

7. Hardware

Stack Overflow Questions Tags Users Badges Unanswered Ask Question Ask for the explanation of types

I have read a document which tells me the following 4 things are done by the RAM embedded on disk driver controller. But I don't know what's difference between buffer and cache. Thanks! RAM on disk drive controllers 1 firmware 2 speed matching buffer 3 prefetching buffer 4 cache (1 Reply)
Discussion started by: 915086731
1 Replies
Login or Register to Ask a Question