Skip to content

Instantly share code, notes, and snippets.

@anoriar
anoriar / pager
Last active January 16, 2019 17:43
public function getProductsWithPager($params, $countInterval){
return $this->pagerIblock($params, $countInterval);
}
public function pagerIblock($params, $countInterval)
{
$arResult = [];
$countMax = CIBlockElement::GetList(array('ID' => 'ASC'), $params["filter"], array(), false, array('ID'));
if ($countMax > 0) {
@anoriar
anoriar / migration
Last active December 24, 2018 20:25
<?php
namespace Sprint\Migration;
use Aeroidea\Settings\Options\ConfigurationTable;
use Aeroidea\Settings\Options\OptionTable;
use Aeroidea\Settings\Options\ValuesTable;
use Bitrix\Main\Application;
<?php
namespace Sprint\Migration;
use Aeroidea\Settings\Options\ConfigurationTable;
use Aeroidea\Settings\Options\OptionTable;
use Aeroidea\Settings\Options\ValuesTable;
use Bitrix\Main\Application;
function createMap(){
myMap = new ymaps.Map($map[0], {
center: [start.lat, start.lan],
zoom: 15,
autoFitToViewport:'always',
controls: []
},{
//чтобы убрать кнопку открыть в яндекс картах
suppressMapOpenBlock: true
});
@anoriar
anoriar / addItems
Created November 19, 2018 10:29
addItems cleaned
//если остались товары, то их надо удалить
if (!empty($arBasketItems)) {
foreach ($arBasketItems as $arBasketItem) {
file_put_contents($_SERVER['DOCUMENT_ROOT'] . "/upload/CSaleBasketDelete891679812.log", time("c") . " Заказ " . $OrderID . ", попытка удалить товар " . $arBasketItem["ID"] . "\n", FILE_APPEND | LOCK_EX);
//CSaleBasket::Delete($arBasketItem["ID"]);
file_put_contents($_SERVER['DOCUMENT_ROOT'] . "/upload/CSaleBasketDelete891679812.log", time("c") . " Заказ " . $OrderID . ", удален товар " . $arBasketItem["ID"] . "\n", FILE_APPEND | LOCK_EX);
$arLoadProductArray = Array(
"ACTIVE" => "Y"
);
@anoriar
anoriar / request
Created November 16, 2018 09:15
safe get request + mvc
$request = Application::getInstance()->getContext()->getRequest();
try {
if (!Loader::includeModule('aero.main')) {
throw new Exception('Can\'t include module "Aero".');
}
$name = htmlspecialchars($request->getQuery("controller"));
$action = htmlspecialchars($request->getQuery("action"));
$controller = Mvc::factory($name);
$controller->doAction($action);
@anoriar
anoriar / saleOrders
Created November 14, 2018 14:40
saleOrders + saleOrders props
$arOrders = [];
//Берем все заказы
$arFilter = Array("PROPERTY_VAL_BY_CODE_UPLOAD_SUZ" => "N", "ID" => 86589);
$rsSales = CSaleOrder::GetList(array("DATE_INSERT" => "DESC"), $arFilter, false, false, array("*"));
while ($arSales = $rsSales->Fetch()) {
$arOrders[$arSales["ID"]] = $arSales;
}
//берем все свойства заказов по их кодам
$orderProps = [];
@anoriar
anoriar / getDetailPageResHl
Created November 13, 2018 15:43
getDetailPageResHl
/**
* На вход принимает элементы (товары или тп) + массив свойств-привязок к справочникам
* На выходе: подробные данные элементов по этим справочникам
* Важно! для бриллианта в массиве $arPropCodes может быть только STONES_ATTACH
* @param $items
* @param $arProps
*/
public function getDetailPageResHL($items, $arPropCodes){
//массив из элементов с значениями свойств, привязанных к hl
$itemsHlPropValues = [];
@anoriar
anoriar / allproductsbyoffer
Created November 8, 2018 13:26
все товары по id торг предложений
$offersProductAll = \CCatalogSKU::getProductList($offerIds, IB_TradeOffers);
@anoriar
anoriar / index
Created October 10, 2018 19:55
use elementTable trait with indexArray
use Aero\Main\Traits\Elements;
class Main{
use Elements;
private function getDiamondsCodes(){
$arIbData = self::getElements(\Bitrix\Iblock\ElementTable::class,
[
'select' => ['ID', 'IBLOCK_ID', 'CODE', 'NAME'],