Closed aliqasemzadeh closed 5 years ago
منظورتون از تنظمات داخلی فایل config/gateways.php هست؟
بله مثلا من می خواهم ملت را صدا بزنم بدون نیاز به تنظیمات
بله وقتی
Gateway::of('mellat')
رو صدا بزنید از همون فایل میخونه اما اگه بخواهید خودتون کلاس ملت رو instantiate کنید اونوقت باید خودتون تنظیمات رو بهش بدید
new Mellat(app(), config('gateways.mellat'))
که به شکل بالا باز هم میتونید از فایل تنظیمات داخلی بخونید یا این که از یک آرایه استفاده کنید به شکل زیر
new Mellat(app(), [
'username' => '',
'password' => '',
'terminalId' => 0000000,
'callback-url' => '/'
]);
بسیار عالی
حالا یک چیز دیگری که به نظرم نیاز است اسم درگاه ها به فارسی در فایل تنظیمات هست اگر داشته باشیم بسیار عالی هست
و همچنین این که فعال هستند یا نه
درست متوجه نشدم لطفا بیشتر توضیح بدید
new Mellat(app(), [
'name' => 'بانک ملت',
'active' => true,
'username' => '',
'password' => '',
'terminalId' => 0000000,
'callback-url' => '/'
]);
این دو مورد را برای همه درگاه ها داشته باشیم.
کاربردش چی هست؟ منظورم این هست که باید از این پارامتر های جدید یک جایی استفاده بشه در ضمن فایل تنظیمات ما یک نسخه ی مثال هست هر کس میتونه این تنظیمات یا هر تنظیمات دیگه ای رو اضافه کنه
شاید به نظر بیاد که کاربرد خاصی ندارد اما معمولا همه ما از چند درگاه بانک استفاده می کنیم وقتی فعال بودن یا فعال نبود در تنظیمات باشه می توان به سادگی آن هایی که فعال هستند را نمایش داد و همچنین نام صحیح و فارسی را داشت
حتی به نظرم یک Order هم لازمه که بتوان بر اساس آن مرتب سازی را انجام داد.
متوجه منظورتون شدم داشتن همچین کاربردهایی به جا و خوب هست تنها نکته اش این هست که ذخیره ی تنظیمات active بودن یا نبودن و مرتب سازی بیشتر به کار پایگاه داده میخوره تا فایل config و تنظیم نام هم بیشتر به فایلهای lang میخوره اضافه کردنشون به تنظیمات تا زمانی که کاربری براشون داخل سیستم نداشته باشیم شاید موجب سردرگمی افرادی که نمیدونند اینها برای چی هست بشه
@hamed-ehtesham اسم که کاملا واضح هست برای چه کاری هست و اصلا توضیحات نیاز ندارد اما در مورد ترتیب و فعال بودن وقتی از این ماژول استفاده می شود کسی دیگر اطلاعات را در دیتابیس ذخیره نمی کند برای همین بهتره در این پکیج باشه
راستی برای مبنا 2 کاری نکردید؟
اگه اینطور فکر میکنید اشکالی نداره اضافه میکنیم
نه هنوز فرصت نکردم برای مبنا 2 کاری کنم
در نسخه ی جدید کد زیر
$activeDrivers = Gateway::activeDrivers();
یک آرایه بر میگردونه که درگاه های فعال به صورت مرتب شده توسط order در فایل config/gateways رو شامل میشه و برای هر درگاه یک key, name میگیریم که key نام درگاه هست که با استفاده از
$gateway = Gateway::of($key);
میتونیم بسازیمش
و
name
هم رشته ی ورودی همون تابع
activeDrivers
که به صورت پیش فرض درگاه
هست رو به ابتدای نام اضافه میکنه و برمیگردونه
یعنی آماده ی استفاده توسط select/option هست
سلام آیا به صورت داخلی اگر تنظیمات را در زمان شروع پرداخت نزنیم خودش از تنظیمات داخلی استفاده می کند؟