Новости Joomla

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

Релиз безопасности Joomla 6.1.3 и Joomla 5.4.8

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

👩‍💻 WT Otpravkapochtaru - библиотека сервиса Отправка Почты России для Joomla-разработчиков.

👩‍💻 WT Otpravkapochtaru - библиотека сервиса Отправка Почты России для Joomla-разработчиков.

Joomla 5+ пакет для интеграции с API Почты России: нормализация данных, расчёт доставки, создание отправлений, партии, документы, возвраты, поиск отделений, справочники и SOAP-отслеживание.

v.3.0.0. Что нового?
Это дальнейшее развитие ранее закрытой Joomla-библиотеки для работы с API сервиса Отправка (для бизнеса) Почты России. Поэтому версия не 1.0.0, а 3.0.0.

Сейчас эта библиотека ушла от собственных реализаций и стала Joomla-обёрткой известного PHP SDK от Lapay Group.

Возможности библиотеки.
- получение настроек аккаунта, точек сдачи и текущего остатка запросов к API;
- нормализация адресов, ФИО и телефонов перед созданием отправления;
- расчёт тарифа и срока доставки;
- создание, поиск, изменение, удаление и возврат заказов в состояние «Новые»;
- проверка надёжности получателя;
- создание партий, просмотр партий и заказов внутри партии;
- генерация пакета печатных документов и формы Ф103;
- создание, изменение и удаление возвратных отправлений;
- поиск отделений по индексу, адресу и координатам, получение сервисов отделения;
- локальный список стран;
- SOAP-отслеживание операций по РПО и работа с билетами пакетного трекинга.

👩‍💻 Joomla-возможности.
В пакете библиотеки WT Otpravkapochtaru есть поля Joomla Form для расширений. Они позволяют работать в интерфейсе Joomla с некоторыми типами данных, получаемых по API из вашего личного кабинета в ЛК Почты России для бизнеса.
На данный момент в библиотеке доступны 3 поля списков, которые отображают доступные в аккаунте ОПС, типы и категории отправлений.
Поддерживаются зависимые списки: значение одного поля обновляется при изменении другого.

Системные требования.
Системные требования в основном связаны с системными требованиями апстрима библиотеки - LapayGroup PHP SDK.
- Joomla 5+
- PHP 8.3+
- Расширения PHP:
-- ext-mbstring
-- ext-simplexml
-- ext-soap (опционально, для трекинга)
-- ext-zip

Ссылки:
- Страница расширения
- GitHub библиотеки и документация

@joomlafeed

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

name

  • Захожу иногда
  • 123
  • 1 / 0
Необходимо разрешить пользователям редактировать определенные материалы в К2, но запретить изменять даты соднания и публикации? Как вообще запретить пользователям боковую панель или может удалить ее совсем в лицевой части?
Подскажите какой файл ковырять?
*

SDKiller

  • Moderator
  • 2705
  • 329 / 5
  • ...ergo sum
В версии 2.5.x файл шаблона itemform.php
Можно например закомментировать переключатель боковой панели, чтобы её нельзя было открыть.
Либо поставить там условие на группу пользователей.
*

name

  • Захожу иногда
  • 123
  • 1 / 0
Спасибо. Помогло.
На счет условия на группу вот пример бы кто привел. Хочется чтоб некоторые вкладки, например Галерея изображений, были только у отдельной группы.
*

Dorfman

  • Завсегдатай
  • 1202
  • 78 / 4
  • Почти влез...
Спасибо. Помогло.
На счет условия на группу вот пример бы кто привел. Хочется чтоб некоторые вкладки, например Галерея изображений, были только у отдельной группы.

Условия на группу я описывал в этом решении.
*

name

  • Захожу иногда
  • 123
  • 1 / 0
Условия на группу я описывал в этом решении.

   
Код
 <!-- K2 Plugins: K2AfterDisplayContent -->
<?php $user = &JFactory::getUser();
$k2_user = K2HelperPermissions::getK2User($user->id);
if($k2_user->group >= 2 ){ ?>
<?php echo $this->item->event->K2AfterDisplayContent; ?>
<?php } else echo  '<h5>Более подробная информация обо всех рекламных услугах доступна только членам <a href="club.html">клуба!</a></h5>'  ?

Это и есть условие на группу? В какойм месте файла надо вставлять код?
*

Dorfman

  • Завсегдатай
  • 1202
  • 78 / 4
  • Почти влез...
само условие вот:

ПОЛУЧАЕМ id ГРУППЫ ДАННОГО ЮЗЕРА:
Код
<?php $user = &JFactory::getUser(); 
$k2_user = K2HelperPermissions::getK2User($user->id);

ЕСЛИ (проверка условия)
Код
if($k2_user->group >= 2 ){ ?>
ТО (здесь выполняется разрешённое для этой группы действие). В приведённом примере - ЕСЛИ id ГРУППЫ БОЛЬШЕ ИЛИ РАВНО 2. В Вашем случае здесь должен быть вывод галереи изображений.

ИНАЧЕ
Код
<?php } else echo  '<h5>Вместо тэга h5 - условие, при котором срабатывает запрет, напр., сообщение о недопустимости данного действия</h5>'  ?>

А вот в каком месте это условие реализовывать - это и есть как раз решение Вашей задачи
« Последнее редактирование: 15.12.2011, 09:52:23 от Dorfman »
*

name

  • Захожу иногда
  • 123
  • 1 / 0
Помогитек, пожалуйста, разобраться в коде

Код
<?php $user = &JFactory::getUser(); 
$k2_user = K2HelperPermissions::getK2User($user->id);
if($k2_user->group = 4 ){ ?>


<?php if ($this->params->get('showImageGalleryTab')): ?>
<li id="tabImageGallery"><a href="#k2Tab3"><?php echo JText::_('K2_IMAGE_GALLERY'); ?></a></li>
<?php endif; ?>
} <?php endif; ?>

Выдает ошибку
Parse error: syntax error, unexpected T_ENDIF in .........\components\com_k2\templates\default\itemform.php on line 122. Строка 122 это
Код
} <?php endif; ?>
*

name

  • Захожу иногда
  • 123
  • 1 / 0
Исправил
Parse error: syntax error, unexpected $end in .....components\com_k2\templates\default\itemform.php on line 830


830 это самая последняя строка
*

name

  • Захожу иногда
  • 123
  • 1 / 0
Тоже самое, таже ошибка

Parse error: syntax error, unexpected $end in .......components\com_k2\templates\default\itemform.php on line 836
*

name

  • Захожу иногда
  • 123
  • 1 / 0
Все, я понял.
Вот как надо было

Код
<?php $user = &JFactory::getUser(); 
$k2_user = K2HelperPermissions::getK2User($user->id);
if($k2_user->group ==3 ){ ?>

<?php if ($this->params->get('showImageGalleryTab')): ?>
<li id="tabImageGallery"><a href="#k2Tab3"><?php echo JText::_('K2_IMAGE_GALLERY'); ?></a></li>
<?php endif; ?>
<? } ?>
*

SDKiller

  • Moderator
  • 2705
  • 329 / 5
  • ...ergo sum
Всё-таки я не досмотрел:

Код
<?php if ($this->params->get('showImageGalleryTab')) {

    $user = &JFactory::getUser();
    $k2_user = K2HelperPermissions::getK2User($user->id);

    if($k2_user->group == 4 ){ ?>

        <li id="tabImageGallery"><a href="#k2Tab3"><?php echo JText::_('K2_IMAGE_GALLERY'); ?></a></li>
<?php
    }
}
?>
*

name

  • Захожу иногда
  • 123
  • 1 / 0
Интересная особенность обнаружилась после добавления условия на группу.
В Опере и мозиле все в норме, работает как надо, а вот в IE панель принимает вид



Все что на вкладках Галерея Изображений, Медиа и Допполя появляется на вкладке Контент.

Вот фрагмент кода, в котором прописана проверка на группу. Если пользователь из группа Администраторы (ID=3), то вкладка видна.
Код
<?php if ($this->params->get('showImageGalleryTab')) {

    $user = &JFactory::getUser();
    $k2_user = K2HelperPermissions::getK2User($user->id);

    if($k2_user->group == 3 ){ ?>

        <li id="tabImageGallery"><a href="#k2Tab3"><?php echo JText::_('K2_IMAGE_GALLERY'); ?></a></li>
<?php
    }
}
?>

Пробовал также поставить усливие ва тут часть файла где идет вывод содержимого вкладки Галерея

