0 Пользователей и 1 Гость просматривают эту тему.
  • 27 Ответов
  • 954 Просмотров
*

DyadyaGenya

  • Осваиваюсь на форуме
  • 18
  • 0 / 0
Добрый день форумчанам. Я конечно новичок и возможно лезу в дебри, но стало интересно можно ли подружить в файле манифеста описание модуля и вызов джаваскрипта? Описание модуля я вызываю из файла языка, потом вставляю вызов скрипта. Тогда скрипт срабатывает, а вместо описания модуля высвечивает его кодировку из языкового файла. робоавл создавать два дикрипшен, тогда срабатывает первый Код такой
<description>MOD_BG_DG_XML_DESCRIPTION
     <![CDATA[
       <script src="../modules/mod_BG_DG/theme/js/jscolor/jscolor.js" type="text/javascript"></script>
     ]]>
   </description>
*

dmitry_stas

  • Легенда
  • 13152
  • 1233 / 8
можно ли подружить в файле манифеста описание модуля и вызов джаваскрипта?
а чего вы хотите добиться, зачем это нужно?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

DyadyaGenya

  • Осваиваюсь на форуме
  • 18
  • 0 / 0
а чего вы хотите добиться, зачем это нужно?
Например, сделать выбор цвета для скажем бекграунда не штатным color а с помощью скрипта. Ну и так вдруг где-то в оформлении страницы настройки модуля пригодится. Если есть такакя возможность, почему не научится? Скрипт по отдельности без описания вызывается нормально. Я же говорю, я учусь. Был бы учитель, может не шарахался бы в такие дебри. Учился бы по какой-то методике.А так мысль появилась - пробую.
В моем случае вставляю такое поле:
<field
            name="color1"
            class="color {required:false}"
            type="text"
            default="FFFFFF"
            label="Color"
            description="Choose the color " />
« Последнее редактирование: 23.03.2019, 23:02:46 от DyadyaGenya »
*

fbr

  • Завсегдатай
  • 1591
  • 185 / 7
Если правильно понял, вы хотите скрипт вывести в админке модуля?
Переопределите поле
Создайте в модуле папку fields, загрузите туда какое нибудь поле из libraries/joomla/form/fields/...
Добавьте в него вызов вашего скрипта
*

dmitry_stas

  • Легенда
  • 13152
  • 1233 / 8
Если есть такакя возможность, почему не научится?
спрашивая "зачем" я не имел в виду нужно оно или не нужно. меня интересовало исключительно то, что вы хотите получить на выходе. т.е. вам нужно просто подключить скрипт на страницу, и все?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

AlekVolsk

  • Гуру
  • 6916
  • 413 / 4
научите человека пользоваться скриптом установщика и функцией postflight()
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
спрашивая "зачем" я не имел в виду нужно оно или не нужно. меня интересовало исключительно то, что вы хотите получить на выходе. т.е. вам нужно просто подключить скрипт на страницу, и все?
Трудности перевода, увы.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

DyadyaGenya

  • Осваиваюсь на форуме
  • 18
  • 0 / 0
спрашивая "зачем" я не имел в виду нужно оно или не нужно. меня интересовало исключительно то, что вы хотите получить на выходе. т.е. вам нужно просто подключить скрипт на страницу, и все?
Я же говорю, не привык ещё к такому общению на такие темы, самоучка и не всегда понимаю что от меня хотят услышать и сам не всегда могу сформулировать правильно.
В целом да. Но когда сам по себе скрипт подключаю, то он работает, а как только добавляю описание моего модуля, то описание не подтягивается из файла языка. Я пробовал внутрь ставить, тоже не выходит.Вот так
<![CDATA[
       <script src="../modules/mod_BG_DG/theme/js/jscolor/jscolor.js" type="text/javascript"></script>
MOD_BG_DG_XML_DESCRIPTION
     ]]>
Ставить вместо MOD_BG_DG_XML_DESCRIPTION сразу перевод на русском не позволяет Joomla или что-то в ней.А английский не хочется.
*

