Новости Joomla

👩‍💻 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 Гость просматривают эту тему.
  • 0 Ответов
  • 2702 Просмотров
*

kerya8080

  • Захожу иногда
  • 53
  • 3 / 0
Подскажите пожалуйста как добавить в title название раздела? Название объекта добавляется, а раздел нет

<?php
/**
 * SEF extension for EstateAgent Improved
 *
 * @author      Giannis from Estate Impeoved team
 *
 * @package     
 */

class SefExt_com_estateagent extends SefExt
{
    var $params;
   
      
   
    function beforeCreate(&$uri) {
      $lang =& JFactory::getLanguage();
      $lang->load('com_estateagent',JPATH_SITE);
      if( !is_null($uri->getVar('limitstart')) && ($uri->getVar('limitstart') == '0') ) {
            $uri->delVar('limitstart');
            $uri->delVar('limit');
        }
      
      
      if( !is_null($uri->getVar('id'))) SEFTools::fixVariable($uri, 'id');
        return;
    }


    function create(&$uri) {
 
       $vars = $uri->getQuery(true);
        extract($vars);
      
      $excludelist=array('eaadmin','gallery','newCaptcha','sendmtf','export');
      if( isset($act) && (@in_array($act, $excludelist)) ) {
            return $uri;
        }
       //if( isset($order)) print_r($order);
         
        $title = array();
        $this->params = SEFTools::getExtParams('com_estateagent');

        $title[] = JoomSEF::_getMenuTitle(@$option, @$task, @$Itemid);

        if( isset($act) ) {
         switch($act){
            case "showCE":
               if(isset($id)){
                  $alias=getTheAlias('estateagent_categories', 'id', $id, 'alias');
                  if ($alias !==""){
                     $title[] = $alias;
                  }else{
                     $name=getTheAlias('estateagent_categories', 'id', $id, 'name');
                     $title[] = $name;
                  }
         
                  unset($id);
               }else{
                  $title[]=JText::_('showCE');
               }
               if( isset($vars['order'])){
                  $title[]=$vars['order'];//.'-'.'orderdir';
                  $uri->delVar($vars['order']);
               }
               if( isset($vars['orderdir'])){
                  $title[]=$vars['orderdir'];//.'-'.'orderdir';
                  $uri->delVar($vars['orderdir']);
               }   
            break;
            case "showEO":
               if(isset($id)){
                  $alias=getTheAlias('estateagent', 'id', $id,'alias');
                  $catid=getCategoryId($id);
                  $cat_alias=getTheAlias('estateagent_categories', 'id', $catid,'alias');
                  if ($alias !==""){
                     $title[] = $cat_alias;
                     $title[] = $alias;
                  }else{
                     $propertytitle=getTheAlias('estateagent', 'id', $id,'title');
                     $name=getTheAlias('estateagent_categories', 'id', $catid,'name');
                     $title[] = $name;
                     $title[] = $propertytitle;
                  }
                  
                  unset($id);
               }
            break;
            case "listAgents":
               $title[]=JText::_('Agents');
               
            break;
            case "profileAgent":
               $title[]=JText::_('Agent');
               if(isset($id)){
                  $alias=getTheAlias('contact_details', 'id', $id,'alias');
                  if ($alias !==""){
                     $title[] = $alias;
                  }
                  
                  unset($id);
               }
            break;
            case "listAO":
               $title[]=JText::_('listing');
               if(isset($id)){
                  $alias=getTheAlias('contact_details', 'user_id', $id,'alias');
                  if ($alias !==""){
                     $title[] = $alias;
                  }
                  
                  unset($id);
               }
               
               if( isset($vars['order'])){
                  $title[]=$vars['order'];//.'-'.'orderdir';
                  //unset($order);
               }
               if( isset($vars['orderdir'])){
                  $title[]=$vars['orderdir'];//.'-'.'orderdir';
                  //unset($orderdir);
               }   
            break;
            case "showTO":
               $title[]=JText::_('types');
               if(isset($id)){
                  $alias=getTheAlias('estateagent_type', 'id', $id,'alias');
                  if ($alias !==""){
                     $title[] = $alias;
                  }
                  
                  unset($id);
               }
               if( isset($vars['order'])){
                  $title[]=$vars['order'];//.'-'.'orderdir';
                  $uri->delVar($vars['order']);
               }
               if( isset($vars['orderdir'])){
                  $title[]=$vars['orderdir'];//.'-'.'orderdir';
                  $uri->delVar($vars['orderdir']);
               }   
            break;
            case "showhot":
               $title[]=JText::_('hot properties');
               if( isset($vars['order'])){
                  $title[]=$vars['order'];//.'-'.'orderdir';
                  $uri->delVar($vars['order']);
               }
               if( isset($vars['orderdir'])){
                  $title[]=$vars['orderdir'];//.'-'.'orderdir';
                  $uri->delVar($vars['orderdir']);
               }   
               
            break;
            case "easearch":
               $title[]=JText::_('search');
               
            break;
            case "dosearch":
               $title[]=JText::_('results');
               if( isset($vars['order'])){
                  $title[]=$vars['order'];//.'-'.'orderdir';
                  $uri->delVar($vars['order']);
               }
               if( isset($vars['orderdir'])){
                  $title[]=$vars['orderdir'];//.'-'.'orderdir';
                  $uri->delVar($vars['orderdir']);
               }   
            break;
            case "showEASR":
               $title[]=JText::_('show results');
               
            break;
            case "shortlist":
               $title[]=JText::_('EA_VIEW MY SHORTLIST');
               
            break;
            case "rss":
               $title[]=JText::_('rss');
               
            break;
            case "showAll":
               $title[]=JText::_('show all properties');
               if( isset($vars['order'])){
                  $title[]=$vars['order'];//.'-'.'orderdir';
                  $uri->delVar($vars['order']);
               }
               if( isset($vars['orderdir'])){
                  $title[]=$vars['orderdir'];//.'-'.'orderdir';
                  $uri->delVar($vars['orderdir']);
               }   
               
            break;
            case "curncyconverter":
               $title[]=JText::_('EA_CURRENCY_CONVERTER');
            break;
            case "mtgcalc":
               $title[]=JText::_('EA_MTGCALC');
            break;
            case "mtfform":
                  if(isset($id)){
                  $alias=getTheAlias('estateagent', 'id', $id,'alias');
                  $catid=getCategoryId($id);
                  $cat_alias=getTheAlias('estateagent_categories', 'id', $catid,'alias');
                  if ($alias !==""){
                     $title[] = $cat_alias;
                     $title[] = $alias;
                     $title[]=JText::_('EA_EMAIL_FRIEND');
                  }else{
                     $title[]=JText::_('EA_EMAIL_FRIEND');
                  }
                  
                  unset($id);
               }else{
                  $title[]=JText::_('EA_EMAIL_FRIEND');
               }
            
            break;
            case "pdfexport":
               if(isset($id)){
                  $alias=getTheAlias('estateagent', 'id', $id, 'alias' );
                  $catid=getCategoryId($id);
                  $cat_alias=getTheAlias('estateagent_categories', 'id', $catid,'alias');
                  if ($alias !==""){
                     $title[] = $cat_alias;
                     $title[] = $alias;
                     $title[]=JText::_('PDF');
                  }else{
                     $title[]=JText::_('PDF');
                  }
                  
                  unset($id);
               }else{
                  $title[]=JText::_('PDF');
               }
               
            break;
            case "print":
               if(isset($id)){
                  $alias=getTheAlias('estateagent', 'id', $id,'alias');
                  $catid=getCategoryId($id);
                  $cat_alias=getTheAlias('estateagent_categories', 'id', $catid,'alias');
                  if ($alias !==""){
                     $title[] = $cat_alias;
                     $title[] = $alias;
                     $title[]=JText::_('print');
                  }else{
                     $title[]=JText::_('print');
                  }
                  
                  unset($id);
               }else{
                  $title[]=JText::_('print');
               }
               
               
            break;
            case "emailmyshortlist":
               $title[]=JText::_('EA_GET_MY_SHORTLIST');
            break;
            case "mailform":
               
               if(isset($id)){
                  $alias=getTheAlias('estateagent', 'id', $id,'alias');
                  $catid=getCategoryId($id);
                  $cat_alias=getTheAlias('estateagent_categories', 'id', $catid,'alias');
                  if ($alias !==""){
                     $title[] = $cat_alias;
                     $title[] = $alias;
                     $title[]=JText::_('EA_AGENT_CONTACT');
                  }else{
                     $title[]=JText::_('EA_AGENT_CONTACT');
                  }
                  
                  unset($id);
               }else{
                  $title[]=JText::_('EA_AGENT_CONTACT');
               }

            
            break;
            case "sendmail":
               $title[]=JText::_('send mail');
            break;
   
         }
         unset($act);
   }

         

      $nonSefVars = array();
        if( isset($vars['limit']))       $nonSefVars['limit'] = $limit;
        if( isset($vars['limitstart']))  $nonSefVars['limitstart'] = $limitstart;
      
      
       $ignoreVars = array();
      //if( isset($vars['order']))       $ignoreVars['order'] = $order;
        //if( isset($vars['orderdir']))    $ignoreVars['orderdir'] = $orderdir;
      
        $newUri = $uri;
        if (count($title) > 0) {
            $newUri = JoomSEF::_sefGetLocation($uri, $title, @$task, @$limit, @$limitstart, @$lang, $nonSefVars,$ignoreVars,null, null, true );
        }

        return $newUri;
   }
}

