دیتالایف انجین فارسی

سیستم پیشرفته امتیاز به نظرات

تاریخ انتشار: 28 مرداد 1391
ارسال کننده: IMP
ماژول امتیاز نظرات سایت را امروز آماده کردم برای شما. بوسیله این ماژول میتوانید به نظر های ارسال شده در سایت، امتیاز بدهید. نحوه کار این ماژول بدینصورت میباشد که، به هر نظر که در سایت ارسال شده باشد، میتوانید یک امتیاز مثبت و یا منفی اهدا کنید! البته این ماژول دو قابلیت بسیار جالب دارد کا با سایر ماژول هایی از این نوع، متمایز میباشد.

این ماژول دارای قابلیت پنهان کردن و یا حذف نظر میباشد. یعنی شما میتوانید تعیین کنید که اگر یک نظر، برای مثال ۱۰ رای منفی دریافت کرد، به صورت اتوماتیک حذف بشود و یا نظر از دید کاربران پنهان شود. برای پنهان شدن هم از تگ اسپویلر استفاده شده و با کلیک کردن بر روی متن مورد نظر، میتوانید نظری که پنهان شده است را مشاهده کنید.

یکی دیگر از قابلیت های جالب این ماژول این هست که، زمانی که یک نظر به حد نصاب تعداد رای های منفی که شما تعیین کردید برسد، نویسنده نظر دیگر نمیتواند آن نظر را که ارسال کرده است را ویرایش و یا حذف کند.
  • دانلود
  • آموزش نصب
  • سوالات متداول
نام فایلحجم فایلتعداد دانلودعملیات
جهت دانلود این فایل، وارد سایت شوید. در صورتی که حساب کاربری ندارید، از طریق صفحه ثبت نام عضو شوید.
نکته مهم:
قبل از شروع به نصب ماژول، ابتدا قسمت سوالات متداول را مطالعه کنید.


۱. ابتدا فایل دانلود شده را از حالت فشرده خارج ساخته و بر روی هاست خود آپلود کنید. توجه داشته باشید که باید نام پوشه THEME را با نام پوشه قالب خود جایگزین کنید.

۲. وارد قسمت PHPMyAdmin هاستینگ خود شوید، دیتابیس دیتالایف انجین را انتخاب کنید، از بالای صفحه بر روی SQL کلیک کنید، سپس در فیلد مربوطه کد زیر را نوشته و بر روی GO کلیک کنید:
DROP TABLE IF EXISTS `dle_com_logs`;
ALTER TABLE `dle_comments` ADD `rating` SMALLINT( 5 ) NOT NULL DEFAULT '0';
ALTER TABLE `dle_comments` ADD `vote_num` SMALLINT( 5 ) UNSIGNED NOT NULL DEFAULT '0';
ALTER TABLE `dle_comments` ADD `allow_edit` INT( 1 ) NOT NULL DEFAULT '1';
CREATE TABLE `dle_com_logs` (
`id` INT( 10 ) UNSIGNED NOT NULL AUTO_INCREMENT,
`comm_id` INT( 10 ) NOT NULL DEFAULT '0',
`member` VARCHAR( 40 ) NOT NULL ,
`ip` VARCHAR( 16 ) NOT NULL ,
PRIMARY KEY (`id`),
KEY `comm_id` (`comm_id`),
KEY `member` (`member`),
KEY `ip` (`ip`)
) TYPE = MYISAM;

۳. فایل engine/modules/show.full.php را باز کرده و کد زیر را پیدا کنید:
is_register,

به جای کد بالا، کد زیر را قرار دهید:
is_register,allow_edit,rating,vote_num,

۴. فایل engine/classes/comments.class.php را باز کرده و کد زیر را پیدا کنید:
$tpl->set_block( "'\\[com-del\\](.*?)\\[/com-del\\]'si", "" );

پس از کد بالا، کد زیر را قرار دهید:
if( $row['allow_edit'] == 0 and $member_id['user_group'] != '1' ) {
$tpl->set_block( "'\\[com-edit\\](.*?)\\[/com-edit\\]'si", "" );
$tpl->set_block( "'\\[com-del\\](.*?)\\[/com-del\\]'si", "" );
}

۵. در همان فایل کد زیر را پیدا کنید:
else $tpl->set( '{registration}', '--' );

پس از کد بالا، کد زیر را قرار دهید:
if($row['allow_edit'] == 0) $tpl->set('{rate}', '');
else $tpl->set('{rate}',CommRating ($row['id'], $row['rating'], $row['vote_num'], $user_group[$member_id['user_group']]['allow_rating']));

