public function addProduct($id, $num) { if (Request::ajax()) { if (Session::has("cart")) { $cart = Session::get("cart"); $check = array_key_exists($id, $cart); //kiem tra san pham da co trong gio chua if ($check) { //roi thi tra ve $result = "Sản phẩm đã có trong giỏ hàng"; return json_encode(["result" => $result]); } else { //chua thi them san pham $product = [$id => $num]; $cart = Session::pull("cart"); $cart += $product; Session::put("cart", $cart); $result = "Thêm giỏ hàng thành công"; $tsl = countProducts(); return json_encode(["result" => $result, "tsl" => $tsl]); } } else { //chua ton tai session gio hang $product = [$id => $num]; Session::put("cart", $product); $tsl = $num; $result = "Thêm giỏ hàng thành công"; return json_encode(["result" => $result, "tsl" => $tsl]); } } else { return redirect("/"); } }
/** * Handle the report append command. * * @param \Gitamin\Commands\Identity\AddIdentityCommand $command * * @return \Gitamin\Models\Identity */ public function handle(AddIdentityCommand $command) { $data = ['user_id' => $command->userId, 'extern_uid' => $command->data['extern_uid'], 'provider_id' => $command->data['provider_id'], 'nickname' => $command->data['nickname'], 'created_at' => Carbon::now()->toDateTimeString()]; // Create the identify $identify = Identity::create($data); Session::pull('connect_data'); return $identify; }
/** * Validates the Two Factor token. * * This feels very hacky, but we have to juggle authentication and codes. * * @return \Illuminate\Http\RedirectResponse */ public function postTwoFactor() { // Check that we have a session. if ($userId = Session::pull('2fa_id')) { $code = Binput::get('code'); // Maybe a temp login here. Auth::loginUsingId($userId); $valid = Google2FA::verifyKey(Auth::user()->google_2fa_secret, $code); if ($valid) { return Redirect::intended('dashboard'); } else { // Failed login, log back out. Auth::logout(); return Redirect::route('auth.login')->withError(trans('forms.login.invalid-token')); } } return Redirect::route('auth.login')->withError(trans('forms.login.invalid-token')); }
/** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { if (Session::has('user_instagram_info')) { $rules = array('firstname' => 'required', 'surname' => 'required', 'shopname' => 'required', 'shopemail' => 'required|email', 'pass' => 'required', 'repass' => 'required|same:pass'); // do the validation ---------------------------------- // validate against the inputs from our form $validator = Validator::make($request->all(), $rules); // check if the validator failed ----------------------- if ($validator->fails()) { // get the error messages from the validator $messages = $validator->messages(); // redirect our user back to the form with the errors from the validator return back()->withInput()->withErrors($messages); } else { $instagramInfo = Session::pull('user_instagram_info'); $user = new User(); $user->name = $request->input('firstname'); $user->surname = $request->input('surname'); $user->setAsSupplier(); $user->is_active = false; $user->email = $request->input('shopemail'); $user->password = bcrypt($request->input('pass')); $user->save(); $supplier = new Supplier(); $supplier->id = $user->id; $supplier->shop_name = $request->input('shopname'); $supplier->profile_image = $instagramInfo->user->profile_picture; $supplier->save(); $instagramAccount = new InstagramAccount(); $instagramAccount->instagram_id = $instagramInfo->user->id; $instagramAccount->username = $instagramInfo->user->username; $instagramAccount->access_token = $instagramInfo->access_token; $instagramAccount->full_name = $instagramInfo->user->full_name; $instagramAccount->bio = $instagramInfo->user->bio; $instagramAccount->website = $instagramInfo->user->website; $instagramAccount->profile_picture = $instagramInfo->user->profile_picture; $supplier->instagramAccount()->save($instagramAccount); Storage::makeDirectory($user->id); return redirect()->action('AuthenticationController@showRegister')->with('success', ['Successful']); } } else { return redirect()->action('AuthenticationController@showRegister'); } }
/** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { $rules = array('firstname' => 'required', 'surname' => 'required', 'customeremail' => 'required|email', 'pass' => 'required', 'phone' => 'required', 'rpass' => 'required|same:pass'); $validator = Validator::make($request->all(), $rules); if ($validator->fails()) { // get the error messages from the validator $messages = $validator->messages(); // redirect our user back to the form with the errors from the validator return back()->withInput()->withErrors($messages); } else { if (User::where('email', $request->input('customeremail'))->first()) { return redirect()->action('AuthenticationController@showRegister')->withErrors(['messages' => "Sistemde mail adresi kayıtlı"]); } $user = new User(); $user->name = trim($request->input('firstname')); $user->surname = trim($request->input('surname')); $user->setAsCustomer(); $user->is_active = false; $user->email = $request->input('customeremail'); $user->password = bcrypt($request->input('pass')); $user->save(); $customer = new Customer(); $customer->phone = $request->input('phone'); $customer->id = $user->id; $customer->save(); if (Session::has('user_instagram_info')) { $instagramInfo = Session::pull('user_instagram_info'); $instagramAccount = new InstagramAccount(); $instagramAccount->instagram_id = $instagramInfo->user->id; $instagramAccount->username = $instagramInfo->user->username; $instagramAccount->access_token = $instagramInfo->access_token; $instagramAccount->full_name = $instagramInfo->user->full_name; $instagramAccount->bio = $instagramInfo->user->bio; $instagramAccount->website = $instagramInfo->user->website; $instagramAccount->profile_picture = $instagramInfo->user->profile_picture; $customer->instagramAccount()->save($instagramAccount); } Storage::makeDirectory($user->id); return redirect()->action('AuthenticationController@showRegister')->with('success', ['Successful']); } }
/** * Show the form for creating a single new user. * @return Response */ public function create() { // Check to see if we have been given a summary from the bulk add process. // If this is the case then render the results view instead of the form. $results = Session::pull('bulkResults'); if ($results) { return View::make('users.bulk_summary')->with('results', $results); } else { return View::make('users.create'); } }
public function removeFromComparison($property) { $modified = array_diff(Session::pull('properties_in_comparison', []), [$property->id]); Session::put('properties_in_comparison', $modified); }
/** * Store a newly created resource in storage. * * @param Request $request * @return Response */ public function store(Request $request, History $historyModel, Cloud $cloudModel, Product $productModel, Purchase $purchaseModel) { if (isset($_POST['delete_all_flags'])) { if (!right('Import')) { abort(404); } $productModel->deleteAllFlags(); Session::flash('message', GetMessages("SUCCESS_DELETE_FLAGS")); return redirect()->route('cloud.index'); } if (isset($_POST['delete_all_export_list'])) { if (!right('Import')) { abort(404); } $productModel->deleteAllExport(); Session::flash('message', GetMessages("SUCCESS_DELETE_FLAGS")); return redirect()->route('cloud.index'); } if (isset($_POST['ajax'])) { if (!right('Import')) { abort(404); } Session::forget('idsNewProducts'); } if (isset($_POST['export_site'])) { if (!right('Import')) { abort(404); } //pr($_POST); if (isset($_POST['field'])) { $products = $productModel->getProductFromExportToSite(); if (count($products) > 0) { $res = array(); $res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'ВП ID'); $res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'Производитель'); $res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'Наменование'); if (isset($_POST['field']['GK'])) { $res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'ID ГК'); $res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'Цена ГК'); $res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'Валюта ГК'); $res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'Активность ГК'); $res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'Яндекс ГК'); } if (isset($_POST['field']['TV'])) { $res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'ID ТВ'); $res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'Цена ТВ'); $res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'Валюта ТВ'); $res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'Активность ТВ'); $res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'Яндекс ТВ'); } if (isset($_POST['field']['MK'])) { $res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'ID МК'); $res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'Цена МК'); $res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'Валюта МК'); $res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'Активность МК'); $res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'Яндекс МК'); } $res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'Наличие'); $i = 1; foreach ($products as $product) { $res[$i][] = $product->id; $res[$i][] = iconv('UTF-8', 'cp1251//TRANSLIT', $product->brand); $res[$i][] = iconv('UTF-8', 'cp1251//TRANSLIT', $product->name); if (isset($_POST['field']['GK'])) { if (strpos($product->GK_price, '.')) { $product->GK_price = str_replace('.', ',', $product->GK_price); //заменяем точку на запятую, ибо эксель ебанутый(( } if ($product->GK_currency == 'RUB') { $product->GK_price = intval($product->GK_price); //округляем, если валюта RUB } $res[$i][] = $product->GK_id; $res[$i][] = $product->GK_price; $res[$i][] = $product->GK_currency; $res[$i][] = $product->GK_enabled; $res[$i][] = $product->GK_yandex_enabled; } if (isset($_POST['field']['TV'])) { if (strpos($product->TV_price, '.')) { $product->TV_price = str_replace('.', ',', $product->TV_price); //заменяем точку на запятую, ибо эксель ебанутый(( } if ($product->TV_currency == 'RUB') { $product->TV_price = intval($product->TV_price); //округляем, если валюта RUB } $res[$i][] = $product->TV_id; $res[$i][] = $product->TV_price; $res[$i][] = $product->TV_currency; $res[$i][] = $product->TV_enabled; $res[$i][] = $product->TV_yandex_enabled; } if (isset($_POST['field']['MK'])) { if (strpos($product->MK_price, '.')) { $product->MK_price = str_replace('.', ',', $product->MK_price); //заменяем точку на запятую, ибо эксель ебанутый(( } if ($product->MK_currency == 'RUB') { $product->MK_price = intval($product->MK_price); //округляем, если валюта RUB } $res[$i][] = $product->MK_id; $res[$i][] = $product->MK_price; $res[$i][] = $product->MK_currency; $res[$i][] = $product->MK_enabled; $res[$i][] = $product->MK_yandex_enabled; } $res[$i][] = $product->in_stock; $i++; } $this->saveToCSV($res); Session::flash('message', GetMessages("SUCCESS_EXPORT")); return redirect()->route('cloud.index'); } else { return redirect()->route('cloud.index'); } } else { return redirect()->route('cloud.index'); } } if (isset($_POST['export_prod'])) { if (!right('Import')) { abort(404); } //pr($_POST); $fields = array(); $fields[] = 'products.id'; !isset($_POST['field']['prod']['status']) ?: ($fields[] = 'products.status'); !isset($_POST['field']['prod']['name']) ?: ($fields[] = 'products.name'); !isset($_POST['field']['prod']['category']) ?: ($fields[] = 'products.category_id'); !isset($_POST['field']['prod']['category']) ?: ($fields[] = 'PC.name as category_name'); !isset($_POST['field']['prod']['brand']) ?: ($fields[] = 'products.brand_id'); !isset($_POST['field']['prod']['brand']) ?: ($fields[] = 'PB.name as brand_name'); !isset($_POST['field']['prod']['article']) ?: ($fields[] = 'products.article'); !isset($_POST['field']['prod']['ean']) ?: ($fields[] = 'products.ean'); !isset($_POST['field']['prod']['mrc']) ?: ($fields[] = 'products.mrc'); !isset($_POST['field']['prod']['mrc']) ?: ($fields[] = 'products.mrc_currency'); !isset($_POST['field']['prod']['price']) ?: ($fields[] = 'products.price'); !isset($_POST['field']['prod']['price']) ?: ($fields[] = 'products.price_currency'); !isset($_POST['field']['prod']['target_margin']) ?: ($fields[] = 'products.target_margin'); !isset($_POST['field']['prod']['in_stock']) ?: ($fields[] = 'products.in_stock'); !isset($_POST['field']['site']['id']) ?: ($fields[] = 'GK.site_id as GK_id'); !isset($_POST['field']['site']['enabled']) ?: ($fields[] = 'GK.enabled as GK_enabled'); !isset($_POST['field']['site']['yandex_enabled']) ?: ($fields[] = 'GK.yandex_enabled as GK_yandex_enabled'); !isset($_POST['field']['site']['currency']) ?: ($fields[] = 'GK.currency as GK_currency'); !isset($_POST['field']['site']['price']) ?: ($fields[] = 'GK.price as GK_price'); !isset($_POST['field']['site']['id']) ?: ($fields[] = 'TV.site_id as TV_id'); !isset($_POST['field']['site']['enabled']) ?: ($fields[] = 'TV.enabled as TV_enabled'); !isset($_POST['field']['site']['yandex_enabled']) ?: ($fields[] = 'TV.yandex_enabled as TV_yandex_enabled'); !isset($_POST['field']['site']['currency']) ?: ($fields[] = 'TV.currency as TV_currency'); !isset($_POST['field']['site']['price']) ?: ($fields[] = 'TV.price as TV_price'); !isset($_POST['field']['site']['id']) ?: ($fields[] = 'MK.site_id as MK_id'); !isset($_POST['field']['site']['enabled']) ?: ($fields[] = 'MK.enabled as MK_enabled'); !isset($_POST['field']['site']['yandex_enabled']) ?: ($fields[] = 'MK.yandex_enabled as MK_yandex_enabled'); !isset($_POST['field']['site']['currency']) ?: ($fields[] = 'MK.currency as MK_currency'); !isset($_POST['field']['site']['price']) ?: ($fields[] = 'MK.price as MK_price'); $products = $productModel->getProductFromExport($fields); if (count($products) > 0) { $res = array(); $res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'VP01 Id товара'); !isset($_POST['field']['prod']['status']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'VP02 Статус')); !isset($_POST['field']['prod']['name']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'VP03 Наименование')); !isset($_POST['field']['prod']['category']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'Категория')); !isset($_POST['field']['prod']['category']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'VP04 ID категории')); !isset($_POST['field']['prod']['brand']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'Производитель')); !isset($_POST['field']['prod']['brand']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'VP05 ID производителя')); !isset($_POST['field']['prod']['article']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'VP06 Артикул')); !isset($_POST['field']['prod']['ean']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'VP07 Штрих-код')); !isset($_POST['field']['prod']['mrc']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'VP08 МРЦ')); !isset($_POST['field']['prod']['mrc']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'VP09 МРЦ валюта')); !isset($_POST['field']['prod']['price']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'VP10 Прайс')); !isset($_POST['field']['prod']['price']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'VP11 Прайс валюта')); !isset($_POST['field']['prod']['target_margin']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'VP12 Маржинальность')); !isset($_POST['field']['prod']['in_stock']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'VP13 Наличие')); !isset($_POST['field']['site']['id']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'GK01 ID на ГК')); !isset($_POST['field']['site']['enabled']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'GK02 Статус ГК')); !isset($_POST['field']['site']['yandex_enabled']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'GK03 Маркет ГК')); !isset($_POST['field']['site']['currency']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'GK04 Валюта ГК')); !isset($_POST['field']['site']['price']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'GK05 Цена ГК')); !isset($_POST['field']['site']['id']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'TV01 ID на ТВ')); !isset($_POST['field']['site']['enabled']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'TV02 Статус ТВ')); !isset($_POST['field']['site']['yandex_enabled']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'TV03 Маркет ТВ')); !isset($_POST['field']['site']['currency']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'TV04 Валюта ТВ')); !isset($_POST['field']['site']['price']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'TV05 Цена ТВ')); !isset($_POST['field']['site']['id']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'MK01 ID на МК')); !isset($_POST['field']['site']['enabled']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'MK02 Статус МК')); !isset($_POST['field']['site']['yandex_enabled']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'MK03 Маркет МК')); !isset($_POST['field']['site']['currency']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'MK04 Валюта МК')); !isset($_POST['field']['site']['price']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'MK05 Цена МК')); $i = 1; foreach ($products as $product) { $res[$i][] = $product->id; !isset($_POST['field']['prod']['status']) ?: ($res[$i][] = $product->status); !isset($_POST['field']['prod']['name']) ?: ($res[$i][] = iconv('UTF-8', 'cp1251//TRANSLIT', $product->name)); !isset($_POST['field']['prod']['category']) ?: ($res[$i][] = iconv('UTF-8', 'cp1251//TRANSLIT', $product->category_name)); !isset($_POST['field']['prod']['category']) ?: ($res[$i][] = $product->category_id); !isset($_POST['field']['prod']['brand']) ?: ($res[$i][] = iconv('UTF-8', 'cp1251//TRANSLIT', $product->brand_name)); !isset($_POST['field']['prod']['brand']) ?: ($res[$i][] = $product->brand_id); !isset($_POST['field']['prod']['article']) ?: ($res[$i][] = iconv('UTF-8', 'cp1251//TRANSLIT', $product->article)); !isset($_POST['field']['prod']['ean']) ?: ($res[$i][] = $product->ean); if (isset($_POST['field']['prod']['mrc'])) { if (strpos($product->mrc, '.')) { $product->mrc = str_replace('.', ',', $product->mrc); //заменяем точку на запятую, ибо эксель ебанутый(( } $res[$i][] = $product->mrc; } !isset($_POST['field']['prod']['mrc']) ?: ($res[$i][] = $product->mrc_currency); if (isset($_POST['field']['prod']['price'])) { if (strpos($product->price, '.')) { $product->price = str_replace('.', ',', $product->price); //заменяем точку на запятую, ибо эксель ебанутый(( } $res[$i][] = $product->price; } !isset($_POST['field']['prod']['price']) ?: ($res[$i][] = $product->price_currency); !isset($_POST['field']['prod']['target_margin']) ?: ($res[$i][] = $product->target_margin); !isset($_POST['field']['prod']['in_stock']) ?: ($res[$i][] = $product->in_stock); !isset($_POST['field']['site']['id']) ?: ($res[$i][] = $product->GK_id); !isset($_POST['field']['site']['enabled']) ?: ($res[$i][] = $product->GK_enabled); !isset($_POST['field']['site']['yandex_enabled']) ?: ($res[$i][] = $product->GK_yandex_enabled); !isset($_POST['field']['site']['currency']) ?: ($res[$i][] = $product->GK_currency); if (isset($_POST['field']['site']['price'])) { if (strpos($product->GK_price, '.')) { $product->GK_price = str_replace('.', ',', $product->GK_price); //заменяем точку на запятую, ибо эксель ебанутый(( } $res[$i][] = $product->GK_price; } !isset($_POST['field']['site']['id']) ?: ($res[$i][] = $product->TV_id); !isset($_POST['field']['site']['enabled']) ?: ($res[$i][] = $product->TV_enabled); !isset($_POST['field']['site']['yandex_enabled']) ?: ($res[$i][] = $product->TV_yandex_enabled); !isset($_POST['field']['site']['currency']) ?: ($res[$i][] = $product->TV_currency); if (isset($_POST['field']['site']['price'])) { if (strpos($product->TV_price, '.')) { $product->TV_price = str_replace('.', ',', $product->TV_price); //заменяем точку на запятую, ибо эксель ебанутый(( } $res[$i][] = $product->TV_price; } !isset($_POST['field']['site']['id']) ?: ($res[$i][] = $product->MK_id); !isset($_POST['field']['site']['enabled']) ?: ($res[$i][] = $product->MK_enabled); !isset($_POST['field']['site']['yandex_enabled']) ?: ($res[$i][] = $product->MK_yandex_enabled); !isset($_POST['field']['site']['currency']) ?: ($res[$i][] = $product->MK_currency); if (isset($_POST['field']['site']['price'])) { if (strpos($product->MK_price, '.')) { $product->MK_price = str_replace('.', ',', $product->MK_price); //заменяем точку на запятую, ибо эксель ебанутый(( } $res[$i][] = $product->MK_price; } $i++; } $this->saveToCSV($res); Session::flash('message', GetMessages("SUCCESS_EXPORT")); return redirect()->route('cloud.index'); } else { return redirect()->route('cloud.index'); } } if (isset($_POST['export_purch'])) { if (!right('Import')) { abort(404); } $fields = array(); $fields[] = 'purchase.id as purchase_id'; $fields[] = 'P.id as product_id'; !isset($_POST['field']['purch']['name']) ?: ($fields[] = 'P.name as product_name'); !isset($_POST['field']['purch']['article']) ?: ($fields[] = 'P.article as article'); !isset($_POST['field']['purch']['price']) ?: ($fields[] = 'P.price as price'); !isset($_POST['field']['purch']['price']) ?: ($fields[] = 'P.price_currency as price_currency'); !isset($_POST['field']['purch']['ean']) ?: ($fields[] = 'P.ean as ean'); !isset($_POST['field']['purch']['category']) ?: ($fields[] = 'PC.name as category'); !isset($_POST['field']['purch']['brand']) ?: ($fields[] = 'PB.name as brand'); !isset($_POST['field']['purch']['provider']) ?: ($fields[] = 'PROV.name as provider'); !isset($_POST['field']['purch']['provider']) ?: ($fields[] = 'PROV.id as provider_id'); !isset($_POST['field']['purch']['base_price']) ?: ($fields[] = 'purchase.base_price'); !isset($_POST['field']['purch']['currency']) ?: ($fields[] = 'purchase.currency'); !isset($_POST['field']['purch']['raise']) ?: ($fields[] = 'purchase.raise'); !isset($_POST['field']['purch']['discount_price']) ?: ($fields[] = 'purchase.discount_price'); !isset($_POST['field']['purch']['discount_bulk']) ?: ($fields[] = 'purchase.discount_bulk'); $purchases = $purchaseModel->getPurchaseFromExport($fields); if (count($purchases) > 0) { $res = array(); $res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'PU01 Id закупки'); $res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'PU02 Id товара'); !isset($_POST['field']['purch']['name']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'Наименование')); !isset($_POST['field']['purch']['article']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'Артикул')); !isset($_POST['field']['purch']['price']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'Прайс')); !isset($_POST['field']['purch']['price']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'Валюта прайса')); !isset($_POST['field']['purch']['ean']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'Штрих-код')); !isset($_POST['field']['purch']['category']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'Категория')); !isset($_POST['field']['purch']['brand']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'Производитель')); !isset($_POST['field']['purch']['provider']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'Поставщик')); !isset($_POST['field']['purch']['provider']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'PU03 ID поставщика')); !isset($_POST['field']['purch']['base_price']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'PU04 Базовая цена')); !isset($_POST['field']['purch']['currency']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'PU05 Валюта')); !isset($_POST['field']['purch']['raise']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'PU06 Поправка к ЦБ')); !isset($_POST['field']['purch']['discount_price']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'PU07 Скидка')); !isset($_POST['field']['purch']['discount_bulk']) ?: ($res[0][] = iconv('UTF-8', 'cp1251//TRANSLIT', 'PU08 Доп.скидка')); $i = 1; foreach ($purchases as $purchase) { $res[$i][] = $purchase->purchase_id; $res[$i][] = $purchase->product_id; !isset($_POST['field']['purch']['name']) ?: ($res[$i][] = iconv('UTF-8', 'cp1251//TRANSLIT', $purchase->product_name)); !isset($_POST['field']['purch']['article']) ?: ($res[$i][] = iconv('UTF-8', 'cp1251//TRANSLIT', $purchase->article)); !isset($_POST['field']['purch']['price']) ?: ($res[$i][] = iconv('UTF-8', 'cp1251//TRANSLIT', str_replace('.', ',', $purchase->price))); !isset($_POST['field']['purch']['price']) ?: ($res[$i][] = iconv('UTF-8', 'cp1251//TRANSLIT', $purchase->price_currency)); !isset($_POST['field']['purch']['ean']) ?: ($res[$i][] = iconv('UTF-8', 'cp1251//TRANSLIT', $purchase->ean)); !isset($_POST['field']['purch']['category']) ?: ($res[$i][] = iconv('UTF-8', 'cp1251//TRANSLIT', $purchase->category)); !isset($_POST['field']['purch']['brand']) ?: ($res[$i][] = iconv('UTF-8', 'cp1251//TRANSLIT', $purchase->brand)); !isset($_POST['field']['purch']['provider']) ?: ($res[$i][] = iconv('UTF-8', 'cp1251//TRANSLIT', $purchase->provider)); !isset($_POST['field']['purch']['provider']) ?: ($res[$i][] = $purchase->provider_id); if (isset($_POST['field']['purch']['base_price'])) { if (strpos($purchase->base_price, '.')) { $purchase->base_price = str_replace('.', ',', $purchase->base_price); //заменяем точку на запятую, ибо эксель ебанутый(( } $res[$i][] = $purchase->base_price; } !isset($_POST['field']['purch']['currency']) ?: ($res[$i][] = $purchase->currency); !isset($_POST['field']['purch']['raise']) ?: ($res[$i][] = $purchase->raise); if (isset($_POST['field']['purch']['discount_price'])) { if (strpos($purchase->discount_price, '.')) { $purchase->discount_price = str_replace('.', ',', $purchase->discount_price); //заменяем точку на запятую, ибо эксель ебанутый(( } $res[$i][] = $purchase->discount_price; } if (isset($_POST['field']['purch']['discount_bulk'])) { if (strpos($purchase->discount_bulk, '.')) { $purchase->discount_bulk = str_replace('.', ',', $purchase->discount_bulk); //заменяем точку на запятую, ибо эксель ебанутый(( } $res[$i][] = $purchase->discount_bulk; } $i++; } $this->saveToCSV($res); Session::flash('message', GetMessages("SUCCESS_EXPORT")); return redirect()->route('cloud.index'); } else { return redirect()->route('cloud.index'); } } if (isset($_POST['import_csv'])) { if (!right('Import')) { abort(404); } if (isset($request['file_csv'])) { $file = Input::file('file_csv'); $extension = $file->getClientOriginalExtension(); //получаем расширение if ($extension == 'csv') { $filename = $file->getClientOriginalName(); //оригинальное название файла $real_filename = date("Y_m_d_H_i_s") . '_' . RuslugFacade::make(mb_strtolower($file->getClientOriginalName())); //преобразованное название файла $file->move(base_path() . '/public/storage/import/', $real_filename); //перемещаем файл $header = NULL; $data = array(); if (($handle = fopen(base_path() . cloud_path() . '/import/' . $real_filename, "r")) !== FALSE) { while (($row = fgetcsv($handle, 1000, ';')) !== FALSE) { if (!$header) { $header = $row; } else { $data[] = array_combine($header, $row); } } fclose($handle); $res = []; //pr($data); $i = 0; foreach ($data as $row) { if (array_key_exists(to1251('VP01 Id товара'), $row)) { //это товар if (!empty($row[to1251('VP01 Id товара')])) { //товар уже существует, будем обновлять !array_key_exists(to1251('VP02 Статус'), $row) ?: ($res['update_prod'][$row[to1251('VP01 Id товара')]]['products.status'] = import_field($row[to1251('VP02 Статус')], 'bool', 1)); !array_key_exists(to1251('VP03 Наименование'), $row) ?: ($res['update_prod'][$row[to1251('VP01 Id товара')]]['products.name'] = import_field(toUTF($row[to1251('VP03 Наименование')]), 'string', '')); !array_key_exists(to1251('VP04 ID категории'), $row) ?: ($res['update_prod'][$row[to1251('VP01 Id товара')]]['products.category_id'] = import_field($row[to1251('VP04 ID категории')], 'int', 0)); !array_key_exists(to1251('VP05 ID производителя'), $row) ?: ($res['update_prod'][$row[to1251('VP01 Id товара')]]['products.brand_id'] = import_field($row[to1251('VP05 ID производителя')], 'int', 0)); !array_key_exists(to1251('VP06 Артикул'), $row) ?: ($res['update_prod'][$row[to1251('VP01 Id товара')]]['products.article'] = import_field(toUTF($row[to1251('VP06 Артикул')]), 'string', '')); !array_key_exists(to1251('VP07 Штрих-код'), $row) ?: ($res['update_prod'][$row[to1251('VP01 Id товара')]]['products.ean'] = import_field($row[to1251('VP07 Штрих-код')], 'string', '')); !array_key_exists(to1251('VP08 МРЦ'), $row) ?: ($res['update_prod'][$row[to1251('VP01 Id товара')]]['products.mrc'] = import_field($row[to1251('VP08 МРЦ')], 'float', 0)); !array_key_exists(to1251('VP09 МРЦ валюта'), $row) ?: ($res['update_prod'][$row[to1251('VP01 Id товара')]]['products.mrc_currency'] = import_field($row[to1251('VP09 МРЦ валюта')], 'string', 'RUB')); !array_key_exists(to1251('VP10 Прайс'), $row) ?: ($res['update_prod'][$row[to1251('VP01 Id товара')]]['products.price'] = import_field($row[to1251('VP10 Прайс')], 'float', 0)); !array_key_exists(to1251('VP11 Прайс валюта'), $row) ?: ($res['update_prod'][$row[to1251('VP01 Id товара')]]['products.price_currency'] = import_field($row[to1251('VP11 Прайс валюта')], 'string', 'RUB')); !array_key_exists(to1251('VP12 Маржинальность'), $row) ?: ($res['update_prod'][$row[to1251('VP01 Id товара')]]['products.target_margin'] = import_field($row[to1251('VP12 Маржинальность')], 'float', 0)); !array_key_exists(to1251('VP13 Наличие'), $row) ?: ($res['update_prod'][$row[to1251('VP01 Id товара')]]['products.in_stock'] = import_field($row[to1251('VP13 Наличие')], 'bool', 0)); if (isset($res['update_prod'][$row[to1251('VP01 Id товара')]]['products.status']) or isset($res['update_prod'][$row[to1251('VP01 Id товара')]]['products.name']) or isset($res['update_prod'][$row[to1251('VP01 Id товара')]]['products.category_id']) or isset($res['update_prod'][$row[to1251('VP01 Id товара')]]['products.brand_id']) or isset($res['update_prod'][$row[to1251('VP01 Id товара')]]['products.article']) or isset($res['update_prod'][$row[to1251('VP01 Id товара')]]['products.ean']) or isset($res['update_prod'][$row[to1251('VP01 Id товара')]]['products.min_retail_price']) or isset($res['update_prod'][$row[to1251('VP01 Id товара')]]['products.rec_retail_price']) or isset($res['update_prod'][$row[to1251('VP01 Id товара')]]['products.target_margin']) or isset($res['update_prod'][$row[to1251('VP01 Id товара')]]['products.in_stock'])) { $res['update_prod'][$row[to1251('VP01 Id товара')]]['products.id'] = $row[to1251('VP01 Id товара')]; $res['update_prod'][$row[to1251('VP01 Id товара')]]['products.updated_at'] = date('Y-m-d H:i:s'); $res['update_prod'][$row[to1251('VP01 Id товара')]]['products.user_id'] = Auth::User()->id; } if (array_key_exists(to1251('GK01 ID на ГК'), $row)) { //есть поле Гаранта if (stristr($row[to1251('GK01 ID на ГК')], 'add')) { $row[to1251('GK01 ID на ГК')] = str_replace('add', '', $row[to1251('GK01 ID на ГК')]); //добавляем новый $productModel->deleteWithSite('GK', $row[to1251('VP01 Id товара')]); //сперва удаяем все, что связано с этим товаром (если есть) $res['add_to_GK'][$i]['product_id'] = $row[to1251('VP01 Id товара')]; !array_key_exists(to1251('GK01 ID на ГК'), $row) ? $res['add_to_GK'][$i]['site_id'] = 1 : ($res['add_to_GK'][$i]['site_id'] = import_field($row[to1251('GK01 ID на ГК')], 'int', 1)); !array_key_exists(to1251('GK02 Статус ГК'), $row) ? $res['add_to_GK'][$i]['enabled'] = 1 : ($res['add_to_GK'][$i]['enabled'] = import_field($row[to1251('GK02 Статус ГК')], 'bool', 1)); !array_key_exists(to1251('GK03 Маркет ГК'), $row) ? $res['add_to_GK'][$i]['yandex_enabled'] = 0 : ($res['add_to_GK'][$i]['yandex_enabled'] = import_field($row[to1251('GK03 Маркет ГК')], 'bool', 0)); !array_key_exists(to1251('GK04 Валюта ГК'), $row) ? $res['add_to_GK'][$i]['currency'] = 'RUB' : ($res['add_to_GK'][$i]['currency'] = import_field($row[to1251('GK04 Валюта ГК')], 'string', 'RUB')); !array_key_exists(to1251('GK05 Цена ГК'), $row) ? $res['add_to_GK'][$i]['price'] = 0 : ($res['add_to_GK'][$i]['price'] = import_field($row[to1251('GK05 Цена ГК')], 'float', 0)); $res['add_to_GK'][$i]['created_at'] = date('Y-m-d H:i:s'); $res['add_to_GK'][$i]['updated_at'] = date('Y-m-d H:i:s'); $res['add_to_GK'][$i]['user_id'] = Auth::User()->id; } else { if (count($productModel->checkProductOnSiteId('GK', $row[to1251('VP01 Id товара')])) > 0) { //убеждаемся, что на этот товар уже привязан //если товар есть на сайте, будем обновлять !array_key_exists(to1251('GK01 ID на ГК'), $row) ?: ($res['update_prod'][$row[to1251('VP01 Id товара')]]['GK.site_id'] = import_field($row[to1251('GK01 ID на ГК')], 'int', 0)); !array_key_exists(to1251('GK02 Статус ГК'), $row) ?: ($res['update_prod'][$row[to1251('VP01 Id товара')]]['GK.enabled'] = import_field($row[to1251('GK02 Статус ГК')], 'bool', 1)); !array_key_exists(to1251('GK03 Маркет ГК'), $row) ?: ($res['update_prod'][$row[to1251('VP01 Id товара')]]['GK.yandex_enabled'] = import_field($row[to1251('GK03 Маркет ГК')], 'bool', 0)); !array_key_exists(to1251('GK04 Валюта ГК'), $row) ?: ($res['update_prod'][$row[to1251('VP01 Id товара')]]['GK.currency'] = import_field($row[to1251('GK04 Валюта ГК')], 'string', 'RUB')); !array_key_exists(to1251('GK05 Цена ГК'), $row) ?: ($res['update_prod'][$row[to1251('VP01 Id товара')]]['GK.price'] = import_field($row[to1251('GK05 Цена ГК')], 'float', 0)); $res['update_prod'][$row[to1251('VP01 Id товара')]]['GK.updated_at'] = date('Y-m-d H:i:s'); $res['update_prod'][$row[to1251('VP01 Id товара')]]['GK.user_id'] = Auth::User()->id; } } } if (array_key_exists(to1251('TV01 ID на ТВ'), $row)) { //есть поле Таваго if (stristr($row[to1251('TV01 ID на ТВ')], 'add')) { $row[to1251('TV01 ID на ТВ')] = str_replace('add', '', $row[to1251('TV01 ID на ТВ')]); //добавляем новый $productModel->deleteWithSite('TV', $row[to1251('VP01 Id товара')]); //сперва удаяем все, что связано с этим товаром (если есть) $res['add_to_TV'][$i]['product_id'] = $row[to1251('VP01 Id товара')]; !array_key_exists(to1251('TV01 ID на ТВ'), $row) ? $res['add_to_TV'][$i]['site_id'] = 1 : ($res['add_to_TV'][$i]['site_id'] = import_field($row[to1251('TV01 ID на ТВ')], 'int', 1)); !array_key_exists(to1251('TV02 Статус ТВ'), $row) ? $res['add_to_TV'][$i]['enabled'] = 1 : ($res['add_to_TV'][$i]['enabled'] = import_field($row[to1251('TV02 Статус ТВ')], 'bool', 1)); !array_key_exists(to1251('TV03 Маркет ТВ'), $row) ? $res['add_to_TV'][$i]['yandex_enabled'] = 0 : ($res['add_to_TV'][$i]['yandex_enabled'] = import_field($row[to1251('TV03 Маркет ТВ')], 'bool', 0)); !array_key_exists(to1251('TV04 Валюта ТВ'), $row) ? $res['add_to_TV'][$i]['currency'] = 'RUB' : ($res['add_to_TV'][$i]['currency'] = import_field($row[to1251('TV04 Валюта ТВ')], 'string', 'RUB')); !array_key_exists(to1251('TV05 Цена ТВ'), $row) ? $res['add_to_TV'][$i]['price'] = 0 : ($res['add_to_TV'][$i]['price'] = import_field($row[to1251('TV05 Цена ТВ')], 'float', 0)); $res['add_to_TV'][$i]['created_at'] = date('Y-m-d H:i:s'); $res['add_to_TV'][$i]['updated_at'] = date('Y-m-d H:i:s'); $res['add_to_TV'][$i]['user_id'] = Auth::User()->id; } else { if (count($productModel->checkProductOnSiteId('TV', $row[to1251('VP01 Id товара')])) > 0) { //убеждаемся, что на этот товар уже привязан //если товар есть на сайте, будем обновлять !array_key_exists(to1251('TV01 ID на ТВ'), $row) ?: ($res['update_prod'][$row[to1251('VP01 Id товара')]]['TV.site_id'] = import_field($row[to1251('TV01 ID на ТВ')], 'int', 0)); !array_key_exists(to1251('TV02 Статус ТВ'), $row) ?: ($res['update_prod'][$row[to1251('VP01 Id товара')]]['TV.enabled'] = import_field($row[to1251('TV02 Статус ТВ')], 'bool', 1)); !array_key_exists(to1251('TV03 Маркет ТВ'), $row) ?: ($res['update_prod'][$row[to1251('VP01 Id товара')]]['TV.yandex_enabled'] = import_field($row[to1251('TV03 Маркет ТВ')], 'bool', 0)); !array_key_exists(to1251('TV04 Валюта ТВ'), $row) ?: ($res['update_prod'][$row[to1251('VP01 Id товара')]]['TV.currency'] = import_field($row[to1251('TV04 Валюта ТВ')], 'string', 'RUB')); !array_key_exists(to1251('TV05 Цена ТВ'), $row) ?: ($res['update_prod'][$row[to1251('VP01 Id товара')]]['TV.price'] = import_field($row[to1251('TV05 Цена ТВ')], 'float', 0)); $res['update_prod'][$row[to1251('VP01 Id товара')]]['TV.updated_at'] = date('Y-m-d H:i:s'); $res['update_prod'][$row[to1251('VP01 Id товара')]]['TV.user_id'] = Auth::User()->id; } } } if (array_key_exists(to1251('MK01 ID на МК'), $row)) { //есть поле МаксКлимат if (stristr($row[to1251('MK01 ID на МК')], 'add')) { $row[to1251('MK01 ID на МК')] = str_replace('add', '', $row[to1251('MK01 ID на МК')]); //добавляем новый $productModel->deleteWithSite('MK', $row[to1251('VP01 Id товара')]); //сперва удаяем все, что связано с этим товаром (если есть) $res['add_to_MK'][$i]['product_id'] = $row[to1251('VP01 Id товара')]; !array_key_exists(to1251('MK01 ID на МК'), $row) ? $res['add_to_MK'][$i]['site_id'] = 1 : ($res['add_to_MK'][$i]['site_id'] = import_field($row[to1251('MK01 ID на МК')], 'int', 1)); !array_key_exists(to1251('MK02 Статус МК'), $row) ? $res['add_to_MK'][$i]['enabled'] = 1 : ($res['add_to_MK'][$i]['enabled'] = import_field($row[to1251('MK02 Статус МК')], 'bool', 1)); !array_key_exists(to1251('MK03 Маркет МК'), $row) ? $res['add_to_MK'][$i]['yandex_enabled'] = 0 : ($res['add_to_MK'][$i]['yandex_enabled'] = import_field($row[to1251('MK03 Маркет МК')], 'bool', 0)); !array_key_exists(to1251('MK04 Валюта МК'), $row) ? $res['add_to_MK'][$i]['currency'] = 'RUB' : ($res['add_to_MK'][$i]['currency'] = import_field($row[to1251('MK04 Валюта МК')], 'string', 'RUB')); !array_key_exists(to1251('MK05 Цена МК'), $row) ? $res['add_to_MK'][$i]['price'] = 0 : ($res['add_to_MK'][$i]['price'] = import_field($row[to1251('MK05 Цена МК')], 'float', 0)); $res['add_to_MK'][$i]['created_at'] = date('Y-m-d H:i:s'); $res['add_to_MK'][$i]['updated_at'] = date('Y-m-d H:i:s'); $res['add_to_MK'][$i]['user_id'] = Auth::User()->id; } else { if (count($productModel->checkProductOnSiteId('MK', $row[to1251('VP01 Id товара')])) > 0) { //убеждаемся, что на этот товар уже привязан //если товар есть на сайте, будем обновлять !array_key_exists(to1251('MK01 ID на МК'), $row) ?: ($res['update_prod'][$row[to1251('VP01 Id товара')]]['MK.site_id'] = import_field($row[to1251('MK01 ID на МК')], 'int', 0)); !array_key_exists(to1251('MK02 Статус МК'), $row) ?: ($res['update_prod'][$row[to1251('VP01 Id товара')]]['MK.enabled'] = import_field($row[to1251('MK02 Статус МК')], 'bool', 1)); !array_key_exists(to1251('MK03 Маркет МК'), $row) ?: ($res['update_prod'][$row[to1251('VP01 Id товара')]]['MK.yandex_enabled'] = import_field($row[to1251('MK03 Маркет МК')], 'bool', 0)); !array_key_exists(to1251('MK04 Валюта МК'), $row) ?: ($res['update_prod'][$row[to1251('VP01 Id товара')]]['MK.currency'] = import_field($row[to1251('MK04 Валюта МК')], 'string', 'RUB')); !array_key_exists(to1251('MK05 Цена МК'), $row) ?: ($res['update_prod'][$row[to1251('VP01 Id товара')]]['MK.price'] = import_field($row[to1251('MK05 Цена МК')], 'float', 0)); $res['update_prod'][$row[to1251('VP01 Id товара')]]['MK.updated_at'] = date('Y-m-d H:i:s'); $res['update_prod'][$row[to1251('VP01 Id товара')]]['MK.user_id'] = Auth::User()->id; } } } } else { //такого товара нет, будем добавлять !array_key_exists(to1251('VP02 Статус'), $row) ? $res['add_prod'][$i]['products.status'] = 1 : ($res['add_prod'][$i]['products.status'] = import_field($row[to1251('VP02 Статус')], 'bool', 1)); !array_key_exists(to1251('VP03 Наименование'), $row) ? $res['add_prod'][$i]['products.name'] = '' : ($res['add_prod'][$i]['products.name'] = import_field(toUTF($row[to1251('VP03 Наименование')]), 'string', '')); !array_key_exists(to1251('VP04 ID категории'), $row) ? $res['add_prod'][$i]['products.category_id'] = 1 : ($res['add_prod'][$i]['products.category_id'] = import_field($row[to1251('VP04 ID категории')], 'int', 1)); !array_key_exists(to1251('VP05 ID производителя'), $row) ? $res['add_prod'][$i]['products.brand_id'] = 1 : ($res['add_prod'][$i]['products.brand_id'] = import_field($row[to1251('VP05 ID производителя')], 'int', 1)); !array_key_exists(to1251('VP06 Артикул'), $row) ? $res['add_prod'][$i]['products.article'] = '' : ($res['add_prod'][$i]['products.article'] = import_field(toUTF($row[to1251('VP06 Артикул')]), 'string', '')); !array_key_exists(to1251('VP07 Штрих-код'), $row) ? $res['add_prod'][$i]['products.ean'] = '' : ($res['add_prod'][$i]['products.ean'] = import_field($row[to1251('VP07 Штрих-код')], 'string', '')); !array_key_exists(to1251('VP08 МРЦ'), $row) ? $res['add_prod'][$i]['products.mrc'] = 0 : ($res['add_prod'][$i]['products.mrc'] = import_field($row[to1251('VP08 МРЦ')], 'float', 0)); !array_key_exists(to1251('VP09 МРЦ валюта'), $row) ? $res['add_prod'][$i]['products.mrc_currency'] = 'RUB' : ($res['add_prod'][$i]['products.mrc_currency'] = import_field($row[to1251('VP09 МРЦ валюта')], 'string', 'RUB')); !array_key_exists(to1251('VP10 Прайс'), $row) ? $res['add_prod'][$i]['products.price'] = 0 : ($res['add_prod'][$i]['products.price'] = import_field($row[to1251('VP10 Прайс')], 'float', 0)); !array_key_exists(to1251('VP11 Прайс валюта'), $row) ? $res['add_prod'][$i]['products.price_currency'] = 'RUB' : ($res['add_prod'][$i]['products.price_currency'] = import_field($row[to1251('VP11 Прайс валюта')], 'string', 'RUB')); !array_key_exists(to1251('VP12 Маржинальность'), $row) ? $res['add_prod'][$i]['products.target_margin'] = 0 : ($res['add_prod'][$i]['products.target_margin'] = import_field($row[to1251('VP12 Маржинальность')], 'float', 0)); !array_key_exists(to1251('VP13 Наличие'), $row) ? $res['add_prod'][$i]['products.in_stock'] = 0 : ($res['add_prod'][$i]['products.in_stock'] = import_field($row[to1251('VP13 Наличие')], 'bool', 0)); $res['add_prod'][$i]['products.created_at'] = date('Y-m-d H:i:s'); $res['add_prod'][$i]['products.updated_at'] = date('Y-m-d H:i:s'); $res['add_prod'][$i]['products.user_id'] = Auth::User()->id; } } elseif (array_key_exists(to1251('PU01 Id закупки'), $row)) { //это условия if (!array_key_exists(to1251('PU02 Id товара'), $row) or empty($row[to1251('PU02 Id товара')])) { //нет обязательного поля с ID товара Session::flash('message', GetMessages("ERROR_NO_REQUIRED_FIELD")); return redirect()->route('cloud.index'); } if (!empty($row[to1251('PU01 Id закупки')])) { //такое уcловие существует - будем обновлять !array_key_exists(to1251('PU03 ID поставщика'), $row) ?: ($res['update_purch'][$row[to1251('PU01 Id закупки')]]['purchase.vendor_id'] = import_field($row[to1251('PU03 ID поставщика')], 'int', 1)); !array_key_exists(to1251('PU04 Базовая цена'), $row) ?: ($res['update_purch'][$row[to1251('PU01 Id закупки')]]['purchase.base_price'] = import_field($row[to1251('PU04 Базовая цена')], 'float', 0)); !array_key_exists(to1251('PU05 Валюта'), $row) ?: ($res['update_purch'][$row[to1251('PU01 Id закупки')]]['purchase.currency'] = import_field($row[to1251('PU05 Валюта')], 'string', 'RUB')); !array_key_exists(to1251('PU06 Поправка к ЦБ'), $row) ?: ($res['update_purch'][$row[to1251('PU01 Id закупки')]]['purchase.raise'] = import_field($row[to1251('PU06 Поправка к ЦБ')], 'float', 0)); !array_key_exists(to1251('PU07 Скидка'), $row) ?: ($res['update_purch'][$row[to1251('PU01 Id закупки')]]['purchase.discount_price'] = import_field($row[to1251('PU07 Скидка')], 'float', 0)); !array_key_exists(to1251('PU08 Доп.скидка'), $row) ?: ($res['update_purch'][$row[to1251('PU01 Id закупки')]]['purchase.discount_bulk'] = import_field($row[to1251('PU08 Доп.скидка')], 'float', 0)); if (isset($res['update_purch'][$row[to1251('PU01 Id закупки')]]['purchase.vendor_id']) or isset($res['update_purch'][$row[to1251('PU01 Id закупки')]]['purchase.base_price']) or isset($res['update_purch'][$row[to1251('PU01 Id закупки')]]['purchase.currency_id']) or isset($res['update_purch'][$row[to1251('PU01 Id закупки')]]['purchase.raise']) or isset($res['update_purch'][$row[to1251('PU01 Id закупки')]]['purchase.discount_price']) or isset($res['update_purch'][$row[to1251('PU01 Id закупки')]]['purchase.discount_bulk'])) { $res['update_purch'][$row[to1251('PU01 Id закупки')]]['purchase.id'] = $row[to1251('PU01 Id закупки')]; $res['update_purch'][$row[to1251('PU01 Id закупки')]]['purchase.product_id'] = $row[to1251('PU02 Id товара')]; $res['update_purch'][$row[to1251('PU01 Id закупки')]]['purchase.updated_at'] = date('Y-m-d H:i:s'); $res['update_purch'][$row[to1251('PU01 Id закупки')]]['purchase.user_id'] = Auth::User()->id; } } else { //такого условия нет - будем добавлять !array_key_exists(to1251('PU03 ID поставщика'), $row) ? $res['add_purch'][$i]['purchase.vendor_id'] = 1 : ($res['add_purch'][$i]['purchase.vendor_id'] = import_field($row[to1251('PU03 ID поставщика')], 'int', 1)); !array_key_exists(to1251('PU04 Базовая цена'), $row) ? $res['add_purch'][$i]['purchase.base_price'] = 0 : ($res['add_purch'][$i]['purchase.base_price'] = import_field($row[to1251('PU04 Базовая цена')], 'float', 0)); !array_key_exists(to1251('PU05 Валюта'), $row) ? $res['add_purch'][$i]['purchase.currency'] = 'RUB' : ($res['add_purch'][$i]['purchase.currency'] = import_field($row[to1251('PU05 Валюта')], 'string', 'RUB')); !array_key_exists(to1251('PU06 Поправка к ЦБ'), $row) ? $res['add_purch'][$i]['purchase.raise'] = 0 : ($res['add_purch'][$i]['purchase.raise'] = import_field($row[to1251('PU06 Поправка к ЦБ')], 'float', 0)); !array_key_exists(to1251('PU07 Скидка'), $row) ? $res['add_purch'][$i]['purchase.discount_price'] = 0 : ($res['add_purch'][$i]['purchase.discount_price'] = import_field($row[to1251('PU07 Скидка')], 'float', 0)); !array_key_exists(to1251('PU08 Доп.скидка'), $row) ? $res['add_purch'][$i]['purchase.discount_bulk'] = 0 : ($res['add_purch'][$i]['purchase.discount_bulk'] = import_field($row[to1251('PU08 Доп.скидка')], 'float', 0)); $res['add_purch'][$i]['purchase.product_id'] = $row[to1251('PU02 Id товара')]; $res['add_purch'][$i]['purchase.created_at'] = date('Y-m-d H:i:s'); $res['add_purch'][$i]['purchase.updated_at'] = date('Y-m-d H:i:s'); $res['add_purch'][$i]['purchase.user_id'] = Auth::User()->id; } } else { Session::flash('message', GetMessages("ERROR_NO_REQUIRED_FIELD")); return redirect()->route('cloud.index'); } //pr($res); $i++; } //pr($res); $count = []; if (isset($res['update_prod'])) { $count['update_prod'] = count($res['update_prod']); } if (isset($res['add_prod'])) { $count['add_prod'] = count($res['add_prod']); } if (isset($res['add_to_GK'])) { $count['add_to_GK'] = count($res['add_to_GK']); } if (isset($res['add_to_TV'])) { $count['add_to_TV'] = count($res['add_to_TV']); } if (isset($res['add_to_MK'])) { $count['add_to_MK'] = count($res['add_to_MK']); } if (isset($res['update_purch'])) { $count['update_purch'] = count($res['update_purch']); } if (isset($res['add_purch'])) { $count['add_purch'] = count($res['add_purch']); } Session::put('count', $count); Session::put('res', $res); //pr($res); $cloudModel->addFile('import', $filename, $real_filename); return redirect()->route('cloud.index'); } } else { Session::flash('message', GetMessages("ERROR_NO_CSV_FILE")); return redirect()->route('cloud.index'); } } else { Session::flash('message', GetMessages("ERROR_NO_CSV_FILE")); return redirect()->route('cloud.index'); } } if (isset($_POST['end_import'])) { if (!right('Import')) { abort(404); } $count = Session::pull('count', null); $res = Session::pull('res', null); //pr($res); //pr($count); if (isset($res['update_prod']) and count($res['update_prod']) > 0) { $productModel->updatingListProducts($res['update_prod']); } if (isset($res['add_prod']) and count($res['add_prod']) > 0) { $idsNewProducts = $productModel->createProducts($res['add_prod']); Session::put('idsNewProducts', $idsNewProducts); } if (isset($res['add_to_GK']) and count($res['add_to_GK']) > 0) { $productModel->addsToSite($res['add_to_GK'], 'GK'); } if (isset($res['add_to_TV']) and count($res['add_to_TV']) > 0) { $productModel->addsToSite($res['add_to_TV'], 'TV'); } if (isset($res['add_to_MK']) and count($res['add_to_MK']) > 0) { $productModel->addsToSite($res['add_to_MK'], 'MK'); } if (isset($res['update_purch']) and count($res['update_purch']) > 0) { $purchaseModel->updatePurchase($res['update_purch']); } if (isset($res['add_purch']) and count($res['add_purch']) > 0) { $purchaseModel->addPurchases($res['add_purch']); } $historyModel->saveHistory('import', $count); Session::flash('message', GetMessages("SUCCESS_IMPORT_COMPLETED")); return redirect()->route('cloud.index'); } if (isset($_POST['send_to_site'])) { if (!right('Import')) { abort(404); } //pr($_POST); if (isset($_POST['sent_to_'])) { $externalModel = new External(); if (isset($_POST['sent_to_']['GK'])) { $externalModel->send('GK'); } if (isset($_POST['sent_to_']['TV'])) { $externalModel->send('TV'); } if (isset($_POST['sent_to_']['GK'])) { $externalModel->send('MK'); } } if (isset($_POST['clear_list'])) { $productModel->deleteAllExport(); } Session::flash('message', GetMessages("SUCCESS_EXTERNAL_EXPORT")); return redirect()->route('cloud.index'); } }
/** * Renders index page for the settings * * @return Response */ public function getIndex() { $settings = Settings::getAll(); $locales = Settings::getLocales(); return view('admin.settings.index', ['settings' => $settings, 'locales' => $locales, 'settings_tab' => Session::pull('settings_tab')]); }
public function callback(Request $request) { if (Session::get('instagram_operation')) { $instagramOperation = Session::pull('instagram_operation'); if ($instagramOperation['operation'] == 'login') { if ($request->get('code')) { $code = $request->get('code'); $instagram = new InstagramAPI(); $data = $instagram->getOAuthToken($code); $instagramAccount = InstagramAccount::where(['username' => $data->user->username, 'access_token' => $data->access_token])->first(); if ($instagramAccount) { if (Auth::loginUsingId($instagramAccount->instagramable->user->id)) { if ($instagramAccount->instagramable->user->isSupplier()) { return redirect()->action('Dashboard\\SupplierController@show'); } if ($instagramAccount->instagramable->user->isCustomer()) { return redirect()->action('Dashboard\\CustomerController@show'); } } } else { return redirect()->action('AuthenticationController@showRegister')->withErrors(['messages' => "Kayıtlı Kullanıcı Bulunamadı"]); } } } if ($instagramOperation['operation'] == 'register') { if ($instagramOperation['user_type'] == 'supplier') { if (Session::has('user_instagram_info')) { Session::forget('user_instagram_info'); } if ($request->get('code')) { $code = $request->get('code'); $instagram = new InstagramAPI(); $data = $instagram->getOAuthToken($code); Session::put('user_instagram_info', $data); return Redirect::action('Dashboard\\SupplierController@create'); } } if ($instagramOperation['user_type'] == 'customer') { if (Session::has('user_instagram_info')) { Session::forget('user_instagram_info'); } if ($request->get('code')) { $code = $request->get('code'); $instagram = new InstagramAPI(); $data = $instagram->getOAuthToken($code); Session::put('user_instagram_info', $data); return Redirect::action('Dashboard\\CustomerController@create'); } } } } }
/** * Process the response from a provider connect attempt. * * @param string $provider * @param \OAuth\Common\Service\AbstractService $service * @param array $access_token * * @return Redirect */ protected function processConnect($provider, $service, $access_token) { $user_info_callback = Config::get('laravel-social::providers.' . strtolower($provider) . '.fetch_user_info'); if (empty($user_info_callback) || !$user_info_callback instanceof Closure) { return Redirect::to(Session::pull('mmanos.social.onerror', '/'))->with(Config::get('laravel-social::error_flash_var'), 'There was a problem connecting your account (6).'); } try { $user_info = $user_info_callback($service); } catch (Exception $e) { } if (empty($user_info) || !is_array($user_info)) { return Redirect::to(Session::pull('mmanos.social.onerror', '/'))->with(Config::get('laravel-social::error_flash_var'), 'There was a problem connecting your account (7).'); } if (empty($user_info['id'])) { return Redirect::to(Session::pull('mmanos.social.onerror', '/'))->with(Config::get('laravel-social::error_flash_var'), 'There was a problem connecting your account (8).'); } $provider_id = array_get($user_info, 'id'); $user_provider = Provider::where('provider', strtolower($provider))->where('provider_id', $provider_id)->first(); if ($user_provider) { if ($user_provider->user_id != Auth::id()) { return Redirect::to(Session::pull('mmanos.social.onerror', '/'))->with(Config::get('laravel-social::error_flash_var'), 'There was a problem connecting your account (9).'); } $user_provider->access_token = $access_token; $user_provider->save(); } else { $this->linkProvider(Auth::id(), $provider, $provider_id, $access_token); } return Redirect::to(Session::pull('mmanos.social.onsuccess', '/'))->with(Config::get('laravel-social::success_flash_var'), 'You have successfully connected your account.'); }
public function logout() { $post_data = array(); $post_data['ComToken'] = Session::pull('ComToken'); $post_data['Logout'] = Session::pull('AuthToken'); $response = $this->curlRequest($post_data); Session::flush(); $this->loggedOut = true; }
public function profile($user_name = null) { if (trim($user_name) == "") { if (Session::has('user')) { $aUser = Session::pull('user'); $aCharacters = Character::where('user_id', $aUser['id'])->get()->toArray(); /*if(count($aCharacters) == 0){ return view('users.users.show')->with('characters', $aCharacters); }*/ return view('users.users.show')->with('characters', $aCharacters); } else { return redirect('user'); } } else { } }
public function check($captcha = null, $sessionName = '_captcha') { return Session::pull($sessionName) === strtoupper($captcha); }
public function DeleteProductFromBasket($id, $model) { $ids = array(); foreach (Session::pull("basketProducts") as $product) { if ($product[0] == $id && $product[1] == $model) { continue; } array_push($ids, array($product[0], $product[1])); } Session::put("basketProducts", $ids); return "success"; }
public function postRedirect(Request $request) { $trx = array(); $transidmerchant = explode('_', $request->input('TRANSIDMERCHANT')); $trx['amount'] = $request->input('AMOUNT'); $trx['transaction_id'] = $transidmerchant[1]; $trx['msc_transaction_id'] = $request->input('TRANSIDMERCHANT'); $trx['status_code'] = $request->input('STATUSCODE'); $existingTransactions = MyShortCart::getExistingTransactions($trx['transaction_id'], 'REQUEST', $trx['amount']); if (count($existingTransactions) < 1) { return 'Stop : Transaction Not Found'; } else { if ($request->has('PAYMENTCODE')) { $trx['payment_code'] = $request->input('PAYMENTCODE'); } $trx['result_message'] = $request->input('RESULT'); $trx['payment_datetime'] = $request->input('TRANSDATE'); $trx['payment_channel'] = $request->input('PTYPE'); $trx['extra_info'] = $request->input('EXTRAINFO'); $trx['ip_address'] = $request->ip(); $trx['process_datetime'] = Carbon::now()->toDateTimeString(); $trx['process_type'] = 'REDIRECT'; if ($trx['status_code'] == "00" || strtolower($trx['result_message']) == 'success') { $trx['message'] = "Redirect process message come from MyShortCart. Transaction is Success"; if (config('myshortcart.completed_event') !== false) { $transactionData = ['method' => MyShortCart::getMachineName(), 'transaction_id' => $trx['transaction_id'], 'amount' => $trx['amount'], 'status' => 'success']; $completedEvent = config('myshortcart.completed_event'); Event::fire(new $completedEvent($transactionData)); } } else { if (strtolower($trx['payment_channel']) == "bank transfer" || strtolower($trx['payment_channel']) == "alfamart") { $trx['message'] = "Redirect process message come from MyShortCart. Transaction is waiting for payment from ATM / ALFA Mart"; if (config('myshortcart.completed_event') !== false) { $transactionData = ['method' => MyShortCart::getMachineName(), 'transaction_id' => $trx['transaction_id'], 'amount' => $trx['amount'], 'status' => 'success', 'payment_channel' => strtolower($trx['payment_channel'])]; $completedEvent = config('myshortcart.completed_event'); Event::fire(new $completedEvent($transactionData)); } } else { $trx['message'] = "Redirect process message come from MyShortCart. Transaction is Failed"; if (config('myshortcart.failed_event') !== false) { $transactionData = ['method' => MyShortCart::getMachineName(), 'transaction_id' => $trx['transaction_id'], 'amount' => $trx['amount'], 'status' => 'failed']; $completedEvent = config('myshortcart.failed_event'); Event::fire(new $completedEvent($transactionData)); } } } MyShortCart::saveTransaction($trx); $redirect_url = Session::pull('payment_redirect_to'); return redirect($redirect_url); } return 'Stop : Request Not Valid'; }
/** * Validates the 2FA code. * * @param Request $request * @return Response */ public function postTwoFactorAuthentication(Request $request) { $user_id = Session::pull('2fa_user_id'); $remember = Session::pull('2fa_login_remember'); if ($user_id) { $auth = Auth::guard($this->getGuard()); $auth->loginUsingId($user_id, $remember); if (Google2FA::verifyKey($auth->user()->google2fa_secret, $request->get('2fa_code'))) { return $this->handleUserWasAuthenticated($request, true); } $auth->logout(); return redirect()->route('login')->withError(Lang::get('auth.invalid_code')); } return redirect()->route('login')->withError(Lang::get('auth.invalid_code')); }
/** * Handle logout * * @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector */ public function getLogout() { Auth::user()->last_seen = Cache::get('last_seen_' . Auth::user()->id); Cache::forget('last_seen_' . Auth::user()->id); Session::pull('locale'); Auth::user()->save(); Auth::logout(); flash()->info(trans('users.logout_success')); return redirect('/'); }
public function import(Request $request) { $filePath = Session::pull('dataTransferResult.FilesPath'); $createdProductCategories = []; $createdProductLines = []; Excel::selectSheets('Категории')->load($filePath . '/products.xlsx', function ($reader) use($filePath, $createdProductCategories, $createdProductLines) { foreach ($reader->toArray() as $row) { if ($row['nomer'] == null) { continue; } $productCategory = ProductCategory::findOrNew($row['nomer']); if ($row['nomer'] > ProductCategory::max('id')) { $imagePattern = '/img/product-category-' . $row['nomer']; $findResults = File::glob($filePath . $imagePattern . '*'); $imageOriginalPath = $findResults[0]; $imageExt = File::extension($imageOriginalPath); $imagePath = $filePath . $imagePattern . '.' . $imageExt; $newImagePath = 'img/uploads/' . str_random(32) . '.' . $imageExt; File::move($imagePath, public_path() . '/' . $newImagePath); $productCategory->id = $row['nomer']; $productCategory->title = $row['nazvanie']; $productCategory->image = $newImagePath; $createdProductCategories[$row['nomer']] = $productCategory; $productCategory->save(); } } Excel::selectSheets('Линейки продукции')->load($filePath . '/products.xlsx', function ($reader) use($filePath, $createdProductCategories, $createdProductLines) { foreach ($reader->toArray() as $row) { if ($row['nomer'] == null) { continue; } if ($row['nomer'] > ProductLine::max('id')) { $imagePattern = '/img/product-line-' . $row['nomer']; $findResults = File::glob($filePath . $imagePattern . '*'); $imageOriginalPath = $findResults[0]; $imageExt = File::extension($imageOriginalPath); $imagePath = $filePath . $imagePattern . '.' . $imageExt; $newImagePath = 'img/uploads/' . str_random(32) . '.' . $imageExt; File::move($imagePath, public_path() . '/' . $newImagePath); $createdProductLines[$row['nomer']] = ProductLine::create(['id' => $row['nomer'], 'product_category_id' => $row['kategoriya'], 'title' => $row['nazvanie'], 'image' => $newImagePath]); } } Excel::selectSheets('Продукция')->load($filePath . '/products.xlsx', function ($reader) use($filePath, $createdProductCategories, $createdProductLines) { foreach ($reader->toArray() as $row) { if ($row['nomer'] == null) { continue; } $imagePattern = '/img/product-' . $row['nomer']; $findResults = File::glob($filePath . $imagePattern . '*'); $imageOriginalPath = $findResults[0]; $imageExt = File::extension($imageOriginalPath); $imagePath = $filePath . $imagePattern . '.' . $imageExt; $newImagePath = 'img/uploads/' . str_random(32) . '.' . $imageExt; File::move($imagePath, public_path() . '/' . $newImagePath); $productCategoryId = $row['kategoriya'] == null ? null : $row['kategoriya']; $productLineId = $row['lineyka_produktsii'] == null ? null : $row['lineyka_produktsii']; $product = new Product(['title' => $row['nazvanie'], 'image' => $newImagePath, 'rating' => $row['reyting']]); if ($productCategoryId != null) { if (array_key_exists(intval($row['kategoriya']), $createdProductCategories)) { $product->productCategory()->associate($createdProductCategories[$row['kategoriya']]); } else { $product->productCategory()->associate(ProductCategory::find($productCategoryId)); } } if ($productLineId != null) { if (array_key_exists(intval($row['lineyka_produktsii']), $createdProductLines)) { $product->productLine()->associate($createdProductLines[$row['lineyka_produktsii']]); } else { $product->productLine()->associate(ProductLine::find([$row['lineyka_produktsii']])); } } $product->save(); $imagePattern = '/img/product-' . $row['nomer'] . '-color-'; $findResults = File::glob($filePath . $imagePattern . '*'); foreach ($findResults as $findResult) { $newImagePath = 'img/uploads/' . str_random(32) . '.' . $imageExt; $colorCode = substr($findResult, strpos($findResult, 'color') + 6, strpos($findResult, '.') - strpos($findResult, 'color') - 6); File::move($findResult, public_path() . '/' . $newImagePath); $productColor = new ProductColor(['image' => $newImagePath]); $colorNumber = substr($findResult, strpos($findResult, 'color') + 6, strpos($findResult, '.') - strpos($findResult, 'color') - 6); $imagePattern = '/img/product-' . $row['nomer'] . '-image-' . $colorNumber; $findProductColorImageResults = File::glob($filePath . $imagePattern . '*'); $productImagePath = ''; if (count($findProductColorImageResults) != 0) { $imageOriginalPath = $findProductColorImageResults[0]; $productImagePath = 'img/uploads/' . str_random(32) . '.' . $imageExt; File::move($imageOriginalPath, public_path() . '/' . $productImagePath); } $productColor->product_image = $productImagePath; $productColor->product_id = $product->id; $productColor->code = $colorCode; $product->productColors()->save($productColor); } } File::cleanDirectory(public_path() . '/resources/uploads/'); }); }); }); return redirect()->route('admin.dataTransfer.index'); }
/** * Updates the CV of a Talent for corresponding sports. * * @param $id */ public function updateCV(Request $request) { //--------- Need to work over this function afterwards -------// $this->validateCVData($request); //--------- Need to work over this function afterwards -------// $userProfile = UserProfile::find(Session::get(SiteSessions::USER_ID)); $userParamsData = ""; if (count($request->positions) > 0) { $userProfile->positions = $request->positions; $userProfile->preferred_position = $request->preferred_position; } $userProfile->params = $this->getParamsDataForProfile($request); $userProfile->save(); //Storing Club and School information and their respective sport statistics $this->storeClubSchoolInformation($userProfile, $request); if (Session::has(SiteSessions::USER_COMPLETING_PROFILE_FIRST_TIME)) { Session::pull(SiteSessions::USER_COMPLETING_PROFILE_FIRST_TIME); return redirect('profile/completed'); } return redirect('profile/editCV')->with(["cv_update_status" => "successfull"]); }