Сергей Лим · 25 июня 2015, 01:57 К сожалению у этого компонента нету истории изменения курса. На данный момент пользуюсь вот этим скриптом function get_rate($currency) { $date = getdate(); // получаем ассоциативный массив с данными по дате $day_of_the_week = $date['wday']; // день недели //расчет коэффициента смещения switch ($day_of_the_week) { case 0: $k1 = 2 ; $k2 = 1; break; // воскресенье case 1: $k1 = 3 ; $k2 = 2; break; // понедельник case 2: $k1 = 3 ; $k2 = 0; break; // вторник default: $k1 = 1 ; $k2 = 0; break; // среда, четверг, пятница, суббота } $month = $date['mon'] ; // месяц $day = $date['mday'] ; // число сегодня $yesterday = $day - $k1 ; // число для получения курса на предыдущий день $today = $day - $k2 ; // число для получения курса на сегодня $year = $date['year'] ; // год $date_yesterday = date("d/m/Y", mktime(0, 0, 0, $month, $yesterday, $year )); // Генерация даты для курса предыдущего дня $date_today = date("d/m/Y", mktime(0, 0, 0, $month, $today, $year )); // Генерация даты для курса на сегодня $rate = array() ; foreach($currency as $key => $value) { $url = 'http://www.cbr.ru/scripts/XML_dynamic.asp?date_req1='.$date_yesterday.'&date_req2='.$date_today.'&VAL_NM_RQ='.$value ; $xml = simplexml_load_file($url); $rate_today = round(str_replace(',','.',$xml->Record[1]->Value), 2); $rate_yesterday = round(str_replace(',','.',$xml->Record[0]->Value), 2); $range = round($rate_today - $rate_yesterday, 2) ; if ($range > 0) { $range = '+' . $range; $img = 'up' ; } elseif ($range == 0) { $range = 0 ; $img = 0 ; } else { $img = 'down' ; } $rate[$key] = array( 'today' => $rate_today, 'change' => $range, 'img' => $img ); } return $rate ; } $currency = array( 'dollar' => 'R01235', 'euro' => 'R01239' ); $rate = get_rate($currency); foreach ($rate as $key => $value) { ?> <div class="valuta-logo"><img src="/assets/images/valuta/<?php echo $key; ?>.png" alt="" /></div> <strong><?php echo $value['today']; ?></strong> <?php if($value['change']) { ?> <img src="/assets/images/valuta/<?php echo $value['img']; ?>.png" alt="" /> <?php echo $value['change']; ?> <?php } ?> <div style="clear: both"></div> <?php } Скажите, насколько он кривой? И я так понимаю, что надо сделать кэшируемость + крон? Я просто в пхп только начинаю разбираться. Автор если направишь меня в нужное направление, то хотел бы помочь усовершенствовать твой компонент на основе этого. Я знаю, что ты это сам можешь, но я хотел бы научиться) Новые дополнения и их версии / [CurrencyRate] - курс валют 150 0 1
An Si · 17 апреля 2015, 11:02 мда, логично… затупил с утра. В общем, чтобы обновлять раз в день без крона можно создать плагин на событие OnLoadWebDocument. В плагине просто сравнивать день последнего обновления и сегодняшний день. Если они отличаются, то обновляем, иначе нет. $lastDayUpdate = strftime('%d',strtotime($modx->getOption('currencyrate_last_date'))); if ($lastDayUpdate!=date('d')) { $currencyrate = $modx->getService('currencyrate', 'currencyrate', $modx->getOption('currencyrate_core_path', null, $modx->getOption('core_path') . 'components/currencyrate/') . 'model/currencyrate/'); if (!($currencyrate instanceof currencyrate)) return ''; $currencyrate->rateIntoDb(); } return; Новые дополнения и их версии / [CurrencyRate] - курс валют 150 +2 2
Владимир Дремучий · 08 декабря 2014, 22:25 Можно почитать manifest.php 1. Требования Для использования вам необходим Shopkeeper с использованием FormIt Тестировалось на Shopkeeper 2.3.5 2. Установка а) Установить пакет в "система - управление пакетами". а) В чанке формы заказа, в списке способов оплаты указать [[!YandexMoney? &action=`showMethods` ]] Т.е., например, в чанке shopOrderForm будет: <select name="payment" style="width:200px;"> <option value="При получении" [[!+fi.payment:FormItIsSelected=`При получении`]]>При получении</option> [[!YandexMoney? &action=`showMethods` ]] </select> б) В чанке страницы заказа, в список хуков FormIt добавить YandexMoneyHook Т.е., например, чанк orderform_page [[!FormIt? &hooks=`spam,shk_fihook,YandexMoneyHook,email,FormItAutoResponder,redirect` &submitVar=`order` &emailTpl=`shopOrderReport` &fiarTpl=`shopOrderReport` &emailSubject=`В интернет-магазине "[[++site_name]]" сделан новый заказ` &fiarSubject=`Вы сделали заказ в интернет-магазине "[[++site_name]]"` &emailTo=`[[++emailsender]]` &redirectTo=`25` &validate=`address:required,fullname:required,email:email:required,phone:required` &errTpl=`<br /><span class="error">[[+error]]</span>` ]] в) Создать 2 страницы: для успешно завершенного платежа и неуспешно завершенного. 3) Настройка Перейти в параметры сниппета YandexMoney (Элементы -> сниппеты -> YandexMoney - >YandexMoney) Разблокировать параметры по умолчанию. Заполнить параметры в соответствии со своими задачами. Сохранить. 4) Profit.Ну это по использованию, видимо надо создать транспотрный пакет, типа yandexmoney_modx.transport.zip Вопросы / yandex модуль оплаты, как инсталировать 2 0 1
Сергей Шлоков · 16 октября 2014, 12:38 Вот важная информация для админов сайтов — Как защитить MODX Revolution от взлома Вот еще от себя могу добавить — Вопросы / Взломали сайт 17 0 6
wld · 07 мая 2014, 20:06 или же не указываем <base href="[[++base_url]]" />а в Настройках системы — core — Сайт Схема URL (link_tag_scheme) установить значение abs Для справки: -1: (default value) URL is relative to site_url 0: see http 1: see https full: URL is absolute, prepended with site_url from config abs: URL is absolute, prepended with base_url from config http: URL is absolute, forced to http scheme https: URL is absolute, forced to https scheme И при вызове pdoMenu или подобных снипетов указывать: &scheme=`abs`По идее, в подобных снипетах можно было бы дергать эту схему урл по дефолту из link_tag_scheme, но почему то так не все так делают( Отличия: В первом случае, как указал Василий, при создании якорей, необходимо указывать ссылку на текущую страницу: <a href="[[~id]]#test">Ссылка</a>В моем случае, достаточно указать только якорь: <a href="#test">Ссылка</a> Вопросы / Криво работают ссылки на сайте 5 0 5
Володя · 04 марта 2014, 11:43 Василий, опять я тебя побеспокоить хочу… С сортировкой ладно, вроде разобрались, выводим через msproduct [[!msProducts? &tpl=`tpl_default` &includeThumbs=`212x192` &sortdir=`asc` &parents=`30` &limit=`100` &innerJoin=`{"msCategory": {"class":"msCategory", "alias":"msCategory", "on":"msProduct.parent = msCategory.id"}}` &sortby=`msCategory.menuindex ASC,msProduct.menuindex` ]]Все хорошо, все как в дереве отсортировано. Теперь скажи мне пожалуйста как этот порядок сохранить при выводе через mfilter? пробую — он мне ошибку выдает 0.0006289: Could not process query, error #1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'asc,msproduct.menuindex asc LIMIT 60, 20' at line 1или я туплю или хз… Подскажи пожалуйста! Спасибо! Вопросы / Сортировка в каталоге minishop2 и вывод товаров. 21 0 1
Василий Наумкин · 10 октября 2013, 23:13 Еще можно указать &resources=`2,3,5,10,1` и пустой &sortby=``, тогда товары выведутся в указанном порядке. Вчера про это писал. Вопросы / Сортировка в msProducts 10 0 1
Андрей Ятин · 10 октября 2013, 22:38 Разобрался. У меня идёт вызов через runSnippet. Может кому пригодится: $ord = " 'Выключатели', 'Розетки электрические', 'Розетки TV', 'Розетки телеф/комп', 'Розетки акустические', 'Управление жалюзи', 'Светорегуляторы', 'Терморегуляторы теплого пола', 'Датчики движения', 'Выключатели автоматические', 'Вывод кабеля', 'Заглушки' "; $sortby = "FIELD(Data.product_type,".$ord.")"; Вопросы / Сортировка в msProducts 10 0 1
UiCMPGenerator дополнение для создания пакетов Ближе к сентябрю, основная загвоздка это создание нормальной документации и видео обзора, а так пакет как бы уже готов
Checkbox для модального окна Они не отключены, они платные, чтобы писали только те, кому действительно очень надо. Когда бесплатно люди начинают думать, что я им должен.
[SendIt 2.6.0] Анализ поведения пользователя для защиты от спама (невидимая капча)... Здравствуйте. Делаю личный кабинет на Sendit и со сбросом пароля возникли проблемы. Можете подсказать, в чем ошибка? Список вопросов в одноименном разделе на modx.pro пока пуст, и,...
Minishop + честный знак (продажа маркированной продукции) В нашем случае мы решили убрать всю логику по маркировке сайта.
MiniShop3 - Не выводятся товары дополнительных категорий @SYAN ваша указанная проблема исправлена еще до версии 1.2.3 @Павлик Мышкин завел: github.com/modx-pro/MiniShop3/issues/480 github.com/modx-pro/MiniShop3/issues/481Исправим в б...
MobileDetect 2.0.0-pl функция "планшеты как стандартные браузеры не работает" в 2.1.0-pl баг исправлен
msImportExport не сохраняет родителя по умолчанию Компонент не понимает кирилические домены при загрузку фото. пример: Error download. Url : https://антаресдвери.рф/upload/iblock/a50/a50b2ef45305a3c18f6e298f1e134880.jpg. Message...
Скажите, насколько он кривой? И я так понимаю, что надо сделать кэшируемость + крон? Я просто в пхп только начинаю разбираться. Автор если направишь меня в нужное направление, то хотел бы помочь усовершенствовать твой компонент на основе этого. Я знаю, что ты это сам можешь, но я хотел бы научиться)
Ну это по использованию, видимо надо создать транспотрный пакет, типа yandexmoney_modx.transport.zip
Вот еще от себя могу добавить —
а в Настройках системы — core — Сайт
Схема URL (link_tag_scheme) установить значение abs
Для справки:
И при вызове pdoMenu или подобных снипетов указывать:
По идее, в подобных снипетах можно было бы дергать эту схему урл по дефолту из link_tag_scheme, но почему то так не все так делают(
Отличия:
В первом случае, как указал Василий, при создании якорей, необходимо указывать ссылку на текущую страницу:
В моем случае, достаточно указать только якорь:
С сортировкой ладно, вроде разобрались, выводим через msproduct
Все хорошо, все как в дереве отсортировано.
Теперь скажи мне пожалуйста как этот порядок сохранить при выводе через mfilter?
пробую — он мне ошибку выдает
или я туплю или хз…
Подскажи пожалуйста! Спасибо!
Вчера про это писал.