تقدمة الملتقى الطبي السوري & ميلاد
النسخة 1.2.0 النهائية والكاملة من vMail Converter
:app: :app: :app:
مقدمة:
vMail Converter - أرسل رسائل البريد الإلكتروني بترميز مختلف عن ترميز منتداك
بهدف حل مشكلة اليونيكود (UTF-8) في بعض شركات المقدمة لخدمة البريد الإلكتروني (مثل هتمايل و ياهو وغيرهما)، قمت بكتابة هذا المنتج.
حيث يقوم بتحويل الرسائل المرسلة فقط، من الترميز الحقيقي للمنتدى إلى ترميز من اختيارك، ويجب أن يكون كل من ترميز المصدر والهدف مدعوماً من قبل iconv (UTF-8 & windows-1256 مدعومان جيداً).
ربّما تعلمون، قمت بالتحويل إلى UTF-8 وواجهت هذه المشكلة، الآن انتهت.
تحذير:
يُقدّم هذا المنتج كما هو بدون أية ضمانات.
المتطلبات:
- vBulletin 3.6.4+
- يجب أن يكون امتداد الـ iconv مدعوماً من قبل الـ PHP لديك، أو أن تكون نسخة الـ PHP من 5 فما فوق.
الترميزات المدعومة:
انظر http://www.gnu.org/software/libiconv/#introduction
التنصيب والتحديث:
- استورد ملف المنتج product-vmail_converter.xml (اختر نعم عند التحديث).
- اذهب إلى إعدادات فبوليتين -> خيارات البريد الإلكتروين -> vMail Converter - Destination Encoding.
- في الملف /includes/class_mail.php استبدل كل
بـكود PHP:
$stylevar['charset']
كود PHP:
$this->get_charset()
- في الملف /includes/class_mail.php أوجد
أضف بعده:كود PHP:
function start($toemail, $subject, $message, $from = '', $uheaders = '', $username = '')
{
كود PHP:
// vMail Converter START
$subject = $this->vmail_convert($subject);
$message = $this->vmail_convert($message);
// vMail Converter END
- في الملف /includes/class_mail.php أوجد مرة ثانية
أضف قبله:كود PHP:
function start($toemail, $subject, $message, $from = '', $uheaders = '', $username = '')
{
كود PHP:
// vMail Converter START
function vmail_convert($item)
{
global $stylevar;
if (function_exists('iconv') AND $item != '')
{
return @iconv($stylevar['charset'], $this->registry->options['vmail_converter_destination'], $item);
}
else
{
return $item;
}
}
function get_charset()
{
global $stylevar;
if (function_exists('iconv'))
{
return $this->registry->options['vmail_converter_destination'];
}
else
{
return $stylevar['charset'];
}
}
// vMail Converter END
- في الملف /includes/class_mail.php أوجدها مرتين
وأضف قبلهاكود PHP:
$mailfromname = $this->encode_email_header(unhtmlspecialchars($mailfromname, $unicode_decode), $encoding);
كود PHP:
// vMail Converter START
$mailfromname = $this->vmail_convert($mailfromname);
// vMail Converter END
- في الملف /includes/class_mail.php أوجد
أضف قبلهكود PHP:
$fromemail = $from;
احفظ الملف وارفعهكود PHP:
// vMail Converter START
$from = $this->vmail_convert($from);
// vMail Converter END
- انتهيت.
المشاكل المعروفة:
- لا يوجد أبداً
http://www.vbulletin.org/forum/showthread.php?t=144040