Рекомендуемые сообщения

misskuzi    0

Здароф... подскажите, кто сталкивался, мой менеджер изображений не запоминает последнюю папку из которой я загружал изображения... то есть при добавлении нескольких фото к одному товару мне приходится заново проходить все дерево папок до нужной...

как это исправить?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
misskuzi    0

ocstore 2.1.0.2

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
misskuzi    0

Уважаемые форумчане помогите, а то напрягает добавлять изображения каждый раз проходя через "дерево"

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
misskuzi    0

Прошу помощи!!!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
klimbronin    4

Помощь - надо внести изменения в файл admin\controller\common\filemanager.php.

Изменения пометил комментариями на русском. Можно в Notepad++ открыть, выставить синтаксис PHP и посмотреть (комментарии буду зелёным выделены).

Если не получится, то возможно из-за другой версии,  я на версии 2.0.3.1 исправлял. В этом случае могу у тебя на сайте поправить.

<?php
class ControllerCommonFileManager extends Controller {
    public function index() {
        $this->load->language('common/filemanager');

        if (isset($this->request->get['filter_name'])) {
            $filter_name = rtrim(str_replace(array('../', '..\\', '..', '*'), '', $this->request->get['filter_name']), '/');
        } else {
            $filter_name = null;
        }

        // Make sure we have the correct directory
        // ТУТ ЗАКОММЕНТИРОВАН СТАРЫЙ КОД (/* - начало, */ - конец комментария)
        /*
        if (isset($this->request->get['directory'])) {
            $directory = rtrim(DIR_IMAGE . 'catalog/' . str_replace(array('../', '..\\', '..'), '', $this->request->get['directory']), '/');
        } else {
            $directory = DIR_IMAGE . 'catalog';
        }
        */
        // НОВЫЙ КОД. НАЧАЛО
        $path = null;
        if (isset($this->request->get['directory']))
        {
            $path = $this->request->get['directory'];
            setcookie("LAST_DIR", $path, time()+3600);
            $directory = rtrim(DIR_IMAGE . 'catalog/' . str_replace(array('../', '..\\', '..'), '', $path), '/');
        }
        else if (isset($_COOKIE['LAST_DIR']))
        {
            $path = $_COOKIE['LAST_DIR'];
            $directory = rtrim(DIR_IMAGE . 'catalog/' . str_replace(array('../', '..\\', '..'), '', $path), '/');
            if(!is_dir($directory))
            {
                $path = null;
                $directory = DIR_IMAGE . 'catalog';
            }
        }
        else
        {
            $directory = DIR_IMAGE . 'catalog';
        }
        // НОВЫЙ КОД. КОНЕЦ

        if (isset($this->request->get['page'])) {
            $page = $this->request->get['page'];
        } else {
            $page = 1;
        }

        $data['images'] = array();

        $this->load->model('tool/image');

        // Get directories
        $directories = glob($directory . '/' . $filter_name . '*', GLOB_ONLYDIR);

        if (!$directories) {
            $directories = array();
        }

        // Get files
        $files = glob($directory . '/' . $filter_name . '*.{jpg,jpeg,png,gif,JPG,JPEG,PNG,GIF}', GLOB_BRACE);

        if (!$files) {
            $files = array();
        }

        // Merge directories and files
        $images = array_merge($directories, $files);

        // Get total number of files and directories
        $image_total = count($images);

        // Split the array based on current page number and max number of items per page of 10
        $images = array_splice($images, ($page - 1) * 16, 16);

        foreach ($images as $image) {
            $name = str_split(basename($image), 14);

            if (is_dir($image)) {
                $url = '';

                if (isset($this->request->get['target'])) {
                    $url .= '&target=' . $this->request->get['target'];
                }

                if (isset($this->request->get['thumb'])) {
                    $url .= '&thumb=' . $this->request->get['thumb'];
                }

                $data['images'][] = array(
                    'thumb' => '',
                    'name'  => implode(' ', $name),
                    'type'  => 'directory',
                    'path'  => utf8_substr($image, utf8_strlen(DIR_IMAGE)),
                    'href'  => $this->url->link('common/filemanager', 'token=' . $this->session->data['token'] . '&directory=' . urlencode(utf8_substr($image, utf8_strlen(DIR_IMAGE . 'catalog/'))) . $url, 'SSL')
                );
            } elseif (is_file($image)) {
                // Find which protocol to use to pass the full image link back
                if ($this->request->server['HTTPS']) {
                    $server = HTTPS_CATALOG;
                } else {
                    $server = HTTP_CATALOG;
                }

                $data['images'][] = array(
                    'thumb' => $this->model_tool_image->resize(utf8_substr($image, utf8_strlen(DIR_IMAGE)), 100, 100),
                    'name'  => implode(' ', $name),
                    'type'  => 'image',
                    'path'  => utf8_substr($image, utf8_strlen(DIR_IMAGE)),
                    'href'  => $server . 'image/' . utf8_substr($image, utf8_strlen(DIR_IMAGE))
                );
            }
        }

        $data['heading_title'] = $this->language->get('heading_title');

        $data['text_no_results'] = $this->language->get('text_no_results');
        $data['text_confirm'] = $this->language->get('text_confirm');

        $data['entry_search'] = $this->language->get('entry_search');
        $data['entry_folder'] = $this->language->get('entry_folder');

        $data['button_parent'] = $this->language->get('button_parent');
        $data['button_refresh'] = $this->language->get('button_refresh');
        $data['button_upload'] = $this->language->get('button_upload');
        $data['button_folder'] = $this->language->get('button_folder');
        $data['button_delete'] = $this->language->get('button_delete');
        $data['button_search'] = $this->language->get('button_search');

        $data['token'] = $this->session->data['token'];

        // ТУТ ЗАКОММЕНТИРОВАН СТАРЫЙ КОД (/* - начало, */ - конец комментария)
        /*
        if (isset($this->request->get['directory'])) {
            $data['directory'] = urlencode($this->request->get['directory']);
        } else {
            $data['directory'] = '';
        }
        */
        // НОВЫЙ КОД - одна нижестоящая строка
        $data['directory'] = $directory;

        if (isset($this->request->get['filter_name'])) {
            $data['filter_name'] = $this->request->get['filter_name'];
        } else {
            $data['filter_name'] = '';
        }

        // Return the target ID for the file manager to set the value
        if (isset($this->request->get['target'])) {
            $data['target'] = $this->request->get['target'];
        } else {
            $data['target'] = '';
        }

        // Return the thumbnail for the file manager to show a thumbnail
        if (isset($this->request->get['thumb'])) {
            $data['thumb'] = $this->request->get['thumb'];
        } else {
            $data['thumb'] = '';
        }

        // Parent
        $url = '';

        // ТУТ ЗАКОММЕНТИРОВАН СТАРЫЙ КОД (/* - начало, */ - конец комментария)
        /*
        if (isset($this->request->get['directory'])) {
            $pos = strrpos($this->request->get['directory'], '/');

            if ($pos) {
                $url .= '&directory=' . urlencode(substr($this->request->get['directory'], 0, $pos));
            }
        }
        */
        // НОВЫЙ КОД. НАЧАЛО
        if($path){
            $pos = strrpos($path, '/');
            if ($pos) {
                $url .= '&directory=' . urlencode(substr($path, 0, $pos));
            }
        }
        // НОВЫЙ КОД. КОНЕЦ

        if (isset($this->request->get['target'])) {
            $url .= '&target=' . $this->request->get['target'];
        }

        if (isset($this->request->get['thumb'])) {
            $url .= '&thumb=' . $this->request->get['thumb'];
        }

        $data['parent'] = $this->url->link('common/filemanager', 'token=' . $this->session->data['token'] . $url, 'SSL');

        // Refresh
        $url = '';

        // ТУТ ЗАКОММЕНТИРОВАН СТАРЫЙ КОД (/* - начало, */ - конец комментария)
        /*
        if (isset($this->request->get['directory'])) {
            $url .= '&directory=' . urlencode($this->request->get['directory']);
        }
        */
        // НОВЫЙ КОД. НАЧАЛО
        if ($path) {
            $url .= '&directory=' . urlencode($path);
        }
        // НОВЫЙ КОД. КОНЕЦ

        if (isset($this->request->get['target'])) {
            $url .= '&target=' . $this->request->get['target'];
        }

        if (isset($this->request->get['thumb'])) {
            $url .= '&thumb=' . $this->request->get['thumb'];
        }

        $data['refresh'] = $this->url->link('common/filemanager', 'token=' . $this->session->data['token'] . $url, 'SSL');

        $url = '';

        // ТУТ ЗАКОММЕНТИРОВАН СТАРЫЙ КОД (/* - начало, */ - конец комментария)
        /*
        if (isset($this->request->get['directory'])) {
            $url .= '&directory=' . urlencode(html_entity_decode($this->request->get['directory'], ENT_QUOTES, 'UTF-8'));
        }
        */
        // НОВЫЙ КОД. НАЧАЛО
        if ($path) {
            $url .= '&directory=' . urlencode(html_entity_decode($path, ENT_QUOTES, 'UTF-8'));
        }
        // НОВЫЙ КОД. КОНЕЦ

        if (isset($this->request->get['filter_name'])) {
            $url .= '&filter_name=' . urlencode(html_entity_decode($this->request->get['filter_name'], ENT_QUOTES, 'UTF-8'));
        }

        if (isset($this->request->get['target'])) {
            $url .= '&target=' . $this->request->get['target'];
        }

        if (isset($this->request->get['thumb'])) {
            $url .= '&thumb=' . $this->request->get['thumb'];
        }

        $pagination = new Pagination();
        $pagination->total = $image_total;
        $pagination->page = $page;
        $pagination->limit = 16;
        $pagination->url = $this->url->link('common/filemanager', 'token=' . $this->session->data['token'] . $url . '&page={page}', 'SSL');

        $data['pagination'] = $pagination->render();

        $this->response->setOutput($this->load->view('common/filemanager.tpl', $data));
    }

