Thread: Major Additions - Yet Another Awards System
View Single Post
  #278  
Old 02-20-2010, 07:23 AM
Ronya Ronya is offline
 
Join Date: Jun 2006
Posts: 13
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Cadellin View Post
Great mod but two requests:
1. To be able to give an award to all members of a usergroup at the time of awarding.
I have cron mobule that works almost like you want. It will give award to member of usergroup if member was in usergroup more 300 days(for example).


Add php script to the folder inculdes/cron/
Then in Scheduled Tasks Manager create task to perform this script at 6:00 am each day. It must be perform only 1 time per day.
Also you must create column with name daysin in user tab in MySQL database.

You must know usergroup IDs, that members you want to reward. You can see it in Usergroup Manager in Admin Pannel.
You must know reward ID that you want to reward users. You can see it in MySQL database in awarad Tab(don't remember name of tab exactly) My award has id 5 ($medal_id=5)
daysin >= 300 it means after how many days user will get award

PHP Code:

<?php
error_reporting
(E_ALL & ~E_NOTICE);
if (!
is_object($vbulletin->db))
{
 
log_cron_action('FAILED: vbulletin->db is not an object'$nextitem);
 exit;
}
 
 
$db=$vbulletin->db;
 
$db->query_write("DELETE FROM award_user WHERE award_id=5");
 
//ID of usergroups, members of that usergroups that you want to reward

 
$db->query_write("
 UPDATE user SET daysin = daysin + 1 
 WHERE usergroupid !=6
 AND (membergroupids LIKE '%74%' OR membergroupids LIKE '%19%') 
 "
);

//users will get awards after 300 days of membership, except administrator usergroup(id=6)
 
$users $db->query_read("
 SELECT `userid`,`joindate`,`posts` 
 FROM `user` 
 WHERE usergroupid !=6
   AND daysin >= 300
"
);
 while (
$user $db->fetch_array($users))
 {
  
$medal_id=5;
   
$db->query_write("
    INSERT INTO award_user
    VALUES (NULL ,"
.$medal_id.",".$user['userid'].",'More 300 days membership', UNIX_TIMESTAMP() )");
 }
log_cron_action('Awards update complete'$nextitem);
?>
i hope it will help
Reply With Quote
 
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01182 seconds
  • Memory Usage 1,782KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD_SHOWPOST
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)bbcode_php
  • (1)bbcode_quote
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_box
  • (1)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit_info
  • (1)postbit
  • (1)postbit_onlinestatus
  • (1)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • reputationlevel
  • showthread
Included Files:
  • ./showpost.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
  • showpost_start
  • bbcode_fetch_tags
  • bbcode_create
  • postbit_factory
  • showpost_post
  • 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
  • showpost_complete