Артур
А за чем плагин не три события повесил? Я же только про одно говорил 😁
Ilya
нуу, так вышло) но в любом случае, оставил одно, такая же петрушка на добавление первого товара выскакивает
Ilya
удалил mixedimage и все ок =)
Ilya
а тебе Артур + в карму, если хочешь пива, то в лс 😉
Артур
а тебе Артур + в карму, если хочешь пива, то в лс 😉
Тут есть бот заведующий кармой ответь на это сообщение двумя плюсами 😁
Степан
Да
Ext.onReady(function() { var fld = MODx.load({ xtype: 'modx-panel-tv-file' ,renderTo: 'docinput_[[+divkey]]' ,value: '[[+res_data]]' ,relativeValue: '[[+res_data]]' ,width: 400 ,msgTarget: 'under' ,allowBlank: true ,source: '' ,title: 'Файл для вставки' ,validate: function () { var value = $('#docinput_[[+divkey]]').find('#tvbrowserundefined').val(); return !(!this.allowBlank && (value.length < 1)); } ,listeners: { 'select': { fn:MODx.fireResourceFormChange, scope:this } } }); Ext.getCmp('modx-panel-resource').getForm().add(fld); }); // вот это чисто моя обработка она тебе не нужна M.updateTextFields(); $(document).on('click', ".save_text_[[+divkey]]", function(){ saveDiv({ data: '\[\[zq_emdoc? &url=`' + $('#docinput_[[+divkey]]').find('#tvbrowserundefined').val() + '`\]\]', objData: $('#docinput_[[+divkey]]').find('#tvbrowserundefined').val(), divkey: "[[+divkey]]" }); return false; }) })
Степан
<div class="input-field col s12" id="docinput_[[+divkey]]"> - то куда добавить
Nano.Karmabot.chat
Outstanding! nezabor got +1 from ShevArtV. 11 karma in total.
Степан
я там чутка подправил а то весь код кинул что был
Степан
Dmitriy
Всем привет, подскажите пожалуйста. В сниппете через объект создается ресурс - товар магазина. После его создания я забираю его id и через процессор (runProcessor('gallery/upload') заливаю фото к товару. P.S. - это все происходит в одном сниппете. Проблема следующая - если я вручную пишу id уже созданного товара, то фото грузятся, а если это полученный id (товар только что создался), то выходит след. ошибка: [2022-06-06 06:27:09] (ERROR @ /home/skymfnms/public_html/core/cache/includes/elements/modsnippet/58.include.cache.php : 40) Error on upload Array ( [0] => Не указан источник ) Хотя источник я передаю.. Не могу понять в чем проблема
Степан
там целый массив
Dmitriy
$response = $modx->runProcessor('gallery/upload', array( 'id' => (int)$id, // id ресурса с галереей 'file' => $uploadfile, // Путь к файлу от корня сервера 'name'=>'', 'media_source' => (int)$sourceRes, ), array('processors_path' => $modx->getOption('core_path'). 'components/ms2gallery/processors/mgr/') );
Dmitriy
Источник я беру ms2Images (2)
Степан
ms2gallery - это уменно то что у вас есть?
Степан
я тока в минишоп пихал
Dmitriy
Да, у меня установлен модуль
Dmitriy
Просто если ресурс уже создан, то все срабатывает и никаких ошибок
Степан
В сниппете через объект создается ресурс - товар магазина. После его создания я забираю его id и через процессор эмммм....
Степан
не очень понял этого
Степан
т.е. вы создаете товар newObject?
Dmitriy
я тока в минишоп пихал
С минишопом у меня была проблема - он источник по умолчанию не подхватывал и всегда ставил Filesystem
Dmitriy
т.е. вы создаете товар newObject?
$newResource = $modx->newObject('modResource'); $newResource->set('pagetitle',$title); $newResource->set('class_key',$class_key); $newResource->set('parent',$parent); $newResource->set('template',$template); $newResource->set('published',1); $newResource->set('publishedon',$publishedon); $newResource->set('show_in_tree',$show_in_tree); $newResource->set('context_key',$context_key); $newResource->save(); $id = $newResource->get('id'); $newResource->set('alias', intval($id)); $newResource->save(); Да, а дальше прохожу по файлам и процессором добавляю
Степан
у вас я хз откуда возьмется id а алиас генерите чем-то другим
Nano.Karmabot.chat
Awesome! ShevArtV got +1 from ilya_lavka. 28 karma in total.
Dmitriy
Сам id передается верный, в журнал выводил специально и проверял данные
Степан
function getAlias($str) { $converter = array( 'а' => 'a', 'б' => 'b', 'в' => 'v', 'г' => 'g', 'д' => 'd', 'е' => 'e', 'ё' => 'e', 'ж' => 'zh', 'з' => 'z', 'и' => 'i', 'й' => 'y', 'к' => 'k', 'л' => 'l', 'м' => 'm', 'н' => 'n', 'о' => 'o', 'п' => 'p', 'р' => 'r', 'с' => 's', 'т' => 't', 'у' => 'u', 'ф' => 'f', 'х' => 'h', 'ц' => 'c', 'ч' => 'ch', 'ш' => 'sh', 'щ' => 'sch', 'ь' => '', 'ы' => 'y', 'ъ' => '', 'э' => 'e', 'ю' => 'yu', 'я' => 'ya', 'А' => 'A', 'Б' => 'B', 'В' => 'V', 'Г' => 'G', 'Д' => 'D', 'Е' => 'E', 'Ё' => 'E', 'Ж' => 'Zh', 'З' => 'Z', 'И' => 'I', 'Й' => 'Y', 'К' => 'K', 'Л' => 'L', 'М' => 'M', 'Н' => 'N', 'О' => 'O', 'П' => 'P', 'Р' => 'R', 'С' => 'S', 'Т' => 'T', 'У' => 'U', 'Ф' => 'F', 'Х' => 'H', 'Ц' => 'C', 'Ч' => 'Ch', 'Ш' => 'Sh', 'Щ' => 'Sch', 'Ь' => '', 'Ы' => 'Y', 'Ъ' => '', 'Э' => 'E', 'Ю' => 'Yu', 'Я' => 'Ya', ',' => '', ':' => '', '"' => '', ); $str = strtr($str, $converter); $str = strtolower($str); $str = preg_replace('~[^-a-z0-9_]+~u', '-', $str); $str = trim($str, "-"); return $str; }
Dmitriy
у вас я хз откуда возьмется id а алиас генерите чем-то другим
Чуть выше у меня $newResource->save(); - после этого уже могу получить id, а алиас мне просто надо названичть равным id
Степан
это все не важно
Dmitriy
Может, тут не спорю, тут учусь))
Степан
Может, тут не спорю, тут учусь))
а как вы $uploadfile - генерируете небось тоже из под выподвыподверта и всетаки товары лучше создавать через процессор
Степан
там какае-то морока с кешем и т.п.
Dmitriy
а как вы $uploadfile - генерируете небось тоже из под выподвыподверта и всетаки товары лучше создавать через процессор
foreach($files as $k => $v) { $name = $v['name']; $size = $v['size']; $tmp = $v['tmp_name']; $ext = pathinfo($name, PATHINFO_EXTENSION); //получаем расширение файла $hash = md5(time().$name.$size); // новое название файла $uploadfile = $path.$hash.'.'.$ext; // объединяем в конечный путь к файлу copy($tmp, $uploadfile); $response = $modx->runProcessor('gallery/upload', array( 'id' => (int)$id, // id ресурса с галереей 'file' => $uploadfile, // Путь к файлу от корня сервера 'name'=>'', 'media_source' => (int)$sourceRes, ), array('processors_path' => $modx->getOption('core_path'). 'components/ms2gallery/processors/mgr/') ); if ($response->isError()) { $modx->log(modX::LOG_LEVEL_ERROR, "Error on upload " . print_r($response->getAllErrors(), 1)); $modx->log(modX::LOG_LEVEL_ERROR, "Error on upload - " . $id . ". Source id - " . $sourceRes); } else { $modx->log(modX::LOG_LEVEL_INFO, "Successful upload " . print_r($response->getObject(), 1)); } }
Степан
а ваш алиас делайте из других кусков я вам функцию дал для работы с названиями
Dmitriy
$path - ?
$path = MODX_BASE_PATH . 'assets/users/';
Степан
зачем вы вообще генерите новые названия?
Степан
вы дублей не боитесь?
Dmitriy
Эти файлы грузят пользователи (анонимы). Дублей не будет, у меня же генерится название через md5
Степан
лан ща
Степан
@Depmond Не указан источник это ошибка обработана словарем походу
Степан
т.е. не ваша?
Dmitriy
Не, не моя
Степан
тогда вопрос самого процессора на что он так ругается
Степан
посмотрите в словаре и в процессоре
Степан
что именно они имели ввиду когда так криво перевели
Степан
кинь процессор в личку
Степан
файл процессора а то у меня нет
Степан
$modx->getOption('core_path'). 'components/ms2gallery/processors/mgr/ - вот тут лежит
Степан
$sourceRes - откуда
Степан
точно web?
Denis
ребят а как вы с гитом работаете ?
Denis
базу ведь в гит не положишь
Иван
базу ведь в гит не положишь
Файловые элементы феном/zoomx
Denis
а остальное ?
Иван
Что именно?
Иван
Сниппеты/шаблоны/чанки в файлах
Sentinel
базу ведь в гит не положишь
https://docs.modmore.com/en/Open_Source/Gitify/index.html
Иван
https://github.com/azernov/gitmodx
᠋
Добрый день! Перенес сайт на таймвеб, в файлах пути поправил и все равно ошибка висит "Error 503"
᠋
Может кто сталкивался ?
Dan
удали все внутри папки core/cache
᠋
этой папки и нету как раз, мне дали такой уже.
᠋
для размещения на хост
᠋
Я еще не делал /setup/ как написано, из-за этого может быть такая ошибка?
᠋
создал папку cache теперь могу перейти к сайт/setup/
᠋
Все проделал, обновил, и пишет "Site temporarily unavailable!"