Перейти к содержанию
Форум поддержки пользователей VamShop

Модуль доставки "Наложенным платежом"


Рекомендуемые сообщения

Только ставьте его вручную, т.е. распакуйте и читайте readme.txt

Код кнопок в VamShop уже чуть поменялся, но, по идее, проблем особых с установокй не будет, просто ищите код в /admin/orders.php похожий.

Ссылка на сообщение
Поделиться на другие сайты

Хочется привести написание в соотв-и с требованиями почты россии, а не как сейчас непонятно как

требования:

http://www.russianpo...lug/rule_adress

Реквизиты адреса на почтовых отправлениях и бланках почтовых переводов денежных средств пишутся в следующем порядке:

а) для юридического лица - полное или краткое наименование, для гражданина - фамилия, имя, отчество;

б) банковские реквизиты (для почтовых переводов, направляемых юридическому лицу или принимаемых от юридического лица);

в) название улицы, номер дома, номер квартиры;

г) название населенного пункта (города, поселка и т.п.);

д) название района;

е) название республики, края, области, автономного округа (области);

ж) название страны (для международных почтовых отправлений);

з) почтовый индекс.

как есть:

20120909035935.jpg

как нужно:

20120909040243.jpg

в связи с чем вопрос, зарылся, заковырялся в

fpdf.class.sticker.php

менял местами это