DyadyaGenya

  • Осваиваюсь на форуме
  • 18
  • 0 / 0
научите человека пользоваться скриптом установщика и функцией postflight()
Подскажите пжл что это. Беглый поиск ничего не дал.
*

DyadyaGenya

  • Осваиваюсь на форуме
  • 18
  • 0 / 0
Да, тут похоже на вывод поля в админке.
https://docs.joomla.org/Creating_a_custom_form_field_type
Если я правильно понял, то это мой следующий шаг должен быть. Я пока только с настройкой внешнего вида админки вожусь. Знаю, что цвет можно выбирать формой, как описано на этой странице https://docs.joomla.org/Color_form_field_type
<field name="backgroundcolor" type="color" default="#eee" format="rgba"
   label="TPL_BEEZ3_FIELD_HEADER_BACKGROUND_COLOR_LABEL"
   description="TPL_BEEZ3_FIELD_HEADER_BACKGROUND_COLOR_DESC" />
но хочется именно с помощью скрипта. А потом буду учиться получать данные из любой такой формы (видимо то, о чем ваша ссылка)
*

dmitry_stas

  • Легенда
  • 13152
  • 1233 / 8
В целом да. Но когда сам по себе скрипт подключаю, то он работает, а как только добавляю описание моего модуля, то описание не подтягивается из файла языка.
ну так пропишите ваш <script> не в XML, а в языковом файле, в MOD_BG_DG_XML_DESCRIPTION
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

DyadyaGenya

  • Осваиваюсь на форуме
  • 18
  • 0 / 0
ну так пропишите ваш <script> не в XML, а в языковом файле, в MOD_BG_DG_XML_DESCRIPTION
Честно говоря не знаю как. По поиску ничего не нашел, или не так задавал параметры поиска. Пробовал заключить скрипт в одинарные кавычки, как написано тут https://cmscafe.ru/docs/joomla/developer/component-joomla-2-5/293-chast-13-skript-ustanovki-obnovleniya-udaleniya-i-server-obnovlenij
но не помогло. Пробовал заключить кодировку описания в тег <strong> но тоже ничего не дало.
Хотел прикрепить скрин к сообщению, чтоб на картинке показать чего хочу добиться. Жму на вставить изображение, тег img, есть, но в него ничего не вставляется.
А вообще в поле, где используется скрипт удобно вместе с цифровой кодировкой цвета сразу заливается и сам цвет. Потому и решил заморочится.
*

DyadyaGenya

  • Осваиваюсь на форуме
  • 18
  • 0 / 0
Если правильно понял, вы хотите скрипт вывести в админке модуля?
Переопределите поле
Создайте в модуле папку fields, загрузите туда какое нибудь поле из libraries/joomla/form/fields/...
Добавьте в него вызов вашего скрипта
честно говоря не пойму
*

dmitry_stas

  • Легенда
  • 13152
  • 1233 / 8
Честно говоря не знаю как.
не знаете что именно? где редактируются языковые файлы? как прописывается тег скрипт? что именно не знаете то?

что у вас в MOD_BG_DG_XML_DESCRIPTION, покажите. и как вставляли туда скрипт покажите, если вставляли...
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

DyadyaGenya

  • Осваиваюсь на форуме
  • 18
  • 0 / 0
не знаете что именно? где редактируются языковые файлы? как прописывается тег скрипт? что именно не знаете то?

что у вас в MOD_BG_DG_XML_DESCRIPTION, покажите. и как вставляли туда скрипт покажите, если вставляли...
не знаю, где именно в языковом файле прописывается вызов скрипта, просидел полдня в Google и не нашел как. Вот, что у меня в файле языка

; Joomla! Project
; Copyright (C) 2019 Open Source Matters. All rights reserved.
; License GNU General Public License version 2 or later; see LICENSE.txt, see LICENSE.php
; Note : All ini files need to be saved as UTF-8

MOD_BG_DG="Обои мои"

