/** * Bootstrap any application services. * * @return void */ public function boot() { $favicon = Settings::getSettings()['favicon']; $logo = Settings::getSettings()['logo']; $parent_categories = Category::getCategoriesByPublish(1, 0, 1); View::share('favicon', $favicon); View::share('logo', $logo); View::share('parent_categories', $parent_categories); }
/** * Site settings * * @param Request $request * @return \Illuminate\Contracts\View\Factory|\Illuminate\Http\RedirectResponse|\Illuminate\View\View */ public function index(Request $request) { $settings = Settings::getSettings(); if ($request->isMethod('post')) { $rules = ['url' => 'required', 'email' => 'required|email', 'title' => 'required', 'desc' => 'required', 'keys' => 'required', 'logo' => 'mimes:jpeg,png', 'favicon' => 'mimes:jpeg,png']; Validator::make($request->all(), $rules)->validate(); $settings->url = $request->input('url'); $settings->email = $request->input('email'); $settings->title = $request->input('title'); $settings->desc = $request->input('desc'); $settings->keys = $request->input('keys'); if (!empty($request->file("logo"))) { if (Storage::exists('uploads/' . $settings->logo)) { Storage::delete('uploads/' . $settings->logo); } $generated_string = str_random(32); $file = $request->file("logo")->store('uploads'); $new_file = $generated_string . '.' . $request->file("logo")->getClientOriginalExtension(); Storage::move($file, 'uploads/' . $new_file); $img = Image::make($request->file('logo')); $img->crop(200, 26); $img->save(storage_path('app/public/uploads/' . $new_file)); $settings->logo = $new_file; } if (!empty($request->file("favicon"))) { if (Storage::exists('uploads/' . $settings->favicon)) { Storage::delete('uploads/' . $settings->favicon); } $generated_string = str_random(32); $file = $request->file("favicon")->store('uploads'); $new_file = $generated_string . '.' . $request->file("favicon")->getClientOriginalExtension(); Storage::move($file, 'uploads/' . $new_file); $img = Image::make($request->file('favicon')); $img->crop(16, 16); $img->save(storage_path('app/public/uploads/' . $new_file)); $settings->favicon = $new_file; } if ($request->input('maintenance') == '0') { Artisan::call('down'); } else { Artisan::call('up'); } $settings->maintenance = $request->input('maintenance'); $settings->save(); return redirect()->back(); } else { return view('admin.settings', compact('settings')); } }
public function actionSettings() { $request = Yii::$app->request; if (isset($_POST['db-button'])) { foreach (Settings::find()->where(['like', 'field', 'db_'])->all() as $row) { $field = Settings::findOne(['field' => $row['field']]); $field->value = $request->post($row['field'], ''); $field->save(); } } if (isset($_POST['db-check'])) { $db = new \yii\db\Connection(['dsn' => 'mysql:host=' . $request->post('db_host', '') . ';dbname=' . $request->post('db_name', ''), 'username' => $request->post('db_user', ''), 'password' => $request->post('db_password', ''), 'emulatePrepare' => true, 'charset' => 'utf8']); try { $db->open(); Yii::$app->session->setFlash('success', 'Соединение успешно'); } catch (\Exception $e) { Yii::$app->session->setFlash('error', 'Ошибка подключения: ' . $e->getMessage()); } } // if (isset($_POST['ts-button'])) //сохранить типы отправлений // { // $field = Settings::findOne([ // 'field' => 'shipping_type', // ]); // $field->value = serialize($request->post('types', '')); // $field->save(); // } if (isset($_POST['os-button-mail'])) { $field = Settings::findOne(['field' => 'order_status_mail']); $field->value = serialize($request->post('statuses_mail', '')); $field->save(); } if (isset($_POST['os-button-sms'])) { $field = Settings::findOne(['field' => 'order_status_sms']); $field->value = serialize($request->post('statuses_sms', '')); $field->save(); } if (isset($_POST['app-button'])) { foreach (Settings::find()->where(['like', 'field', 'app_'])->all() as $row) { $field = Settings::findOne(['field' => $row['field']]); $field->value = $request->post($row['field'], ''); $field->save(); } } if (isset($_POST['mail-button'])) { $field = Settings::findOne(['field' => 'mails']); $field->value = serialize(array_filter($request->post('mails', ''))); $field->save(); foreach (Settings::find()->where(['like', 'field', 'mail_'])->all() as $row) { $field = Settings::findOne(['field' => $row['field']]); $field->value = $request->post($row['field'], ''); $field->save(); } } if (isset($_POST['sms-button'])) { foreach (Settings::find()->where(['like', 'field', 'sms_'])->all() as $row) { $field = Settings::findOne(['field' => $row['field']]); $field->value = $request->post($row['field'], ''); $field->save(); } } $settings = Settings::getSettings(); return $this->render('settings', ['settings' => $settings, 'types' => $types, 'statuses_mail' => $statuses_mail, 'statuses_sms' => $statuses_sms]); }
public static function SendSms($text, $order) { $settings = Settings::getSettings(); $number = $order->phone; $number = preg_replace("#[^0-9]#", "", $number); // стерли хрень, оставили цифры if ($number[0] != '+') { $number[0] = 7; $number = '+' . $number; } $src = '<?xml version="1.0" encoding="UTF-8"?> <SMS> <operations> <operation>SEND</operation> </operations> <authentification> <username>' . $settings['app_smslogin'] . '</username> <password>' . $settings['app_smspassword'] . '</password> </authentification> <message> <sender>SMS</sender> <text>' . $text . '</text> </message> <numbers> <number>+79277323848</number> </numbers> </SMS>'; /* ПчелкинДом */ $Curl = curl_init(); $CurlOptions = array(CURLOPT_URL => 'https://my.atompark.com/sms/xml.php', CURLOPT_FOLLOWLOCATION => false, CURLOPT_POST => true, CURLOPT_HEADER => false, CURLOPT_RETURNTRANSFER => true, CURLOPT_CONNECTTIMEOUT => 15, CURLOPT_TIMEOUT => 100, CURLOPT_POSTFIELDS => array('XML' => $src)); curl_setopt_array($Curl, $CurlOptions); if (false === ($Result = curl_exec($Curl))) { $result = false; } else { $result = true; } curl_close($Curl); //$result = true; return $result; }
public function getDbShopConnect() { $settings = Settings::getSettings(); $db = new \yii\db\Connection(['dsn' => 'mysql:host=' . $settings['db_host'] . ';dbname=' . $settings['db_name'], 'username' => $settings['db_user'], 'password' => $settings['db_password'], 'emulatePrepare' => true, 'charset' => 'utf8']); try { $db->open(); return $db; } catch (\Exception $e) { return false; } }