function PrintAddrName ($lastname,$name,$surename) { // выводим имя адресата

$this->SetFont('Tahoma','',12);

$this->SetXY(86.1,75. B);

$name = rtrim ($tname);

/*вывод в 1-ую строку*/

$this->MultiCell(91,8.2,utf8_substr(' '.$lastname.' '.$name.' '.$surename,0,70),0,'L');

ничего ни хрена не помогло.

Вопрос - где это всё регулируется ?

и просьба не отвечать - типа "поковыряйтесь там, было давно не помню". ковырялся. не помогает.

Ссылка на сообщение
Поделиться на другие сайты

Я об этом и говорил, что сейчас бланки другие.

Если хотите сами правтиь, то Вам нужно почитать документацию до fpdf, там написано, как всё делается.

Смысл в том, что правильно задать координаты, что б надпись в нужном месте картинки наложилась.

Ссылка на сообщение
Поделиться на другие сайты

Бланки сейчас не другие, бланки теже (на почте на эти никто еще не жаловался), в модуле изначально неверная последовательность фио и адресса. Бланки потом доделаем.

Какой именно файл нужно править ?

Я 1500р за два года заплатил же не просто так.... так и сам могу разобраться....

Ссылка на сообщение
Поделиться на другие сайты

Смысл в том, что правильно задать координаты, что б надпись в нужном месте картинки наложилась.

дело не в координатах. как поменять последовательность значений ? вначале ФИО а не ИОФ - я дал скрины выше

я вас спрашиваю про правильную последовательность, а вы мне про координаты

Ссылка на сообщение
Поделиться на другие сайты

подскажите в каком месте менять переменные

это я понял что местами менять

+ я привёл то место где менял

вы можете у себя попробовать сами ?

Ссылка на сообщение
Поделиться на другие сайты

Так я не знаю, в каком месте.

Пробуйте, это ж легко находится, даже методом тыка.

Поменяли, посмотрели и т.д. пока не найдёте нужный код.

Ссылка на сообщение
Поделиться на другие сайты

пробовал не однократно

поэтому и пишу, я пишу не просто так, а потому что сделал много попыток

перемена мест тут - ничего не даёт

fpdf.class.sticker.php

function PrintAddrName ($lastname,$name,$surename) { // выводим имя адресата

$this->SetFont('Tahoma','',12);

$this->SetXY(86.1,75. B);

$name = rtrim ($tname);

/*вывод в 1-ую строку*/

$this->MultiCell(91,8.2,utf8_substr(' '.$lastname.' '.$name.' '.$surename,0,70),0,'L');

Ссылка на сообщение
Поделиться на другие сайты

Так а вообще если свой текст какой-то добавить, он выводится?!

Может у Вас кэш какой-то в браузере или ещё что.

Ссылка на сообщение
Поделиться на другие сайты

пробовал не однократно

поэтому и пишу, я пишу не просто так, а потому что сделал много попыток

перемена мест тут - ничего не даёт

fpdf.class.sticker.php

function PrintAddrName ($lastname,$name,$surename) { // выводим имя адресата

$this->SetFont('Tahoma','',12);

$this->SetXY(86.1,75. B);

$name = rtrim ($tname);

/*вывод в 1-ую строку*/

$this->MultiCell(91,8.2,utf8_substr(' '.$lastname.' '.$name.' '.$surename,0,70),0,'L');

Так а вообще если свой текст какой-то добавить, он выводится?!

Может у Вас кэш какой-то в браузере или ещё что.

Поясню в чём дело: В классе Стикера(как собственно и в классе Бланка) вызывается функция PrintAddrName со следующими параметрами: ('','',$vals_array['addr_name']). Отсюда видно, что первые два аргумента по сути "пусты". А в третьем хранится ИОФ. И от перестановки их ничего не изменится в результате. Есть несколько решений:

1. Не очень верный. С помощью операций со строками, разбить нашу строку с ИОФ на подстроки, каждая подстрока будет представлять себя уже отдельно либо Имя, либо Фамилию, либо Отчество - и тогда уже переставлять их в функции как нам угодно. Минусы в том, что если пользователь в Фамилии нажмёт пробел и получится двойня какая нить фамилия, то будет непонять что.

2. Осуществить где-нибудь в коде запрос к БД, по id заказа. И тогда уже получить следующие поля customers_firstname,customers_secondname,customers_lastname. Это вариант более хорош.

3. Самый лучший по-моему мнению способ. Это изменить "создание" $vals_array['addr_name']. При создании заказа в БД в customers_name помещается по умолчанию ИОФ. В какой момент и какой файл за это отвечает я пока не нашёл. Уже, если честно извелся с поисками. В общем нужно найти код, где впервые это значение инициализируется. Там поправить последовательность. И тогда уже на всём сайте (в адресной книге и в других местах) вывод будет в нужном нам порядке.

Дорогие форумчане и поддержка, было бы здорово, если бы кто-нибудь помог разобраться с 3 вариантом.

Ссылка на сообщение
Поделиться на другие сайты

пробовал не однократно

поэтому и пишу, я пишу не просто так, а потому что сделал много попыток

перемена мест тут - ничего не даёт

fpdf.class.sticker.php

function PrintAddrName ($lastname,$name,$surename) { // выводим имя адресата

$this->SetFont('Tahoma','',12);

$this->SetXY(86.1,75. B);

$name = rtrim ($tname);

/*вывод в 1-ую строку*/

$this->MultiCell(91,8.2,utf8_substr(' '.$lastname.' '.$name.' '.$surename,0,70),0,'L');

В общем такие дела. Вышеупомянутый второй способ был бы удобен, если вам нужно выводить отдельно фамилию, имя и отчество, либо делать всевозможные перестановки.

Сделал некоторые правки и вроде бы удался третий способ.

Делаем так(объясняю наглядно):

1.Заходим в вашу БД. Например с помощью phpMyAdmin.

2. Переходим на таблицу address_format. Редактируем первый(незнаю почему, но у меня формат адреса у всех клиентов первый). Редактируем address_format и ставим на первое место $lastname.

P.S. Первые два пункта для тех, кому не нравится Вывод вида ИОФ в адресной книге.

3. Далее правим уже файлы вамшопа:

admin/customers.php

checkout_process.php

Здесь ищем 'customers_name' => и опять же переносим last_name.

Примерно так было:

'customers_name' => $order->customer['firstname'].' '.$order->customer['secondname'].' '.$order->customer['lastname']

Так станет:

'customers_name' => $order->customer['lastname'].' '.$order->customer['firstname'].' '.$order->customer['secondname']

Ну вот и всё! Данные операции позволят поменять способ вывода ИОФ на ФИО практически во всём магазине.

Так же полезно поискать и изменить вывод delivery_name и billing_name.

Изменено пользователем Maximkin
Ссылка на сообщение
Поделиться на другие сайты

Так а вообще если свой текст какой-то добавить, он выводится?!

Может у Вас кэш какой-то в браузере или ещё что.

ес-но выводится всё что ввожу в поля

от ваших теоретических советов пока толку мало. вы лично можете поставить себе этот модуль и поковырять местоположение ФИО ?

ну или кто тут главный кодер

Ссылка на сообщение
Поделиться на другие сайты

Я лично с почтой не работаю и не работал, если у кого есть бланки готовые для подложки, вот как старые и правила заполнения, то, в принципе, можно попробовать и поправить модуль.

Ссылка на сообщение
Поделиться на другие сайты
×
×
  • Создать...