    public function upload() {
        $this->load->language('common/filemanager');

        $json = array();

        // Check user has permission
        if (!$this->user->hasPermission('modify', 'common/filemanager')) {
            $json['error'] = $this->language->get('error_permission');
        }

        // Make sure we have the correct directory
        // ТУТ ЗАКОММЕНТИРОВАН СТАРЫЙ КОД (/* - начало, */ - конец комментария)
        /*
        if (isset($this->request->get['directory'])) {
            $directory = rtrim(DIR_IMAGE . 'catalog/' . str_replace(array('../', '..\\', '..'), '', $this->request->get['directory']), '/');
        } else {
            $directory = DIR_IMAGE . 'catalog';
        }
        */
        // НОВЫЙ КОД. НАЧАЛО
        if (isset($this->request->get['directory'])) {
            $directory = $this->request->get['directory'];
        } else {
            $directory = DIR_IMAGE . 'catalog';
        }
        // НОВЫЙ КОД. КОНЕЦ

        // Check its a directory
        if (!is_dir($directory)) {
            $json['error'] = $this->language->get('error_directory');
        }

        if (!$json) {
            if (!empty($this->request->files['file']['name']) && is_file($this->request->files['file']['tmp_name'])) {
                // Sanitize the filename
                $filename = basename(html_entity_decode($this->request->files['file']['name'], ENT_QUOTES, 'UTF-8'));

                // Validate the filename length
                if ((utf8_strlen($filename) < 3) || (utf8_strlen($filename) > 255)) {
                    $json['error'] = $this->language->get('error_filename');
                }

                // Allowed file extension types
                $allowed = array(
                    'jpg',
                    'jpeg',
                    'gif',
                    'png'
                );

                if (!in_array(utf8_strtolower(utf8_substr(strrchr($filename, '.'), 1)), $allowed)) {
                    $json['error'] = $this->language->get('error_filetype');
                }

                // Allowed file mime types
                $allowed = array(
                    'image/jpeg',
                    'image/pjpeg',
                    'image/png',
                    'image/x-png',
                    'image/gif'
                );

                if (!in_array($this->request->files['file']['type'], $allowed)) {
                    $json['error'] = $this->language->get('error_filetype');
                }

                // Check to see if any PHP files are trying to be uploaded
                $content = file_get_contents($this->request->files['file']['tmp_name']);

                if (preg_match('/\<\?php/i', $content)) {
                    $json['error'] = $this->language->get('error_filetype');
                }

                // Return any upload error
                if ($this->request->files['file']['error'] != UPLOAD_ERR_OK) {
                    $json['error'] = $this->language->get('error_upload_' . $this->request->files['file']['error']);
                }
            } else {
                $json['error'] = $this->language->get('error_upload');
            }
        }

        if (!$json) {
            move_uploaded_file($this->request->files['file']['tmp_name'], $directory . '/' . $filename);

            $json['success'] = $this->language->get('text_uploaded');
        }

        $this->response->addHeader('Content-Type: application/json');
        $this->response->setOutput(json_encode($json));
    }

