• DONATE to NULLED!
    Форуму и его команде можно помочь, мотивировать модераторов разделов.
    Помогите модератору этого раздела killoff лично.

Помощь после обновления 9.4->10.5 не могу вернуть самописный хак

Tarasishe

Постоялец
Регистрация
26 Апр 2008
Сообщения
190
Реакции
142
Собственно оочень давно не обновлялся двиг, пришло время...

Есть модуль корзины, самописный, вставлялся так:

1. Открываем index.php и находим:

Код:
$tpl->compile ( 'main' );

ниже вставляем:

Код:
/** * Basket template tag hook **/

$tpl->result['main'] = preg_replace_callback('#\[basket\s+price=[\'|"](.*?)[\'|"]\s+view=[\'|"](.*?)[\'|"]\](.*?)\[/basket\]#is', 'Basket_Hook', $tpl->result['main']);

function Basket_Hook($matches) {

    $price = (float) $matches[1];
    $name  = htmlspecialchars($matches[3], ENT_QUOTES);

    return '<a href="#" onclick="Basket.addToBasket(\''.$price.'\', \''.$name.'\')">'.$matches[2].'</a>';
}

/** * Basket END **/

Теперь в любое место сайта вставляем (например в fullstory.tpl вот так) :
Код:
[basket price="[xfvalue_price]" view="добавить в корзину"]{title}[/basket]
На выходе у нас готовая ссылка уже.


Собственно, после обновления не могу вернуть.... как то изменилось в DLE многое :) ... нашел, "$tpl->compile ( 'main' );" в "engine/modules/main.php" , но вставив там код все равно не работает ...


Подскажите, как побороть... вечер потратил, не одолел...
 
А вы можете написать что именно не работает ?
 
dle.jpg
 
После
PHP:
$tpl->set ( '{info}',  $tpl->result['info'] );
вставь
PHP:
$tpl->result['content'] = preg_replace_callback('#\[basket\s+price=[\'|"](.*?)[\'|"]\s+view=[\'|"](.*?)[\'|"]\](.*?)\[/basket\]#is', 'Basket_Hook', $tpl->result['content']);

function Basket_Hook($matches)
{
    $price = (float) $matches[1];
    $name  = htmlspecialchars($matches[3], ENT_QUOTES);
    return '<a href="#" onclick="Basket.addToBasket(\''.$price.'\', \''.$name.'\')">'.$matches[2].'</a>';
}
 
Назад
Сверху