توجه: فایل patch تغییر کرده است، برای راهنمای جدید در مورد patch جدید به http://drupalion.com/node/167 مراجعه کنید
بروزرسانی 11 تیر 92: افزودن امکانات
امکان استفاده از ماژول بدون نیاز به patch وجود دارد.
در date به ازای هر فیلد میتوان مشخص کرد که این فیلد شمسی باشد یا نباشد.
views در حالت بدون patch نیز شمسی خواهد بود.
اگر library ها را نصب نکنید ماژول خطایی نمایش نمیدهد.
بروزرسانی 10 تیر 92: رفع مشکلات
اگر روز در تاریخ انتخاب نمیشد ماه را اشتباه نشان میداد که حل شد.
فایل patch درست کار نمیکرد که اصلاح شد.
ارتباط با ماژول date بهتر شد و مشکلات رفع شد.
بروزرسانی 20 خرداد 92: تمام مشکلات گزارش شده حل شد.
تمام مشکلاتی که در بخش دیدگاه ها اعلام شده بود. حل شد. خوشحال میشیم که اگر مشکل دیگه ای هست دوستان اعلام کنند. مرحله بعدی اضافه کردن popup به ماژول date است. در حال حاضر شما فقط میتوانید با استفاده از حالت select list از ماژول date استفاده کنید. و مرحله بعدی آماده شدن برای انتقال به دروپال 8 است.
بروزرسانی 10 اردیبهشت 92: ماژول را بروزرسانی کردیم. در این نسخه تغییرات زیر صورت گرفته است.
1- تعداد ماژول ها به 3 تا کاهش پیدا کرده.
2- اگر patch رو اعمال نکنید سایت شما down نمیشود. اما یادتان باشد که برای استفاده از این ماژول حتما باید patch را اعمال کنید.
3- تعداد زیادی باگ ماژول رفع شده است و به نظر میرسد که ماژول به وضعیت پایدار نزدیک میشود.
4- در هنگام ویرایش محتوا میتوانید از جاوااسکریپت مربوط به تغییر تاریخ استفاده کنید. برای این منظور حتما فایل جاوااسکریپت انتهای همین مطلب را دانلود کنید.
بروزرسانی 15 اسفند 91: مشکل خطا هنگام ویرایش محتوا حل شد. از نظر ما این ماژول در حال حاضر قابل استفاده در سایت های تجاری نیز هست.
به مناسبت جشن تولد یک سالگی دروپالیون این ماژول رو به شما معرفی کنم. امیدوارم که بتونه به شما در پروژههاتون کمک کنه. برای پیشرفت این ماژول هم از همکاری با شما دوستان عزیز خوشحال میشم.
هنگام کار روی پروژههای دروپالی، نیاز شدیدی به پشتیبانی بهتر و کاملتر از تاریخهای جلالی توسط هسته دروپال احساس میشد. استفاده از یک فیلد متنی برای ذخیره کردن تاریخ، در حالی که ماژول بسیار خوب و کاملی برای تاریخهای میلادی وجود داشت، بسیار دست و پاگیر بود. محاسبات عددی روی تاریخ هم جزئی از سختترین بخشها بود. بعد از سعی برای افزودن این قابلیت به دروپال، اولین نتیجه کار، ساخته شدن یک کتابخانه (Datex API) با توابع مفید و کاربردی بود. از جمله امکانات خوبش، وجود یک شیئ (Class) هست، مشابه آنچه PHP برای تاریخ ارائه میکند: DatexObject در مقابل Date. آره... اسمش میتونست Datex باشه! تایپ کمتر یک کلمه خودش کلی به آدم حال میده ولی خوب، ما دروپالی هستیم دیگه! دروپال DateObject رو داره ما هم DatexObject رو انتخاب کردیم.
بعد کامل شدن API مورد نظر، نوبت به دروپال و ماژول Date میرسید. ماژول دروپالی خیلی خوب دیگری هم برای اینکار توسط سپهر لاجوردی و سینا سالک عزیز نوشته شده: Clendar system. اما کارایی این ماژول برای ما کافی نبود.
ماژولهای موجود در بسته Datex:
Datex API کتابخانه کار با تاریخ جلالی با پشتیبانی از PHP-Intl:
قبلا در مورد روش استفاده از PHP-Intl در کدهای php توضیحات مختصری داده بودم. Datex API هم از این امکان پشتیبانی میکند (این کتابخانه میتواند در تمام پروژه های PHP استفاده شود و مختص دروپال نیست). روش استفاده خیلی ساده است: بعد از نصب ماژول Datex، فایل Patch موجود در ماژول رو روی دروپال نصب شده اعمال میکنید و یک دروپال جلالی با پشتیبانی از Intl تحویل میگیرید! به همین سادگی، به همین خوشمزگی! راهنمایی بیشتر در مورد اعمال Patch.
این نکته رو یادتون نره برای استفاده از PHP-Intl حتما باید کتابخانه PHP-Intl در سرور شما نصب و فعال شده باش. در صورت عدم وجود این کتابخانه، Datex با رفتن روی حالت Fallback، با متدهای داخلی خودش، تاریخها رو مدیریت میکنه و شما متوجه تغییری نمیشید اما پیشنهاد من به شما استفاده از PHP-Intl است. اگر از یک هاست اشتراکی استفاده میکنید میتوانید با سرویسدهنده خود برای نصب این کتابخانه تماس بگیرید.
Datex برای جلالی کردن تاریخهای هسته دروپال:
با اعمال Patch موجود و فعال سازی این ماژول، تاریخ هسته دروپال به صورت جلالی نمایش داده میشه مثل تاریخ زمان انتشار یک مقاله. زبان سایت حتما باید به فارسی تغییر کنه تا این تبدیل انجام بشه. هنگامی که سایت با زبان دیگری در حال نمایش است، تاریخ به صورت میلادی باقی میمونه.
Datex Date پشتیبانی از تاریخ شمسی در ماژول Date:
یکی دیگر از ماژول های موجود در این مجموعه که وظیفه شمسی کردن ماژول Date را به عهده دارد. در حال حاضر ویجت کومبو ماژول Date شمسی شده است. برای ماژول pop up بررسیهایی انجام شده و همچنان در حال کار کردن روی این مساله هستم. بخش Exposed Filter ماژول Views هم برای هماهنگی با تاریخ شمسی نیاز به کار بیشتر دارد.
Datex Jquery کتابخانه های جاوااسکریپت:
این ماژول پیش نیاز ماژول Datex node Edit است با استفاده از ماژول libraries جاوااسکریپتهای لازم برای تاریخ جلالی رو فراهم میکنه. ماژول کوچیکی هست و به خودی خود کاری انجام نمیده. برای استفاده از این قابلیت باید فایل ضمیمه شده در همین مطلب رو دانلود کنید و به شاخه libraries دروپال منتقل کنید. فایل های اصلی این جاوااسکریپت از وبلاگ آقای wood قابل دانلود هست.
Datex Node Edit برای پشتیبانی از تاریخ جلالی در صفحه افزودن محتوا:
همینطور که از عنوان این ماژول بر میآید این ماژول وظیفه افزودن یک datepicker به صفحه افزودن (http://example.com/node/add) و ویرایش (http://example.com/node/%/edit) محتوا را بر عهده دارد. این ماژول نیاز به کار بیشتر دارد.
همینطور که میبینید تعدادی از ماژول های بالا نیاز به کار بیشتر دارند. امیدوارم که در طی یک زمان منطقی این مشکلات را حل کنم. هر کدام از دوستان اگر تمایل به همکاری برای تکمیل کردن این ماژول ها دارند میتوانند با ارسال نظرات یا patch ها در این زمینه کمک کنند. حتی میتونیم برای دوستان در Git دسترسی ایجاد کنیم.
در ضمن برای متمرکز کردن مشکلات و مسائل مربوط این ماژول از شما تقاضا میکنم مشکلات و ایده های خود رو از طریق issue های این ماژول به دست ما برسونید.
برای اینکه این ماژول به لیست ماژول های دروپال اضافه شود درخواست خود را در سایت دروپال ثبت شده. اما فعلا میتوانید این ماژول را از صفحه sandbox دانلود کنید.
اعمال Patch:
فایل common.inc که در شاخه incluedes در شاخه اصلی دروپال خودتون رو پیدا کنید، خطوط ۲۰۰۸ تا ۲۰۲۳ رو حذف کنید، خط ۲۰۰۸ شامل متن زیر هست:
// Encode markers that should be translated....
و خط ۲۰۲۳ هم شامل علامت زیر است:
}
حالا در خط ۲۰۰۸ که متن بالا رو حذف کردید، خطوط زیر رو اضافه کنید:
// Preserve format for datex. $datex_format = $format; // Encode markers that should be translated. 'A' becomes '\xEF\AA\xFF'. // xEF and xFF are invalid UTF-8 sequences, and we assume they are not in the // input string. // Paired backslashes are isolated to prevent errors in read-ahead evaluation. // The read-ahead expression ensures that A matches, but not \A. $format = preg_replace(array('/\\\\\\\\/', '/(?<!\\\\)([AaeDlMTF])/'), array("\xEF\\\\\\\\\xFF", "\xEF\\\\\$1\$1\xFF"), $format); // Call date_format(). $format = date_format($date_time, $format); // Pass the langcode to _format_date_callback(). _format_date_callback(NULL, $langcode); // Translate the marked sequences. $date = preg_replace_callback('/\xEF([AaeDlMTF]?)(.*?)\xFF/', '_format_date_callback', $format); // Give other modules opportunity to change date format $context = array($timestamp, $type, $datex_format, $timezone, $langcode); //dpm($context); drupal_alter('datex_format', $date, $context); return $date; }
صفحه مربوط به ماژول:
http://drupal.org/sandbox/drupalion/1841798
آدرس Git در دروپال:
http://git.drupal.org/sandbox/drupalion/1841798.git
توجه کنید که حتما branch 7.x-1.x رو دریافت کنید
فایل ضمیمه:
پیوست | اندازه |
---|---|
![]() | 49.55 کیلوبایت |
تگ های مطلب:
دسته بندی مطلب:
دیدگاهها
آدرس ها ارور 404 میده؟
to vote
@#1 آدرسهای درج شده مربوط به
to vote
ممنون دانلود کردم ولی از پچ
to vote
@#2 دوست عزیز به خاطر عدم
to vote
از انتشار ماژول و تلاش هایی
to vote
@#3 ممنون که ما رو همراهی
to vote
Fatal error
to vote
Warning: DateTime::_
to vote
update
to vote
من افزونه رو فعال کردم ، اما
to vote
تنظیم زبان سایت
to vote
دقیقا همین کارو انجام دادم ،
to vote
دوست عزیز پچ رو هم اعمال
to vote
بله پچ رو هم روی دروپال نصب
to vote
Warnning
to vote
@#8
to vote
تاریخ ایجاد
to vote
@#9
to vote
Notice: Undefined index:
to vote
ارور
to vote
مشکل تاریخ
to vote
سلام دوباره ، مشکلات قبلی
to vote
ٔدوست عزیز امشب به datex_node
to vote
سلام ، خبری از ادامه ی کارتون
to vote
سلام دوباره ، ماژول node rdit
to vote
واسه من این ایراد ها رو میگیره
to vote
این ایراد ها رو هم واسه من
to vote
رفع ایرادها
to vote
سلام
to vote
توی لیست Contributed by ;)
to vote
:D
to vote
سلام ، ایمیلم اگه کمکی به
to vote
سلام ، کوشا جان ، ارور ماژول
to vote
خیلی خطای مهمی نیست، وقتی
to vote
دست گلت درد نکنه ، مرسی بابت
to vote
بله حتما، از طریق ایمیل با
to vote
سپاس فراوان
to vote
"4- در هنگام ویرایش محتوا
to vote
دوست عزیز فایل به اسم keith
to vote
اره دیدم ، اما نگفتین که کجا
to vote
ماژول libraries رو که نصب و
to vote
مرسی کوشا جان بابت آپدیت ،
to vote
خواهش میکنم
to vote
تغییر تاریخ شمسی همراه با تاریخ ویندوز
to vote
سلام
to vote
مشخصات سرور
to vote
ارور
to vote
ارور
to vote
بررسی شد
to vote
حل شد!
to vote
دوباره commit کردم بازهم باید
to vote
سلام ، نسخه ی جدید رو گرفتم ،
to vote
همینطور تاریخ ارسال نوشته رو
to vote
:|
to vote
:)))) ، یه کم صبر کن ، کم کم
to vote
سلام ، توی صفحه ی مطالب بالای
to vote
سلام ، توی صفحه ی مطالب بالای
to vote
خطا
to vote
آقا دیگه مشکل نداره! اگه داشت
to vote
کوشا کل ماژول رو کامل حذف
to vote
در مورد وردپرس هم شروع به کار
to vote
اگه ماژول devel نصب باشه توی
to vote
اهااااان فهمیدم! درسش میکنم
to vote
آقا چجوری این رو دانلود کنم؟
to vote
متاسفانه هنوز لینک دانلود
to vote
خب به سلامتی ، منتظر آپدیت
to vote
مشکل در درست کردن ارشیو
to vote
یعنی یه فیل اضافه کردید به
to vote
مشکل در درست کردن ارشیو(حل شد)
to vote
سلام کوشا جان ، من یه دروپال
to vote
تشکر
to vote
لازم دونستم برای اون دسته از
to vote
دوست من. همه ما آرزو میکنیم
to vote
مشکل تاریخ شمسی با ماژول
to vote
استفاده از کد PHP توسط کاربر
to vote
اینکه با نوشتن یه ماژول دیگه
to vote
امیر عزیز. احساس میکنم شما
to vote
هر چیزی یه سری اصول داره و
to vote
بله هک نکردن دروپال یک کار
to vote
حرف هاتون رو قبول دارم که
to vote
بخش انتهایی مقاله:
to vote
پاراگراف اول مربوط میشه به یک
to vote
دوست عزیز مجاز هست، ولی به
to vote
وقتی مجازه که در موردش توضیح
to vote
ما هم همین حرف رو میزنیم. هر
to vote
مرسی بابت زحماتتون ، خسته
to vote
مرسی آقا علی
to vote
Data Base
to vote
سلام آقا پارسا.
to vote
سلام
to vote
سلام. خوشحالم که دیتکس مفید
to vote
ممنون از پاسخگویی شما
to vote
l10n_client رو تست نکردم، ولی
to vote
سلام
to vote
برای فعال کردن فیلدهای
to vote
با سلام
to vote
فیلد term refrence که ساختید،
to vote
سلام
to vote
من ماژول HS رو فقط زمان ایجاد
to vote
سلام
to vote
کدام قسمت رو متوجه نشدید.
to vote
سلام
to vote
drupal.org و گشتم ولی مطالبی
to vote
پر شدن watchdog
to vote
استفاده از دیتکس در فیلد های قابل تکثیر
to vote
دیدگاه جدیدی بگذارید