۶. فایل engine/classes/js/dle_js.js را باز کرده و کد زیر را پیدا کنید:
function doRate

قبل از کد بالا، کد زیر را قرار دهید:
function comRate( rate, id ) {
ShowLoading('');
$.get(dle_root + "engine/ajax/comm_rating.php", { go_rate: rate, comm_id: id, skin: dle_skin }, function(data){
HideLoading('');
$("#cratig-layer-" + id).html(data);
});
};

۷. فایل engine/modules/functions.php را باز کرده و کد زیر را پیدا کنید:
function userrating

قبل از کد بالا، کد زیر را قرار دهید:
function CommRating ($id, $commrating, $vote_num, $allow = true){
global $is_logged, $member_id, $config, $lang, $db;

if ($commrating) $commrating = round($commrating, 0); else $commrating = 0;

switch($commrating) {
case ($commrating >= 0):
$commrating = '<span style="color: #009900;">+'.$commrating.'</span>';
break;
case ($commrating <= 0):
$commrating = '<span style="color: #FF0000;">'.$commrating.'</span>';
break;
case($commrating == 0):
$commrating = '<span style="color: #000000;">'.$commrating.'</span>';
break;
}
if (!$allow) {

$commrated = <<<HTML
<span id="cratig-layer-{$id}">
<div id='cratig-layer'>
{$commrating}
</div>
</span>
HTML;

return $commrated;
}

$commrated .= <<<HTML
<span id="cratig-layer-{$id}">
<div id='cratig-layer'>
<a href="#" title="میپسندم" class="r2-unit" onclick="comRate('+1', '{$id}'); return false;"><img title="میپسندم" src="{THEME}/images/comm_up.png" border="0" align="middle" style="padding-bottom:5px; padding-right:5px;"></a>
{$commrating}
<a href="#" title="نمیپسندم" class="r1-unit" onclick="comRate('-1', '{$id}'); return false;"><img title="نمیپسندم" src="{THEME}/images/comm_down.png" border="0" align="middle" style="padding-bottom:5px; padding-left:5px; padding-right:5px;"></a>
</div>
</span>
HTML;

return $commrated;
}

