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 10-25-2005, 02:03 PM
MacMorag MacMorag is offline
 
Join Date: Dec 2001
Location: Ayr, Scotland
Posts: 45
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Newest REGISTERED member in forumhome.

n the board "statistics" is it possible to change "Welcome to our newest member" so that it shows the latest registered member, instead of the default which shows unregistered members too.

The reason: I only allow registered users. Once they have registered they are allowed to upload an image, which is integral to the layout of their profile (as shown by member.php). However, the username appears in the "board statistics" before they have replied to the "verify email" - and if someone clicks on the link, it shows an incomplete profile.

Is there somewhere that I can set the display of the newest user in the "registered" group?

I initially thought that this would be a simple template edit, but it may be more difficult - and require hacking index.php.

Any ideas?

Thanks.
Reply With Quote
  #2  
Old 10-25-2005, 03:01 PM
Chris M's Avatar
Chris M Chris M is offline
 
Join Date: Dec 2001
Location: Northampton, England
Posts: 6,186
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Edit /includes/functions_databuild.php
Find:
PHP Code:
    // get newest member
    
$newuser $vbulletin->db->query_first("SELECT userid, username FROM " TABLE_PREFIX "user WHERE userid = $members[maxid]"); 
Replace with:
PHP Code:
    // get newest member
    
$newuser $vbulletin->db->query_first("SELECT userid, username, usergroupid FROM " TABLE_PREFIX "user WHERE userid = $members[maxid] AND usergroupid NOT IN (3,4,8)"); 
THIS IS UNTESTED

If it doesn't work, this is at least the right area to be looking in

Chris
Reply With Quote
  #3  
Old 10-25-2005, 03:39 PM
MacMorag MacMorag is offline
 
Join Date: Dec 2001
Location: Ayr, Scotland
Posts: 45
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thanks Chris - I'll try later, and update this thread with outcome.

Cheers.

Iain
Reply With Quote
  #4  
Old 10-25-2005, 04:06 PM
Chris M's Avatar
Chris M Chris M is offline
 
Join Date: Dec 2001
Location: Northampton, England
Posts: 6,186
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

If that doesn't work, try this:

Replace:
PHP Code:
    // get total members
    
$members $vbulletin->db->query_first("
        SELECT
        
$sumsql
        COUNT(*) AS users,
        MAX(userid) AS maxid
        FROM " 
TABLE_PREFIX "user
    "
);

    
// get newest member
    
$newuser $vbulletin->db->query_first("SELECT userid, username FROM " TABLE_PREFIX "user WHERE userid = $members[maxid]"); 
with:
PHP Code:
    // get total members
    
$members $vbulletin->db->query_first("
        SELECT
        
$sumsql
        COUNT(*) AS users
        FROM " 
TABLE_PREFIX "user
    "
);

    
// get newest member
    
$newuser $vbulletin->db->query_first("SELECT userid, username, usergroupid FROM " TABLE_PREFIX "user WHERE usergroupid NOT IN (3,4,8) DESC LIMIT 1"); 


Chris
Reply With Quote
  #5  
Old 10-25-2005, 06:18 PM
MacMorag MacMorag is offline
 
Join Date: Dec 2001
Location: Ayr, Scotland
Posts: 45
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Nearly there -

The first solution doesn't work. It just leaves a blank space where the newuser name should appear in the "board stats".

The second solution does work. Well almost. There was an error in the select statement you gave - specifically "(3,4,8) DESC LIMIT 1". So I filled in the blanks, but obviously not correctly.

I used "(3,4,8) ORDER BY userid DESC LIMIT 1, 1" - and results are a bit out, but going in the right direction.

What happens:

UserA is the existing member name displayed in the board stats.

I create UserB. Before I verify the email, UserA is still displayed as the newest member. Great.

I follow the link in the "verify email" - but UserA is still listed as the newest member. Not so good - it should say UserB.

I create another user, UserC. Before I verify, UserA is still listed as newest member. This is good (apart from the fact that it is UserA displayed and not UserB). There has been no change. As wanted.

Once I follow the link in the email, what should happen is that UserC is now displayed as the newest member. But no.

UserB(!) is displayed.

Repeat the process, and UserC is displayed.

So it is working. It's just displaying the newest member(-1).

As I said, this is probably due to me completing the SELECT statement wrongly. But it looks OK - I'm retrieving just one row, which contains the highest userid.

Any ideas what's wrong here?

Thanks again
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 11:46 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.03748 seconds
  • Memory Usage 2,213KB
  • Queries Executed 11 (?)
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
  • (4)bbcode_php
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (5)post_thanks_box
  • (5)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (5)post_thanks_postbit_info
  • (5)postbit
  • (5)postbit_onlinestatus
  • (5)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_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