Новости Joomla

Модификация WT JShopping products anywhere - Uikit макетИтак, дано: музыкальный журнал, в котором...

Модификация WT JShopping products anywhere - Uikit макетИтак, дано: музыкальный журнал, в котором...

Модификация WT JShopping products anywhere - Uikit макетИтак, дано: музыкальный журнал, в котором представлены новости, интервью, рецензии и есть небольшой магазин на JoomShopping. Возникла необходимость внутри Joomla статей вставлять упоминание релиза и кнопочку «добавить в корзину». Я взял плагин WT JShopping products anywhere Сергея Толкачева (@webtolkru). Плагин отображает название товара и ссылку. При помощи напильника, ИИ и навыков вёрстки появился Uikit макет для шаблонов на базе Yootheme Pro.Учитываается мобильная версия - телефоны и ipad.Кнопка добавления в корзину работает по Ajax и появляется всплывающее окно (Notification Bar от Uikit) с информацией.Пока это базовый вариант, требующий доведения до лоска, однако он уже работает и его можно применять на проектах.Взять макет можно здесь.А плагин вставки товаров в материалы можно забрать здесь.Приветствуется доведение до ума и оформление в виде PR.

WT Content Image Gallery v.1.2.3 - плагин галереи изображений для Joomla

WT Content Image Gallery v.1.2.3 - плагин галереи изображений для Joomla

👩‍💻 WT Content Image Gallery v.1.2.3 - плагин галереи изображений для Joomla.Пакет плагинов галереи изображений и видео для вставки в материалы и модули Joomla, а так же везде, где работают плагины группы content. Поддержка собственных макетов вывода для галерей. Смешанные фото+видео галереи. Плагин создан как замена Simple Image Gallery и поддерживает синтаксис {gallery}{/gallery}.👩‍💻 v.1.2.3. Что нового?- Обработка вступительного и полного текста для материалов Joomla. Добавлена обработка шорткодов в полном и вступительном текстах материалов Joomla.- Системные требования. Повышены минимальные требования до Joomla 5 и PHP 8.1.- Мелкие правки. Исправлена ошибка работы макета по умолчанию в плагине контента.- Joomla 6. Пакет плагинов успешно протестирован на Joomla 6.Страница расширения.GitHub расширенияJoomla Extensions Directory@joomlafeed#joomla #расширения

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

yrygvay

  • Завсегдатай
  • 1293
  • 36 / 3
SMS-уведомления
« : 24.12.2010, 11:34:48 »
День Добрый.
Задался таким вопросом.

Как сделать что бы при заказе на сайте покупателю приходило SMS с кодом заказа и текстом на мобильный телефон?

В интернете есть множество сервисов предлагающих отправки SMS уведомлений с коротких номеров ( +Адрес отправителя можно менять :www.***.ru заказ принят, ожидайте).


У операторов на сайтах написаны решения для


Примеры кода
PHP,  Python,   Java,   Ruby on Rails,   Perl,   Delphi,   .NET,  C#,   1С
вот пример на PHP расписанный

Код
<?php
/** после отладки рекомендуется убрать вывод ошибок на экран */
error_reporting(E_ALL);
/** данный скрипт является демо-скриптом по использованию класса Avisosms */

/** подключаем необходимые библиотеки */
include_once ('client.php');

/** $ssl - соединяться ли через ssl */
$ssl = True;
/** $user - логин */
$user = "login";
/** $password - пароль */
$password = "PasSw0rd";


/** создаём объект класса Avisosms, в качестве параметров указываем логин, пароль и режим шифрования */
$Avisosms = new Avisosms($user, $password, $ssl);

/** запрашиваем баланс пользователя */
$result = $Avisosms -> GetCreditBalance();

/** после окончания тестирования 3 строки ниже можно убрать */
echo "<pre>Массив ответов сервера по запросу GetCreditBalance \n";
print_r($result);
echo "</pre>\n";

/** отправляем смску на телефон*/
$destinationAddress = '79031234567';
$messageData = 'Сообщение. Кирилица 70 символов, латиница 160 максимум.';

$result = $Avisosms -> SendTextMessage($destinationAddress, $messageData);

/** после окончания тестирования 3 строки ниже можно убрать */
echo "<pre>Массив ответов сервера по запросу SendTextMessage \n";
print_r($result);
echo "</pre>\n";


/** проверяем статус смски по ее id*/
$result = $Avisosms -> GetMessageState('$messageId');

/** после окончания тестирования 3 строки ниже можно убрать */
echo "<pre>\n";
print_r($result);
echo "</pre>\n";

?>

но как нам прикрутить это дело к VM, К2 ?

Смотрю....
*

beagler

  • Moderator
  • 3276
  • 392 / 4
  • https://alorisman.ru/
Re: SMS-уведомления
« Ответ #1 : 24.12.2010, 14:57:24 »
ну в vm это надо вставлять в страницу "Спасибо за заказ"
*

yrygvay

  • Завсегдатай
  • 1293
  • 36 / 3
Re: SMS-уведомления
« Ответ #2 : 29.12.2010, 21:21:50 »
а куда примерно .может подскажешь?
просто если получится то хороший хак будет, не было такого для Вирта
Смотрю....
*

yrygvay

  • Завсегдатай
  • 1293
  • 36 / 3