۸. فایل engine/inc/options.php را باز کرده و کد زیر را پیدا کنید:
showRow( $lang['opt_sys_wdcom']

قبل از کد بالا، کد زیر را قرار دهید:
showRow( $lang['opt_sys_ncom'], $lang['opt_sys_ncomd'], "<input class=\"edit bk\" type=text style=\"text-align: center; direction:ltr;\" name='save_con[negative_score]' value=\"{$config['negative_score']}\" size=10>" );
showRow( $lang['opt_sys_npro'], $lang['opt_sys_nprod'], makeDropDown( array ("1" => $lang['opt_sys_npro_del'], "0" => $lang['opt_sys_npro_hid'] ), "save_con[process_negative]", "{$config['process_negative']}" ) );

۹. فایل language/Farsi/adminpanel.lng را باز کرده و کد زیر را پیدا کنید:
'wysiwyg_language' => "fa",

پس از کد بالا، کدهای زیر را قرار دهید:
'opt_sys_ncom' => "حد نصاب تعداد رای های منفی:",
'opt_sys_ncomd' => "تعیین حد نصاب تعداد رای های منفی نظر، برای حذف و یا پنهان شدن آن نظر.",
'opt_sys_npro' => "انتخاب عملیات پس از رسیدن به حد نصاب تعداد رای های منفی:",
'opt_sys_nprod' => "شما میتوانید انتخاب کنید که هر نظر پس از رسیدن به حد نصاب تعداد رای های منفی، حذف شود و یا به صورت پنهان نمایش داده شود.",
'opt_sys_npro_del' => "حذف کردن نظر",
'opt_sys_npro_hid' => "پنهان کردن نظر",

۱۰. فایل language/Farsi/website.lng را باز کرده و کد زیر را پیدا کنید:
'wysiwyg_language' => "fa",

پس از کد بالا، کد زیر را قرار دهید:
'comr_self' => "نمیتوانید به خودتان رای دهید.",
'comr_del' => "این نظر حذف خواهد شد.",
'comr_hidden' => "این نظر به دلیل دریافت تعداد زیاد رای منفی، پنهان شده است.",
'comr_hide' => "این نظر پنهان خواهد شد.",
'comr_already' => "قبلا رای داده اید.",
'comr_login' => "فقط کاربران عضو میتوانند رای بدهند.",

۱۱. فایل comments.tpl قالب خود را باز کرده و تگ زیر را در جای مناسب قرار دهید:
{rate}
به دلیل طولانی بودن مراحل نصب، فایلهایی که نیاز به ویرایش دارند و باید کدهای ماژول در آن قرار بگیرند را برای شما آماده کردم و قرار داده ام. در نتیجه، اگر برای شما سخت هست این ماژول را نصب کنید، هنگامی که فایل را دانلود کردید، تمامی فایلهای پوشه DLE9.6 را بر روی هاست خود آپلود کنید و فقط قسمت نصب دیتابیس و مرحله آخر که قرار دادن تگ در قالب میباشد را انجام دهید. فقط قبل از انجام این کار به خاطر داشته باشید که، اگر قبلا ویرایشی بر روی این فایلها انجام داده باشید و یا هک و ماژول نصب کرده باشید، مجبور میشوید دوباره ماژول های خود را نصب کنید. البته فقط بستگی به این دارد که قبلا ویرایشی بر روی این فایلها انجام داده باشید و یا خیر. این فایلها فقط مخصوص نسخه 9.6 میباشند.

دوستانی هم که تمایل دارند به صورت عادی ماژول را نصب کنند، فقط فایلهای داخل پوشه Install را آپلود کنند و سپس مراحل نصب را انجام دهند.

توجه داشته باشید که این ماژول فقط بر روی نسخه 9.6 تست شده است. در نتیجه اگر از نسخه های قبل تر استفاده میکنید، هیچ تضمینی وجود ندارد که ماژول به درستی برای شما کار بکند و در نتیجه به سوالات و مشکلات شما هیچ پاسخی داده نمیشود. پس قبل از شروع نصب، حواستان باشد تا وقت خود را هدر ندهید.

چگونه میتوانم حد نصاب تعداد امتیاز های منفی را تغییر بدهم؟
ابتدا وارد کنترل پنل سیستم و بعد تنظیمات سیستم شوید، بر روی تب چهارم کلیک کرد و گزینه "حد نصاب تعداد رای های منفی" را ویرایش کنید. فراموش نکنید که عددی که قرار میدهید باید به صورت منفی باشد. مانند نمونه زیر:
-10

چگونه میتوانم تعیین کنم نظر بعد از رسیدن به حد نصاب رای های منفی حذف و یا پنهان شود؟
در همان قسمت کنترل پنل سیستم.
18 نفر (18 کاربر و 0 میهمان) از این مطلب تشکر کرده اند.
تشکر
مدیر سایت
28 مرداد 1391 - 10:42
متشکرم خیلی جالبه
یه امکان جدید به امکانات بی پایان dle اضافه شد happy
فقط یه سوال کوچولو
آیا این ماژول و امتیاراتی که کاربر میگیره تاثیری در امتیاز کاربر تو ماژول امتیازات هم میتونه داشته باشه؟
همون طوری که ماژول تشکر داره request
یعنی اگه چند تا کاربر رای مثیت بدن کاربر امتیار مثبت بگیره و برعکس
تشکرات بسیار pray

--------------------
مدیر بازنشسته
28 مرداد 1391 - 10:45
hamid7107,
خیر، این ماژول با هیچ هک و ماژول دیگه ای ارتباط نداره yes
عضو سایت
28 مرداد 1391 - 17:59
سلام و با تشکر از شما دوست عزیز که وقت میذارید و امکانات دیتالایف انجین رو اضافه میکنید

یکی از دلایلی که با تمام مشکلاتی که سره راهم پیش اومده برای ادامه کارم در سایت داری با دیتالایف انجین همین پشتیانی خوب هست



یک مشکل پیش اومد توی انجمن مطرح کردم

--------------------
عضو سایت
28 مرداد 1391 - 19:37
من نصبش کردم (از اون فایل های آماده استفاده کردم) وقتی میرم ادامه مطلب اینطوری میشه !!

لینک عکس مشکل

همه مراحل رو برگشتم مشکل حل نشد تا اینکه show.full.php رو با قبلی جابه جا کردم !

--------------------
عضو سایت
28 مرداد 1391 - 20:22
امکانی که در سیستم وردپرس بود حالا در دیتالایف انجین هم هست.
واقعا تشکر
مدیر بازنشسته
28 مرداد 1391 - 22:54
tarane2010,
از فایلهای آماده استفاده نکن و به صورت دستی نصبش کن. من خیلی واضح توی توضیحات همه چیز رو نوشته بودم که! smile2
شما متاسفانه قسمت نصب دیتابیس رو انجام ندادید در نتیجه باید همچین خطایی دریافت کنید. لطفآ هنگام نصب هک و ماژول ۵ دقیقه وقت بزارید و آموزش رو درست بخونید.
عضو سایت
28 مرداد 1391 - 23:51
IMP,

کلا با کدی که تو showfull میذارم مشکل داره ! دستی وارد کردم اینبار !!

--------------------
مدیر بازنشسته
28 مرداد 1391 - 23:58
tarane2010,
دیتابیس رو هم نصب کردی؟ این خطا فقط زمانی ایجاد میشه که تیبل دیتابیس وجود نداشته باشه.
عضو سایت
29 مرداد 1391 - 11:24
عالیه ! جای خالی همچین ماژولی تو دیتالایف انجین حس میشد. ممنون . flower
فقط یک سوال اینکه آیا این امکان را دارد که هر نفر فقط یک رای بدهد ؟

--------------------
مدیر بازنشسته
29 مرداد 1391 - 11:51
mne021,
اگر غیر از این بود که فایده نداشت دوست عزیز lol
عضو سایت
13 آذر 1391 - 09:32
داش علیرضا من دیگه نمیدونم چه جوری باید از شما تشکر کنم بهر حال خیلی آقایی خدا خیرت بده flower yes

--------------------
عضو سایت
22 اسفند 1391 - 17:22
سلام خسته نباشید، می خواستم ببینم این ماژول میتونه رو نسخه ی 9.7 هم اجرا بشه؟
مدیر بازنشسته
22 اسفند 1391 - 17:28
MohaJJal,
شما زحمت تست اون رو بکشید و سایر کاربران رو هم مطلع کنید yes
عضو سایت
22 اسفند 1391 - 18:53
IMP,
سلام
علی جان

داداش میخوام اینو رو 9.8 نصب کنم و تست کنم اصلا
اما یه سری فایلها هست که باید جایگزین کرد!که متاسفانه بعد از جایگزینی سیستم نابود میشه donoghted
نمیشه یه طوری اون فایلها رو با 9.8 هماهنگ کرد excisted

یا اصلا برا 9.8 سراغ نداری؟هرکجا باشه خودم ترجمه میکنم
مدیر بازنشسته
22 اسفند 1391 - 19:13
boysky68,

ایمان جان شما لطف کن آموزش نصب رو بخون yes
عضو سایت
22 اسفند 1391 - 20:18
IMP,

smile2
مرسی علی جان

دیگه بی توجهی ما برات عادی شده donoghted

علی جان من نصب کردم رو 9.8 تو دیتابیس هم ایمپورت کردم

بعدش وقتی میخواستم امتیاز بدم خطای زیر بصورت پاپ اپ میومد

MySQL error in file: /home/electroh/public_html/2/engine/ajax/comm_rating.php at line 98
Error Number: 1146
The Error returned was:
Table 'electroh_iman.dle_com_logs' doesn't exist
SQL query:

SELECT comm_id FROM dle_com_logs where comm_id ='1' AND member = 'admin


و من اومدم خطا رو خوندم و رفتم خط 98 فایل رو حذف کردم! donoghted

بعد دیدم میگه خط 120 اینم حذفیدم donoghted

حالا خوب کار میکنه و مشکلی نداره
علی جان سوالم اینه که آیا حذف اون دو خط مشکلی داره؟ excisted
میشه اینم زحمت راهنمایش رو بکشی مثل همیشه boos
مدیر بازنشسته
22 اسفند 1391 - 20:28
boysky68,
والا من در حال حاضر فرصت نمیکنم این ماژول ها رو روی نسخه های جدید تست بکنم اما، اصولا شما نباید هیچ کدی رو از توی فایلها حذف بکنید، البته بعضی مواقع یک سری از کد ها برای نسخه های قبل نوشته شده اند که برای نسخه جدید مشکل ایجاد میکنند. در مورد این ماژول هم من اطلاعی ندارم چون فقط روی 9.6 تست کردمش. yes
عضو سایت
22 اسفند 1391 - 20:40
IMP,

بازهم ممنون ازت علی جون
قسمت مدیریت رو هم تست کردم و بعد از تعداد رای های منفی مشخص شده نظر حذف شد!
پس دیگه احتمالا مشکلی نداره
و ممنون از شما بخاطر این ماژول کاربردیتون boos
جهت ارسال نظر، فرم زیر را تکمیل نمائید:
نام:*
ایمیل:*
متن نظر:

 
پررنگکج خط دارخط دار در وسط|سمت چپوسط سمت راست|قرار دادن شکلکانتخاب رنگ|پنهان کردن متنقراردادن نقل قولتبدیل نوشته ها به زبان روسیقراردادن Spoiler
کد امنیتی: *