Новости Joomla

Вышли релизы безопасности Joomla 6.1.4 и Joomla 5.4.9

Релиз безопасности Joomla 6.1.4 и Joomla 5.4.9

Проект Joomla! рад сообщить о выходе Joomla 6.1.4 и Joomla 5.4.9. Это релизы безопасности и исправления ошибок для серий 5.x и 6.x.

JoomShift - компонент переноса контента между Joomla сайтами.

‍ JoomShift - компонент переноса контента между Joomla сайтами.

JoomShift - компонент переноса контента между Joomla сайтами.Он позволяет экспортировать модули, меню, материалы, категории, пользовательские поля и пользователей в виде переносимых JSON/ZIP-файлов, а затем импортировать их в любую другую установку Joomla.

Возможности компонента:- Модули — полная настройка, назначение пунктов меню, позиционирование и содержимое SP Page Builder.
-Меню — иерархия родительских/дочерних элементов, типы элементов, ссылки, уровни доступа и параметры. Отсутствующие типы меню создаются автоматически, а элементы, указывающие на неустановленные компоненты, пропускаются с предупреждением.
-Статьи и категории — контент, метаданные, изображения и иерархия категорий.
-Пользовательские поля — группы полей, определения, ограничения по категориям и значения (включая поля с несколькими значениями) — экспортируются и автоматически создаются заново на целевом сайте.
-Пользователи — данные профиля, назначения групп и хэши паролей, чтобы учетные записи работали сразу после импорта.
-Кросс-версииJoomla - компонент адаптируется к различиям в схеме базы данных между версиями Joomla.
-Создан для крупных сайтов — постраничные списки (20/50/100/250строк) и автоматический пакетный экспорт для сайтов с более чем 500 элементами, поэтому он продолжает работать на обычном хостинге.
-Опция перезаписи — обновляет совпадающие элементы при повторном импорте вместо создания дубликатов.
-Drag-n-drop импорт с подробным отчетом о том, что было импортировано, обновлено или пропущено, и почему.

На момент написания заметки для скачивания необходима регистрация/логин на сайте разработчика.

-Joomla Extensions Directory-Страница расширения#joomla#расширения

Модуль joomLab JS Ajax Cart позволит организовать в Вашем интернет-магазине на компоненте JoomShopping удобную AJAX корзину с возможностью добавлять товары и изменять их количество без перезагрузки страницы.

Модуль joomLab JS Ajax Cart позволит организовать в Вашем интернет-магазине на компоненте JoomShopping удобную AJAX корзину с возможностью добавлять товары и изменять их количество без перезагрузки страницы.

Кроме этого, в состав пакета установки входит плагин, который позволяет выводить атрибуты товара в список всех товаров, менять эти атрибуты и добавлять товар в корзину из списка товаров. Если атрибутов много, то их можно выводить в всплывающем (модальном окне).

В модуле предусмотрено 2 макета дизайна для Bootstrap и UIkit и максимальная кастомизация для переопределения макетов в шаблон.Демо расширенияСтраница расширения

Видео в Telegram

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

sashgera

  • Захожу иногда
  • 113
  • 0 / 0
Здравствуйте
Если в оформлении заказа не сделать выбор Способа оплаты, то страница перезагружается и выводится сообщение - "Пожалуйста, выберите способ оплаты"

За проверку отвечает этот кусок кода:
Код: php
if (!$this->validate_form($d, $thisch)) {
$msg = @unserialize($_SESSION['error_msg']);
if (!empty($vmLogger->_messages) && (is_array($vmLogger->_messages)))
$msg .= '<br />'.end($vmLogger->_messages);
$_SESSION['error_msg'] = serialize($msg.'<br />Пожалуйста, выберите способ оплаты');
return false;
}

Как можно сделать валидацию без перезагрузки страницы?

Пробовал сделать JS. В начале страницы, перед кодом PHP:
Код: javascript
<script type="text/javascript"> 
function checks (obj){
 if (obj.payment_method_id.checked == '') {
 alert ('Пожалуйста, выберите способ оплаты'); return false;}
}
</script>

Не получилось..
« Последнее редактирование: 23.09.2015, 06:05:21 от sashgera »
*

fsv

  • Moderator
  • 2796
  • 414 / 2
Цитировать
В начале страницы, перед кодом PHP:
Функцию вставили. А как ее вызываете?

