Последние темы


Подглючивание сниппета shk_options

  • Добрый день, коллеги. На трех подряд магазинах затупливал сниппет. А именно: то выводил, то не выводил данные. Посему, было принято решение быстро и на коленке написать свой сниппет. Да, он крив, некрасив, без классов, но все же работает. Возможно, кому то пригодится, а может и нет. Неважно:)
    Конкретно этот работает для вывода способа оплаты. Доработать я думаю не составит труда.

    $sql = "SELECT * FROM `modx_shopkeeper3_config` WHERE `setting`='payments'";
    
    $query = new xPDOCriteria($modx, $sql);
    if ($query->prepare() && $query->stmt->execute()){
        $res = $query->stmt->fetchAll(PDO::FETCH_ASSOC);
        $x=0;
        while($x<count($res)){
            $r = json_decode($res[$x]['value'], true);
            //print_r($r);
            $x++;
            foreach($r as $param){
                $label = $param['label'];
                if ($param['value'] == '' or empty($param['value'])){
                    $value = $param['label'];
                } else {
                    $value = $param['value'];
                }
                $price = $param['price'];
                if($_SESSION['shk_delivery']['label'] == $label ){
                    $selected="checked='checked'";
                }
                $data.=$modx->parseChunk($tpl,array('label'=>$label,'price'=>$price, 'value'=>$value, 'selected'=>$selected));
                $selected = '';
            }
        }
    }
    return $data;
    

    Вызов:

    [[!getPayment?
        &tpl=`radio_option`
    ]]
    

    И да, чуть не забыл, работает для input[type=radio]

 

Последние комментарии

  • @Andchir Чета не додумался. Спасибо огромное, завелось.

    Читать далее
  • Потому что в этой функции нет объекта $modx. Можно попробовать добавить такую строчку вверху функции (внутри):

    global $modx;

    Читать далее
  • Добрый день.
    Задача: Есть таблица где записываются id данных из других созданных таблиц.
    Нужно в функции filter_export и filter_import объединить данные из разных таблиц.

    Как я пробывал решить свою задачку:

    function filter_export($value_arr,$doc_id=0) { //var_dump($output_arr); //exit; $output_arr = $value_arr; if(isset($output_arr['execution'])) { $ids = $output_arr['execution']; $result = $modx->query("SELECT * FROM LKp3KJ_my_execution WHERE id = $ids"); $row = $result->fetch(PDO::FETCH_ASSOC); $output_arr['execution'] = $row[title]; } /* if(isset($output_arr['price'])) $output_arr[1] = floatval($output_arr[1]) - 200; */ return $output_arr; }

    В ответ получаю 500 ошибку на странице импорт/экспорт.

    Читать далее
  • Спасибо за содействие! Приношу извинения за неудобства.

    Читать далее