    public function folder() {
        $this->load->language('common/filemanager');

        $json = array();

        // Check user has permission
        if (!$this->user->hasPermission('modify', 'common/filemanager')) {
            $json['error'] = $this->language->get('error_permission');
        }

        // Make sure we have the correct directory
        // ТУТ ЗАКОММЕНТИРОВАН СТАРЫЙ КОД (/* - начало, */ - конец комментария)
        /*
        if (isset($this->request->get['directory'])) {
            $directory = rtrim(DIR_IMAGE . 'catalog/' . str_replace(array('../', '..\\', '..'), '', $this->request->get['directory']), '/');
        } else {
            $directory = DIR_IMAGE . 'catalog';
        }
        */
        // НОВЫЙ КОД. НАЧАЛО
        if (isset($this->request->get['directory']))
        {
            $directory = $this->request->get['directory'];
        }
        else
        {
            $directory = DIR_IMAGE . 'catalog';
        }
        // НОВЫЙ КОД. КОНЕЦ

        // Check its a directory
        if (!is_dir($directory)) {
            $json['error'] = $this->language->get('error_directory');
        }

        if (!$json) {
            // Sanitize the folder name
            $folder = str_replace(array('../', '..\\', '..'), '', basename(html_entity_decode($this->request->post['folder'], ENT_QUOTES, 'UTF-8')));

            // Validate the filename length
            if ((utf8_strlen($folder) < 3) || (utf8_strlen($folder) > 128)) {
                $json['error'] = $this->language->get('error_folder');
            }

            // Check if directory already exists or not
            if (is_dir($directory . '/' . $folder)) {
                $json['error'] = $this->language->get('error_exists');
            }
        }

        if (!$json) {
            mkdir($directory . '/' . $folder, 0777);

            $json['success'] = $this->language->get('text_directory');
        }

        $this->response->addHeader('Content-Type: application/json');
        $this->response->setOutput(json_encode($json));
    }

