Go Back   vb.org Archive > Community Discussions > Modification Requests/Questions (Unpaid)
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools Display Modes
  #1  
Old 08-20-2007, 02:43 AM
Elenna Elenna is offline
 
Join Date: Jan 2006
Location: St. Charles, MO
Posts: 422
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Conditional Based on lastactivity

I would like to display a box at the top of a user's profile if that user has either not logged in, or not updated their profile in the last 30 days (either one, but profile update preferred).

So I was thinking of making an IF conditional based on lastactivity... does anyone know how I would go about this?
Reply With Quote
  #2  
Old 08-21-2007, 05:56 PM
ravyn's Avatar
ravyn ravyn is offline
 
Join Date: Sep 2006
Location: Imaginary Space
Posts: 38
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

there is a hack that shows when a user was last on in the postbit. I would imagine that the code used to add to the posbit would work in the profile.

https://vborg.vbsupport.ru/showthread.php?t=123366

but this hack recognizes visits as activity, not just posts, so if you want it to be registering when they posted last, the hack might need some customization.
Reply With Quote
  #3  
Old 08-21-2007, 08:32 PM
Elenna Elenna is offline
 
Join Date: Jan 2006
Location: St. Charles, MO
Posts: 422
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thanks very much, Ravyn! I'll give that a try.

Erm.... what would be the correct formating of the conditional? I'm not sure how to use dates. Is there a standard "30 days ago" or "1 week from now" kind of thing?

And would it be as easy as something like $userinfo[lastseen_date] < "-30 days"? Or must I call other functions to make it work?

EDIT:

I saw this working on a different site, so I wrote the webmaster and asked.

They are using a 3.0.x version, so I'd like to know what I need to do to get this to work with a 3.6.x version, or what I'm doing wrong so that this isn't working

Since I want this to display in my profiles, I edit the member.php file.

I'm not sure where is safe to put the code, so I placed it above the "Main Script Start" section.

$time1weekago=time()-7776000;

if ($userinfo[lastactivity] < $time1weekago ) {
$isOlduser = 1;
} else {
$isOlduser = 0;
}

I then edit my MEMBERINFO template and place the IF conditional around the text, like this:

<if conditional="$isOlduser=1">User has not logged in for 1 week!</if>

Does anyone see anything 'wrong' with the above code, or why it might not be working for me?

I had it output its values for me, and here is what I get for myself (last activity is today):
Time 1 Week Ago: 1187212461
Last Activity: 1187817258
Is Old User: 1
This user has not logged in for 1 week!

I checked a member that had not logged in in over a month, and here is what I got:
Time 1 Week Ago: 1187212629
Last Activity: 1184946900
Is Old User: 1
This user has not logged in for 1 week!
Reply With Quote
  #4  
Old 08-28-2007, 03:23 AM
Elenna Elenna is offline
 
Join Date: Jan 2006
Location: St. Charles, MO
Posts: 422
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Checking to see if anyone can take a look at this for me? See my last post, above.
Reply With Quote
  #5  
Old 09-08-2007, 03:17 AM
Elenna Elenna is offline
 
Join Date: Jan 2006
Location: St. Charles, MO
Posts: 422
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Anyone?
Reply With Quote
  #6  
Old 09-08-2007, 12:56 PM
Opserty Opserty is offline
 
Join Date: Apr 2007
Posts: 4,103
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

PHP Code:
$prevweek time() - 7776000;

if (
$userinfo[lastactivity] < $prevweek )
{
    
$olduser 1;
}
else
{
    
$olduser 0;

Code:
<if condition="$olduser == 1">
    User has not logged in for 1 week!
</if>
You were only missing a second equals sign in the conditional and its condition not conditional but I made the rest of it look nice. It should work now.

You may want to add a new plugin instead of editing a file, a suitable hook location would be something like: memberinfo_complete.
Reply With Quote
  #7  
Old 09-08-2007, 01:15 PM
Paul M's Avatar
Paul M Paul M is offline
 
Join Date: Sep 2004
Location: Nottingham, UK
Posts: 23,748
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

No need for a plugin, just put the calculation in the template conditional ;

HTML Code:
<if condition="$userinfo[lastactivity] < (TIMENOW - 2592000)">
     User has not logged in for 30 days
</if>

(The value 7776000 is 90 days, not 30)
Reply With Quote
  #8  
Old 09-10-2007, 03:00 PM
Elenna Elenna is offline
 
Join Date: Jan 2006
Location: St. Charles, MO
Posts: 422
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

WONDERFUL, thanks every so much.
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 06:46 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.04156 seconds
  • Memory Usage 2,237KB
  • Queries Executed 13 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (1)ad_showthread_firstpost
  • (1)ad_showthread_firstpost_sig
  • (1)ad_showthread_firstpost_start
  • (1)bbcode_code
  • (1)bbcode_html
  • (1)bbcode_php
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (8)post_thanks_box
  • (8)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (8)post_thanks_postbit_info
  • (8)postbit
  • (8)postbit_onlinestatus
  • (8)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete