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

تجربیات تحقیق و توسعه من در حوزه فناوری اطلاعات

اصلاح تاریخ شمسی در گرید های ناپ‌کامرس

نویسنده:
20 ژانویه 22

اگر به دنبال پروژه های متن باز و راه اندازی فروشگاه اینترنتی بوده اید، حتما با حال اسم NopCommerce  به گوش شما خورده است، پروژه بی نظیری که تصمیم دارم از این به بعد بیشتر در موردش صحبت کنم و بنویسم. آشنایی من با این پروژه بر می گرده به حدود شش سال پیش [پروژه مترجم فایل های ناپ‌کامرس]، آن زمان که نسخه ۳٫۹ منتشر شده بود، آن زمان به درخواست یکی از عزیزان به دنبال راه اندازی فروشگاه اینترنتی با قابلیت پذیریش بیت کوین بودم. کار جدی من با نسخه ۴٫۲ برای سایت آروان چوب، نسخه ۴٫۳ برای فروشگاه اینترنتی طب تیک، و نسخه ۴٫۴ برای فروشگاه دنسیس بوده است.

یکی از دغدغه هایی که در پروژه های متن سازی بین المللی وجود دارد، بومی سازی پروژه های برای مصرف داخل هست، پروژه ناپ‌کامرس به خوبی از چند زبانگی (multi languages) و چند محلی (multicultural) پشتیبانی می کند و برای استفاده در محیط فارسی و شمسی نیاز به تغییر زیادی ندارد، و اکثر تغییرات به صورت خودکار اعمال می شود.

برای نمایش صحیح تاریخ شمسی در گرید های ناپ کامرس لازم هست یک تغییر جزیی اعمال شود.

همانطور که می دانید پروژه ناپ‌کامرس برای نمایش گریدها از کتابخانه قدرتمند datatables  استفاده می کند، همچنین برای نمایش تاریخ و پیشتیبانی از چندمحلی از کتابخانه moment  استفاده می کند، و به همین دلیل تغییرات بسیار ساده اعمال می شود.

تمامی گرید های ناپ کامرس توسط یک Partial View  به نام Table  ساخته می شود، این به این معنی هست که با یک بار تغییر می توان این مسئله را در کل پروژه اصلاح کرد. در ویو Table  یک Partial  دیگر وجود به نام _Table.Definition.cshtml دارد که ساختار گرید را مشخص می کند.

در صورتی که تنظیمات سرور به درستی انجام شده باشد، مشخصات کالچر به صورت صحیح در این خط تنظیم می شود.

    //the locale which MomentJS should use
    var locale = CultureInfo.CurrentCulture.Name;

در نسخه های قبلی نیاز بود که این مقدار به صورت دستی به شکل زیر تغییر کند.

    //the locale which MomentJS should use
    var locale = "fa";

فیلد تاریخ در جداول به صورت Text  با Render از نوع Date مشخص می شود و نتیجه متن تاریخ نهایی در خط زیر مشخص می شود.

case RenderDate date:
    <text>
         render: function (data, type, row, meta) {
            return (data) ? moment(data).locale('@locale').format('@date.Format') : null;
         },
    </text>
    break;

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

نتیجه را تصویر زیر مشاهده می کنید

بعد از اعمال تغییرات و نمایش تاریخ شمسی

قبل از اعمال تغییرات و تاریخ میلادی

بنا دارم از این به بعد در مورد ناپ کامرس و تجربیاتم بیشتر بنویسم، اگر شما هم سوالی در این مورد دارید بفرمایید، در حد توانم پاسخ می دهم.

فیلم آموزش حرفه ای ساخت پلاگین برای نوپ کامرس nopcommerce

نویسنده:
27 ژانویه 18

مدتی هست (بیشتر از دو سال) با که با نوپ کامرس آشنا شدم، به نظر من یکی از بهترین پروژه های متن باز ASP.NET هست، تا حالا نشده با این پروژه فروشگاه جدی راه اندازی کنم (به اصطلاح بار نخورده) ولی خب از کدش خیلی چیز های یادگرفتم و از قسمت هایی از کد توی پروژه ه هام استفاده کردم

ویدیو های رسمی نوپ کامرس برای پلاگین نویسی رو برای ش ما هم می گذارم

Advanced nopCommerce plugin tutorial

Advanced nopCommerce plugin tutorial (part 1)

 

Advanced nopCommerce plugin tutorial (part 2)

 

Advanced nopCommerce plugin tutorial (part 3)

 

Advanced nopCommerce plugin tutorial (part 4)

 

برنامه مترجم فایل زبان فروشگاه NopCommerce

نویسنده:
18 آوریل 15

سلام

در نوشته قبل با عنوان ” برنامه مترجم گوگل به زبان #C ” توضیح دادم که به دنبال بومی سازی یک سیستم متن باز هستم، و همچنین برنامه ی مترجم گوگل رو هم معرفی کردم.

سیستم متن بازی که من به دنبال فراگیری و بومی سازی آن هستم، فروشگاه متن باز نوپ کامرس NopCommerce  هست.

نوپ کامرس فروشگاه متن بازی است که با ASP.NET MVC  نوشته شده و فعلا در نسخه ۳٫۵ هست. این فروشگاه از نظر امکانات و مستندات استفاده و مستندات توسعه در وضعیت خوبی هست. (در یک مطلب به صورت مفصل در مورد این سیستم صحبت خواهم کرد)

همان طور که در مطلب قبل گفتم نیاز شد که برنامه ای داشته باشیم تا بتوان به کمک ترجمه گوگل، فایل زبانی فارسی نوپ کامرس را ایجاد کنیم.

در ادامه پروژه قبل، برنامه ای نوشتم که این امکان رو به کاربر می دهد که با وارد کردن فایل XML  مربوط به زبان، ترجمه آن را به هر زبانی در قالب استاندارد دریافت کند. (اگر نیازی به توضیحات بیشتر در این باره هست در کامنت ها در تماس هستیم)

البته این رو هم عرض کنم که من واقعا توسعه دهنده ویندوز نیستم و تخصص من وب هست، ولی به دلیل اینکه خواستم ابزار کاربردی درست کرده باشم، این برنامه رو نوشتم، پس کمی و کاستی های این پروژه را به بزرگی خودتان ببخشید و در توسعه و بهبود این برنامه با هم همکار باشیم 🙂

مترجم فروشگاه نوپ کامرس فارسی

مترجم فروشگاه نوپ کامرس فارسی

 

سورس برنامه ” برنامه مترجم فایل زبان فروشگاه متن باز NopCommerce ” از طریق این لینک قابل دریافت هست، همچنین شما می توانید یک نسخه از این پروژه را در گیت هاب برای خود داشته باشید. همچنین فایل ترجمه فارسی نوپ کامرس که با این برنامه آماده شده نیز در دسترس هست.

موفق باشید