    public function delete() {
        $this->load->language('common/filemanager');

        $json = array();

        // Check user has permission
        if (!$this->user->hasPermission('modify', 'common/filemanager')) {
            $json['error'] = $this->language->get('error_permission');
        }

        if (isset($this->request->post['path'])) {
            $paths = $this->request->post['path'];
        } else {
            $paths = array();
        }

        // Loop through each path to run validations
        foreach ($paths as $path) {
            $path = rtrim(DIR_IMAGE . str_replace(array('../', '..\\', '..'), '', $path), '/');

            // Check path exsists
            if ($path == DIR_IMAGE . 'catalog') {
                $json['error'] = $this->language->get('error_delete');

                break;
            }
        }

        if (!$json) {
            // Loop through each path
            foreach ($paths as $path) {
                $path = rtrim(DIR_IMAGE . str_replace(array('../', '..\\', '..'), '', $path), '/');

                // If path is just a file delete it
                if (is_file($path)) {
                    unlink($path);

                // If path is a directory beging deleting each file and sub folder
                } elseif (is_dir($path)) {
                    $files = array();

                    // Make path into an array
                    $path = array($path . '*');

                    // While the path array is still populated keep looping through
                    while (count($path) != 0) {
                        $next = array_shift($path);

                        foreach (glob($next) as $file) {
                            // If directory add to path array
                            if (is_dir($file)) {
                                $path[] = $file . '/*';
                            }

                            // Add the file to the files to be deleted array
                            $files[] = $file;
                        }
                    }

                    // Reverse sort the file array
                    rsort($files);

                    foreach ($files as $file) {
                        // If file just delete
                        if (is_file($file)) {
                            unlink($file);

                        // If directory use the remove directory function
                        } elseif (is_dir($file)) {
                            rmdir($file);
                        }
                    }
                }
            }

            $json['success'] = $this->language->get('text_delete');
        }

        $this->response->addHeader('Content-Type: application/json');
        $this->response->setOutput(json_encode($json));
    }
}

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
klimbronin    4

Кому поможет отписывайтесь - на какой версии помогло. Перед изменениями на всякий случай создайте копию изменяемого файла.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
misskuzi    0

Кому поможет отписывайтесь - на какой версии помогло. Перед изменениями на всякий случай создайте копию изменяемого файла.