function getTheAlias($table, $id_name, $id_value, $field) {      
      
      $alias ="";
      $database =& JFactory::getDBO();
      $query  = "SELECT * FROM #__".$table." WHERE ".$id_name."=". ( int )$id_value;
       $database->setQuery($query);
       $result = $database->loadObject();
       $alias = $result->$field;
      return $alias;
    }

function getCategoryId($id) {         
      $cid ="";
      $database =& JFactory::getDBO();
      $query  = "SELECT * FROM #__estateagent WHERE id=". ( int )$id;
       $database->setQuery($query);
       $result = $database->loadObject();
       $cid = $result->cat;
      return $cid;
    }


?>
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Вопрос насчет категорий

Автор zyzy

Ответов: 0
Просмотров: 4675
Последний ответ 25.05.2015, 18:30:02
от zyzy
Глобальный вопрос по чпу

Автор GTOnidzuka

Ответов: 3
Просмотров: 2964
Последний ответ 14.05.2015, 17:23:11
от neogeek
Вопрос об ошибке

Автор pomax

Ответов: 0
Просмотров: 1935
Последний ответ 19.06.2011, 09:40:52
от pomax
Вопрос по редиректу страниц page.php?id=1 на обычные HTML

Автор jenyav

Ответов: 3
Просмотров: 4626
Последний ответ 05.02.2011, 15:59:44
от campert
Компонент ARTIO JoomSEF вопрос.

Автор 10em

Ответов: 1
Просмотров: 2342
Последний ответ 09.02.2010, 00:02:49
от bargakuzzo