Pagina 1 van 1
Iemand in een groep plaatsen voor bepaalde tijd..
Geplaatst: 04 jul 2007, 19:04
door halsiemp3
bestaat er een mod die iemand in groep plaatst voor bijvoorbeeld een maand en er daarna weer uit word gehaald..??
wil dit gaan toepassen in forum onderdelen waarvoor betaald is maar om dit met de hand bij te houden is best een werk..:$
Re: Iemand in een groep plaatsen voor bepaalde tijd..
Geplaatst: 07 jul 2007, 21:02
door Stef
Nee, niet dat ik en ik denk andere zo weten,
zoek zelf anders even.
Re: Iemand in een groep plaatsen voor bepaalde tijd..
Geplaatst: 10 jul 2007, 22:11
door Ramon Fincken
Hier is een lap code uit mijn recente update van mijn antispam mod.
Wat doet het ?
Het kijkt in een specifieke group of er mensen zijn die er niet meer in hoeven.
Dat is de functie userdata_check($row['user_id'], 5))
Die moet je natuurlijk zelf even herschrijven voor jouw doel.
Code: Selecteer alles
// Check this user, and multiple the cutoff values by 5
if (userdata_check($row['user_id'], 5)) {
Hier de hele functie, ongewijzigd, dus je moet er nog wel zelf wat aan doen.
Code: Selecteer alles
// ---------------- SEMI CRON FUNCTIONS
function antispam_semi_cron() {
// 1.2.7
global $db, $board_config, $lang;
$last_cron_time = $board_config['mod_spamcheck_semicron'];
// Let's stick to dayly first shall we?
$timecheck = ($last_cron_time + (1 * 60 * 60 * 24));
if ($timecheck > $last_cron_time) {
// Let's do it
// Clean up usergroup
// Thanks to Evil<3 for this code!
$hide_sql = ' AND g.group_type <> ' . GROUP_HIDDEN;
$hide_sql .= " AND ug.user_pending = 0 ";
// Execute the select query
$sql = 'SELECT g.*, u.user_id, u.username FROM ' . USERS_TABLE . ' u, ' . GROUPS_TABLE . ' g, ' . USER_GROUP_TABLE . ' ug
WHERE u.user_id = ug.user_id
AND ug.group_id = g.group_id
AND g.group_single_user = 0
AND g.group_id = ' . $board_config['mod_spamcheck_groupbypassid'] . '
' . $hide_sql . '
ORDER BY u.user_id ASC';
if (!$result = $db->sql_query($sql)) {
// Error handling
print_r($db->sql_error());
die();
}
while ($row = $db->sql_fetchrow($result)) {
// Check this user, and multiple the cutoff values by 5
if (userdata_check($row['user_id'], 5)) {
// Delete this user from usergroup, but leave the group moderator!
$sql = "DELETE FROM " . USER_GROUP_TABLE .
" WHERE group_id = '" . $board_config['mod_spamcheck_groupbypassid'] . "'" .
" AND user_id = '" . $row['user_id'] . "' AND user_id != '" . $row['group_moderator'] . "' LIMIT 1";
parse_sql($sql, $lang['Antispam_db_errorstore'], __LINE__, __FILE__);
}
}
$sql = "UPDATE " . CONFIG_TABLE .
" SET config_value = '" . time() . "' " .
" WHERE config_name = 'mod_spamcheck_semicron' LIMIT 1";
parse_sql($sql, $lang['Antispam_db_errorstore'], __LINE__, __FILE__);
}
}
// ---------------- SEMI CRON FUNCTIONS