Ошибка при предупреждении пользователя

Автор Gnostis, 11 июля 2009, 12:18:15

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Gnostis

При заходе на страницу предупреждения пользователя в логах возникает ошибка
Цитироватьsprintf() [<a href='function.sprintf'>function.sprintf</a>]: Too few arguments
Файл: /***/Sources/Profile-Actions.php
Строка: 338

Ошибка возникает в этом месте:
'body' => sprintf($txt['profile_warning_notify_template_outline' . (!empty($context['warning_for_message']) ? '_post' : '')], $txt['profile_warning_notify_for_' . $type]),

Я понимаю что чего то не хватает, но не могу понять чего именно и где.

Drakonsa

Не не хватает, а как раз наоборот. перебор.

Gnostis

Цитата: Drakonsa от 11 июля 2009, 17:45:24
Не не хватает, а как раз наоборот. перебор.
Тогда что лишнее?

Kerlen


Gnostis

Судя по оф сайту, проблема идет из Themes/yourtheme/languages/Profile.russian.php

В частности эти строки:
$txt['profile_warning_notify_template_outline'] = '{MEMBER},' . "\n\n" . 'You have received a warning for %1$s. Please cease these activities and abide by the forum rules otherwise we will take further action.' . "\n\n" . '{REGARDS}';
$txt['profile_warning_notify_template_outline_post'] = '{MEMBER},' . "\n\n" . 'You have received a warning for %1$s in regards to the message:' . "\n" . '{MESSAGE}.' . "\n\n" . 'Please cease these activities and abide by the forum rules otherwise we will take further action.' . "\n\n" . '{REGARDS}';
$txt['profile_warning_notify_for_spamming'] = 'spamming';
$txt['profile_warning_notify_title_spamming'] = 'Spamming';
$txt['profile_warning_notify_for_offence'] = 'posting offensive material';
$txt['profile_warning_notify_title_offence'] = 'Posting Offensive Material';
$txt['profile_warning_notify_for_insulting'] = 'insulting other users and/or staff members';
$txt['profile_warning_notify_title_insulting'] = 'Insulting Users/Staff';


Вот их русский вариант
$txt['profile_warning_notify_template_outline'] = '%1$s,' . "\n\n" . 'Вы получили предупреждение за %2$s. Пожалуйста соблюдайте правила форума иначе мы предпримем другие меры.' . "\n\n" . $txt['regards_team'];
$txt['profile_warning_notify_template_outline_post'] = '%1$s,' . "\n\n" . 'You have received a warning for %2$s in regards to your message posted [url=' . $scripturl . '?msg=%3$s]here[/url]. Please cease these activities and abide by the forum rules otherwise we will take further action.' . "\n\n" . $txt['regards_team'];
$txt['profile_warning_notify_for_spamming'] = 'спам';
$txt['profile_warning_notify_title_spamming'] = 'СПАМ';
$txt['profile_warning_notify_for_offence'] = 'публикация оскорбительного материала';
$txt['profile_warning_notify_title_offence'] = 'Публикация оскорбительного материала';
$txt['profile_warning_notify_for_insulting'] = 'Оскорбление других пользователей и/или сотрудников';
$txt['profile_warning_notify_title_insulting'] = 'Оскорбление пользователей/сотрудников';


Пошел курить мануалы...

Gnostis

Заменил русские шаблоны английскими. Ошибка пропала. Думаю все таки ошибка закралась в переводе. Имхо.

Mavn

SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

digger®

Цитата: Gnostis от 26 августа 2009, 07:40:43
Судя по оф сайту, проблема идет из Themes/yourtheme/languages/Profile.russian.php

В частности эти строки:
$txt['profile_warning_notify_template_outline'] = '{MEMBER},' . "\n\n" . 'You have received a warning for %1$s. Please cease these activities and abide by the __forum rules otherwise we will take further action.' . "\n\n" . '{REGARDS}';
$txt['profile_warning_notify_template_outline_post'] = '{MEMBER},' . "\n\n" . 'You have received a warning for %1$s in regards to the message:' . "\n" . '{MESSAGE}.' . "\n\n" . 'Please cease these activities and abide by the __forum rules otherwise we will take further action.' . "\n\n" . '{REGARDS}';
$txt['profile_warning_notify_for_spamming'] = 'spamming';
$txt['profile_warning_notify_title_spamming'] = 'Spamming';
$txt['profile_warning_notify_for_offence'] = 'posting offensive material';
$txt['profile_warning_notify_title_offence'] = 'Posting Offensive Material';
$txt['profile_warning_notify_for_insulting'] = 'insulting other users and/or staff members';
$txt['profile_warning_notify_title_insulting'] = 'Insulting Users/Staff';


Вот их русский вариант
$txt['profile_warning_notify_template_outline'] = '%1$s,' . "\n\n" . 'Вы получили предупреждение за %2$s. Пожалуйста соблюдайте правила форума иначе мы предпримем другие меры.' . "\n\n" . $txt['regards_team'];
$txt['profile_warning_notify_template_outline_post'] = '%1$s,' . "\n\n" . 'You have received a warning for %2$s in regards to your message posted [url=' . $scripturl . '?msg=%3$s]here[/url]. Please cease these activities and abide by the __forum rules otherwise we will take further action.' . "\n\n" . $txt['regards_team'];
$txt['profile_warning_notify_for_spamming'] = 'спам';
$txt['profile_warning_notify_title_spamming'] = 'СПАМ';
$txt['profile_warning_notify_for_offence'] = 'публикация оскорбительного материала';
$txt['profile_warning_notify_title_offence'] = 'Публикация оскорбительного материала';
$txt['profile_warning_notify_for_insulting'] = 'Оскорбление других пользователей и/или сотрудников';
$txt['profile_warning_notify_title_insulting'] = 'Оскорбление пользователей/сотрудников';


Пошел курить мануалы...

Исправил перевод, перевел вторую строку.
Нужно посмотреть нет ли нескладушек с окончаниями в указании причины.

Gnostis

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

Mavn

через сутки автоматически будет доступен на оффе
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

digger®

Цитата: Gnostis от 27 августа 2009, 07:13:34
Опубликуйте переведенный вариант, что бы руками уже заменить и проверить...

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

Gnostis

В последний раз после обновления все файлов полетели русские моды, правда мод был всего 1, по этому обошлось малой кровью.
В 2-ке это же стандартная функция... Загрузил язык и заменил изменившиеся файлы...


Gnostis