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

ماژول دوستیابی ورژن 1.5.1

تاریخ انتشار: 2 آبان 1390
ارسال کننده: numen
ماژول دوستیابی برای اضافه کردن اعضا به فهرست دوستان در پروفایل
  • دانلود
  • آموزش نصب
  • تصاویر
نام فایلحجم فایلتعداد دانلودعملیات
جهت دانلود این فایل، وارد سایت شوید. در صورتی که حساب کاربری ندارید، از طریق صفحه ثبت نام عضو شوید.
1.فایل پیوست رو در پوشه روت سیستم خود Extract کنید.

2. کد زیر را وارد بانک اطلاعاتی کنید . ( MySQL ) :


DROP TABLE IF EXISTS `dle_friends`;
CREATE TABLE `dle_friends` (
  `id` mediumint(8) NOT NULL AUTO_INCREMENT,
  `user` varchar(40) NOT NULL DEFAULT '',
  `friend` varchar(40) NOT NULL DEFAULT '',
  `date` varchar(30) NOT NULL DEFAULT '',
  PRIMARY KEY (`id`)
) ENGINE=MyISAM /*!40101 DEFAULT CHARSET=utf8 */;

ALTER TABLE `dle_users` ADD `friends` text NOT NULL DEFAULT '';
ALTER TABLE `dle_users` ADD `friends_temp` text NOT NULL DEFAULT '';
ALTER TABLE `dle_users` ADD `friends_settings` varchar(30) NOT NULL DEFAULT 'yes||no';

INSERT INTO `dle_email` values ('', 'friends', 'کاربر گرامی : {%username%} , برای شما یک در خواست دوستی از طرف {%who%} ارسال شده است\r\n\r\nبرای تایید یا رد در خواست دوستی {%who%} بر روی لینک زیر کلیک کنید : \r\n\r\n{%url%}\r\n\r\nبا تشکر ,\r\nمدیریت سایت');
INSERT INTO `dle_email` values ('', 'fr_fail', 'کاربر گرامی : {%username%} , کاربر : {%who%} در خواست دوستی شما را رد کرد .\r\n\r\nبا تشکر ,\r\nمدیریت سایت');
INSERT INTO `dle_email` values ('', 'fr_add', 'کاربر گرامی : {%username%} , کاربر : {%who%}  در خواست دوستی شما را قبول کرد .\r\n\r\nبا تشکر ,\r\nمدیریت سایت');
INSERT INTO `dle_email` values ('', 'fr_delete', 'کاربر گرامی : {%username%} , کاربر : {%who%}  شما را از لیست دوستان خود حذف کرد .\r\n\r\nبا تشکر ,\r\nمدیریت سایت');

INSERT INTO `dle_admin_sections` (`name`, `title`, `descr`, `icon`, `allow_groups`) VALUES ('friends', 'ماژول دوستیابی', 'تنظیمات ماژول دوستیابی', 'friends.jpg', '1');

3. فایل /engine/engine.php را بازکنید .
- کد زیر را پیدا کنید:

case "deletenews" :
    include ENGINE_DIR . '/modules/deletenews.php';
    break;

- بعدار آن کد زیر را قرار دهید :

// ماژول دوستیابی ورژن 1.5.1
    case "friends" :
        if ($user) include ENGINE_DIR . '/modules/friends_list.php';
        else msgbox ( $lang['all_err_1'], $lang['news_err_27'] );
        break;
    
    case "friendsfeed" :
        if ($is_logged) include ENGINE_DIR . '/modules/friends_feed.php';
        else msgbox ( $lang['all_err_1'], $lang['news_err_27'] );
        break;
// ماژول دوستیابی ورژن 1.5.1

- کد زیر را پیدا کنید :

elseif ($do == 'stats') $nam_e = $lang['title_stats'];

- بعد از آن کد زیر را قرار دهید :