Re: SMS-уведомления
« Ответ #4 : 05.01.2011, 12:29:11 »
Спасибо Огромное.

Попробую.
Смотрю....
*

yrygvay

  • Завсегдатай
  • 1293
  • 36 / 3
Re: SMS-уведомления
« Ответ #5 : 05.01.2011, 13:21:53 »
Код
<?php
class Avisosms
{
/** $url - урл-адрес сервера, к которому мы обращаемся */
var $url = 'http://api.avisosms.ru/sms/json/';
/** $username - логин */
var $username;
/** $password - пароль */
var $password;

/** конструктор класса */
function Avisosms($username, $password)
{
$this->username = $username;
$this->password = $password;
}
/**
*   Функция GetPageByUrl($headers, $post_body) посылает http-запрос методом get и передаёт $post_body в качестве тела запроса и берет страницу по урлу
*
*   @param     $post_body - get запрос;
*
*/
function GetPageByUrl($headers, $post_body)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $this -> url); // урл страницы
curl_setopt($ch, CURLOPT_FAILONERROR, 1); //  завершать при ошибке > 300
curl_setopt($ch, CURLOPT_COOKIE, 1); // пишем куки
curl_setopt($ch, CURLOPT_VERBOSE, 1); // показывать подробную инфу
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); // отправить заголовки из массива $headers
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // вернуть результат запроса в переменную

/** ОТПРАВКА ДАННЫХ МЕТОДОМ POST */

curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_body); // передаём post-данные

$result = curl_exec($ch); // получить результат в переменную
curl_close($ch);
return $result;
}

/** функция GetCreditBalance() запрашивает баланс пользователя
*
*   @return array - функция возвращает массив ответов сервера status и balance
*
*/
function GetCreditBalance()
{
$http_body = array(
"username" => $this->username,
"password" => $this->password,
"request_type" => 'get_balance'
);

$http_body = json_encode($http_body);
$headers[] = 'Content-Type: text/xml; charset=utf-8';
$headers[] = 'Content-Length: ' . strlen($http_body);
$server_answer = $this->GetPageByUrl($headers, $http_body);
$server_answer = (array)json_decode($server_answer);
return $server_answer;
}

/** функция SendTextMessage() шлёт запрос об отправке sms, возвращает ответ сервера и id всех отправленных смсок, если сообщение было длинное и разбилось на несколько смсок
*
*   @param $destination_address string Мобильный телефонный номер получателя сообщения, в международном формате: код страны + код сети + номер телефона. Пример: 7903123456
*   @param $message string Текст сообщения, поддерживаемые кодировки IA5 и UCS2
*   @param $source_address string Адрес отправителя сообщения. До 11 латинских символов или до 15 цифровых
*   @param $flash boolean Отправка Flash-SMS
*
*   @return array - функция возвращает массив ответов сервера status и messageID
*/
function SendTextMessage($destination_address, $message, $source_address, $flash = false)
{
$flash = intval($flash);
$message = iconv("WINDOWS-1251", "UTF-8", $message);
$http_body = array(
'username' => $this->username,
'password' => $this->password,
'request_type' => 'send_message',
'destination_address' => $destination_address,
'message' => $message,
'source_address' => $source_address,
'flash' => $flash
);

$http_body = json_encode($http_body);
$headers[] = 'Content-Type: text/xml; charset=utf-8';
$headers[] = 'Content-Length: ' . strlen($http_body);
$server_answer = $this->GetPageByUrl($headers, $http_body);
$server_answer = (array)json_decode($server_answer);
return $server_answer;
}

/**
* GetMessageState – запрос на получение статус отправленного SMS-сообщения
*
*    @param $messageId string Идентификатор сообщения
*
*    @return array - функция возвращает массив ответов сервера status и message_state
*/
function GetMessageState($messageId)
{
$http_body = array(
'username' => $this->username,
'password' => $this->password,
'request_type' => 'get_message_state',
'messageID' => $messageId
);

$http_body = json_encode($http_body);
$headers[] = 'Content-Type: text/xml; charset=utf-8';
$headers[] = 'Content-Length: ' . strlen($http_body);
$server_answer = $this->GetPageByUrl($headers, $http_body);
$server_answer = (array)json_decode($server_answer);
return $server_answer;
}
}
?>

попытался разобраться.
вставил после всего кода в файле checkout.thankyou.tpl.php
Понял что
/** $username - логин */
var $username;
/** $password - пароль */

это пароль мой в системе отправки смс

Далее идёт ко который выполняется сам по себе но потом дохожу до куска:
Код
$flash = intval($flash);
$message = iconv("WINDOWS-1251", "UTF-8", $message);
$http_body = array(
'username' => $this->username,
'password' => $this->password,
'request_type' => 'send_message',
'destination_address' => $destination_address,
'message' => $message,
'source_address' => $source_address,
'flash' => $flash

и тут встаёт вопрос, а как поймёт ли система что нужно взять мобильный номер из карточки заказа? ('destination_address' => $destination_address,)
Смотрю....
*

yrygvay

  • Завсегдатай
  • 1293
  • 36 / 3
Re: SMS-уведомления
« Ответ #7 : 05.01.2011, 17:39:14 »
а стоимость этого тяжёлого труда указанны у Вас в подписи))))))
Смотрю....
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться