
stealthdebuger
+105
Репутация
162
Рейтинг
Можно.
И для него тоже.
Возможно.
Это довольно простой в своей реализации механизм.интеграция с приват 24 это что то очень тугое и сложное
Вы разобрались в чем причина этого?С сайта заказчика не приходят письма пользователям
Veni. Vidi. Vici.
Создаем возможность выбора редактора для текстового виджета. В данной реализации предусмотрена выборка Redactor либо LiveEditor, но ничто не мешает подключить другие редакторы по схожему алгоритму. Протестировано на InstantCMS 2.1.1 в Firefox 33.1, Chrome 38.0.2125.111 m, Opera 12.16.
И так, приступим:
1. файл /templates/default/controllers/admin/widgets.tpl.php
после строк подключения Redactor добавляем две строки
2. файл /system/widgets/text/options.form.php
заменяем строкуна далее, перед строкой вставляем следующий код
3. файл /wysiwyg/live/wysiwyg.class.php
перед строкойпишем заменяем строку на 4. файл /templates/default/assets/ui/form.tpl.php
перед строкойставим код
и строку заменяем на 5. файл /system/controllers/admin/actions/widgets_update.php
после строкиуказываем 6. файл /system/libs/html.helper.php
после строкипишем 7. файл /templates/default/js/core.js
меняем строки
на такой вариант
8. файл /templates/default/assets/fields/html.tpl.php
строкузаменяем следующей магией
9. Радуемся жизни.
И так, приступим:
1. файл /templates/default/controllers/admin/widgets.tpl.php
после строк подключения Redactor добавляем две строки
cmsTemplate::getInstance()->addJS("wysiwyg/live/scripts/language/".cmsConfig::get('language')."/editor_lang.js", 'LiveEditor Lang'); cmsTemplate::getInstance()->addJS('wysiwyg/live/scripts/innovaeditor.js', 'LiveEditor');
заменяем строку
'title' => LANG_PARSER_HTML_EDITOR, 'default' => 'live', 'generator' => function($item){ foreach($editors as $editor){ $items[$editor] = $editor; } return $items; }, )),
перед строкой
<script type="text/javascript">
<div id="myEditor"></div>
le_<?php echo $dom_id; ?>.REPLACE('<?php echo $dom_id; ?>');
le_<?php echo $dom_id; ?>.REPLACE('<?php echo $dom_id; ?>', 'myEditor');
перед строкой
<form action="<?php echo $attributes['action']; ?>"
<script> $("#editor").change(function() { switch(true) { case($("#editor").val() == 'redactor'): $(".redactor_box").css("display", "block"); $("#myEditor").css("display", "none"); break; case($("#editor").val() == 'live'): $(".redactor_box").css("display", "none"); $("#myEditor").css("display", "block"); break; } $("#editor").prop("disabled", true); }); </script>
onsubmit="return icms.forms.submitAjax(this)"
onsubmit="return icms.forms.submitAjax(this, $('#editor').val())"
после строки
$widget = $form->parse($this->request, true);
после строки
меняем строки
this.submitAjax = function(form){ var form_data = this.toJSON($(form)); var url = $(form).attr('action');
this.submitAjax = function(form, editor){ if(editor !== undefined){ var form_content = $("#options_content").val(); if(editor == 'redactor') {form_content = $(".redactor_textarea").html();} var form_data = 'csrf_token='+document.getElementsByName('csrf_token')[0].value +'&id='+document.getElementsByName('id')[0].value +'&title='+encodeURI(document.getElementById('title').value) +'&options%5Bcontent%5D='+encodeURI(form_content); var url = document.forms[0].action; } else{ var form_data = this.toJSON($(form)); var url = $(form).attr('action'); }
строку
<?php echo html_wysiwyg($field->element_name, $value, $field->getOption('editor')); ?>
switch(true) { case($("#editor").val() == "redactor"): $("#myEditor").css("display", "none"); break; case($("#editor").val() == "live"): $(".redactor_box").css("display", "none"); break; } </script>';} else echo html_wysiwyg($field->element_name, $value, $field->getOption('editor')); ?>
letsgo, что именно у вас не получилось и в каком браузере проверяли?
P.S. практически закончена работа над сабжем данной темы. Погодите чуть.
P.S. практически закончена работа над сабжем данной темы. Погодите чуть.
Видимо только у вас. Обратите внимание на пост со скриншотом oll здесь instantcms.ru/forum/thread16288-11.html
равно, как и ваш пост на той же странице, где вы говорите:
равно, как и ваш пост на той же странице, где вы говорите:
SD огромное спасибо за решение по редактору.
letsgo, ну почему нет выбора? Вы забыли этот вариант? instantcms.ru/forum/thread16288-10.html
Для первой ветки файл стилей styles.css
Все остальное указано выше.
Все остальное указано выше.
Есть, но только "с напильником". Воспользуйтесь поиском по форуму, аналогичный вопрос обсуждался.
Эту строку
приведите к виду
затем, в файле стилей theme-gui.css добавьте правила для оформления класса message_mystyle
и получите желаемое.
на сайте это будет выглядеть как
cmsCore::addSessionMessage($_LANG['YOU_CANT_ADD_ADV_ANY'], 'error');
cmsCore::addSessionMessage('мой вариант текста сообщения', 'mystyle');
и получите желаемое.
на сайте это будет выглядеть как
<div class="message_mystyle">мой вариант текста сообщения</div>
Нет там ничего хорошего
Вы бы описали хотя бы в общих чертах что дорабатывать-то, да бюджет обозначили.