Мануал по созданию нулла OKay CMS и Simpla CMS

При переходе в карточку товара отображается пустое поле. В чем может быть проблема? Делал все как на 2 странице.

Все , вроде разобрался. Стало отображаться. Надо было поменять
Код:
return $this->smarty_func();
на
Код:
return $this->design->fetch('product.tpl');
 
Последнее редактирование модератором:
Подскажите как сделать экспорт товаров в формате XML ? :(
и куда засунуть скрипт экспорта?
 
Последнее редактирование:
Подскажите как сделать экспорт товаров в формате XML ? :(
и куда засунуть скрипт экспорта?
XML формат это контейнер. Какой именно формат тебе нужен. Система из коробки умеет делать yandex YML - это XML формат магазина яндекс.

Обнаружил такую хрень в оригинальной версии окея 1.2.3

в файле indexadmin.php
в строке
$this->design->assign('manager', $this->manager);

слово манагер написано в традициях госзаказа, буквы a e написаны кириллицей. )

Если не исправить эти буквы, то после обнуления вышибает ошибки при заходе в админку.

На github лежит такой же кривой файл indexadmin.php assign('manager', написано с использованием киррилицы. 2, 4 и 6 буквы.


Тут выше выкладывали nulled версии 1.2.3, там переменная manager в правильном написании присваивалась в блоке

if ($module != 'AuthAdmin') {

@list($l->domains, $l->expiration, $l->comment) = explode('#', $r, 3);

$l->domains = explode(',', $l->domains);
$h = getenv("HTTP_HOST");
$this->design->assign('manager', $this->manager);
if(substr($h, 0, 4) == 'Для просмотра ссылки Войди или Зарегистрируйся.') $h = substr($h, 4);
else {
$l->valid = true;
}

$this->design->assign('mаnаgеr', $this->manager);
}

автор нулла не выпилил этот кусок, поэтому у него ошибок не выдавало.

Итак вообщем мануал по нуллению актуальных версии Okay CMS - для Simpla CMS принцип тот же (есть небольшие различия в админке)

Устанавливаем Okay CMS получаем тестовый ключ и чистим
Либо распаковываем архив из дистрибутива, делаем необходимые манипуляции и пакуем все назад с тем же именем.

index.php - удаляем нафиг следующий код, для отключения проверки лицензии во фронтенде
PHP:
$p=13; $g=3; $x=5; $r = ''; $s = $x;
$bs = explode(' ', $view->config->license);
foreach($bs as $bl){
    for($i=0, $m=''; $i<strlen($bl)&&isset($bl[$i+1]); $i+=2){
        $a = base_convert($bl[$i], 36, 10)-($i/2+$s)%27;
        $b = base_convert($bl[$i+1], 36, 10)-($i/2+$s)%24;
        $m .= ($b * (pow($a,$p-$x-5) )) % $p;}
    $m = base_convert($m, 10, 16); $s+=$x;
    for ($a=0; $a<strlen($m); $a+=2) $r .= @chr(hexdec($m{$a}.$m{($a+1)}));}

@list($l->domains, $l->expiration, $l->comment) = explode('#', $r, 3);

$l->domains = explode(',', $l->domains);

$h = getenv("HTTP_HOST");
if(substr($h, 0, 4) == 'www.') {
    $h = substr($h, 4);
}
if((!in_array($h, $l->domains) || (strtotime($l->expiration)<time() && $l->expiration!='*'))) {
    print "<div style='text-align:center; font-size:22px; height:100px;'>Лицензия недействительна<br><a href='http://okay-cms.com'>Скрипт интернет-магазина Okay</a></div>";
}

backend/IndexAdmin.php удаляем код для отключения проверки в бекенде
PHP:
// удаляем из массивов в 2ух местах
'LicenseAdmin' => 'license'

// удаляем целиком конструкцию
        if ($module != 'AuthAdmin') {
            $p=13; $g=3; $x=5; $r = ''; $s = $x;
            $bs = explode(' ', $this->config->license);
            foreach($bs as $bl){
                for($i=0, $m=''; $i<strlen($bl)&&isset($bl[$i+1]); $i+=2){
                    $a = base_convert($bl[$i], 36, 10)-($i/2+$s)%27;
                    $b = base_convert($bl[$i+1], 36, 10)-($i/2+$s)%24;
                    $m .= ($b * (pow($a,$p-$x-5) )) % $p;}
                $m = base_convert($m, 10, 16); $s+=$x;
                for ($a=0; $a<strlen($m); $a+=2) $r .= @chr(hexdec($m{$a}.$m{($a+1)}));}

            @list($l->domains, $l->expiration, $l->comment) = explode('#', $r, 3);

            $l->domains = explode(',', $l->domains);
            $h = getenv("HTTP_HOST");
            if(substr($h, 0, 4) == 'www.') $h = substr($h, 4);
            if((!in_array($h, $l->domains) || (strtotime($l->expiration)<time() && $l->expiration!='*')) && $module!='LicenseAdmin') {
                header('location: '.$this->config->root_url.'/backend/index.php?module=LicenseAdmin');
            } else {
                $l->valid = true;
                $this->design->assign('license', $l);
            }

            $this->design->assign('license', $l);
        }

backend/ProductAdmin.php в модуле управления товарами
PHP:
// удаляем вызов бесполезной функции

$this->smarty_func();

// так же удаляем всю функцию
    private function smarty_func(){
        if (file_exists('backend/LicenseAdmin.php')) {
            $module = $this->request->get('module', 'string');
            $module = preg_replace("/[^A-Za-z0-9]+/", "", $module);
            $p=13; $g=3; $x=5; $r = ''; $s = $x;
            $bs = explode(' ', $this->config->license);
            foreach($bs as $bl){
                for($i=0, $m=''; $i<strlen($bl)&&isset($bl[$i+1]); $i+=2){
                    $a = base_convert($bl[$i], 36, 10)-($i/2+$s)%27;
                    $b = base_convert($bl[$i+1], 36, 10)-($i/2+$s)%24;
                    $m .= ($b * (pow($a,$p-$x-5) )) % $p;}
                $m = base_convert($m, 10, 16); $s+=$x;
                for ($a=0; $a<strlen($m); $a+=2) $r .= @chr(hexdec($m{$a}.$m{($a+1)}));}

            @list($l->domains, $l->expiration, $l->comment) = explode('#', $r, 3);

            $l->domains = explode(',', $l->domains);
            $h = getenv("HTTP_HOST");
            if(substr($h, 0, 4) == 'www.') $h = substr($h, 4);
            if((!in_array($h, $l->domains) || (strtotime($l->expiration)<time() && $l->expiration!='*')) && $module!='LicenseAdmin') {
                header('location: '.$this->config->root_url.'/backend/index.php?module=LicenseAdmin');
            } else {
                $l->valid = true;
                $this->design->assign('license', $l);
            }

            $this->design->assign('license', $l);
        }
        else{
            die('<a href="http://okay-cms.com">OkayCMS</a>');
        }
    }

backend/design/html/left.tpl в шаблоне админки
PHP:
// код
<div id="okay_logo">
     <a href='index.php?module=LicenseAdmin'><img src="design/images/logo.png" alt="OkayCMS"/></a>
</div>

// заменяем на любое по вкусу

<div id="okay_logo">
     <a href='index.php?module=SettingsAdmin'><img src="design/images/logo.png" alt="OkayCMS"/></a>
</div>


// и удаляем в низу
<div class="license_info">
{if in_array('license', $manager->permissions)}
    {if $license->valid}
        <span><a href='index.php?module=LicenseAdmin'>Лицензия</a> действительна {if $license->expiration != '*'}до {$license->expiration}{/if} для домен{$license->domains|count|plural:'а':'ов'} {foreach $license->domains as $d}{$d}{if !$d@last}, {/if}{/foreach}.</span>

    {else}
        <span><a href='index.php?module=LicenseAdmin'>Лицензия</a> недействительна.</span>
    {/if}
{/if}
</div>

backend/design/css/left.tpl - подчищаем таблицу стиле админки
PHP:
.license_info {
    margin: 10px 0;
    line-height: 1.3;
    color: #243541;
    font-size: 12px;
}

api/Managers.php - удаляем
PHP:
'license',

backend/design/html/manager.tpl - в шаблоне редактирования прав доступа к модулям админки, удаляем
PHP:
'license'    =>'Управление лицензией',

Удаляем файлы backend/LicenseAdmin.php , backend/design/html/license.tpl - они нам более не понадобятся
и каталог backend/files/license/ - он изначально был не нужен

После проделанного, что при наличии у вас нормального редактора (рекомендую Notepad++ для Windows или Coda для Mac) займет не более 5 минут, чистим лицензию из конфига config/config.php удаляем лицензию
PHP:
license = y7cfgr9qvv idwptlsxfs qikmoyrnpt putxvrtpx1 vovyvpddnv w9uqox9hwk fzmnlrjzmf nrwqopmvqt wnyylrmurw zdvxrdud9y az79on8kzn 9eyzenailo hzpxisjlmp ouzpwjlbs5 mhp6qqwpyf yttd8j9vrv gosllkhncz onmutmrsmr qzjby2ozs8 vpt7
и проверяем что все работает

Так же можно удалить лицензионный ключ из базы (где он изнально был не нужен) - открываем нашу базу в phpMyAdmin
PHP:
DELETE FROM s_settings WHERE name = 'license'

Вроде бы ничего не забыл - если что - пишите - исправлю


Дополнение к инструкции Маркуса.

в файле backend/indexAdmin.php
строку:

$this->design->assign('mаnаgеr', $this->manager);

красным выделены буквы кириллицей

меняем на:
Код:
$this->design->assign('manager', $this->manager);

Правильный нуль для okaycms 1.2.3

Изменения:
Инсталятор модифицирован для корректной работы на php7. Класс languages переименован в lang в целях совместимости с php7

 
Последнее редактирование модератором:
XML формат это контейнер. Какой именно формат тебе нужен. Система из коробки умеет делать yandex YML - это XML формат магазина яндекс.

Обнаружил такую хрень в оригинальной версии окея 1.2.3

в файле indexadmin.php
в строке
$this->design->assign('manager', $this->manager);

слово манагер написано в традициях госзаказа, буквы a e написаны кириллицей. )

Если не исправить эти буквы, то после обнуления вышибает ошибки при заходе в админку.

На github лежит такой же кривой файл indexadmin.php assign('manager', написано с использованием киррилицы. 2, 4 и 6 буквы.


Тут выше выкладывали nulled версии 1.2.3, там переменная manager в правильном написании присваивалась в блоке

if ($module != 'AuthAdmin') {

@list($l->domains, $l->expiration, $l->comment) = explode('#', $r, 3);

$l->domains = explode(',', $l->domains);
$h = getenv("HTTP_HOST");
$this->design->assign('manager', $this->manager);
if(substr($h, 0, 4) == 'Для просмотра ссылки Войди или Зарегистрируйся.') $h = substr($h, 4);
else {
$l->valid = true;
}

$this->design->assign('mаnаgеr', $this->manager);
}

автор нулла не выпилил этот кусок, поэтому у него ошибок не выдавало.




Дополнение к инструкции Маркуса.

в файле backend/indexAdmin.php
строку:

$this->design->assign('mаnаgеr', $this->manager);

красным выделены буквы кириллицей

меняем на:
Код:
$this->design->assign('manager', $this->manager);

Правильный нуль для okaycms 1.2.3

Изменения:
Инсталятор модифицирован для корректной работы на php7. Класс languages переименован в lang в целях совместимости с php7


Поставил нулл на php 7 , работает вроде все кроме самих товаров. Заходишь в любой товар и просто ничего не выводит.
 
А у всех версия, которую выложил Для просмотра ссылки Войди или Зарегистрируйся работает нормально? У меня почему-то не обновляется число товаров в корзине при нажатии кнопки "Купить". В логах выдает ошибку:
Код:
PHP Fatal error:  Call to a member function languages() on null in \\okayCms\\ajax\\cart.php on line 26
 
А у всех версия, которую выложил Для просмотра ссылки Войди или Зарегистрируйся работает нормально? У меня почему-то не обновляется число товаров в корзине при нажатии кнопки "Купить". В логах выдает ошибку:
Код:
PHP Fatal error:  Call to a member function languages() on null in \\okayCms\\ajax\\cart.php on line 26

Если пофиксил отпишись, я ставил тоже эту версию и при добавлении в корзину или сравнение не работал счетчик а в корзине нельзя удалить товар.
Психанул скачал с оф сайта и занулил сам. Все равно та же хрень, ставил на php 7.
 
рабочая версия 1.2.3, скачанная в соседней теме

глюков не наблюдалось, сравнение работает ровно, в админке все тоже гуд
 
Последнее редактирование:
Друзья, а не лучше(легче) ли будет сделать генератор ключа вместо нулления?
 
рабочая версия 1.2.3, скачанная в соседней теме

глюков не наблюдалось, сравнение работает ровно, в админке все тоже гуд

пример
Ребят, как эта версия в работе ? Нашлись траблы ? На первый взгляд все ровно... Отпишитесь пожалуйста...
 
Назад
Сверху