Файл интеграции OpenCart 1.5

Предложения по новым функциям, улучшениям и др.

Файл интеграции OpenCart 1.5

UNREAD_POST pumpkin » 25.09.2013 11:33:13

Предлагаю создать файл интеграции с CMS OpenCart для версии 1.5. Несмотря на то, что в данном движке есть встроенный инструмент для создания резервной копии и восстановления БД, но в нем нет возможности:
  • применить сжатие
  • выбрать таблицы с префиксом отличный от установленного по умолчанию в настройках (oc_)
Вот, что могу предложить:
Файл интеграции (пробный вариант)
Код: Выделить всё
<?php
session_start();

// Sypex Dumper находится в ./vendor/sxd/
require '../../system/engine/registry.php';
require '../../system/library/db.php';
require '../../system/library/user.php';
require '../../system/library/request.php';
require '../../system/library/session.php';
require '../../admin/config.php';

$registry = new Registry();

$registry->set('db', new DB(DB_DRIVER, DB_HOSTNAME, DB_USERNAME, DB_PASSWORD, DB_DATABASE));
$registry->set('request', new Request());
$registry->set('session', new Session());

/*
 * 1) Если существует $_SESSION['user_id'] - происходит выборка данных о данном
 * пользователе.
 * 2) Происходит получение списка прав по той группе, в которую входит
 * данный пользователь.
 */
$user = new User($registry);

/*
 * Если у данного пользователя есть права на доступ к меню в админке OpenCart
 * Система -> Бэкап/Восстановление, значит, логично предположить, можно
 * эти права применить и к данному модулю
 */
if ($user->isLogged() AND $user->hasPermission('access', 'tool/backup') AND $user->hasPermission('modify', 'tool/backup'))
{
    $this->CFG['my_user'] = DB_USERNAME;
    $this->CFG['my_pass'] = DB_PASSWORD;
    $this->CFG['my_db']   = DB_DATABASE;
    $this->CFG['my_host'] = DB_HOSTNAME;

    $auth = 1;
}
else
{
    $auth = 0;
}
?>

В тех готовых файлах интеграции для других продуктов в большинстве случаев происходит получение SID'а, поиск его в БД в таблице с сессией, если пользователь с таким SID существует - даем доступ. Эти решения просты, если сессии основаны на таблицах БД. В движке OpenCart 1.5 сессии основаны на файлах...

Если есть хорошие советы - пишите.
pumpkin
 
Сообщения: 1
Зарегистрирован: 25.09.2013 11:07:16
Откуда: Донецк (Украина)

Вернуться в Предложения

Кто сейчас на конференции

Сейчас этот форум просматривают: Majestic-12 [Bot] и гости: 1

Яндекс.Метрика