MOD_BG_DG_XML_DESCRIPTION="Этот модуль по идее будет менять обои одновременно и в боди и других местах."
MOD_BG_DG_FIELD_HEADER_BACKGROUND_COLOR_DESC="Значение используется если в качестве цветовой схемы выбрано «Custom»."
MOD_BG_DG_FIELD_HEADER_BACKGROUND_COLOR_LABEL="Цвет фона"
MOD_BG_DG_FIELD_BACKGROUND_COLOR2_DESC="Значение используется если в качестве цветовой схемы выбрано «Custom»."
MOD_BG_DG_FIELD_BACKGROUND_COLOR2_LABEL="Цвет фона2-цвет границ"
MOD_BG_DG_FIELD_BACKGROUND_FIX_DESC="Фиксируемый или прокручиваемый фон"
MOD_BG_DG_FIELD_BACKGROUND_FIX_LABEL="Фиксированность"
MOD_BG_DG_FIELD_BACKGROUND_SELECT_DESC="Выберите картинку для обоев"
MOD_BG_DG_FIELD_BACKGROUND_SELECT_LABEL="Картинка для обоев"

MOD_BG_DG_FIELD_BACKGROUND_POSITION_DESC="Выберете расположение картинки относительно центра страницы"
MOD_BG_DG_FIELD_BACKGROUND_POSITION_LABEL="Позиция картинки"

MOD_BG_DG_FIELD_BACKGROUND_ZOOM_DESC="Растянуть дублированность или не растянуть-дублировать на весь экран"
MOD_BG_DG_FIELD_BACKGROUND_ZOOM_LABEL="Растянутость-дублированность"


А вот в системном:
; Joomla! Project
; Copyright (C) 2019 Open Source Matters. All rights reserved.
; License GNU General Public License version 2 or later; see LICENSE.txt, see LICENSE.php
; Note : All ini files need to be saved as UTF-8

MOD_BG_DG="Обои мои"
MOD_BG_DG_XML_DESCRIPTION="Этот модуль по идее будет менять обои одновременно и в боди и других местах."
MOD_BG_DG_LAYOUT_DEFAULT="По умолчанию"


*

dmitry_stas

  • Легенда
  • 13152
  • 1233 / 8
где именно в языковом файле прописывается вызов скрипта, просидел полдня в Google и не нашел как.
что такое "прописывается вызов скрипта"? может мы о разном?

Вот, что у меня в файле языка

ну так а в чем сложность то сделать

Код
MOD_BG_DG_XML_DESCRIPTION="Этот модуль по идее будет менять обои одновременно и в боди и других местах. <script src='../modules/mod_BG_DG/theme/js/jscolor/jscolor.js' type='text/javascript'></script>"

?

Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

DyadyaGenya

  • Осваиваюсь на форуме
  • 18
  • 0 / 0
что такое "прописывается вызов скрипта"? может мы о разном?

ну так а в чем сложность то сделать

Код
MOD_BG_DG_XML_DESCRIPTION="Этот модуль по идее будет менять обои одновременно и в боди и других местах. <script src='../modules/mod_BG_DG/theme/js/jscolor/jscolor.js' type='text/javascript'></script>"

?
Сработало, огроомное спасибо. Даже не знал, что из файла языковых настроек можно вызывать скрипт.
Да, и хотел поменять вам карму, но сказали ещё рано, надо писать сообщений побольше. )))) Так что просто ещё раз спасибо )
*

DyadyaGenya

  • Осваиваюсь на форуме
  • 18
  • 0 / 0
Если правильно понял, вы хотите скрипт вывести в админке модуля?
Переопределите поле
Создайте в модуле папку fields, загрузите туда какое нибудь поле из libraries/joomla/form/fields/...
Добавьте в него вызов вашего скрипта
Хоть мне уже и подсказали способ, но хотелось бы ещё и ваш вариант понять, может тоже работает. Можете подробней пояснить?
*

fbr

  • Завсегдатай
  • 1591
  • 185 / 7
Хоть мне уже и подсказали способ, но хотелось бы ещё и ваш вариант понять, может тоже работает. Можете подробней пояснить?

