Помогите решить проблему с PHP на DLE

LK
На сайте с 01.07.2010
Offline
24
631

Здравствуйте!

Проблема вот в чем:

на сайте под DLE 9.2 установлен модуль для интеграции игр (писал мастер), все работает, ставил на другой DLE 9.2 норм, поставил на DLE 9.7 не хочет.

Здесь файл show.full.php DLE 9.2 с модулем:


<?php
/*
=====================================================
DataLife Engine - by SoftNews Media Group
—————————————————--
http://dle-news.ru/
—————————————————--
Copyright (c) 2004,2011 SoftNews Media Group
=====================================================
Данный код защищен авторскими правами
=====================================================
Файл: show.full.php
—————————————————--
Назначение: Просмотр полной новости и комментариев
=====================================================

Вырезано для сокращения

if( empty( $xfieldsdata[$value[0]] ) ) {
$tpl->copy_template = preg_replace( "'\\[xfgiven_{$preg_safe_name}\\](.*?)\\[/xfgiven_{$preg_safe_name}\\]'is", "", $tpl->copy_template );
} else {
$tpl->copy_template = preg_replace( "'\\[xfgiven_{$preg_safe_name}\\](.*?)\\[/xfgiven_{$preg_safe_name}\\]'is", "\\1", $tpl->copy_template );
}
$tpl->copy_template = str_replace( "[xfvalue_{$preg_safe_name}]", stripslashes( $xfieldsdata[$value[0]] ), $tpl->copy_template );
}
}

//ЗДЕСЬ НАЧИНАЕТСЯ МОДУЛЬ

if(isset($xfieldsdata['game_id'])) { // проверяем доступность нашего доп. поля с именем game_id
$secret_api_key = '78FCBDD3D92C5219A72D149682909A8299AB5588'; // api ключ
$site_id = '1585'; // id площадки
$app_id = (int) $xfieldsdata['game_id']; // id приложения из доп. поля
$token = time(); // токен в виде unix timestamp
$user_id = ($is_logged) ? '&user_id=' . $member_id['user_id'] . '&usr_nickname=' . $member_id['name'] : ''; // добавляем имя пользователя в запрос
$query = "app_id={$app_id}&site_id={$site_id}{$user_id}&t={$token}";
$param = explode("&", $query); // разбиваем запрос по частям
asort($param); // сортируем, как указано в документации
$sign = '';
foreach($param as $sparam => $value)
$sign .= $value; // создаем строку подписи
$sign .= $secret_api_key; // добавляем к подписи наш API ключ
$query .= '&sig=' . md5($sign);
$tpl->set('{nextgame_code}', "<script language=\"javascript\" src=\"http://api2.nextgame.ru/iframe/js/?{$query}\"></script>");
// добавляем в шаблон тег {nextgame_code} с нашим итоговым кодом
} else
$tpl->set('{nextgame_code}', ''); // если доп. поля нет, то тег будет пустым

// ЗДЕСЬ ЗАКАНЧИВАЕТСЯ

$tpl->compile( 'content' );
if( $user_group[$member_id['user_group']]['allow_hide'] ) $tpl->result['content'] = preg_replace( "'\[hide\](.*?)\[/hide\]'si", "\\1", $tpl->result['content']);
else $tpl->result['content'] = preg_replace ( "'\[hide\](.*?)\[/hide\]'si", "<div class=\"quote\">" . $lang['news_regus'] . "</div>", $tpl->result['content'] );

Вырезано для сокращения

А когда ставлю тоже самое в DLE 9.7, так же перед $tpl->compile( 'content' ); ничего не выводится

Про интеграцию приложений описано тут: http://nextgame.ru/node/51

Игры онлайн tvoyaplaneta.ru (http://tvoyaplaneta.ru)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий