1.12.7 i starsze - Dodatek do mas. korespondencji
azwel - 06-07-2006, 15:10 Temat postu: Dodatek do mas. korespondencji Jak w opisie tematu. W masowej korespondencji dodaje jumpbox z którego możemy wybrać dodatkowe kryterium dotycz±ce czasu ostatniego logowania.
Opis instalacji poniżej lub w zał±czniku gotowe pliki do nadpisania.
Kod: | ##############################################################
## Author MODa: azwel <me@azwel.be> http://azwel.be
## Opis MODa: Mod pozwala wysylac maile do uzytkownikow ktorzy
## logowali sie w ostatnim czasie
##
## Poziom instalacji: łatwy
## Czas instalacji: ~5 minut
## Edytowane pliki: admin/admin_mass_email.php
## language/lang_polish/lang_mass_email.php
## templates/TwojStyl/admin/user_email_body.tpl
##
##############################################################
## Przed instalacj± MODa zalecane jest wykonanie kopii zapasowej plików z nim zwi±zanych.
##############################################################
#
#-----[ OTWÓRZ ]------------------------------------------
#
admin/admin_mass_email.php
#
#-----[ ZNAJD¬ ]------------------------------------------
#
$group_id = intval($HTTP_POST_VARS[POST_GROUPS_URL]);
#
#-----[ PRZED, DODAJ ]------------------------------------------
#
$last_log_days = intval($HTTP_POST_VARS['logdays']);
#
#-----[ ZNAJD¬ ]------------------------------------------
#
$sql = ( $group_id != -1 ) ? "SELECT u.user_id FROM (" . USERS_TABLE . " u, " . USER_GROUP_TABLE . " ug) WHERE ug.group_id = $group_id AND ug.user_pending <> " . TRUE . " AND u.user_id = ug.user_id $sql_language" : "SELECT u.user_id FROM " . USERS_TABLE . " u WHERE u.user_id <> " . ANONYMOUS . " $sql_language";
#
#-----[ ZASTAP ]------------------------------------------
#
$sql_time = ($last_log_days > 0) ? " AND u.user_lastvisit >= " . intval( time() - ($last_log_days*60) ) . " " : '';
$sql = ( $group_id != -1 ) ? "SELECT u.user_id,u.user_lastvisit FROM (" . USERS_TABLE . " u, " . USER_GROUP_TABLE . " ug) WHERE ug.group_id = $group_id AND ug.user_pending <> " . TRUE . " AND u.user_id = ug.user_id $sql_language $sql_time" : "SELECT u.user_id,u.user_lastvisit FROM " . USERS_TABLE . " u WHERE u.user_id <> " . ANONYMOUS . " $sql_language $sql_time";
#
#-----[ ZNAJD¬ ]------------------------------------------
#
'S_PREVIEW_FIELDS' => '<input type="hidden" name="message" value="' . htmlspecialchars(stripslashes($message)) . '" /><input type="hidden" name="subject" value="' . htmlspecialchars(stripslashes($subject)) . '" /><input type="hidden" name="html" value="' . $use_html . '" /><input type="hidden" name="language" value="' . $email_language . '" /><input type="hidden" name="' . POST_GROUPS_URL . '" value="' . $group_id . '" />')
#
#-----[ ZASTAP ]------------------------------------------
#
'S_PREVIEW_FIELDS' => '<input type="hidden" name="message" value="' . htmlspecialchars(stripslashes($message)) . '" /><input type="hidden" name="subject" value="' . htmlspecialchars(stripslashes($subject)) . '" /><input type="hidden" name="html" value="' . $use_html . '" /><input type="hidden" name="language" value="' . $email_language . '" /><input type="hidden" name="' . POST_GROUPS_URL . '" value="' . $group_id . '" /><input type="hidden" name="logdays" value="' . $last_log_days . '" />')
#
#-----[ ZNAJD¬ ]------------------------------------------
#
$select_list .= '</select>';
#
#-----[ PO, DODAJ ]------------------------------------------
#
$previous_days = array(0, 15, 30, 60, 120, 360, 720, 1440, 2880, 4320, 5760, 7200, 8640, 10080, 20160, 43200, 129600, 259200, 524160);
$previous_days_text = array($lang['Any_time'], $lang['15_min'], $lang['30_min'], $lang['1_Hour'], $lang['2_Hour'], $lang['6_Hour'], $lang['12_Hour'], $lang['1_Day'], $lang['2_Days'], $lang['3_Days'], $lang['4_Days'], $lang['5_Days'], $lang['6_Days'], $lang['7_Days'], $lang['2_Weeks'], $lang['1_Month'], $lang['3_Months'], $lang['6_Months'], $lang['1_Year']);
$select_log_days = '<select name="logdays">';
for($i = 0; $i < count($previous_days); $i++)
{
$select_log_days .= '<option value="' . $previous_days[$i] . '" ' . (($last_log_days == $previous_days[$i]) ? ' selected="selected"' : '') . '>' . $previous_days_text[$i] . '</option>';
}
$select_log_days .= '</select>';
#
#-----[ ZNAJD¬ ]------------------------------------------
#
'L_EMAIL_TO' => $lang['Mass_email_to'],
#
#-----[ PO, DODAJ ]------------------------------------------
#
'LAST_LOG_TIME' => $select_log_days,
'L_LAST_LOG_TIME' => $lang['Last_log'],
'L_LAST_LOG_TIME_E' => $lang['Last_log_explain'],
#
#-----[ OTWÓRZ ]------------------------------------------
#
language/lang_polish/lang_mass_email.php
#
#-----[ ZNAJD¬ ]------------------------------------------
#
?>
#
#-----[ PRZED, DODAJ ]------------------------------------------
#
$lang['Last_log'] = 'Czas ost. logowania';
$lang['Last_log_explain'] = 'Wysyła email\'e tylko do użytkowników, którzy logowali się w okre¶lonym czasie';
$lang['Any_time'] = 'Dowolny';
#
#-----[ OTWÓRZ ]------------------------------------------
#
templates/TwojStyl/admin/user_email_body.tpl
#
#-----[ ZNAJD¬ ]------------------------------------------
#
<tr>
<td class="row1" align="right"><b>{L_USERS_LANGUAGE}</b></td>
<td class="row2" align="left">{LANGUAGE_SELECT} <span class="gensmall">{L_USERS_LANGUAGE_E}</span></td>
</tr>
#
#-----[ PO, DODAJ ]------------------------------------------
#
<tr>
<td class="row1" align="right"><b>{L_LAST_LOG_TIME}</b></td>
<td class="row2" align="left">{LAST_LOG_TIME} <span class="gensmall">{L_LAST_LOG_TIME_E}</span></td>
</tr>
#
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------
#
# EoM |
rahim - 19-07-2006, 15:34
A istnieje co¶ takiego, że użytkownicy deklaruj± się czy chc± otrzymywać masow± (mailow±) korespondencję?
marcinczwa - 03-11-2006, 19:23
albo mi sie wydaje albo ta modyfikacja nie działa prowidłowo
uzytownicy pisza do mnie ze sie loguja na konta(a wysyłałem maile do osob ktore sie nie logowały od 3 miesiecy...)
emzet - 14-11-2006, 18:23
marcinczwa napisał/a: |
uzytownicy pisza do mnie ze sie loguja na konta(a wysyłałem maile do osob ktore sie nie logowały od 3 miesiecy...) |
o ile rozumiem to ta modyfikacja daje możliwo¶ć wysyłania maili do osób które się logowały w przeci±gu trzech miesięcy.
Przydałaby się też modyfikacja odwrotna - wysyłanie maili do ludzi którzy nie logowali się w ostatnim czasie.
mreaktor - 03-03-2008, 17:49
Dokładnie
Popieram kolegę.
wysyłanie maili do ludzi którzy nie logowali się w ostatnim czasie.
gaga - 17-04-2008, 21:12
dokladnie
swoja droga juz mialam wyslac MK, bo myslalam ze zaznaczajac rok wybieram tych ktorzy logowali sie dawniej niz 1 rok, a tu odwrotnie.
A moze wystarczy jakas mala zmiana, aby mod zadzialal odwrtonie..??
tosiek - 03-10-2008, 17:33
gaga napisał/a: | A moze wystarczy jakas mala zmiana, aby mod zadzialal odwrtonie |
Czytaj i ogl±daj
http://www.przemo.org/php...pic.php?t=61161
|
|
|