Обычно на клик по кнопке "заказать" вешается обработчик валидации заполнения полей формы, если true, форма отсылается.
Веб-разработка: заказ. Только новая разработка.
*

sashgera

  • Захожу иногда
  • 113
  • 0 / 0
Функцию вставили. А как ее вызываете?
Вызов добавил в onclick кнопки
Код: html4strict
<input type="submit" class="button_confirm" value="<?php echo $VM_LANG->_('PHPSHOP_ORDER_CONFIRM_MNU')?>" onclick="javascript: return(submitregistration());checks;" id="confirmbtn" />
А как сделать обработчик валидации я не знаю. Поможете?
*

fsv

  • Moderator
  • 2796
  • 414 / 2
У вас уже есть по клику вызов функции submitregistration(). Уберите после нее "чек", в submitregistration() допишите вашу проверку. Насколько помню (давно было), в ней валидация заполнения адресных полей. Плюсом добавляйте в нее и свои поля, по аналогии смотрите, там переменной false присваивается.

Цитировать
А как сделать обработчик валидации я не знаю.
Это второй вариант, возможно, и без него все получится. "Возможно", т.к. там у вас OPC (в др.теме упоминали), плюс что там еще накручено, не знаю. Попробуйте сначала с submitregistration().
Веб-разработка: заказ. Только новая разработка.
*

sashgera

  • Захожу иногда
  • 113
  • 0 / 0
fsv, submitregistration() нашел только здесь:
(здесь проверка полей адреса)
administrator/components/com_virtuemart/classes/ps_userfield.php
Код: php
function printJS_formValidation( $required_fields, $allfields, $formname = 'adminForm', $functioname='submitregistration', $div_id_postfix = '_div' ) {
global $VM_LANG, $page, $mainframe, $vm_mainframe;

дописал:
Код: php
$field_list = str_replace( "'payment_method_id',", '', $ps_payment_method );

ниже, после проверки email
дописал:
Код: php
if( isset( $ps_payment_method['payment_method_id'] )) {

echo '
function checks (obj){
  if (obj.payment_method_id.checked == \'\') {
  alert (\'Пожалуйста, выберите способ оплаты\'); return false;}
  } ';
}

в итоге - проверка оплаты не работает, что-то сделал не так
« Последнее редактирование: 23.09.2015, 21:25:26 от sashgera »
*

fsv

  • Moderator
  • 2796
  • 414 / 2
Все, что в функции написали, уберите. Попробуйте в ее конце код
Код
// Finish the validation function
    echo '
        if( !isvalid) {
заменить на
Код
// Finish the validation function
    echo '
        if( document.querySelectorAll("input[name=payment_method_id]:checked").length < 1 ){
            alert( "Выберите способ оплаты" );
            return false;
        }
        if( !isvalid) {
Веб-разработка: заказ. Только новая разработка.
*

sashgera

  • Захожу иногда
  • 113
  • 0 / 0
fsv, большое спасибо!
*

fsv

  • Moderator
  • 2796
  • 414 / 2
лучше обернуть еще одним условием:
Код
if( document.querySelectorAll("input[name=payment_method_id]").length ){
if( document.querySelectorAll("input[name=payment_method_id]:checked").length < 1 ){
alert( "Выберите способ оплаты" );
return false;
}
}
Иначе, если функция используется не только при одностраничном оформлении (или вид оплаты будет только 1), эти изменения будут мешать.
Веб-разработка: заказ. Только новая разработка.
*

sashgera

  • Захожу иногда
  • 113
  • 0 / 0
fsv, спасибо!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Извлечь введеные пользователем данные с страницы с контактами

Автор hdsite

Ответов: 13
Просмотров: 2510
Последний ответ 14.09.2013, 01:28:25
от barboss
Две формы оформления заказа с разными способами оплаты

Автор lada89

Ответов: 1
Просмотров: 1504
Последний ответ 16.10.2012, 12:54:13
от fsv
Иконка способа оплаты

Автор Dimir

Ответов: 0
Просмотров: 1799
Последний ответ 22.09.2012, 01:52:55
от Dimir
Обновление страницы при регестрации/авторизации VirtueMart

Автор zoira

Ответов: 1
Просмотров: 1974
Последний ответ 16.05.2012, 10:21:41
от SnowMan
Способ оплаты через заказ без регистрации!

Автор artefakt

Ответов: 8
Просмотров: 3667
Последний ответ 11.02.2012, 18:32:05
от Edan