// ماژول دوستیابی ورژن 1.5.1
elseif ($do == "friends") {
    if (! $subaction) $nam_e = $lang['fr_friends'];
    elseif ($subaction == "common") $nam_e = $url_user . $lang['fr_common'];
    elseif ($subaction == "requests") $nam_e = $lang['fr_activate_title'];
    elseif ($subaction == "suggestions") $nam_e = $lang['fr_suggestions'];
}
elseif ($do == "friendsfeed") $nam_e = $lang['fr_feed_title'];
// ماژول دوستیابی ورژن 1.5.1

- کد زیر را پیدا کنید :

$s_navigation = "<a href=\"{$config['http_home_url']}\">" . $config['short_title'] . "</a>";

- بعد از آن کد زیر را قرار دهید :
  
// ماژول دوستیابی ورژن 1.5.1
    if ($do == "friends") {
        if( $config['allow_alt_url'] == "yes" ) $url_user = "<a href=\"" . $config['http_home_url'] . "user/" . urlencode( $user ) . "/\">" . stripslashes( $user ) . "</a>";
        else $url_user = "<a href=\"$PHP_SELF?subaction=userinfo&amp;user=" . urlencode( $user ) . "\">" . stripslashes( $user ) . "</a>";
        
        $s_navigation .= " &raquo; " . $url_user;
    }
// ماژول دوستیابی ورژن 1.5.1
    
4. فایل /engine/init.php را باز کنید .
- کد زیر را پیدا کنید :

$tpl->set( '{all-pm}', $member_id['pm_all'] );

- بعد از آن کد زیر را قرار دهید :

// ماژول دوستیابی ورژن 1.5.1
if( $member_id['friends_temp'] ) $tpl->set( '{request-count}', "(" . count(explode("," ,$member_id['friends_temp'])) . ")" );
else $tpl->set( '{request-count}', "" );

if( $config['allow_alt_url'] == "yes" ) {
    $tpl->set( '{friends-link}', $config['http_home_url'] . "friends/" . urlencode( $member_id['name'] ) );
    $tpl->set( '{feed-link}', $config['http_home_url'] . "friendsfeed/" );
} else {
    $tpl->set( '{friends-link}', $PHP_SELF . "?do=friends&amp;user=" . urlencode( $member_id['name'] ) );
    $tpl->set( '{feed-link}', $PHP_SELF . "?do=friendsfeed" );
}
// ماژول دوستیابی ورژن 1.5.1

5. فایل engine/modules/profile.php را باز کنید،
- کد زیر را پیدا کنید :

$filecontents = '';

- بعد از آن کد زیر را قرار دهید :

// ماژول دوستیابی ورژن 1.5.1
    if( $_POST['friends_info'] ) $friends_info = "yes"; else $friends_info = "no"; // در یافت پیغام خضوصی هنگام دریافت درخواست یا رد یا حذف دوستی
    if( $_POST['friends_pm'] ) $friends_pm = "yes"; else $friends_pm = "no"; // در یافت پیغام خصوصی تنها از دوستان
    $friends_settings = $friends_info . "||" . $friends_pm;
// ماژول دوستیابی ورژن 1.5.1