заменил код в файле, менеджер изображений вообще перестал открываться ((

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
klimbronin    4

если хочешь могу на сайте у тебя поправить или скинь свой filemanager.php, чтобы сравнить и посмотреть из-за чего может быть ошибка

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Shureg    157

klimbronin , используйте для кода кнопочку "код" при написании сообщения. Иначе его невозможно читать и непредсказуем результат копирования. А еще там есть кнопочка "спойлер".

Вашу портянку всю не просматривал, но, как минимум, не хватает закрывающего

?>

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Lanitoin    0

klimbronin, спасибо Вам за код. Тестировали на 2.1.0.2 в общем-то все работает, путь действительно запоминается, это нааамного облегчило добавление товаров. Но есть одно но, не знаю с чем это связано но после входа из папки categories(основная папка) в любую другую, обратно вернуться не получается. Если задача просто добавлять фото для товара, это не так важно, но просто хочу сообщить, что есть такая проблема.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Tom    2 092

Протестируйте на сборке Ocstore последней и это можно выложить в следующем релизе.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Tom    2 092

Небольшая модификация.В дополнение к предыдущему решению убирает пагинацию  заменяя её скролом (как в версии 1.5).

 

PS Сделать предварительно бэкап аналогичных файлов  в магазине.Заменить после файлами из архива.

 

 

filemaneger_update2.zip

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
sifo    3

Не работает символ '&' в названиях папок и файлов - становится не доступным папка и файл не грузится.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
AlexDW    864

Не работает символ '&' в названиях папок и файлов - становится не доступным папка и файл не грузится.

 

не используйте нестандартные символы в названии и проблем не будет

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
sifo    3

  1. А вывод папок списком, а не плиткой, реально сделать? при этом вывод изображений оставить плиткой.

Названия некоторых папок почему то разделяются пробелами посреди слова, например: "Clea n Dew Mi nt O il". У всех так ?

Изменено пользователем sifo

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
bitterlemon    0

ОС 2.2. стандартный шаблон.

 

1) Как сделать, чтобы фотки показывались по дате добавления (последние) ?

 

2) Как показать все фотки, без пагинации в папке?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
kos0760    2
В 14.07.2016 в 19:27, bitterlemon сказал:

1) Как сделать, чтобы фотки показывались по дате добавления (последние) ?

Где-то видел, что в admin/controller/common/filemanager.php перед:

foreach ($files as $file) {

нужно добавить:

usort($files, create_function('$a,$b', 'return filemtime($b) - filemtime($a);'));

Но у меня  в ocStore 2.1.0.2.1 почему-то сортировка по дате все равно не работает.

Изменено пользователем kos0760

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
kos0760    2

Кажется решил проблему. Эту строку:

usort($files, create_function('$a,$b', 'return filemtime($b) - filemtime($a);'));

нужно вставлять после:

// Get files
		$files = glob($directory . '/' . $filter_name . '*.{jpg,jpeg,png,gif,JPG,JPEG,PNG,GIF}', GLOB_BRACE);

и последнее добавленное изображение в списке находится в самом начале.

Изменено пользователем kos0760

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
bitrixlviv    73

https://www.opencart.com/index.php?route=marketplace/extension/info&extension_id=8221&filter_search=Image manager&filter_license=free&filter_download_id=47

вот классный менеджер бесплатный, запоминает папку и помимо этого еще есть класные дополнительные функции например мульти загрузка и привзяка изборажений.

Полезно? Плюсани :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Alex369    1
В 27.01.2017 в 18:26, bitrixlviv сказал:

https://www.opencart.com/index.php?route=marketplace/extension/info&extension_id=8221&filter_search=Image manager&filter_license=free&filter_download_id=47

вот классный менеджер бесплатный, запоминает папку и помимо этого еще есть класные дополнительные функции например мульти загрузка и привзяка изборажений.

Полезно? Плюсани :)

Чувак! Я тебя люблю! Спасибо ОГРОМНОЕ =)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Alex369    1