Код
<?php if ($this->params->get('showImageGalleryTab')) {

    $user = &JFactory::getUser();
    $k2_user = K2HelperPermissions::getK2User($user->id);

    if($k2_user->group == 3 ){ ?>

<!-- Tab image gallery -->
<div class="simpleTabsContent" id="k2Tab3">
<?php if ($this->lists['checkSIG']): ?>
<table class="admintable" id="item_gallery_content">
<tr>
<td align="right" valign="top" class="key">
<?php echo JText::_('K2_UPLOAD_A_ZIP_FILE_WITH_IMAGES'); ?>
</td>
<td valign="top">
<input type="file" name="gallery" class="fileUpload" />
<i>(<?php echo JText::_('K2_MAX_UPLOAD_SIZE'); ?>: <?php echo ini_get('upload_max_filesize'); ?>)</i>
<br />
<br />
<?php echo JText::_('K2_OR_ENTER_A_FLICKR_SET_URL'); ?>
<input type="text" name="flickrGallery" size="50" value="<?php echo ($this->row->galleryType == 'flickr')? $this->row->galleryValue : ''; ?>" />
<?php if (!empty($this->row->gallery)): ?>
<div id="itemGallery"> <?php echo $this->row->gallery; ?>
<input type="checkbox" name="del_gallery" id="del_gallery"/>
<label for="del_gallery"><?php echo JText::_('K2_CHECK_THIS_BOX_TO_DELETE_CURRENT_IMAGE_GALLERY_OR_JUST_UPLOAD_A_NEW_IMAGE_GALLERY_TO_REPLACE_THE_EXISTING_ONE'); ?></label>
</div>
<?php endif; ?>
</td>
</tr>
</table>
<?php else: ?>
<dl id="system-message">
<dt class="notice"><?php echo JText::_('K2_NOTICE'); ?></dt>
<dd class="notice message fade">
<ul>
<li><?php echo JText::_('K2_NOTICE_PLEASE_INSTALL_JOOMLAWORKS_SIMPLE_IMAGE_GALLERY_PRO_PLUGIN_IF_YOU_WANT_TO_USE_THE_IMAGE_GALLERY_FEATURES_OF_K2'); ?></li>
</ul>
</dd>
</dl>
<?php endif; ?>
<?php if (count($this->K2PluginsItemGallery)): ?>
<div class="itemPlugins">
<?php foreach($this->K2PluginsItemGallery as $K2Plugin): ?>
<?php if(!is_null($K2Plugin)): ?>
<fieldset>
<legend><?php echo $K2Plugin->name; ?></legend>
<?php echo $K2Plugin->fields; ?>
</fieldset>
<?php endif; ?>
<?php endforeach; ?>
</div>
<?php endif; ?>
</div>

<?php
    }
}
?>

Все ровно в IE показывает то что на кратинке изображено.

Версия IE 8

Что не так? Что исправить надо?
*

name

  • Захожу иногда
  • 123
  • 1 / 0
Решил немного именить код, оставил все вкладки для всех пользователей, но добавил условие

Код
<!-- условие на группу. Если пользователь относится к группе - см. ID группы в CB - то выводится вкладка Галерея. --!>
<?php

    $user = &JFactory::getUser();
    $k2_user = K2HelperPermissions::getK2User($user->id);

    if($k2_user->group == 3 ){ ?>
<div class="simpleTabsContent" id="k2Tab3">



<?php if ($this->lists['checkSIG']): ?>
<table class="admintable" id="item_gallery_content">
      <tr>
<td align="right" valign="top" class="key">
<?php echo JText::_('K2_UPLOAD_A_ZIP_FILE_WITH_IMAGES'); ?>
</td>
<td valign="top">
<input type="file" name="gallery" class="fileUpload" />
<i>(<?php echo JText::_('K2_MAX_UPLOAD_SIZE'); ?>: <?php echo ini_get('upload_max_filesize'); ?>)</i>
<br />
<br />
<?php echo JText::_('K2_OR_ENTER_A_FLICKR_SET_URL'); ?>
<input type="text" name="flickrGallery" size="50" value="<?php echo ($this->row->galleryType == 'flickr')? $this->row->galleryValue : ''; ?>" />
<?php if (!empty($this->row->gallery)): ?>
<div id="itemGallery"> <?php echo $this->row->gallery; ?>
<input type="checkbox" name="del_gallery" id="del_gallery"/>
<label for="del_gallery"><?php echo JText::_('K2_CHECK_THIS_BOX_TO_DELETE_CURRENT_IMAGE_GALLERY_OR_JUST_UPLOAD_A_NEW_IMAGE_GALLERY_TO_REPLACE_THE_EXISTING_ONE'); ?></label>
</div>
<?php endif; ?>
</td>
</tr>
</table>
<?php else: ?>
<dl id="system-message">
<dt class="notice"><?php echo JText::_('K2_NOTICE'); ?></dt>
<dd class="notice message fade">
<ul>
<li><?php echo JText::_('K2_NOTICE_PLEASE_INSTALL_JOOMLAWORKS_SIMPLE_IMAGE_GALLERY_PRO_PLUGIN_IF_YOU_WANT_TO_USE_THE_IMAGE_GALLERY_FEATURES_OF_K2'); ?></li>
</ul>
</dd>
</dl>
<?php endif; ?>
<?php if (count($this->K2PluginsItemGallery)): ?>
<div class="itemPlugins">
<?php foreach($this->K2PluginsItemGallery as $K2Plugin): ?>
<?php if(!is_null($K2Plugin)): ?>
<fieldset>
<legend><?php echo $K2Plugin->name; ?></legend>
<?php echo $K2Plugin->fields; ?>
</fieldset>
<?php endif; ?>
<?php endforeach; ?>
</div>


<?php endif; ?>

 
</div>
<?php



}
?>

Если пользователь из группы админов, то содержимое вкладки доступно, иначе вкладка видна но перейти на нее невозможно, тыкай хоть обтыкайся.
Помогите, пожалуйста, вставить сюда код, который выводил бы сообщение об отсутствии прав доступа к владке, если пользователь не из админов.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться