stealthdebuger

stealthdebuger

+105
Репутация
162
Рейтинг
#1 можно ли привязать к биллингу отправку сообщений из "конструктора форм"? 3 декабря 2014 в 22:41
Можно.
#2 Импорт PDF на сайт 3 декабря 2014 в 22:41
И для него тоже.
#3 Импорт PDF на сайт 3 декабря 2014 в 18:46
Возможно.
#4 Приват Банк + InstantShop 26 ноября 2014 в 17:03

интеграция с приват 24 это что то очень тугое и сложное

pikasso
Это довольно простой в своей реализации механизм.
#5 [ЕСТЬ РЕШЕНИЕ] Извещение на Е-майл 25 ноября 2014 в 18:41

С сайта заказчика не приходят письма пользователям

IngDesign
Вы разобрались в чем причина этого?
#6 Как вы узнали про InstantCMS? 23 ноября 2014 в 23:30
Veni. Vidi. Vici.
#7 Как задать другой редактор для виджетов? 13 ноября 2014 в 01:35
Создаем возможность выбора редактора для текстового виджета. В данной реализации предусмотрена выборка 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 добавляем две строки
  1. cmsTemplate::getInstance()->addJS("wysiwyg/live/scripts/language/".cmsConfig::get('language')."/editor_lang.js", 'LiveEditor Lang');
  2. cmsTemplate::getInstance()->addJS('wysiwyg/live/scripts/innovaeditor.js', 'LiveEditor');
  3.  
2. файл /system/widgets/text/options.form.php
заменяем строку
  1. 'options' => array('editor' => 'redactor'),
на
  1. 'options' => array('editor' => array('live', 'redactor')),
далее, перед строкой
  1. new fieldHtml('options:content', array(
вставляем следующий код
  1. new fieldList('editor', array(
  2. 'title' => LANG_PARSER_HTML_EDITOR,
  3. 'default' => 'live',
  4. 'generator' => function($item){
  5. $items = array();
  6. $editors = array('live', 'redactor');
  7. foreach($editors as $editor){ $items[$editor] = $editor; }
  8. return $items;
  9. },
  10. )),
  11.  
3. файл /wysiwyg/live/wysiwyg.class.php
перед строкой
  1. <script type="text/javascript">
пишем
  1. <div id="myEditor"></div>
заменяем строку
  1. le_<?php echo $dom_id; ?>.REPLACE('<?php echo $dom_id; ?>');
на
  1. le_<?php echo $dom_id; ?>.REPLACE('<?php echo $dom_id; ?>', 'myEditor');
4. файл /templates/default/assets/ui/form.tpl.php
перед строкой
  1. <form action="<?php echo $attributes['action']; ?>"
ставим код
  1. <script>
  2. $("#editor").change(function() {
  3. switch(true) {
  4. case($("#editor").val() == 'redactor'):
  5. $(".redactor_box").css("display", "block");
  6. $("#myEditor").css("display", "none");
  7. break;
  8. case($("#editor").val() == 'live'):
  9. $(".redactor_box").css("display", "none");
  10. $("#myEditor").css("display", "block");
  11. break;
  12. }
  13. $("#editor").prop("disabled", true);
  14. });
  15. </script>
  16.  
и строку
  1. onsubmit="return icms.forms.submitAjax(this)"
заменяем на
  1. onsubmit="return icms.forms.submitAjax(this, $('#editor').val())"
5. файл /system/controllers/admin/actions/widgets_update.php
после строки
  1. $widget = $form->parse($this->request, true);
указываем
  1. unset($widget['editor']);
6. файл /system/libs/html.helper.php
после строки
  1. function html_textarea($name='', $value='', $attributes=array()){
пишем
  1. if(defined('MULTI_EDITOR')) return;
7. файл /templates/default/js/core.js
меняем строки
  1. this.submitAjax = function(form){
  2.  
  3. var form_data = this.toJSON($(form));
  4.  
  5. var url = $(form).attr('action');
на такой вариант
  1. this.submitAjax = function(form, editor){
  2. if(editor !== undefined){
  3. var form_content = $("#options_content").val();
  4. if(editor == 'redactor') {form_content = $(".redactor_textarea").html();}
  5. var form_data = 'csrf_token='+document.getElementsByName('csrf_token')[0].value
  6. +'&id='+document.getElementsByName('id')[0].value
  7. +'&title='+encodeURI(document.getElementById('title').value)
  8. +'&options%5Bcontent%5D='+encodeURI(form_content);
  9. var url = document.forms[0].action;
  10. }
  11. else{
  12. var form_data = this.toJSON($(form));
  13. var url = $(form).attr('action');
  14. }
  15.  
8. файл /templates/default/assets/fields/html.tpl.php
строку
  1. <?php echo html_wysiwyg($field->element_name, $value, $field->getOption('editor')); ?>
заменяем следующей магией
  1. <?php if(is_array($field->getOption('editor'))) {foreach($field->getOption('editor') as $n => $editor) {echo html_wysiwyg($field->element_name, $value, $editor); if(!defined('MULTI_EDITOR')){define('MULTI_EDITOR', true);}} echo '<script>
  2. switch(true) {
  3. case($("#editor").val() == "redactor"):
  4. $("#myEditor").css("display", "none");
  5. break;
  6. case($("#editor").val() == "live"):
  7. $(".redactor_box").css("display", "none");
  8. break;
  9. }
  10. </script>';} else echo html_wysiwyg($field->element_name, $value, $field->getOption('editor')); ?>
  11.  
9. Радуемся жизни.
#8 Как задать другой редактор для виджетов? 12 ноября 2014 в 18:08
letsgo, что именно у вас не получилось и в каком браузере проверяли?

P.S. практически закончена работа над сабжем данной темы. Погодите чуть.
#9 Как задать другой редактор для виджетов? 11 ноября 2014 в 22:16
Видимо только у вас. Обратите внимание на пост со скриншотом oll здесь instantcms.ru/forum/thread16288-11.html
равно, как и ваш пост на той же странице, где вы говорите:

SD огромное спасибо за решение по редактору.

#10 Как задать другой редактор для виджетов? 11 ноября 2014 в 19:09
letsgo, ну почему нет выбора? Вы забыли этот вариант? instantcms.ru/forum/thread16288-10.html
#11 1.10.4 board/fronted.php 11 ноября 2014 в 17:50
Для первой ветки файл стилей styles.css
Все остальное указано выше.
#12 Как задать другой редактор для виджетов? 11 ноября 2014 в 17:42
Есть, но только "с напильником". Воспользуйтесь поиском по форуму, аналогичный вопрос обсуждался.
#13 1.10.4 board/fronted.php 11 ноября 2014 в 17:39
Эту строку
  1. cmsCore::addSessionMessage($_LANG['YOU_CANT_ADD_ADV_ANY'], 'error');
приведите к виду
  1. cmsCore::addSessionMessage('мой вариант текста сообщения', 'mystyle');
затем, в файле стилей theme-gui.css добавьте правила для оформления класса message_mystyle
и получите желаемое.
на сайте это будет выглядеть как
  1. <div class="message_mystyle">мой вариант текста сообщения</div>
#14 [ЕСТЬ РЕШЕНИЕ] Нужен инвайт на WebMasters.Ru 9 ноября 2014 в 00:14
Нет там ничего хорошего
#15 Доработка сайта 7 ноября 2014 в 14:51
Вы бы описали хотя бы в общих чертах что дорабатывать-то, да бюджет обозначили.
🍪Мы используем файлы cookie для работы сайта. Читать подробнее.