Вполне рабочая схема получается ,в данном случае курьер это не очная продажа ,а способ покупки и доставки ,так же как и самовывоз. Единственное о чём стоит побеспокоиться это о носимом принтере.
Сколько читал, продавцы кассового оборудования как один все трактуют закон в свою пользу.И про- в кратчайшее время - тоже чисто для пользы продавцов оборудования.В законе нет нормы когда ,конкретно должен быть передан чек в случае дистанционной продажи.Зато есть ремарка,что в случае технического сбоя при доступе к сети,чек может быть передан позднее,главное в течение 24 часов до закрытия кассовой смены.
Главное чек должен быть передан в ОФД в день покупки.Какой способ оплаты был при этом не так важно.Онлайн-кассы по закону должны поддерживать их все.
так кому нужна такая фича с выбором страны по умолчанию при оформлении заказа
идёте в wa-system/contact/waContactCountryField.class.php
идёте на строчку 87
public function getHtmlOne($params = array(), $attrs = '')
ищете в методе(функции)
if (isset($this->options['iso_codes']) && is_array($this->options['iso_codes'])) {
$iso_codes = array_flip($this->options['iso_codes']);
} else {
$iso_codes = null;
}
оказывается нельзя выбрать другую страну по дефолту для магазина в случае оформления заказа при создании нового пользователя ,этот параметр просто не передается .
Я думаю планируется добавить в поселение настройку Страна по умолчанию
потому что в каждом плагине надо делать абсолютно тоже самое что происходит в классе:
определять текущую активную витрину,
преобразовывать её к нормальному виду
и уже только тогда отдавать ссылку.
зачем заставлять дублировать уже сделанную работу???? принцип экономии памяти и оптимизации работы скриптов отменили?
$plugin_urls = wa()->event(array($this->app_id, 'sitemap'), $route);
if ($plugin_urls) {
foreach ($plugin_urls as $urls) {
foreach ($urls as $url) {
$this->addUrl($url['loc'], ifset($url['lastmod'], time()), ifset($url['changefreq']), ifset($url['priority']));
}
}
}
тут получается что при подключении данного хука ,в каждом плагине где он используется по сути надо дублировать этот класс
можно же сделать проще
$return['$urls']
Массив данных для формирования элементов Sitemap-файла. Каждый элемент массива должен содержать ассоциативный подмассив с обязательным ключом loc и необязательными ключами lastmod, changefreq и priority.
Дайте пример функции для работы с данным хуком : входные параметры и результат описаны крайне обширно и неоднозначно
либо поправьте функцию в wa-apps/shop/lib/classes/ShopImage.class.php
строчка 226
было
public static function getUrl($image, $size = null, $absolute = false)
{
$path = shopProduct::getFolder($image['product_id'])."/{$image['product_id']}/images/{$image['id']}/{$image['id']}.{$size}.{$image['ext']}";
Вполне рабочая схема получается ,в данном случае курьер это не очная продажа ,а способ покупки и доставки ,так же как и самовывоз. Единственное о чём стоит побеспокоиться это о носимом принтере.
Сколько читал, продавцы кассового оборудования как один все трактуют закон в свою пользу.И про- в кратчайшее время - тоже чисто для пользы продавцов оборудования.В законе нет нормы когда ,конкретно должен быть передан чек в случае дистанционной продажи.Зато есть ремарка,что в случае технического сбоя при доступе к сети,чек может быть передан позднее,главное в течение 24 часов до закрытия кассовой смены.
Главное чек должен быть передан в ОФД в день покупки.Какой способ оплаты был при этом не так важно.Онлайн-кассы по закону должны поддерживать их все.
в ответ на 54 ФЗ онлайн-касса в эконом варианте без печати бумажного чека
в ответ на Ненужные страны и региона.Непонятный баг
в ответ на Ненужные страны и региона.Непонятный баг
идёте в wa-system/contact/waContactCountryField.class.php
идёте на строчку 87
public function getHtmlOne($params = array(), $attrs = '')
ищете в методе(функции)
if (isset($this->options['iso_codes']) && is_array($this->options['iso_codes'])) {
$iso_codes = array_flip($this->options['iso_codes']);
} else {
$iso_codes = null;
}
и заменяете на
if (isset($this->options['iso_codes']) && is_array($this->options['iso_codes'])) {
$iso_codes = $this->options['iso_codes'];
} else {
$iso_codes = null;
}
дальше чуть ниже смотрим на такой мутный код
$html = '<select '.$attrs.' name="'.$this->getHTMLName($params).'"><option value=""></option>';
foreach ($this->model->allWithFav() as $v) {
if (!$iso_codes || isset($iso_codes[$v['iso3letter']]) || $v['iso3letter'] === '') {
if ($v['name'] === '') {
$html .= '<option disabled> </option>';
} else {
if (!$selected && $v['iso3letter'] == $value) {
$at = ' selected';
$selected = true;
} else {
$at = '';
}
$html .= '<option value="'.htmlspecialchars($v['iso3letter']).'"'.$at.'>'.htmlspecialchars($v['name']).'</option>';
}
}
заменяем его на
$translite=false;
if ($iso_codes) { $all_country = $this->model->getByField('iso3letter',$iso_codes,true);$translite=true;$current_locale = wa()->getLocale();} else $all_country =$this->model->allWithFav();
$html = '<select '.$attrs.' name="'.$this->getHTMLName($params).'">';
foreach ($all_country as $v) {
if (($v['name'] !== '')&&($v['iso3letter'] !== '')) {
if (!$selected &&(($v['iso3letter'] == $value)||$v['fav_sort'])) {
$at = ' selected';
$selected = true;
} else {
$at = '';
}
if ($translite) $v['name'] = waLocale::translate('webasyst',$current_locale, $v['name']);
$html .= '<option value="'.htmlspecialchars($v['iso3letter']).'"'.$at.'>'.$v['name'].'</option>';
}
}
в ответ на Ненужные страны и региона.Непонятный баг
Я думаю планируется добавить в поселение настройку Страна по умолчанию
в ответ на Ненужные страны и региона.Непонятный баг
в ответ на Ненужные страны и региона.Непонятный баг
определять текущую активную витрину,
преобразовывать её к нормальному виду
и уже только тогда отдавать ссылку.
зачем заставлять дублировать уже сделанную работу???? принцип экономии памяти и оптимизации работы скриптов отменили?
в ответ на Как добавить страницу плагина в sitemap
это код подключения в shopSitemapConfig.class.php
$main_url = $this->getUrl('');
// pages
$sql = "SELECT full_url, url, create_datetime, update_datetime FROM ".$page_model->getTableName().'
WHERE status = 1 AND domain = s:domain AND route = s:route';
$pages = $page_model->query($sql, array('domain' => $domain, 'route' => $route['url']))->fetchAll();
foreach ($pages as $p) {
$this->addUrl($main_url.$p['full_url'], $p['update_datetime'] ? $p['update_datetime'] : $p['create_datetime'], self::CHANGE_MONTHLY, 0.6);
}
/**
* @event sitemap
* @param array $route
* @return array $urls
*/
$plugin_urls = wa()->event(array($this->app_id, 'sitemap'), $route);
if ($plugin_urls) {
foreach ($plugin_urls as $urls) {
foreach ($urls as $url) {
$this->addUrl($url['loc'], ifset($url['lastmod'], time()), ifset($url['changefreq']), ifset($url['priority']));
}
}
}
тут получается что при подключении данного хука ,в каждом плагине где он используется по сути надо дублировать этот класс
можно же сделать проще
/**
* @event sitemap
* @param array $route
* @return array $urls
*/
$route['main_url'] = $main_url; //текущая витрина
$plugin_urls = wa()->event(array($this->app_id, 'sitemap'), $route);
if ($plugin_urls) {
foreach ($plugin_urls as $urls) {
foreach ($urls as $url) {
if ($url['loc']) $this->addUrl($main_url.$url['loc'], ifset($url['lastmod'], time()), ifset($url['changefreq']), ifset($url['priority']));
}
}
}
в ответ на Как добавить страницу плагина в sitemap
в ответ на Как добавить страницу плагина в sitemap
это как-то очень непонятно
в ответ на Как добавить страницу плагина в sitemap
Массив данных для формирования элементов Sitemap-файла. Каждый элемент массива должен содержать ассоциативный подмассив с обязательным ключом loc и необязательными ключами lastmod, changefreq и priority.
Дайте пример функции для работы с данным хуком : входные параметры и результат описаны крайне обширно и неоднозначно
в ответ на Как добавить страницу плагина в sitemap
в ответ на {$wa->user(email)} отдает странное значение
get() и user() это один и тот же метод?
в ответ на {$wa->user(email)} отдает странное значение
если вызвать так ,то получается чистый email. Было установлено опытным путем.
почему так работает непонятно.
в ответ на {$wa->user(email)} отдает странное значение
в ответ на Каким образом подключить плагин в раздел импорт-экспорт?
строчка 226
было
public static function getUrl($image, $size = null, $absolute = false)
{
$path = shopProduct::getFolder($image['product_id'])."/{$image['product_id']}/images/{$image['id']}/{$image['id']}.{$size}.{$image['ext']}";
if (waSystemConfig::systemOption('mod_rewrite')) {
return wa()->getDataUrl($path, true, 'shop', $absolute);
} else {
if (file_exists(wa()->getDataPath($path, true, 'shop'))) {
return wa()->getDataUrl($path, true, 'shop', $absolute);
} else {
$path = str_replace('products/', 'products/thumb.php/', $path);
return wa()->getDataUrl($path, true, 'shop', $absolute);
}
}
}
стало
public static function getUrl($image, $size = null, $absolute = false)
{
$path = shopProduct::getFolder($image['product_id'])."/{$image['product_id']}/images/{$image['id']}/{$image['id']}.{$size}.{$image['ext']}";
if (waSystemConfig::systemOption('mod_rewrite')) {
if (file_exists(wa()->getDataPath($path, true, 'shop'))) {
return wa()->getDataUrl($path, true, 'shop', $absolute);
} else {
$path = str_replace('products/', 'products/thumb.php/', $path);
return wa()->getDataUrl($path, true, 'shop', $absolute);
}
}
}
в ответ на Не создаются эскизы картинок товаров
в ответ на Зависает импорт в магазин