SergDrakus
-
Публікації
124 -
З нами
-
Відвідування
Тип публікації
Профілі
Форум
Маркетплейс
Статті
FAQ
Наші новини
Магазин
Блоги
module__dplus_manager
Повідомлення, опубліковані користувачем SergDrakus
-
-
Да, только вот в summernote в режиме кода все в одну строку.
-
Да, только вот в summernote в режиме кода все в одну строку.
-
Редактор TinyMCE очень хорош и однозначно лучше Summernote
- 1
-
вот вы сделали, как костыль :)
Не нужно лезть в source
config: { // CodeMirror config object mode: 'application/x-httpd-php', lineNumbers: true, width:600, height:300, theme: 'erlang-dark' }, cssFiles: [ 'theme/erlang-dark.css' ],
:) Спасибо!
А насчет отображения в пределах визуального редактора не подскажите?)
-
не правда, вот работает
Не удобно Вас уже спрашивать, но все же спрошу :)
Можно ли как-то сделать так, чтобы эта конструкция вся открывалась не в отдельном окне поверх страницы сайта, а прямо в визуальном редакторе?
-
Да, спасибо. Проблему решил. Ох уж все эти кеши. Вычистил все – OCMOD, cache папку, в браузере. Заработало.
Собственно зависимость такая. В папке CodeMirror требуется создать еще одну папку Codemirror (туда перетащить Codemirror с официального сайта или взять идущую в сборке 4.20 версию). Выбрать тему любую в файле source.html и внизу подписать строкуcssFiles: [// Default CSS files'lib/codemirror.css','addon/dialog/dialog.css','theme/3024-night.css']
Предпоследняя строчка – путь к файлу стилей темы.
-
потому что
cssFiles: [// Default CSS files 'lib/codemirror.css', 'addon/dialog/dialog.css' ]
Где? не скажу.
Да, только вот если речь идет про файл source.html, то изменения в нем вообще никак не отражаются на работе и отображении модуля.Нет, вроде бы все еще толк от его редактирования есть. Только вот замена пункта
theme: 'default',
и добавление
theme/base16-dark.css'
не помогают.
-
В файл Header.tpl (для админки) добавил строку:
<link type="text/css" href="view/javascript/tinymce/plugins/codemirror/theme/base16-dark.css" rel="stylesheet" media="screen" />
Это путь к файлу стилей для темы.
В файле Plugin.min.js добавил строку
theme: "base16-dark"
вот в эту конструкцию:
var config = { title: 'HTML source code', url: url + '/source.html', width: codemirrorWidth, theme: "base16-dark", height: codemirrorHeight, resizable : true, maximizable : true, fullScreen: editor.settings.codemirror.fullscreen, buttons: [ { text: 'Ok', subtype: 'primary', onclick: function(){ var doc = document.querySelectorAll('.mce-container-body>iframe')[0]; doc.contentWindow.submit(); win.close(); }}, { text: 'Cancel', onclick: 'close' } ] };
Толку нет, не работает нужная мне тема по-прежнему.
-
Мне с вами грустно :)
Смотрите откуда, куда, что. в консоли браузера, как минимум
Да мне самому грустно если честно)
При чем тут консоль? Я не могу найти файл, отвечающий за вывод темы.
-
Прежде чем задавать вопрос, покажите что вы делаете?
Захочу в папку TinyMCE (в папке javascript), затем перехожу в папку plugins, после чего нахожу расширение codemirror (https://github.com/christiaan/tinymce-codemirror). В нем есть три файла – plugin.min.js, plugin.js и source.html. Также есть папка langs с языковыми файлами. В такой связке все работает, но как изменить тему? Я просто не могу найти код, отвечающий за это.
По факту там еще есть папка codemirror-4.8, но от удаления ее редактор работает как и прежде, а значит она не задействуется.
-
У меня остался последний вопрос, над которым я работаю уже больше двух часов. Как в CodeMirror (подсветка текста) заменить тему на одну из вариантов в папке theme? В какие файлы я не вносил изменения (в пределах папки tinymce), ничего не помогает. Как задний фон был белый (стандратная тема какая-то), таким он и остался.
-
Задачу решил.
Вставлял в файл product.php по пути /catalog/controller/product
Нашел строку
$data['description'] = html_entity_decode($product_info['description'], ENT_QUOTES, 'UTF-8');
заменил на$data['description'] = preg_replace( '#\xC2\xA0| #', ' ', html_entity_decode($product_info['description'], ENT_QUOTES, 'UTF-8'));
Пару раз перезагрузил браузер, почистил все кеши. Обновил страницу с товаром. Все nbsp пропали. Отлично! Огромное спасибо!
-
Подскажите пожалуйста, в какой файл требуется вставить эту конструкцию?
$data['description'] = preg_replace( '#\xC2\xA0| #', ' ', html_entity_decode($product_info['description'], ENT_QUOTES, 'UTF-8'));
-
при выводе - да
$data['description'] = preg_replace( '#\xC2\xA0| #', ' ', html_entity_decode($product_info['description'], ENT_QUOTES, 'UTF-8'));
но это как-то выглядит, как костыль
предпочитаю читать официальную документацию
entity_encoding: 'raw'
http://archive.tinymce.com/wiki.php/Configuration3x:entity_encoding
Увы, но данная конструкция (entity_encoding: 'raw') запрещает отображение nbsp только в админке. Стоит опубликовать материал, как в разметке видны все эти nbsp.
-
Этот редактор имеет привычку ставить неразрывные пробелы  . На WordPress я поборол эту проблему тем, что при публикации статьи все неразрывные пробелы напрочь удалялись. Код привожу ниже. Можео ли его как-то абаптироввть под OpenCart?
function remove_non_breaking_spaces_from_content( $data ) {
$data['post_content'] = preg_replace( '#\xC2\xA0| #', ' ', $data['post_content'] );
return $data;
}
add_action( 'wp_insert_post_data', 'remove_non_breaking_spaces_from_content' );
-
Да, в файле summernote.js действительно сам проверяет наличие CodeMirror.
Тем не менее, не работает. Скорее всего я не там подключения эти скрипты. В какой файл нужно их добавлять?
Вставил в header.tpl (самый верх). Вроде бы все заработало, но есть одна проблема, которая так и не решилась.
Смотрите. Я пишу какой-то текста (2-3 абзаца). В визуальном редакторе все выглядит как нужно, но стоит переключить в исходный код, как весь набранный текст вместе с атрибутами превращается в одну большую кашу. Это очень неудобно, поскольку между абзацами я добавляю видео вручную и изображения анимированные. Как я понимаю, тег <br>, который виден в SummerNote, отвечает за перенос на новую строку.
Можно ли как-то заставить SummerNote не смешить код в один единый текст?
-
Потратив два часа времени методом тыка и анализа я нашел в файле filemanager.php строку
$this->request->get['page'] = isset($this->request->cookie['file_manager']['page']) ? $this->request->cookie['file_manager']['page'] : null;
Удалил ее к черту и файловый менеджер полноценно заработал.
За что она вообще отвечает? Что именно препятствовало переключению между страницами?
Также работает вариант поставить на ее место код (из оригинального OpenCart 2.3.0.4.
if (isset($this->request->get['page'])) {$page = $this->request->get['page']; } else { $page = 1; }
Стоит ли это делать?
-
Что ж єто вас так колбасит?
Чем не устраивает tinymce?
Хочу все варианты опробовать и выбрать наилучший.
Вот текст для подключения:
<!-- include libraries(jQuery, bootstrap) --> <link href="http://netdna.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.css" rel="stylesheet"> <script src="http://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.js"></script> <script src="http://netdna.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.js"></script> <!-- include codemirror (codemirror.css, codemirror.js, xml.js, formatting.js) --> <link rel="stylesheet" type="text/css" href="//cdnjs.cloudflare.com/ajax/libs/codemirror/3.20.0/codemirror.css"> <link rel="stylesheet" type="text/css" href="//cdnjs.cloudflare.com/ajax/libs/codemirror/3.20.0/theme/monokai.css"> <script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/codemirror/3.20.0/codemirror.js"></script> <script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/codemirror/3.20.0/mode/xml/xml.js"></script> <script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/codemirror/2.36.0/formatting.js"></script>
Выводу вот так (файл opencart.js):
$('.summernote').summernote({ height: 150, //set editable area's height codemirror: { // codemirror options theme: 'monokai' } });
Действую по инструкции на офф сайте http://summernote.org/examples/#codemirror-as-codeview
-
Как подключить подсветку кода CodeMirror к редактору SummerNote
Действовал по инструкции на официальном сайте, подключал через CDN, в Opencart.js добавил подключение этого плагина. В итоге – ничего не изменилось. Инструкций в сети Интернет актуальных я так и не нашел.
-
Получил конструкция вида:
// Log $handle = fopen(DIR_LOGS . 'ocmod.log', 'w+'); fclose($handle); $ocmod = new Log('ocmod.log'); $ocmod->write(implode("\n", $log));
Проблема решена, спасибо!
-
Нашел файл ocmod.log на пути system/storage/logs
Весит он 41 Мб. Афигеть просто он увеличился за неделю.
Подскажите, можно ли вообще отключить его создание?
-
Что вы имете ввиду? Нажать на кнопку "Очистка" ?
-
При обновлении кеша модификатора в админке (ocmod) всегда появляется ошибка nginx 500. В логах написана ошибка Ошибка
2017/01/02 18:09:33 [error] 9545#9545: *107735 FastCGI sent in stderr: "PHP message: PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 83371161 bytes) in /var/www/admin/data/www/site.ru/admin/controller/extension/modification.php on line 779" while reading response header from upstream, client: 91.79.180.34, server: site.ru, request: "GET /admin/index.php?route=extension/modification/refresh&token=jtstiBRnq3PHzb67zVre9NSrMO0yYfV4 HTTP/1.1", upstream: "fastcgi://unix:/var/www/php-fpm/admin.sock:", host: "site.ru", referrer: "https://site.ru/admin/index.php?route=extension/modification&token=jtstiBRnq3PHzb67zVre9NSrMO0yYfV4"
Изменил в конфигурации PHP значение со 128М до 256М. Ошибка больше не возникает, но обновление кеша занимает 2-4 минуты. Это нормально? В какую сторону копать?
-
Вот вроде бы код, который отвечает за эту функцию. находится в файле Order.php по пути catalog/model/checkout
if ($order_info['order_status_id'] && $order_status_id && $notify) { $language = new Language($order_info['language_code']); $language->load($order_info['language_code']); $language->load('mail/order'); $subject = sprintf($language->get('text_update_subject'), html_entity_decode($order_info['store_name'], ENT_QUOTES, 'UTF-8'), $order_id); $message = $language->get('text_update_order') . ' ' . $order_id . "\n"; $message .= $language->get('text_update_date_added') . ' ' . date($language->get('date_format_short'), strtotime($order_info['date_added'])) . "\n\n"; $order_status_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "order_status WHERE order_status_id = '" . (int)$order_status_id . "' AND language_id = '" . (int)$order_info['language_id'] . "'"); if ($order_status_query->num_rows) { $message .= $language->get('text_update_order_status') . "\n\n"; $message .= $order_status_query->row['name'] . "\n\n"; } if ($order_info['customer_id']) { $message .= $language->get('text_update_link') . "\n"; $message .= $order_info['store_url'] . 'index.php?route=account/order/info&order_id=' . $order_id . "\n\n"; } if ($comment) { $message .= $language->get('text_update_comment') . "\n\n"; $message .= strip_tags($comment) . "\n\n"; } $message .= $language->get('text_update_footer'); if ($notify) { $mail = new Mail(); $mail->protocol = $this->config->get('config_mail_protocol'); $mail->parameter = $this->config->get('config_mail_parameter'); $mail->smtp_hostname = $this->config->get('config_mail_smtp_hostname'); $mail->smtp_username = $this->config->get('config_mail_smtp_username'); $mail->smtp_password = html_entity_decode($this->config->get('config_mail_smtp_password'), ENT_QUOTES, 'UTF-8'); $mail->smtp_port = $this->config->get('config_mail_smtp_port'); $mail->smtp_timeout = $this->config->get('config_mail_smtp_timeout'); $mail->setTo($order_info['email']); $mail->setFrom($this->config->get('config_email')); $mail->setSender(html_entity_decode($order_info['store_name'], ENT_QUOTES, 'UTF-8')); $mail->setSubject(html_entity_decode($subject, ENT_QUOTES, 'UTF-8')); $mail->setText($message); $mail->send(); } }
Как его правильно редактировать? Допустим мне нужно просто подписать какой-то текст. Например – «Привет Мир» в заголовке письма.
[Решено] Установка TinyMCE на ocStore 2.3
в Opencart 2.x: Встановлення та оновлення
Опубліковано:
Ну мне как человеку, который не знает нахвания компонентов, собрать ckeditor не удалось даже за час,