EASY-SPLIT - 1.2.1 КОНСТРУКТОР ВЫСОКОЭФФЕКТИВНЫХ ЦЕЛЕВЫХ СТРАНИЦ

Тема в разделе "CMS - Системы Управления Контентом", создана пользователем xcoder007, 2 мар 2017.

Статус темы:
Закрыта.
  1. xcoder007

    xcoder007 Постоялец

    Регистр.:
    7 фев 2016
    Сообщения:
    51
    Симпатии:
    27
    EASY-SPLIT - КОНСТРУКТОР ВЫСОКОЭФФЕКТИВНЫХ ЦЕЛЕВЫХ СТРАНИЦ
    Со Встроенной Системой Сплит Тестирования
    Easy-Split - это мощный визуальный редактор для создания продающих и подписных страниц.
    С помощью Easy-Split Вы будете создавать страницы в несколько раз быстрее чем раньше, и при этом, Вам больше не понадобятся услуги фрилансеров.
    Редактор содержит все необходимые для создания лендинга элементы, благодаря которым все Ваши страницы могут быть настроены под запрос клиента.
    [​IMG]
    Продажник + Демо

    нулл
     
    _kiano_, Goot и onizzuka_m нравится это.
  2. Elik5424

    Elik5424 Писатель

    Регистр.:
    22 июн 2016
    Сообщения:
    5
    Симпатии:
    0
    Слитая версия есть? Или как можно нулл активировать?
     
  3. xcoder007

    xcoder007 Постоялец

    Регистр.:
    7 фев 2016
    Сообщения:
    51
    Симпатии:
    27
    это нулл, зачем его активировать? он и так работать должен. подробно опишите что да как у вас не работает
     
  4. _kiano_

    _kiano_ Создатель

    Регистр.:
    25 мар 2015
    Сообщения:
    11
    Симпатии:
    2
    Интересная штуковина. Кто то тестировал нулевую версию ?
     
  5. _kiano_

    _kiano_ Создатель

    Регистр.:
    25 мар 2015
    Сообщения:
    11
    Симпатии:
    2
    Я пытаюсь поставить нуленый скрипт, но во время установки он требует ключ продукта, также не хочет подключаться к базе данных. Кто то пробовал ставить его ?
     
  6. xcoder007

    xcoder007 Постоялец

    Регистр.:
    7 фев 2016
    Сообщения:
    51
    Симпатии:
    27
    если изменить в /inc/functions.ajax.php функцию checkSerial($serial) на

    то заработает с любым ключом.

    также этот файл functions.ajax.php
    закоментируй в конце:
    //eval(gzuncompress(base64_decode($a)));

    и добавь:
    echo gzuncompress(base64_decode($a));

    все что было в зашифрованном виде станет видно [​IMG]
    открыв домен.ru/inc/functions.ajax.php/functions.ajax.php



    ob_end_clean();?>isSplitDBExists($url) || $extPages->isExtPageDBExists($url)) { echo 'exist'; return; } $res['id'] = $split->createSplit($name, $url); echo ($res['id']) ? json_encode($res) : 'nok'; } function editSplit($name, $url, $id) { $split = new Split(); $extPages = new ExtPages(); if($split->isSplitDBExists($url) || $extPages->isExtPageDBExists($url)) { echo 'exist'; return; } $res = $split->updateSplit($name, $url, $id); echo $res ? 'ok' : 'nok'; } function copyPage($pageId, $splitId) { $pages = new Pages(); $split = new Split(); $settings = new PageSettings(); $split_info = $split->getSplitById($splitId); $res = $pages->copyPage($pageId); if($res['id']) { $res['result'] = 'ok'; $res['split_id'] = $split_info['id']; $res['page_url'] = $split_info['url']; $settings->copySettings($pageId, $res['id']); } else { $res['result'] = 'nok'; } echo json_encode($res); } function copyExtPage($pageId) { $extPages = new ExtPages(); $settings = new PageSettings(true); $res = $extPages->copyPage($pageId); if($res['id']) { $res['result'] = 'ok'; $res['site_url'] = getSiteUrl() . '/' . $res['page_url']; $settings->copySettings($pageId, $res['id']); } else { $res['result'] = 'nok'; } echo json_encode($res); } function deleteSplit($splitId) { $split = new Split(); echo ($split->deleteSplit($splitId)) ? 'ok' : 'nok'; } function createPage($name, $split_id) { $pages = new Pages(); $res['count'] = $pages->countPagesInSplit($split_id); $res['id'] = $pages->createPage($name, $split_id); if($res['id']) { $res['result'] = 'ok'; echo json_encode($res); return; } echo 'nok'; } function changePageStatus($pageId, $status) { $pages = new Pages(); echo ($pages->changePageStatus($pageId, $status)) ? 'ok' : 'nok'; } function deletePage($pageId) { $pages = new Pages(); echo ($pages->deletePage($pageId)) ? 'ok' : 'nok'; } function deleteExtPage($pageId) { $extPages = new ExtPages(); echo ($extPages->deleteExtPage($pageId)) ? 'ok' : 'nok'; } function changeExtPageStatus($pageId, $status) { $extPages = new ExtPages(); echo ($extPages->changeExtPageStatus($pageId, $status)) ? 'ok' : 'nok'; } function createExtPage($name, $url) { $split = new Split(); $extPages = new ExtPages(); if($split->isSplitDBExists($url) || $extPages->isExtPageDBExists($url)) { echo 'exist'; return; } $res['count'] = $extPages->countExtPages(); $res['id'] = $extPages->createExtPage($name, $url); if($res['id']) { $res['result'] = 'ok'; echo json_encode($res); return; } echo 'nok'; } function saveNote($note) { $notes = new Notes(); echo $notes->updateNotes($note) ? 'ok' : 'nok'; } function savePageName($name, $page_id, $isExt) { if($isExt) { $pages = new ExtPages(); } else { $pages = new Pages(); } echo $pages->setPageName($name, $page_id) ? 'ok' : 'nok'; } function saveExtPageUrl($url, $page_id) { $pages = new ExtPages(); echo $pages->savePageUrl($url, $page_id) ? 'ok' : 'nok'; } function savePageSettings($settings, $page_id, $type, $isExt) { $pageSettings = new PageSettings($isExt); echo $pageSettings->savePageSettings($settings, $page_id, $type) ? 'ok' : 'nok'; } function getStyleSettings($page_id, $type, $isExt) { $pageSettings = new PageSettings($isExt); $res = $pageSettings->getStyleSettings($page_id, $type); echo $res ? $res : 'nok'; } function savePageContent($content, $page_id, $isExt) { if($isExt) { $pages = new ExtPages(); } else { $pages = new Pages(); } echo $pages->setPageContent($content, $page_id) ? 'ok' : 'nok'; } function saveProfile($profile) { if($profile) { $profile = (array)json_decode($profile); } else { echo 'nok'; return; } $settings = new Settings(); $saveLogin = false; $savePassword = false; if($profile['password'] && $profile['old_password']) { $oldPassword = encodePass($profile['old_password']); $currentPassword = $settings->getSetting('password'); if($oldPassword != $currentPassword) { echo 'password_error'; return; } } if($profile['login']) { $res = $settings->saveSetting('login', $profile['login']); $saveLogin = $res; } if($profile['password']) { $res = $settings->saveSetting('password', encodePass($profile['password'])); $savePassword = $res; } echo $saveLogin && $savePassword ? 'ok' : 'nok'; } function saveSocialsParams($params) { if($params) { $params = (array)json_decode($params); } else { echo 'nok'; return; } $save = false; $settings = new Settings(); if(is_array($params) && !empty($params)) { foreach ($params as $setting => $value) { $save = $settings->saveSetting($setting, $value); } } echo $save ? 'ok' : 'nok'; } function addTrafficSource($source) { if($source) { $source = (array)json_decode($source); } else { echo 'nok'; return; } $trafficSources = new TrafficSources(); $exist = $trafficSources->isTrafficSourceExist($source['value']); if(is_array($source) && !empty($source)) { $res['id'] = $trafficSources->saveTrafficSource($source['name'], $source['value']); } if($res['id']) { if($exist) { $res['exist'] = true; } $res['result'] = 'ok'; echo json_encode($res); return; } echo 'nok'; } function updateTrafficSource($name, $value, $id) { $trafficSources = new TrafficSources(); echo $trafficSources->updateTrafficSource($name, $value, $id) ? 'ok' : 'nok'; } function deleteTrafficSource($id) { $trafficSources = new TrafficSources(); echo $trafficSources->deleteTrafficSource($id) ? 'ok' : 'nok'; } function createMysqlDump() { $res = array(); $res['dump_time'] = DBDump::createDBDump(); if($res['dump_time']) { $res['result'] = 'ok'; } else { $res['result'] = 'nok'; } echo json_encode($res); } function restoreDBFromDump() { echo DBDump::restoreDBFromDump() ? 'ok' : 'nok'; } function checkForUpdate() { $newVersion = checkForUpdates(); $versionInfo = getLastVersion(); $currentVersion = (double)getCurrentVersion(); if(is_array($versionInfo) && isset($versionInfo['version'])) { $lastVersion = (double)$versionInfo['version']; } $res = array(); if(is_array($newVersion) && isset($newVersion['version'])) { $res['result'] = 'ok'; $res['version'] = $newVersion['version']; } elseif(!$newVersion && isset($lastVersion) && $lastVersion == $currentVersion) { $res['result'] = 'ok'; $res['last_version'] = true; } else { $res['result'] = 'nok'; } echo json_encode($res); } function updateNow() { $res = array(); $update = SystemUpdate::Update(); if($update) { $res['result'] = 'ok'; $res['version'] = getCurrentVersion(); } else { $res['result'] = 'nok'; } echo json_encode($res); } function getTargets() { $extPages = new ExtPages(); $pages = $extPages->getExtPages(); if(is_array($pages) && !empty($pages)) { $targets = array(); foreach($pages as $k => $v) { $targets[$k]['name'] = $v['name']; $targets[$k]['id'] = $v['id']; } $res['result'] = 'ok'; $res['targets'] = $targets; } else { $res['result'] = 'nok'; } echo json_encode($res); } function setTarget($targetId, $splitId) { $targets = new Targets(); echo $targets->setTarget($targetId, $splitId) ? 'ok' : 'nok'; } function getTargetForSplit($splitId) { $targets = new Targets(); $targetId = $targets->getTarget($splitId); $res = array(); if($targetId) { $res['result'] = 'ok'; $res['target_id'] = $targetId; } else { $res['result'] = 'nok'; } echo json_encode($res); } function getVisitsDateRange($pageId, $dateTo, $dateFrom, $statsType) { $visits = new VisitStats(); $stats = $visits->getVisitsDateRange($pageId, $dateTo, $dateFrom, $statsType); $res = array(); if($stats) { $res['result'] = 'ok'; $res['data'] = $stats; } elseif($stats === false) { $res['result'] = 'empty'; } else { $res['result'] = 'nok'; } echo json_encode($res); } function getConversionDateRange($pageId, $dateTo, $dateFrom, $statsType) { $conversion = new ConversionStats(); $stats = $conversion->getConversionDateRange($pageId, $dateTo, $dateFrom, $statsType); $res = array(); if($stats) { $res['result'] = 'ok'; $res['data'] = $stats; } elseif($stats === false) { $res['result'] = 'empty'; } else { $res['result'] = 'nok'; } echo json_encode($res); } function getVisitsByTrafficSource($pageId, $dateTo, $dateFrom, $statsType) { $visits = new VisitStats(); $stats = $visits->getVisitsByTrafficSource($pageId, $dateTo, $dateFrom, $statsType); $res = array(); if(is_array($stats) && !empty($stats)) { $res['result'] = 'ok'; $res['data'] = $stats; } elseif($stats === false) { $res['result'] = 'empty'; } else { $res['result'] = 'nok'; } echo json_encode($res); } function getConversionsByTrafficSource($pageId, $dateTo, $dateFrom, $statsType) { $conv = new ConversionStats(); $stats = $conv->getConverionsByTrafficSource($pageId, $dateTo, $dateFrom, $statsType); $res = array(); if(is_array($stats) && !empty($stats)) { $res['result'] = 'ok'; $res['data'] = $stats; } elseif($stats === false) { $res['result'] = 'empty'; } else { $res['result'] = 'nok'; } echo json_encode($res); } function checkShowSetting($option) { $settings = new Settings(); $show = $settings->getSetting($option); echo $show === 'true' ? 'ok' : 'nok'; } function setShowSetting($option, $value) { $settings = new Settings(); $set = $settings->saveSetting($option, $value); echo $set ? 'ok' : 'nok'; } function checkSerial($serial){ echo 'ok'; }{ if(!$serial) return false; if(!SYSTEM_CHECKSN_URL) return false; if(!curlEnabled()) { return false; } $post_data = http_build_query(array('serial' => $serial)); $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, SYSTEM_CHECKSN_URL); curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_POSTFIELDS, $post_data); curl_setopt($curl, CURLOPT_RETURNTRANSFER,true); $response = curl_exec($curl); curl_close($curl); if($response) { $response = json_decode($response, true); } echo $response['resp'] == 'valid' ? 'ok' : 'nok'; } function checkDbConnect($db_user, $db_pass, $db_name, $db_host) { $dsn = 'mysql:dbname='.$db_name.';host='.$db_host; try { $db = new PDO($dsn, $db_user, $db_pass); echo 'ok'; return; } catch (PDOException $e) { echo 'nok'; return; } } function delInstallScript() { $res = unlink(SITE_PATH . 'install.php'); echo $res ? 'ok' : 'nok'; }

    дешифровал этот functions.ajax.php. добавил function checkSerial($serial){ echo 'ok'; }

    установка не продолжается при нажатии на УСТАНОВИТЬ!

    если кто знает как решить, будем рады
     
    Последнее редактирование: 14 мар 2017
  7. Lionline

    Lionline Создатель

    Регистр.:
    29 апр 2012
    Сообщения:
    27
    Симпатии:
    2
    Установка на OpenServer

    Создаем домен easy-split.com в разделе domains, перезагружаем OpenServer и домен easy-split.com становится локальным.
    В папке easy-split.com создаем файл checkserial.php с содержимым

    И установка проходит с любым серийником...
    Но все это блин оказалось пустой тратой времени так как после успешного логина происходит редирект на admin/main.php а он тупо пустой... Так что скрипт не полный, увы...
     
    xcoder007 нравится это.
  8. Lionline

    Lionline Создатель

    Регистр.:
    29 апр 2012
    Сообщения:
    27
    Симпатии:
    2
    В общем ребята я разобрался, рипнул install.php и там видно что во время инсталла с сервака овнера еще архив скачивается и распаковывается в корень скрипта, только чтоб его скачать на сервер овнеру отправляются данные: серийник, емэйл, домен и ip на котором скрипт устанавливается. Естественно там все это дело пробивается по базе и выдается не достающее барахло в виде zip архива. А так после установки site.ru/index.php и site.ru/admin/main.php пустые и хз что там еще не хватает. Хотя я настырный парни, я просидел пол ночи и раскодировал все файлы скрипта и немного проанализировав код добавил пару-тройку строчек в main.php и админка заработала и настройки пашут но для полноценной работы нежно еще разбираться а мне к сожалению некогда. Кому интересно могу скинуть декодированные файлы разбирайтесь.
     
    xcoder007 нравится это.
  9. xcoder007

    xcoder007 Постоялец

    Регистр.:
    7 фев 2016
    Сообщения:
    51
    Симпатии:
    27
    Благодарю за такой суппорт) . а на чём остановилось дело? скидывай скрипт тут, думаю многие спасибо скажут
     
  10. _kiano_

    _kiano_ Создатель

    Регистр.:
    25 мар 2015
    Сообщения:
    11
    Симпатии:
    2
    Я так полагаю, что нужно купить этот скрипт, а потом из него делать рабочий нуль, раз он что то еще докачивает с сервера.
     
Статус темы:
Закрыта.