В xml-файле заданы поля, задействованные в форме
Допустим поле type="text" есть практически в каждом модуле
Есть возможность переопределить это поле
Для этого добавляем (создаем) в модуль: /modules/ваш_модуль/fields/text.php
файл берем из библиотеки:  libraries/joomla/form/fields/text.php

В этом файле добавляем вывод вашего скрипта:

Код
protected function getInput()
{
  ....
  $doc = JFactory::getDocument();
  $doc->addScript( '/modules/ваш_модуль/js/ваш_скрипт.js' );
     return $html;

}

просто вставляем код в уже существующую функцию перед return
« Последнее редактирование: 23.03.2019, 23:30:58 от fbr »
*

DyadyaGenya

  • Осваиваюсь на форуме
  • 18
  • 0 / 0
В xml-файле заданы поля, задействованные в форме
Допустим поле type="text" есть практически в каждом модуле
Есть возможность переопределить это поле
Для этого добавляем (создаем) в модуль: /modules/ваш_модуль/fields/text.php
файл берем из библиотеки:  libraries/joomla/form/fields/text.php

В этом файле добавляем вывод вашего скрипта:

Код
protected function getInput()
{
  ....
  $doc = JFactory::getDocument();
  $doc->addScript( '/modules/ваш_модуль/js/ваш_скрипт.js' );
     return $html;

}

просто вставляем код в уже существующую функцию перед return
Пока ничего не получилось, но возможно сделал что-то не так
Вот папки и файлы, которые лежат в папке modules:
modules\mod_bg_dg\css\mod_bg_DG.css
modules\mod_bg_dg\fields\text.php
modules\mod_bg_dg\language\ru-Ru\ru-RU.mod_bg_DG.ini
modules\mod_bg_dg\language\ru-Ru\ru-RU.mod_bg_DG.sys.ini
modules\mod_bg_dg\theme\js\jscolor\jscolor.js
modules\mod_bg_dg\mod_bg_DG.php
modules\mod_bg_dg\mod_bg_DG.xml

Ваш код вставил text.php   Выглядит так:
Код
class JFormFieldText extends JFormField
{
/**
* The form field type.
*
* @var    string
* @since  1.7.0
*/
protected $type = 'Text';
protected function getInput()
{
  ....
  $doc = JFactory::getDocument();
  $doc->addScript( '/modules/mod_bg_dg/theme/js/jscolor/jscolor.js' );
     return $html;

}
Может не там вставил или ещё где-то надо внести правки? Да, и ещё вопрос. Не будет ли в таком случае подтягиваться скрипт к другим текстовым полям (формам) и мешаться?
*

fbr

  • Завсегдатай
  • 1591
  • 185 / 7
Надеюсь, вы многоточие не вставили? Это имелся ввиду существующий код функции)
Проверьте в админке в инспекторе кода - подгрузился файл со скриптами или нет. По идее, должен
Насчет мешаться, не знаю... Скрипт загружается на странице админки, а к чему он там подтягивается ... не знаю
*

DyadyaGenya

  • Осваиваюсь на форуме
  • 18
  • 0 / 0
Надеюсь, вы многоточие не вставили? Это имелся ввиду существующий код функции)
Проверьте в админке в инспекторе кода - подгрузился файл со скриптами или нет. По идее, должен
Насчет мешаться, не знаю... Скрипт загружается на странице админки, а к чему он там подтягивается ... не знаю
Двоеточие перед /modules/mod_bg_dg/theme/js/jscolor/jscolor.js ? нет
В инспекторе скрипта не видно, много всяких квери, в том числе и касательно цвета, но вызова моего нет. Я конечно чуть позже ещё раз постараюсь пересмотреть, может где пропустил, но сходу не видно. Было несколько JLIB_JS_AJAX_ERROR_ но я так понимаю, это "стандартные" скрипты на случай каких-то ошибок, хоть в одном про цвет и идет речь JLIB_JS_AJAX_ERROR_PARSE и дальше <code style=\"color:inherit;white-space:pre;padding:0;margin:0;border:0;background:inherit;\">%s<\/code>
И есть ещё media/jui/css/jquery.minicolors.css?a7837bdce2dfc01cdbf092d93b8c758a
но это явно не мое

