ماژول دعوت نامه دیتالایف انجین
امکانات این ماژول
- دارای پنل اختصاصی در مدیریت سیستم جهت مدیریت دعوت نامه ها
- امکان دادن دعوت نامه به صورت هدیه به کاربر یا کاربران
- امکان حذف دعوت نامه کاربر
- امکان ارسال دعوت نامه برای یک ایمیل از طریق مدیریت سیستم
- مدیریت دعوت نامه های ارسال شده
- مدیریت دعوت نامه که توسط کاربر برای شخصی ارسال شده - امکان لغو دعوت نامه وجود دارد
- وجود لیستی در پنل کاربری از اخرین دعوت نامه های ارسال شده و ثبت نام شده
- و ...
دانلود
آموزش نصب
1. ابتدا فایل پیوست شده را دانلود و در root هاست خود از حالت زیپ خارج کنید
2. فایل install_mod.php در مرورگر خود فرا خوانی کنید.
3. فایل engine/engine.php را باز کنید و به دنبال کد زیر بگردید
case "register" :
include ENGINE_DIR . '/modules/register.php';
break;
include ENGINE_DIR . '/modules/register.php';
break;
در زیر کد بالای کد زیر را اضافه کنید
case "invite" :
include ENGINE_DIR.'/modules/invite.php';
break;
include ENGINE_DIR.'/modules/invite.php';
break;
4. فایل engine/inc/options.php را باز کنید و به دنبال کد زیر بگردید
$options['others'] = array (
در پایینش کد زیر را اضافه کنید
array (
'name' => $lang['mod_rfi_a_on'],
'url' => "$PHP_SELF?mod=invite_registration",
'descr' => $lang['mod_rfi_a_on_t'],
'image' => "invite_registration.png",
'access' => "admin",
),
'name' => $lang['mod_rfi_a_on'],
'url' => "$PHP_SELF?mod=invite_registration",
'descr' => $lang['mod_rfi_a_on_t'],
'image' => "invite_registration.png",
'access' => "admin",
),
5. فایل engine/modules/register.php را باز کنید و به دنبال کد زیر بگردید
require_once ENGINE_DIR . '/classes/parse.class.php';
کد زیر را در پایین کد بالای اضافه کنید
require_once ENGINE_DIR . '/data/config.invite.php';
if($c_invite['mod_of_status']=="1") {
$tpl->set('[invite_register]', '');
$tpl->set('[/invite_register]', '');
} else {
$tpl->set_block( "'\\[invite_register\\].*?\\[/invite_register\\]'si", '' ); }
if($c_invite['mod_of_status']=="1") {
$tpl->set('[invite_register]', '');
$tpl->set('[/invite_register]', '');
} else {
$tpl->set_block( "'\\[invite_register\\].*?\\[/invite_register\\]'si", '' ); }
در همین فایل کد زیر را پیدا کنید
$reg_error = check_reg( $name, $email, $password1, $password2, $sec_code, $sec_code_session );
در پایینش کد زیر را اضافه کنید
if($c_invite['mod_of_status']=="1") {
$invite = $db->safesql( $parse->process( htmlspecialchars( trim( $_POST['user_invite'] ) ) ) );
$invite = preg_replace('#\s+#i', '', $invite);
$sql_result = $db->query( "SELECT * FROM " . USERPREFIX . "_invite where i_invite='$invite' && i_email='$email'" );
$row = $db->get_row( $sql_result );
if( $row['i_status'] != 'yes') {
$reg_error .= $lang['mod_rfi_reg_err'];
} else {
$db->query( "UPDATE " . PREFIX . "_invite SET i_status='no|$name' WHERE i_invite='".$row['i_invite']."'" );
}
$reg_user_group = $row['i_gold'];
} else {
$reg_user_group = $config['reg_group'];
}
$invite = $db->safesql( $parse->process( htmlspecialchars( trim( $_POST['user_invite'] ) ) ) );
$invite = preg_replace('#\s+#i', '', $invite);
$sql_result = $db->query( "SELECT * FROM " . USERPREFIX . "_invite where i_invite='$invite' && i_email='$email'" );
$row = $db->get_row( $sql_result );
if( $row['i_status'] != 'yes') {
$reg_error .= $lang['mod_rfi_reg_err'];
} else {
$db->query( "UPDATE " . PREFIX . "_invite SET i_status='no|$name' WHERE i_invite='".$row['i_invite']."'" );
}
$reg_user_group = $row['i_gold'];
} else {
$reg_user_group = $config['reg_group'];
}
در همین فایل کد زیر را پیدا کنید
$db->query( "INSERT INTO " . USERPREFIX . "_users (name, password, email, reg_date, lastdate, user_group, info, signature, favorites, xfields, logged_ip) VALUES ('$name', '$regpassword', '$email', '$add_time', '$add_time', '" . $config['reg_group'] . "', '', '', '', '', '" . $_IP . "')" );
کد زیر را جایگزین کد بالای کنید
$db->query( "INSERT INTO " . USERPREFIX . "_users (name, password, email, reg_date, lastdate, user_group, info, signature, favorites, xfields, logged_ip) VALUES ('$name', '$regpassword', '$email', '$add_time', '$add_time', '" . $reg_user_group . "', '', '', '', '', '" . $_IP . "')" );
6. فایل engine/modules/profile.php را باز کنید و به دنبال کد زیر بگردید
include_once ENGINE_DIR . '/classes/parse.class.php';
در پایینش کد زیر را اضافه کنید
require_once(ENGINE_DIR.'/modules/invite.functions.php');
در همین فایل کد زیر را پیدا کنید
$tpl->set( '{usertitle}', stripslashes( $row['name'] ) );
در پایینش کد زیر را اضافه کنید
$tpl->set( '{mod_invited_users}', invited_users( $row['email'] ) );
$tpl->set( '{mod_my_invited_users}', my_invited_users( $row['name'] ) );
$tpl->set( '{mod_all_my_invited_users}', all_invited_users( $row['name'] ) );
$tpl->set( '{mod_my_invited_users}', my_invited_users( $row['name'] ) );
$tpl->set( '{mod_all_my_invited_users}', all_invited_users( $row['name'] ) );
7. فایل language/Farsi/website.lng را باز کنید و به دنبال کد زیر بگردید
'wysiwyg_language' => "fa",
در پایینش کد زیر را اضافه کنید
// invitation_2.2
'mod_rfi_notlogged' => "شما باید وارد اکانت خود شوید و یا سطح دسترسی ندارید",
'mod_rfi_modoff' => "غیر فعال کردن سیستم دعوت نامه",
'mod_rfi_f_invited_users' => "دعوت شده اید از طرف کاربر ",
'mod_rfi_noinfo' => "اطلاعاتی برای نمایش وجود ندارد",
'mod_rfi_cancel' => "انصراف",
'mod_rfi_invite' => "کد دعوت نامه",
'mod_rfi_email' => "آدرس ایمیل",
'mod_rfi_create' => "تاریخ آماده سازی",
'mod_rfi_f_nai' => "دعوت نامه شما غیر فعال است",
'mod_rfi_reg_err' => "<li>کد دعوت نامه نامعتبر اشتباه می باشد</li>",
// invitation_2.2
'mod_rfi_notlogged' => "شما باید وارد اکانت خود شوید و یا سطح دسترسی ندارید",
'mod_rfi_modoff' => "غیر فعال کردن سیستم دعوت نامه",
'mod_rfi_f_invited_users' => "دعوت شده اید از طرف کاربر ",
'mod_rfi_noinfo' => "اطلاعاتی برای نمایش وجود ندارد",
'mod_rfi_cancel' => "انصراف",
'mod_rfi_invite' => "کد دعوت نامه",
'mod_rfi_email' => "آدرس ایمیل",
'mod_rfi_create' => "تاریخ آماده سازی",
'mod_rfi_f_nai' => "دعوت نامه شما غیر فعال است",
'mod_rfi_reg_err' => "<li>کد دعوت نامه نامعتبر اشتباه می باشد</li>",
// invitation_2.2
7. فایل language/Farsi/adminpanel.lng را باز کنید و به دنبال کد زیر بگردید
'wysiwyg_language' => "fa",
در پایینش کد زیر را اضافه کنید
// invitation_2.2
'mod_rfi_a_on' => "دعوت نامه",
'mod_rfi_a_on_t' => "ماژول دعوت نامه",
'mod_rfi_a_m1' => "تظیمات اصلی",
'mod_rfi_a_m2' => "توزیع دعوت نامه",
'mod_rfi_a_m3' => "کنترل دعوت نامه",
'mod_rfi_a_m4' => "دعوت کاربر",
'mod_rfi_a_p1_ok' => "تغییرات با موفقیت انجام شد",
'mod_rfi_a_error' => "بروز خطا",
'mod_rfi_a_ok' => "تغییرات اعمال شده با موفقیت ذخیره شد",
'mod_rfi_a_p1_med' => "فعال بودن ماژول:",
'mod_rfi_a_p1_med_t' => "فعال بودن یا عدم فعال بودن ماژول دعوت نامه",
'mod_rfi_a_p1_ian' => "حق ارسال دعوت نامه:",
'mod_rfi_a_p1_ian_t' => "تعداد دعوت نامه ای که کاربر حق ارسال دارد",
'mod_rfi_a_p1_se' => "فرستادن به ایمیل با عنوان:",
'mod_rfi_a_p1_se_t' => "عنوان ایمیل هنگام ارسال دعوت نامه",
'mod_rfi_a_p1_me' => "پیغام ایمیل:",
'mod_rfi_a_p1_me_t' => "پیغامی که هنگام ارسال دعوت نامه ایمیل می شود",
'mod_rfi_a_p1_me_t_info' => "<br><b>{%send_user%)</b> - کاربر ارسال کننده دعوت نامه,<br><b>{%user_comment%}</b> - نظر ارسال کننده دعوت نامه,<br><b>{%sam_invite%}</b> - کد دعوت نامه",
'mod_rfi_a_p1_sue' => "ارسال دعوت نامه از طریق ایمیل فعال سازی :",
'mod_rfi_a_p1_sue_t' => "دعوت نامه های اضافه شده ار طریق ایمیل اطلاع داده شود",
'mod_rfi_a_p1_save' => "ذخیره",
'mod_rfi_a_p2_users' => "اعضا",
'mod_rfi_a_p2_uni' => "کاربر/دعوت نامه های استفاده شده",
'mod_rfi_a_p2_ni' => "نام کاربری / دعوت نامه",
'mod_rfi_a_p2_do' => "لاگ",
'mod_rfi_a_p2_sti' => "ارائه دعوت نامه های هدیه یا حذف آن",
'mod_rfi_a_p2_sti_1' => "دعوت نامه هدیه وجود دارد",
'mod_rfi_a_p2_sti_2' => "حذف دعوت نامه ها",
'mod_rfi_a_p2_dvi' => "تعداد دعوت نامه",
'mod_rfi_a_p2_dvi_t' => "هدیه دعوت نامه /حذف دعوت نامه - چه مقدار باشد",
'mod_rfi_a_p3_t1' => "کد دعوت نامه:",
'mod_rfi_a_p3_t2' => "ایمیل:",
'mod_rfi_a_p3_t3' => "دعوت کنید:",
'mod_rfi_a_p3_t4' => "وغعیت:",
'mod_rfi_a_p3_t5' => "گروه:",
'mod_rfi_a_p3_t6' => "تاریخ آماده سازی:",
'mod_rfi_a_p3_t7' => "حذف",
'mod_rfi_a_p3_noinvites' => "هیچ دعوتی وجود ندارد",
'mod_rfi_a_p3_iid' => "شماره",
'mod_rfi_a_p4_sie_t' => "آدرس ایمیلی که قرار است دعوت نامه ارسال شود",
'mod_rfi_a_p4_sie_y' => "ارسال هشدار از طریق ایمیل:",
'mod_rfi_a_p4_sie_y_t' => "پیام ایمیل دعوت نامه",
'mod_rfi_a_p4_sim' => "پیغام:",
'mod_rfi_a_p4_sim_t' => "متن شما هنگام ارسال دعوت نامه",
'mod_rfi_a_p4_ag' => "تنظیم گروه:",
'mod_rfi_a_p4_ag_t' => "پس ار تایید دعوت نامه در چه گروه کاربری عضو شود",
'mod_rfi_a_p4_send' => "ارسال",
// invitation_2.2
'mod_rfi_a_on' => "دعوت نامه",
'mod_rfi_a_on_t' => "ماژول دعوت نامه",
'mod_rfi_a_m1' => "تظیمات اصلی",
'mod_rfi_a_m2' => "توزیع دعوت نامه",
'mod_rfi_a_m3' => "کنترل دعوت نامه",
'mod_rfi_a_m4' => "دعوت کاربر",
'mod_rfi_a_p1_ok' => "تغییرات با موفقیت انجام شد",
'mod_rfi_a_error' => "بروز خطا",
'mod_rfi_a_ok' => "تغییرات اعمال شده با موفقیت ذخیره شد",
'mod_rfi_a_p1_med' => "فعال بودن ماژول:",
'mod_rfi_a_p1_med_t' => "فعال بودن یا عدم فعال بودن ماژول دعوت نامه",
'mod_rfi_a_p1_ian' => "حق ارسال دعوت نامه:",
'mod_rfi_a_p1_ian_t' => "تعداد دعوت نامه ای که کاربر حق ارسال دارد",
'mod_rfi_a_p1_se' => "فرستادن به ایمیل با عنوان:",
'mod_rfi_a_p1_se_t' => "عنوان ایمیل هنگام ارسال دعوت نامه",
'mod_rfi_a_p1_me' => "پیغام ایمیل:",
'mod_rfi_a_p1_me_t' => "پیغامی که هنگام ارسال دعوت نامه ایمیل می شود",
'mod_rfi_a_p1_me_t_info' => "<br><b>{%send_user%)</b> - کاربر ارسال کننده دعوت نامه,<br><b>{%user_comment%}</b> - نظر ارسال کننده دعوت نامه,<br><b>{%sam_invite%}</b> - کد دعوت نامه",
'mod_rfi_a_p1_sue' => "ارسال دعوت نامه از طریق ایمیل فعال سازی :",
'mod_rfi_a_p1_sue_t' => "دعوت نامه های اضافه شده ار طریق ایمیل اطلاع داده شود",
'mod_rfi_a_p1_save' => "ذخیره",
'mod_rfi_a_p2_users' => "اعضا",
'mod_rfi_a_p2_uni' => "کاربر/دعوت نامه های استفاده شده",
'mod_rfi_a_p2_ni' => "نام کاربری / دعوت نامه",
'mod_rfi_a_p2_do' => "لاگ",
'mod_rfi_a_p2_sti' => "ارائه دعوت نامه های هدیه یا حذف آن",
'mod_rfi_a_p2_sti_1' => "دعوت نامه هدیه وجود دارد",
'mod_rfi_a_p2_sti_2' => "حذف دعوت نامه ها",
'mod_rfi_a_p2_dvi' => "تعداد دعوت نامه",
'mod_rfi_a_p2_dvi_t' => "هدیه دعوت نامه /حذف دعوت نامه - چه مقدار باشد",
'mod_rfi_a_p3_t1' => "کد دعوت نامه:",
'mod_rfi_a_p3_t2' => "ایمیل:",
'mod_rfi_a_p3_t3' => "دعوت کنید:",
'mod_rfi_a_p3_t4' => "وغعیت:",
'mod_rfi_a_p3_t5' => "گروه:",
'mod_rfi_a_p3_t6' => "تاریخ آماده سازی:",
'mod_rfi_a_p3_t7' => "حذف",
'mod_rfi_a_p3_noinvites' => "هیچ دعوتی وجود ندارد",
'mod_rfi_a_p3_iid' => "شماره",
'mod_rfi_a_p4_sie_t' => "آدرس ایمیلی که قرار است دعوت نامه ارسال شود",
'mod_rfi_a_p4_sie_y' => "ارسال هشدار از طریق ایمیل:",
'mod_rfi_a_p4_sie_y_t' => "پیام ایمیل دعوت نامه",
'mod_rfi_a_p4_sim' => "پیغام:",
'mod_rfi_a_p4_sim_t' => "متن شما هنگام ارسال دعوت نامه",
'mod_rfi_a_p4_ag' => "تنظیم گروه:",
'mod_rfi_a_p4_ag_t' => "پس ار تایید دعوت نامه در چه گروه کاربری عضو شود",
'mod_rfi_a_p4_send' => "ارسال",
// invitation_2.2
فایل .htaccess را باز کنید و به دنبال کد زیر بگردید
RewriteRule ^rules.html$ index.php?do=rules [L]
در پایینش کد زیر را اضافه کنید
RewriteRule ^invites.html$ index.php?do=invite [L]
برای نمایش کد دعوت نامه در بخش ثبت نام کد زیر را در جای مناسب در فایل registration.tpl قالبتان قرار دهید.
[invite_register] کد دعوت نامه: <input type="text" name="user_invite" class="f_input" /> [/invite_register]
برای نمایش اطلاعات دعوت نامه میتوانید از کد های زیر رد فایل userinfo.tpl قالبتان استفاده کنید.
{mod_invited_users}
{mod_my_invited_users}
{mod_all_my_invited_users}
{mod_my_invited_users}
{mod_all_my_invited_users}
تصاویر