В продолжение к предыдущему посту. Если у кого-то "исчезают" папки при открытии в окне загрузки: называйте их на транслите и без запятых...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти


  • Похожий контент

    • От SergeTkach

      350.00 руб
      Скачать/Купить дополнение


      Alternative Photo Uploader for OpenCart 2.x
      Если Вам нужно удобно быстро загружать фото товаров в админке, то модуль Alternative Photo Uploader создан специально для Вас!
       
      Его цена ниже многих подобных модулей. А его отличительной особенностью является отказ от ручного распределения фотографий по папкам при добавлении изображений на сайт.
       
      Модуль "Альтернативный Загрузчик Изображений для OpenCart 2.x" () изменят стандартную загрузку фото в товарах, что делает управление товарами более быстрым и удобным. Система становится более дружественной к пользователю
       
       
      ==========================================
      Особенности
      Добавление фото без лишних кликов (2 вместо 7). Отказ от ручного выбора папок  — распределение по 100 файлов в автоматически создаваемые папки (для товаров, категорий, производителей). Мультизагрузка файлов — не надо выбирать каждое фото по отдельности. НЕТ КОНФЛИКТА с модулями Опции изображений (проверено на шаблоне S-store ) Есть плюшка "Общие фото" для нескольких товаров (к примеру, сертификат качества, к-ый необходим для нескольких товаров) Ограничение по загрузке слишком больших файлов (можно назначать в настройках модуля). Экономия дискового пространства. Есть настройка сжатия изображений после загрузки (можно назначать максимальную ширину и высоту сохраняемых файлов в пикселях). В итоге файлы на 2-3 МБ превращаются в файлы 100-300 КБ Транслитерация и очистка названий файлов от некорректных символов. Без этого, при использовании кириллических названий фото невозможно копирование фотографий с хостинга на хостинг. Предотвращение перезаписи файлов с одинаковыми исходными названиями. Создаются копии с дополнительной меткой. Папка с изображениями недоступна для встроенного файл-менеджера, что исключает конфликты.  
       
      ==========================================
      Демо: здесь
      demo/demo
       
       
      =============================================
      Технические требования
      Модуль в том виде, как есть, должен работать на сервере, где установлены:

      Ion Cube Loader не ниже версии 5
      php 5.4 - 5.6

      Модуль может быть перекодирован под Ваши технические требования, но не ниже php 5.4
       
      Работает на ветке 2.х!


      =============================================
      === Внимание! Условия покупки и использования ===
      =============================================
      Покупая данный модуль, Вы осознаете следующее:
      Автор  дает полную гарантию, что весь заявленный функционал будет работать на тех версиях системы, что заявлены с теми техническими характеристиками хостинга (сервера), что заявлены. В случае неработоспособности из-за ошибок в модуле, обязуется исправить ее в течение 3 рабочих дней. Лицензия выдается на 1 домен (+до 3 отладочных доменов). Во время акций, лицензии выдаются на несколько доменов, но никогда не выдается на бесконечное число доменов. Модуль содержит зашифрованные файлы, обеспечивающие контроль над лицензиями Вы отказываетесь от намерения запрашивать открытый исходный код зашифрованных файлов Модуль представляет собой типичное решение типичной задачи и используется в том виде, как есть. Все индивидуальные запросы, которые меняют функционал модуля решаются в индивидуальном порядке с конкретным покупателем  
      ==========================================
      Известные ошибки:
      1) Ошибка при попытке загрузить модуль по FTP ftp_put(): Switching to Binary mode... — Решается установкой Local copy OCMOD by iSenseLabs
       
       
      Добавил SergeTkach Добавлено 29.12.2016 Категория Инструменты, утилиты Системные требования Ioncube Loader v6, PHP 5.4 Сайт разработчика http://studio.web-jump.in.ua Старая цена Метод активации По запросу в ЛС
      По запросу на почту
      По емейлу
      Автоматическая активация Ioncube Loader Требуется OpenCart 2.3
      2.2
      2.1 ocStore 2.3
      2.1 OpenCart.Pro, ocShop Не проверялось  
    • От SergeTkach
      Если Вам нужно удобно быстро загружать фото товаров в админке, то модуль Alternative Photo Uploader создан специально для Вас!
       
      Его цена ниже многих подобных модулей. А его отличительной особенностью является отказ от ручного распределения фотографий по папкам при добавлении изображений на сайт.
       
      Модуль "Альтернативный Загрузчик Изображений для OpenCart 2.x" () изменят стандартную загрузку фото в товарах, что делает управление товарами более быстрым и удобным. Система становится более дружественной к пользователю
       
       
      ==========================================
      Особенности
      Добавление фото без лишних кликов (2 вместо 7). Отказ от ручного выбора папок  — распределение по 100 файлов в автоматически создаваемые папки (для товаров, категорий, производителей). Мультизагрузка файлов — не надо выбирать каждое фото по отдельности. НЕТ КОНФЛИКТА с модулями Опции изображений (проверено на шаблоне S-store ) Есть плюшка "Общие фото" для нескольких товаров (к примеру, сертификат качества, к-ый необходим для нескольких товаров) Ограничение по загрузке слишком больших файлов (можно назначать в настройках модуля). Экономия дискового пространства. Есть настройка сжатия изображений после загрузки (можно назначать максимальную ширину и высоту сохраняемых файлов в пикселях). В итоге файлы на 2-3 МБ превращаются в файлы 100-300 КБ Транслитерация и очистка названий файлов от некорректных символов. Без этого, при использовании кириллических названий фото невозможно копирование фотографий с хостинга на хостинг. Предотвращение перезаписи файлов с одинаковыми исходными названиями. Создаются копии с дополнительной меткой. Папка с изображениями недоступна для встроенного файл-менеджера, что исключает конфликты.  
       
      ==========================================
      Демо: здесь
      demo/demo
       
       
      =============================================
      Технические требования
      Модуль в том виде, как есть, должен работать на сервере, где установлены:

      Ion Cube Loader не ниже версии 5
      php 5.4 - 5.6

      Модуль может быть перекодирован под Ваши технические требования, но не ниже php 5.4
       
      Работает на ветке 2.х!


      =============================================
      === Внимание! Условия покупки и использования ===
      =============================================
      Покупая данный модуль, Вы осознаете следующее:
      Автор  дает полную гарантию, что весь заявленный функционал будет работать на тех версиях системы, что заявлены с теми техническими характеристиками хостинга (сервера), что заявлены. В случае неработоспособности из-за ошибок в модуле, обязуется исправить ее в течение 3 рабочих дней. Лицензия выдается на 1 домен (+до 3 отладочных доменов). Во время акций, лицензии выдаются на несколько доменов, но никогда не выдается на бесконечное число доменов. Модуль содержит зашифрованные файлы, обеспечивающие контроль над лицензиями Вы отказываетесь от намерения запрашивать открытый исходный код зашифрованных файлов Модуль представляет собой типичное решение типичной задачи и используется в том виде, как есть. Все индивидуальные запросы, которые меняют функционал модуля решаются в индивидуальном порядке с конкретным покупателем  
      ==========================================
      Известные ошибки:
      1) Ошибка при попытке загрузить модуль по FTP ftp_put(): Switching to Binary mode... — Решается установкой Local copy OCMOD by iSenseLabs
       
       
    • От minia
      при загрузке изображений Оксторе 2.1.02.1 Опенсервер виснет.В чем проблема?
    • От igorfelix
      Добрый день до этого все было нормально, после добавления товаров, заметил что не дает теперь изменить картинку для категории или для товара.
      при клике на изображение мерцает курсор, и ничего не происходит.
      в консоле браузера пишет ошибку: 
      http://сайт.ру/admin/index.php?route=common/filemanager&token=aQiaZS4NwkyqLjhdaYFjFdq2UW9XTHTU&target=input-image&thumb=thumb-image&directory=logos&page=null Failed to load resource: the server responded with a status of 500 (Internal Server Error) я из корня /image/catalog убрал пару картинок, папки не стал убирать, очистил кэш системный и браузера, все равно не дает, пробовал другой браузер так же ошибка. 
      впервый раз такая ошибка, давно уже использую свою сборку на многих сайтах, и много товаров добавлял, но такое вылезло впервые. конфиги проверил там все норм
      ocstore 2.1
       
       
    • От Hoogun
      Доброй ночи. Второй день мучаюсь с этим редактором, но решения так и не нашел. Потребовался модуль блога (вообще пробовал 3 различных скрипта, NewsBlog например) а там отображается этот пресловутый саммерноут. При добавлении картинки выводится не менеджер изображений а небольшое окно с предложением выбрать файл только с компьютера, причем вставляет его при помощи data:image/jpg;base64 прямо в html код. В разделах редактирования страниц такой проблемы нет, там нормально открывается менеджер изображений. Такая штука во всех 3-х модулях блогов, что я пробовал.
      Устанавливал различные версии CKEditor, все редакторы работают только при редактировании страниц, в блогах либо остается прежний summernote, либо редактор исчезает вовсе.
      Помогите, как модифицировать кнопку добавления картинок, чтоб везде открывался нормальный менеджер изображений? Opencart 2.2. Надеюсь на помощь.
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу