Skip to content

Instantly share code, notes, and snippets.

## Имя элементов с типом group должно заканчиватся на _group_onwer
class Helpers
{
public static function multiFields($data, $index = 0, $parent = [])
{
$prepare = [];
if (is_array($data)) {
foreach ($data as $key => $item) {
<?php
/*
Создаем файлик, запускаэм, потом в плагине тип меняем на default
*/
define('MODX_API_MODE', true);
include_once($_SERVER['DOCUMENT_ROOT'] . "/index.php");
$modx->db->connect();
@dzhuryn
dzhuryn / pb.php
Last active September 7, 2021 15:09
pb.php
public function getConfig($elements=[],$folder = '')
{
$folderPath = $folderName = '';
if(!empty($folder) ){
$folderPath = $folder.'/';
$folderName = $folder.'_';
}
foreach (scandir($this->path.$folderPath) as $entry) {
if($entry == '.' || $entry == '..'){
continue;
@dzhuryn
dzhuryn / field_block.tpl
Created June 22, 2020 19:43
Добавляем информационный блок для PageBuilder
<div class="field fields-block" data-field="<?= $name ?>">
<div class="group-title">
<?= $field['caption'] ?>
</div>
</div>
<style>
.fields-block .group-title {
border: 2px dashed #ccc;
padding: 15px;
width: 100%;
@dzhuryn
dzhuryn / Mail Sender
Last active March 27, 2020 06:41
Mail Sender
<?php
use Helpers\Mailer;
require_once MODX_BASE_PATH.'assets/lib/Helpers/Mailer.php';
$mailConfig = array(
'isHtml' => 1,
'to' => '[email protected]',
'subject' => 'Тема Письма',
'from' => $modx->getConfig('emailsender'),
#### Проверяем основной артикул товара
$productMainArticle = $doc->get('longtitle');
//если у товара есть артикул
if(!empty($productMainArticle)){
//якщо в товара у основний артикул але у базі його немає
if(empty($mainArticle)){
$insert[] = [
'product_id'=>$productId,
/**
* Created by admin on 27.02.2017.
*/
$('body').on('click','.js-evo-share',function(e){
e.preventDefault()
var $obj =$(this)
var title= $('[property="og:title"]').attr('content');
var description= $('[property="og:description"]').attr('content');
$ch = curl_init('https://www.gorgany.com/');
//кастомные заголовки
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Content-Type: application/json'
]);
//не возвращать ответ в браузер
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
//base auth базовая авторизация
curl_setopt($ch, CURLOPT_USERPWD, "$userName:$userPassword");
require_once MODX_BASE_PATH.'assets/lib/MODxAPI/modResource.php';
$R = $modx->getFullTableName('site_content');
$sql = "select id from $R where `template` in (5,21)";
$docs = $modx->db->makeArray($modx->db->query($sql));
foreach ($docs as $doc) {
$obj = new modResource($modx);
$obj->edit($doc['id']);
<?php
use PhpOffice\PhpSpreadsheet\IOFactory;
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Style\Border;
use PhpOffice\PhpSpreadsheet\Style\Color;
//создать лист и задать отступы
$oSpreadsheet = new Spreadsheet();
$sheet = $oSpreadsheet->getActiveSheet();
$sheet->getPageMargins()