This commit is contained in:
denisdulici 2020-05-23 15:34:54 +03:00
parent ce14bc5f49
commit 0463291d09
3 changed files with 23 additions and 12 deletions

View File

@ -4,6 +4,7 @@ namespace App\Http\Controllers\Settings;
use App\Abstracts\Http\Controller; use App\Abstracts\Http\Controller;
use App\Models\Setting\Setting; use App\Models\Setting\Setting;
use App\Utilities\Modules as Utility;
use App\Http\Requests\Setting\Module as Request; use App\Http\Requests\Setting\Module as Request;
class Modules extends Controller class Modules extends Controller
@ -54,9 +55,10 @@ class Modules extends Controller
setting()->set($alias . '.' . $key, $value); setting()->set($alias . '.' . $key, $value);
} }
// Save all settings
setting()->save(); setting()->save();
Utility::clearPaymentMethodsCache();
$message = trans('messages.success.updated', ['type' => trans_choice('general.settings', 2)]); $message = trans('messages.success.updated', ['type' => trans_choice('general.settings', 2)]);
$response = [ $response = [

View File

@ -9,10 +9,8 @@ class Modules
{ {
public static function getPaymentMethods($type = null) public static function getPaymentMethods($type = null)
{ {
$company_id = session('company_id'); $cache_admin = static::getPaymentMethodsCacheKey('admin');
$cache_customer = static::getPaymentMethodsCacheKey('customer');
$cache_admin = 'payment_methods.' . $company_id . '.admin';
$cache_customer = 'payment_methods.' . $company_id . '.customer';
$payment_methods = Cache::get($cache_admin); $payment_methods = Cache::get($cache_admin);
@ -65,6 +63,21 @@ class Modules
return ($payment_methods) ? $payment_methods : []; return ($payment_methods) ? $payment_methods : [];
} }
public static function clearPaymentMethodsCache()
{
Cache::forget(static::getPaymentMethodsCacheKey('admin'));
Cache::forget(static::getPaymentMethodsCacheKey('customer'));
if (config('setting.cache.enabled')) {
Cache::forget(setting()->getCacheKey());
}
}
public static function getPaymentMethodsCacheKey($type)
{
return 'payment_methods.' . session('company_id') . '.' . $type;
}
protected static function sortPaymentMethods(&$list) protected static function sortPaymentMethods(&$list)
{ {
$sort_order = []; $sort_order = [];

View File

@ -3,8 +3,8 @@
namespace Modules\OfflinePayments\Http\Controllers; namespace Modules\OfflinePayments\Http\Controllers;
use App\Abstracts\Http\Controller; use App\Abstracts\Http\Controller;
use App\Utilities\Modules;
use Illuminate\Http\Response; use Illuminate\Http\Response;
use Illuminate\Support\Facades\Cache;
use Modules\OfflinePayments\Http\Requests\Setting as Request; use Modules\OfflinePayments\Http\Requests\Setting as Request;
use Modules\OfflinePayments\Http\Requests\SettingGet as GRequest; use Modules\OfflinePayments\Http\Requests\SettingGet as GRequest;
use Modules\OfflinePayments\Http\Requests\SettingDelete as DRequest; use Modules\OfflinePayments\Http\Requests\SettingDelete as DRequest;
@ -68,9 +68,7 @@ class Settings extends Controller
setting()->save(); setting()->save();
if (config('setting.cache.enabled')) { Modules::clearPaymentMethodsCache();
Cache::forget(setting()->getCacheKey());
}
$response = [ $response = [
'status' => null, 'status' => null,
@ -154,9 +152,7 @@ class Settings extends Controller
setting()->save(); setting()->save();
if (config('setting.cache.enabled')) { Modules::clearPaymentMethodsCache();
Cache::forget(setting()->getCacheKey());
}
$message = trans('messages.success.deleted', ['type' => $remove['name']]); $message = trans('messages.success.deleted', ['type' => $remove['name']]);