النتائج 1 إلى 4 من 4

الموضوع: شرح تركيب هاك الأوسمة لمنتديات vb3.0

  1. #1
    الصورة الرمزية سيف المعمري
    Title
    نبض جديــد
    تاريخ التسجيل
    12- 2005
    المشاركات
    15

    شرح تركيب هاك الأوسمة لمنتديات vb3.0

    شرح تركيب هاك الأوسمة لمنتديات vb3.0

    بداية نشكر الأخ " ألم الإمارات " على هذا الهاك
    و يمكنكم تحميل الهاك مع شرح الأخ " ألم الإمارات "
    و معه بعض الإضافات لتسهيل تركيب الهاك ...
    www.saif.orgfree.com/up/award.zip

    التركيب

    الخطوة الأولى : الملفات

    افتح ملف: vb/admincp/index.php
    إبحث عن الكود التالي:

    construct_nav_group($vbphrase['announcements']);
    أضف بعده الكود التالي:

    construct_nav_option("إضافة وســام","award.php?do=add","|");
    construct_nav_option("تعديل وســام","award.php?do=modify");
    construct_nav_group("التحكم بالأوسمة")

    إفتح ملف: vb/admincp/user.php

    إبحث عن الكود التالي:

    print_input_row($vbphrase['ip_address'], 'user[ipaddress]',
    $user['ipaddress']);
    أضف بعده الكود التالي:
    // award/medals/card hack by lesane
    print_table_header("Awards");
    print_yes_no_row("Enable awards for
    $user[username]?","hasaward",$user[award]);
    $result = mysql_query("SELECT * FROM useraward where
    userid='$user[userid]'");
    if ($row = mysql_fetch_array($result)) {
    $toegang="yes";
    } else {
    $toegang="no";
    }
    if ($toegang=="yes") {
    $result=$DB_site->query("SELECT awardsid,name,url,userid,aw FROM
    useraward where userid=$user[userid]");
    while($award = mysql_fetch_array($result) ) {
    $lesane="yes";
    $id = $award[awardsid];
    if($award[aw] == "$id" and $award[userid] == "$user[userid]") {
    $lala=" checked";
    $up="equal";
    } else {
    $lala="";
    $up="not_equal";
    }

    echo "<tr class='".fetch_row_bgclass()."'><td><input
    type='checkbox' name='aw[$id]' value='yes'";
    echo "$lala>$award[name]</td><td nowrap>";
    echo "<input type=\"hidden\" name=\"all[$id]\"
    value=\"$up\">";
    echo "<img src=\"$award[url]\">&nbsp;&nbsp;&nbsp;</td>";
    }

    echo "<input type=\"hidden\" name=\"lessie\"
    value=\"$lesane\">";

    } elseif ($toegang=="no") {
    $noawa=$DB_site->query("SELECT awardsid,name,url,aw FROM
    award");
    while($useraward = mysql_fetch_array($noawa) ) {
    $id = $useraward[awardsid];
    $lesane="no";
    echo "<tr class='".fetch_row_bgclass()."'><td><input
    type='checkbox' name='uaw[$id]' value='yes'";
    if ($uaw =='yes') {
    echo " checked>$useraward[name]</td><td nowrap>";
    $userup='equal';
    } else {
    echo ">$useraward[name]</td><td nowrap>";
    $userup='not_equal';
    }
    echo "<input type=\"hidden\" name=\"uall[$id]\"
    value=\"$userup\">";
    echo "<img
    src=\"$useraward[url]\">&nbsp;&nbsp;&nbsp;</td>";
    echo "<input type=\"hidden\" name=\"userhomes[$id]\"
    value=\"$useraward[name]\">";
    echo "<input type=\"hidden\" name=\"userurls[$id]\"
    value=\"$useraward[url]\">";

    }
    echo "<input type=\"hidden\" name=\"lessie\"
    value=\"$lesane\">";
    }
    // echo "</tr></td></table>";
    // print_table_break();
    // end award/medals/card hack by lesane

    نفس الملف: vb/admincp/user.php

    إبحث عن الكود التالي:

    // ###################### Start do update #######################
    if ($_POST['do'] == 'update')
    {
    globalize($_POST, array(
    'password',
    'user',
    'membergroup',
    'modifyavatar',
    'birthday',
    'signature',
    'modifyprofilepic',
    'joindate',
    'lastvisit',
    'lastactivity',
    'lastpost',
    'options',
    'referrer',
    'threaddisplaymode' => INT
    ));

    إستبدله بالكود التالي:
    // ###################### Start do update #######################
    if ($_POST['do'] == 'update')
    {
    globalize($_POST, array(
    'password',
    'user',
    'membergroup',
    'modifyavatar',
    'birthday',
    'signature',
    'modifyprofilepic',
    'joindate',
    'lastvisit',
    'lastactivity',
    'lastpost',
    'options',
    'referrer',
    'hasaward',
    'lessie',
    'aw',
    'all',
    'uaw',
    'uall',
    'userhomes',
    'userurls',
    'threaddisplaymode' => INT
    ));

    نفس الملف: vb/admincp/user.php

    إبحث عن الكود التالي:

    $user['options'] = convert_array_to_bits(array_merge($olduserinfo ,
    $options), $_USEROPTIONS);
    أسفل منه ضع الكود التالي:

    // award/medals/card hack by lesane
    if ($lessie=="yes") {
    while (list($id,$was) = each($all))
    {
    $now = $aw[$id];
    $was = $all[$id];
    if ($now == 'yes' and $was == 'not_equal' ) {
    $DB_site->query("UPDATE useraward SET aw='$id' WHERE
    userid=$userid AND awardsid='$id'");
    } elseif ($now !='yes' and $was=='equal' ) {
    $DB_site->query("UPDATE useraward SET aw='0' WHERE userid=$userid AND
    awardsid='$id'");
    }
    }
    } elseif ($lessie=="no") {
    while (list($id,$was) = each($uall))
    {
    $now = $uaw[$id];
    $was = $uall[$id];
    $uhomes = $userhomes[$id];
    $uurls = htmlspecialchars( $userurls[$id] );
    if( $now == 'yes' )
    $aw = $id;
    else
    $aw = 0;
    $DB_site->query("INSERT into useraward (awardsid,userid,name,url,aw)
    VALUES ('$id','$userid','$uhomes','$uurls','$aw')");
    }
    }

    $DB_site->query("UPDATE user SET award='$hasaward' WHERE userid=$userid");
    // end award/medals/card hack by lesane


    إفتح ملف: vb/include/function_showthread.php

    إبحث عن الكود التالي:

    $show['pmlink'] = iif ($post['receivepm'] AND $vboptions['enablepms'], true, false);
    أسفل منه ضع الكود التالي:

    // awards/medals/cards hack by lesane
    if ($post['award']=="1")
    {
    $result=$DB_site->query("SELECT * FROM useraward WHERE
    userid='$post[userid]' AND awardsid=aw ");
    while ($awardsp=$DB_site->fetch_array($result))
    {
    eval('$post[hasaward] .= "' . fetch_template('awards') . '";');
    }
    }
    // awards/medals/cards hack by lesane

    و بعد الإنتهاء من إجراء التغييرات على الملفات السابقة نعيد لمكانها
    و نرفع الملفين المرفقين في الإمتداد الموضح

    vb/admincp/award.php
    vb/admincp/addawardtable.php

    الخطوة الثانية : التنصيب

    و بعد ذلك نبدأ في تنصيب الهاك على الرابط التالي
    http://www.mysite.com/vb/admincp/addawardtable.php

    و بعد الإنتهاء نحذف الملف addawardtable.php

    الخطوة الثالثة : القوالب

    1- إضافة قالب جديد بإسم: awards
    نضع بداخله الكود التالي:

    <br><img src="$awardsp[url]" alt="$awardsp[name]"><br>
    2- تعديل تمبلت: postbit_legacy
    ضع الكود التالي في المكان اللي ترغب ان يكون فيه الوسام:

    $post[hasaward]<br />
    و هكذا إنتهى تركيب الهاك

    و لكن بالنسبة لإختيار مكان لوضع يجب طبعا وضعه في المكان الذي
    تعرض فيه معلومات العضو
    فمثلا لوضعه فوق أيقونات الإتصال ( ياهو , icq , .... ) يكون فوق

    <div>$post[icqicon] $post[aimicon] $post[msnicon] $post[yahooicon]</div>
    </div>
    و لوضعه تحت الإيقونات , نضع كود هاك الأوسمة تحت الكود السابق

    الخطوة الرابعة : لوحة التحكم

    و بعد الإنتهاء من كل شئ , نذهب للوحة التحكم
    و سنجد " التحكم بالأوسمة "



    و الآن نرفع صور الأوسمة للموقع و يفضل وضعها في مجلد خاص في مجلد
    الصور images ...
    و بعد ذلك نقوم بإضافة الأوسمة عن طريق " إضافة وسام "



    حيث نضع إسم الوسام و رابط الصورة الخاصة به و بعد ذلك " حفظ "
    و سيظهر الوسام



    و يمكنننا تعديل أو حذف الأوسمة عن طريق " تعديل وسام "



    حيث يمكن تغيير الإسم او الرابط و إذا أردنا حذف الوسام
    سيطلب منا تأكيد الحذف




    منح الأوسمة

    لمنح وسام لأحد الاعضاء نذهب للملف الشخصي للعضو في لوحة التحكم
    ( مثلا من الأعضاء > بحث عن الأعضاء > و نختار العضو )
    و سنجد في ملف العضو خاصية الأوسمة



    و نختار الوسام ( أو الأوسمة ) ثم نحفظ



    قبل و ضع الأوسمة



    و سام واحد



    و سامين



    وقد لاحظت عدم إمكانية منح وسام لأي عضو لايمكن " حذفه "



    فبما إن منح الوسام سيكون بالتغيير في بيانات العضو فبالتالي
    لا يمكن التغيير في بيانات الأعضاء الذين لا يمكن حذفهم
    و هذه الخاصية توجد في ملف config



    و للتغلب على هذه الإشكالية يمكن تغيير معلومات الكونفج
    و بعد وضع الوسام إرجاعها مرة أخرى !!

    إنتهى الشرح

    ملاحظات :
    1- يجب أخذ نسخة إحتياطية لأي ملف أو قالب قبل إجراء تغيير عليه .
    2- تم الشرح على نسخة vb3.0.6
    3- قد تختلف التسميات بسبب إختلاف التعريب .
    4- الشرح كاملا في الملف .
    5- صور الأوسمة المستخدمة توّضيحية فقط .


    الموضوع الاصلي في منتدى المشاغب

  2. #2
    الصورة الرمزية ضيف المهاجر
    Title
    المدير العام
    تاريخ التسجيل
    05- 2002
    المشاركات
    6,428
    شكرا لك اخي سيف وما قصرت


    تحياتي
    <div style=text-align: center;><b><span style=font-family: Courier New><font size=4><a href=http://www.sultanqaboos.net target=_blank>موقع السلطان قابوس</a>
<a href=https://hmhaitham.om/ target=_blank><b><span style=font-family: Courier New><font size=4>موقع السلطان هيثم</font></span></b></a>
<a href=http://www.alrasby.net target=_blank>الراسبي نت</a>
</font></span></b>

</div>

  3. #3
    الصورة الرمزية سيف المعمري
    Title
    نبض جديــد
    تاريخ التسجيل
    12- 2005
    المشاركات
    15
    العفو أخوي ضيف المهاجر

  4. #4
    الصورة الرمزية الحسين
    Title
    نبض جديــد
    تاريخ التسجيل
    02- 2006
    المشاركات
    27
    مشكور على الوسام

معلومات الموضوع

الأعضاء الذين يشاهدون هذا الموضوع

الذين يشاهدون الموضوع الآن: 1 (0 من الأعضاء و 1 زائر)

ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •  

RSS RSS 2.0 XML MAP HTML