- کد زیر را پیدا کنید : (2 بار(
این کد 2 بار تکرار شده

allow_mail='$allow_mail',

- کد زیر را جایگزینش کنید :

allow_mail='$allow_mail', friends_settings='$friends_settings',

- کد زیر را پیدا کنید :

$tpl->set( '{lastdate}', langdate( "j F Y H:i", $row['lastdate'] ) );

- بعد از آن کد زیر را قرار دهید :

// ماژول دوستیابی ورژن 1.5.1
include_once ENGINE_DIR . '/modules/friends_profile.php';
// ماژول دوستیابی ورژن 1.5.1

6.فایل engine/modules/pm.php را بازکنید .
- کد زیر را پیدا کنید :

if( $user ) $row = $db->super_query( "SELECT user_id, name, pm_all, user_group FROM " . USERPREFIX . "_users where user_id = '$user'" );
elseif( $username != "" ) $row = $db->super_query( "SELECT user_id, name, pm_all, user_group FROM " . USERPREFIX . "_users where name='$username'" );

- کد زیر را جایگزینش کنید :

if( $user ) $row = $db->super_query( "SELECT user_id, name, pm_all, user_group, friends_settings FROM " . USERPREFIX . "_users where user_id = '$user'" );
elseif( $username != "" ) $row = $db->super_query( "SELECT user_id, name, pm_all, user_group, friends_settings FROM " . USERPREFIX . "_users where name='$username'" );

// ماژول دوستیابی ورژن 1.5.1
    $friends_settings = explode( "||", $row['friends_settings'] );
    
    if( $friends_settings[1] == "yes" ) {

        // check if user is my friend
        $my_temp_arr = explode( ',', $member_id['friends'] );
        if(! in_array( $row['user_id'], $my_temp_arr )) {
            msgbox( $lang['all_err_1'], $lang['fr_pm_er'] );
            $stop_pm = TRUE;
        }
    }
// ماژول دوستیابی ورژن 1.5.1

7. فایل engine/ajax/profile.php را بازکنید .
- کد زیر را پیدا کنید :

$tpl->set( '{rate}', userrating( $row['name'] ) );


- بعدار آن کد زیر را قرار دهید :


// ماژول دوستیابی ورژن 1.5.1
require_once ENGINE_DIR . '/modules/sitelogin.php';

if( $is_logged and $member_id['user_id'] != $row['user_id'] ) {
    
    $friends_arr = explode( ',', $member_id['friends'] );
    $temp_friends_arr = explode( ',', $row['friends_temp'] );
    
    if( ! in_array( $row['user_id'], $friends_arr ) && ! in_array( $member_id['user_id'], $temp_friends_arr ) ) {
        $tpl->set( '{dofriends}', "<a id=\"dofriend-" . $row['user_id'] . "\" href=\"#\" onclick=\"doFriends('" . $row['user_id'] . "', 'add', 'pop'); return false;\">" . $lang['fr_add'] . "</a>" );
    } elseif( in_array( $row['user_id'], $friends_arr )) {
        $tpl->set( '{dofriends}', "<a id=\"dofriend-" . $row['user_id'] . "\" href=\"#\" onclick=\"doFriends('" . $row['user_id'] . "', 'delete', 'pop'); return false;\">" . $lang['fr_del_do'] . "</a>" );
    } else $tpl->set( '{dofriends}', $lang['fr_req_sent'] );

} else $tpl->set( '{dofriends}', "" );
// ماژول دوستیابی ورژن 1.5.1

8. فایل .HTACCESS را بازکنید .
- کد زیر را پیدا کنید :

RewriteRule ^page/(.*)$ index.php?cstart=$1 [L]


- بعدار آن کد زیر را قرار دهید :


# ماژول دوستیابی ورژن 1.5.1
RewriteRule ^friends/([^/]*)(/?)+$ index.php?do=friends&user=$1 [L]
RewriteRule ^friends/([^/]*)/page/([0-9]+)(/?)+$ index.php?do=friends&user=$1&cstart=$2 [L]
RewriteRule ^friends/([^/]*)/common(/?)+$ index.php?do=friends&subaction=common&user=$1 [L]
RewriteRule ^friends/([^/]*)/common/page/([0-9]+)(/?)+$ index.php?do=friends&subaction=common&user=$1&cstart=$2 [L]
RewriteRule ^friends/([^/]*)/requests(/?)+$ index.php?do=friends&subaction=requests&user=$1 [L]
RewriteRule ^friends/([^/]*)/requests/page/([0-9]+)(/?)+$ index.php?do=friends&subaction=requests&user=$1&cstart=$2 [L]
RewriteRule ^friends/([^/]*)/suggestions(/?)+$ index.php?do=friends&subaction=suggestions&user=$1 [L]
RewriteRule ^friendsfeed(/?)+$ index.php?do=friendsfeed [L]


9. فایل language/Farsi/website.lng را بازکنید .
- کد زیر را پیدا کنید :

'wysiwyg_language' => "fa",

- بعدار آن کد زیر را قرار دهید :

// ماژول دوستیابی ورژن 1.5.1
'fr_friends' => "لیست دوستان",
'fr_done' => "در خواست شما ارسال شد",
'fr_add_succes' => "کاربر {user} با موفقیت به لیست دوستان اضافه شده !",
'fr_del_succes' => "کاربر {user} از لیست دوستان خذف شد !",
'fr_del_act' => "خذف در خواست دوستی",
'fr_del_req_succes' => "در خواست دوستی خذف شد !",
'fr_del_do' => "حذف از لیست دوستان",
'fr_del_pm' => "شما از لیست دوستان خذف شدید",
'fr_send_pm' => "ارسال پیغام خصوصی",
'fr_send_mail' => "ارسال ایمیل",
'fr_activate' => "تایید دوستی",
'fr_activate_title' => "پیشنهادات دوستی",
'fr_activate_fail_pm' => "درخواست دوستی شما را رد کرد",
'fr_activate_ok_pm' => "در خواست دوستی شما را قبول کرد",
'fr_no_friends' => "شما هیچ دوستی ندارید",
'fr_no_req_friends' => "هیچ در خواست دوستی جدیدی وجود ندارد",
'fr_user_no_friends' => "کاربر {user} هیچ دوستی ندارد",
'fr_req' => "درخواست دوستی شما ارسال شد",
'fr_add' => "ارسال در خواست دوستی",
'fr_req_sent' => "شما قبلا یک در خواست دوستی برای این کاربر فرستاده اید",
'fr_feed_off' => "ماژول به طور موقت غیر فعال است",
'fr_feed_load' => "&darr; نمایش خبر های بیشتر &darr;",
'fr_feed_error' => " این قسمت فقط برای کاربران ثبت نام شده است",
'fr_nofeed' => "در حال حاظر دوستان شما هیچ مطلبی انتشار نداده اند",
'fr_timeago' => "یک ساعت، دو ساعت ، سه ساعت، چهار ساعت، پنج ساعت، شش ساعت، ثانیه پیش ، قبل، در، امروز ، دیروز ، در",
'fr_pm_er' => "این کاربر فقط پیغام خصوصی را از دوستان دریافت میکند !",
'fr_no_sugg' => "در حال حاظر هیچ دوستی یافت نشده است !",
'fr_common' => "دوستان مشترک",
'fr_suggestions' => "کسانی که شاید بشناسید",
'fr_feed_title' => "اخبار دوستان",
'fr_nopage' => "متاسفانه ، این صفحه در دسترس شما نیست!",
// ماژول دوستیابی ورژن 1.5.1

10. فایل templates/Default/main.tpl را بازکنید .
- کد زیر را پیدا کنید :

</head>

- قبل از آن کد زیر را قرار دهید :

<link media="screen" href="{THEME}/style/friends.css" type="text/css" rel="stylesheet" />
<script type="text/javascript" src="{THEME}/js/friends.js"></script>

11. فایل templates/Default/userinfo.tpl را بازکنید .
- کد زیر را پیدا کنید :

<li>{pm}</li>

- بعدار آن کد زیر را قرار دهید :

<li>{dofriends}</li>

- کد زیر را پیدا کنید :

<span class="small">{edituser}</span>

- بعدار آن کد زیر را قرار دهید :

[friends]
<div class="friends ussep">
        <span class="grey">تعداد دوستان ({friends-count}) [friends-link]لیست کامل دوستان[/friends-link]
        [requests]تعداد دوستی های در انتظار ({requests-count})[/requests]</span>
        {friends}
        <div class="clr"></div>
</div>
[/friends]
[common-friends]
<div class="friends ussep">
        <span class="grey">دوستان مشابه ({common-count}) [common-link]لیست تمام دوستان مشابه[/common-link]</span>
        {common-friends}
        <div class="clr"></div>
</div>
[/common-friends]

- کد زیر را پیدا کنید :

            <tr>
                <td class="label">پست الکترونیک:</td>
                <td><input type="text" name="email" value="{editmail}" class="f_input" /><br />
                <div class="checkbox">{hidemail}</div>
                <div class="checkbox"><input type="checkbox" id="subscribe" name="subscribe" value="1" /> <label for="subscribe">عضویت در خبرنامه</label></div></td>
            </tr>

- بعدار آن کد زیر را قرار دهید :

<tr>
    <td class="label">دوستان :</td>
    <td>
    <div class="checkbox">{friends_info} <label for="friends_info">در یافت پیغام خضوصی هنگام دریافت درخواست یا رد یا حذف دوستی</label></div>
    <div class="checkbox">{friends_pm} <label for="friends_pm">در یافت پیغام خصوصی تنها از دوستان</label></div>
    </td>
</tr>

12. فایل templates/Default/profile_popup.tpl را بازکنید .

- کد زیر را پیدا کنید :


<li><span class="grey">نظرات:</span> <b>{comm_num} [ {comments} ]</b></li>

- بعدار آن کد زیر را قرار دهید :

                <li>{dofriends}</li>

13. فایل templates/Default/login.tpl را بازکنید .
- کد زیر را پیدا کنید :


<li><a href="{profile-link}">پروفایل</a></li>

- بعدار آن کد زیر را قرار دهید :


                    <li><a href="{friends-link}">لیست دوستان {request-count}</a></li>
                    <li><a href="{feed-link}">مطالب دوستان</a></li>
ماژول دوستیابی ورژن 1.5.1
17 نفر (17 کاربر و 0 میهمان) از این مطلب تشکر کرده اند.
تشکر
عضو سایت
02 آبان 1390 - 21:55
arash-s,
دمو مثل سایت فیسبوک که می توانید افراد را وارد لیست دوستان کنید .

در یافت پیغام فقط از دوستان .

دیدن مطالب دوستان در یک صفحه مشخص

و... . loveu

--------------------
عضو سایت
02 آبان 1390 - 23:46
amir anoosheh,
لطفا فارسی تایپ کنید .


--------------------
عضو سایت
03 آبان 1390 - 02:20
ایول داداش اگه میشود اون گالری عکس مثل شومپت گالری که فارسیش کرده را هم ترجمه میکردین عالی میشد
مدیر بخش قالب ها
03 آبان 1390 - 09:00
دست مریزاد ... flower
می دونم كه روش خیلی زحممت كشیدی ...
یا علی

--------------------
عضو سایت
03 آبان 1390 - 17:44
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

یا حضرت فیل haha این که نصبش یه قرن طول میکشه . hahahoho

اما واقعا چیز جالبیه . ممنون دوست عزیز
عضو سایت
03 آبان 1390 - 23:48
SinaHaghighi,
اصلا کاری به این مطلب ندارم. دم نویسندشم گرم. ولی تو چرا آواتار قبلی سالار رو ورداشتی؟
اصلا سالار کجاست؟
عضو سایت
04 آبان 1390 - 01:49
aliarian,
سالار خونشونه haha

نه جونه من . نمیدونستم . بد میگن برابری سلیقه ها , اینا رو میگن ها heheh
عضو سایت
26 آبان 1390 - 21:48
این ماژول هنگام ایمپورت کردن دیتابیسش ارور میده لطفا حلش کنید.
عضو سایت
28 آبان 1390 - 18:47
. کد زیر را وارد بانک اطلاعاتی کنید . ( MySQL ) :

ببخشید یعنی چی میشه؟؟؟ کامل توضیح بدید من مبتدی ام...

من فقط با این قسمتش مشکل دارم مگرنه بقیش رو فهمیدم
عضو سایت
07 آذر 1390 - 00:21
daniel2love,
منظور وارد phpadmin کنید .

داخل دیتابیسی که برای دیتالایف انجین ساخته اید

--------------------
عضو سایت
15 آذر 1390 - 15:42
باتشکر من همه کاراشو کردم اما موندم تو دیتابیسش یکی هست کمک کنه چه جوری کد رو داخلsql بذارم لطفا یکی کمک کنه

من نصبش کردم اشکال از کجاست ارور میده
خطای بوجود آمده:
Table './vcnus_9478025_vahed/dle_post' is marked as crashed and should be repaired
شماره خطا:
145
کد حاوی خطا:
SELECT id, autor, date, short_story, SUBSTRING(full_story, 1, 15) as full_story, xfields, title, category, alt_name, comm_num, allow_comm, allow_rate, fixed, rating, vote_num, news_read, votes, flag, editdate, editor, reason, view_edit, tags FROM dle_post WHERE approve=1 AND allow_main=1 AND date < '2011-12-06 06:52:09' ORDER BY fixed desc, date DESC LIMIT 0,10
لطفا یکی به دادم برسهآدرس سایت
عضو سایت
24 آذر 1390 - 14:34
عجب یعنی کسی که اینو گذاشته بلد نیس چطور نصب میشه یه توضیح بدید دیگه ایم چه پشتیبانیه چرطیه
عضو سایت
25 آذر 1390 - 01:11
netpatogh,
برادر من اینقدر اعصاب خودتو خورد نکن پیر میشی. اینکه شما هنوز نمیدونی دیتابیس چیه و چطور داخلش کد و یا دستور وارد میکنند چه ربطی به پشتیبانی داره. شما وقتی با مفاهیم اولیه مدیریت سایت آشنایی نداری چرا میای اینجا و به پشتیبانی و غیره فحش میدی؟!

مدیریت هاست -> phpmyadmin -> انتخاب دیتابیس مربوط به سایتت -> اون بالا SQL و یا Import نوشته -> کدهایی که گفته شده کپی میکنی اون تو و Go رو میزنی.
عضو سایت
28 آذر 1390 - 20:04
بی سواد خودتویو ... شما یا نمیدونید یا خنگید این فارسی نوشته شده ارور میداد که خودم درست کردم از نسخه اصلی آقای بی سواد یا هرچی اگه خواستی بیا پیشم یادت میدم. وگر نه مشکل ایجاد دیتابیس نبود طرز کد نویسیش بود verylol
عضو سایت
14 فروردین 1391 - 22:21
بسیار بسیار عالی،دست شما درد نکنه
dance

--------------------
عضو سایت
25 فروردین 1391 - 19:39
سلام
من نصب کردم

ببخشید حالا چطور باید دوست بگیریم تو این ماژول؟!!! soot
عضو سایت
24 آذر 1391 - 00:37
netpatogh درست میگه کد SQL مشکل داره . متن هم درست جمله بندی نشده
مثلا وقتی درخواست دوستی داده میشه :

موضوع : درخواست دوستی شما ارسال شد
موضوع : درخواست دوستی برای شما ارسال شده است

کاربر گرامی : m.yMJJ , برای شما یک در خواست دوستی از طرف ارسال شده است
کاربر گرامی برای شما یک درخواست دوستی ارسال شده است (اینطوری بنظرم بهتره)
عضو سایت
21 بهمن 1391 - 13:53
کسی که نتونه این را نصب کنه

باید بره طرف وبلاگ نویسی نه مدیریت سایت

wassat

منتظر نسخه جدید این ماژول باشید flower

--------------------
عضو سایت
11 اسفند 1391 - 18:08
numen,
با انتشار نسخه جدید مجبور میشیم از اول نصب کنیم و تمام لیست دوستان پاک میشه ؟

یا فقط آپدیت میشه ؟
مدیر بازنشسته
11 اسفند 1391 - 18:25
myMJJ,
باید ماژول رو دوباره نصب کنی، از تیبل این ماژول هم بکاپ بگیر تا یک موقع با مشکل مواجه نشی.
عضو سایت
12 اسفند 1391 - 03:04
IMP,
ممنون از پاسگویی ، اگه ماژول رو ترجمه میکنید که هیچی اما اگه خودتون میسازید لطفا از همون تیبل های قبلی استفاده کنید که کار ما هم سخت نشه و مشکلی پیش نیاد feel
عضو سایت
19 شهریور 1392 - 14:26
خب این ماژول مخصوص چه ورژنی از دیتالایف هستش؟
جهت ارسال نظر، فرم زیر را تکمیل نمائید:
نام:*
ایمیل:*
متن نظر:

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