И кстати, спасибо за подсказку с инспектором, почему то не думал его применять на странице админки, но в будущем буду обязательно
*

fbr

  • Завсегдатай
  • 1591
  • 185 / 7
не двоеточие, а МНОГОТОЧИЕ!

protected function getInput()
{
  ....
  $doc = JFactory::getDocument();
  $doc->addScript( '/modules/mod_bg_dg/theme/js/jscolor/jscolor.js' );
     return $html;

}
я его вставил вместо кода функции чтобы место сэкономить. Надеюсь вы код не грохнули?
*

DyadyaGenya

  • Осваиваюсь на форуме
  • 18
  • 0 / 0
не двоеточие, а МНОГОТОЧИЕ!

protected function getInput()
{
  ....
  $doc = JFactory::getDocument();
  $doc->addScript( '/modules/mod_bg_dg/theme/js/jscolor/jscolor.js' );
     return $html;

}
я его вставил вместо кода функции чтобы место сэкономить. Надеюсь вы код не грохнули?
Многоточие я конечно оставил, даже не обратил на неего внимание. Но убрал и не помогло. Из кода ничего не удалял. Все, что касается поля Текст у меня заканчивается так: protected $type = 'Text';
После него идут другие поля. Хотя может я неправильно понимаю. Я ещё и думал где тут return? Первый встречается у меня далеко после Текст и насколько я смог перевести он касается метода получения каких-то свойств из поля обьекта
Так что я просто удалил многоточие и оставил как в примере выше. Потом пробовал вставить ещё в других местах "по соседству". Мой последний вариант был такой:
class JFormFieldText extends JFormField
{
   /**
    * The form field type.
    *
    * @var    string
    * @since  1.7.0
    */
   protected $type = 'Text';

{
   /**
    * The form field type.
    *
    * @var    string
    * @since  1.7.0
    */
    * @return  HTML
  $doc = JFactory::getDocument();
  $doc->addScript( '/modules/mod_bg_dg/theme/js/jscolor/jscolor.js' );
     return $html;

}
protected function getInput()

А вообще, разберусь с этим вопросом и надо будет заняться плотно изучением php. С разметкой и стилями вроде сходу более менее разобрался, а вот тут замятина.
*

dmitry_stas

  • Легенда
  • 13152
  • 1233 / 8
Мой последний вариант был такой
безнадега... та эту функцию вам дали для примера :) вам же написали
Это имелся ввиду существующий код функции)
соответственно тупое копирование вам ничего не даст

А вообще, разберусь с этим вопросом и надо будет заняться плотно изучением php.
логичным выглядит обратная ситуация - чтобы разобраться с этим вопросом нужно сначала выучить php :)
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
А вообще, разберусь с этим вопросом и надо будет заняться плотно изучением php
;D
Не будь паразитом, сделай что-нибудь самостоятельно!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

JEvents размер модуля календаря

Автор sosny

Ответов: 0
Просмотров: 584
Последний ответ 25.02.2019, 20:03:22
от sosny
Вставка в плагин позиции модуля

Автор Melkiy

Ответов: 1
Просмотров: 533
Последний ответ 03.12.2018, 19:18:20
от effrit
Кривая анимация модуля

Автор Leo1986

Ответов: 2
Просмотров: 514
Последний ответ 10.10.2018, 14:29:36
от Leo1986
Отключение модуля в мобильной версии

Автор Leo1986

Ответов: 4
Просмотров: 1264
Последний ответ 05.10.2018, 10:32:51
от NewUsers
Как настроить gk news show pro gk5 в режим модуля Вертикальный скроллер?

Автор Bair

Ответов: 0
Просмотров: 964
Последний ответ 26.05.2018, 06:19:52
от Bair