Merge branch 'develop' into fix-error-page
This commit is contained in:
commit
b7026a06ae
5 changed files with 77 additions and 30 deletions
|
|
@ -89,7 +89,9 @@ class Report(Document):
|
|||
]
|
||||
|
||||
custom_roles = get_custom_allowed_roles("report", self.name)
|
||||
allowed.extend(custom_roles)
|
||||
|
||||
if custom_roles:
|
||||
allowed = custom_roles
|
||||
|
||||
if not allowed:
|
||||
return True
|
||||
|
|
|
|||
|
|
@ -186,6 +186,38 @@ class TestReport(FrappeTestCase):
|
|||
self.assertNotEqual(report.is_permitted(), True)
|
||||
frappe.set_user("Administrator")
|
||||
|
||||
def test_report_custom_permissions(self):
|
||||
frappe.set_user("test@example.com")
|
||||
frappe.db.delete("Custom Role", {"report": "Test Custom Role Report"})
|
||||
frappe.db.commit() # nosemgrep
|
||||
if not frappe.db.exists("Report", "Test Custom Role Report"):
|
||||
report = frappe.get_doc(
|
||||
{
|
||||
"doctype": "Report",
|
||||
"ref_doctype": "User",
|
||||
"report_name": "Test Custom Role Report",
|
||||
"report_type": "Query Report",
|
||||
"is_standard": "No",
|
||||
"roles": [{"role": "_Test Role"}, {"role": "System Manager"}],
|
||||
}
|
||||
).insert(ignore_permissions=True)
|
||||
else:
|
||||
report = frappe.get_doc("Report", "Test Custom Role Report")
|
||||
|
||||
self.assertEqual(report.is_permitted(), True)
|
||||
|
||||
frappe.get_doc(
|
||||
{
|
||||
"doctype": "Custom Role",
|
||||
"report": "Test Custom Role Report",
|
||||
"roles": [{"role": "_Test Role 2"}],
|
||||
"ref_doctype": "User",
|
||||
}
|
||||
).insert(ignore_permissions=True)
|
||||
|
||||
self.assertNotEqual(report.is_permitted(), True)
|
||||
frappe.set_user("Administrator")
|
||||
|
||||
# test for the `_format` method if report data doesn't have sort_by parameter
|
||||
def test_format_method(self):
|
||||
if frappe.db.exists("Report", "User Activity Report Without Sort"):
|
||||
|
|
|
|||
|
|
@ -424,6 +424,9 @@ class User(Document):
|
|||
|
||||
frappe.cache().delete_key("enabled_users")
|
||||
|
||||
# delete user permissions
|
||||
frappe.db.delete("User Permission", {"user": self.name})
|
||||
|
||||
def before_rename(self, old_name, new_name, merge=False):
|
||||
frappe.clear_cache(user=old_name)
|
||||
self.validate_rename(old_name, new_name)
|
||||
|
|
|
|||
|
|
@ -840,7 +840,7 @@ Default Sending and Inbox,По умолчанию отправка и получ
|
|||
Default Sort Field,Поле сортировки по умолчанию,
|
||||
Default Sort Order,Порядок сортировки по умолчанию,
|
||||
Default Value,Значение по умолчанию,
|
||||
"Default: ""Contact Us""","По умолчанию: ""Обратная связь""",
|
||||
"Default: ""Contact Us""","По умолчанию: ""Contact Us""",
|
||||
DefaultValue,DefaultValue,
|
||||
Define workflows for forms.,Определите рабочие процессы для форм.,
|
||||
Defines actions on states and the next step and allowed roles.,"Определяет действия на статусах, следующий шаг и роли, обладающие правами перевода статусов.",
|
||||
|
|
@ -849,7 +849,7 @@ Delayed,Задерживается,
|
|||
Delete Data,Удалить данные,
|
||||
Delete comment?,Удалить комментарий?,
|
||||
Delete this record to allow sending to this email address,"Удалить эту запись, чтобы разрешить отправку на этот адрес электронной почты",
|
||||
Delete {0} items permanently?,Удалить {0} продуктов навсегда?,
|
||||
Delete {0} items permanently?,Удалить {0} объектов навсегда?,
|
||||
Deleted,Удаленный,
|
||||
Deleted DocType,Удаленный DocType,
|
||||
Deleted Document,Удаленный документ,
|
||||
|
|
@ -914,7 +914,7 @@ Document can't saved.,Документ не может быть сохранен
|
|||
Document {0} has been set to state {1} by {2},Документ {0} установлен в состояние {1} на {2},
|
||||
Documents,Документы,
|
||||
Documents assigned to you and by you.,"Документы, назначенные вам и вами.",
|
||||
Domain Settings,Настройки домена,
|
||||
Domain Settings,Настройка сфер деятельности,
|
||||
Domains HTML,Домены HTML,
|
||||
"Don't HTML Encode HTML tags like <script> or just characters like < or >, as they could be intentionally used in this field","Не HTML Кодировать HTML-теги, такие как <скрипт> или просто символы, такие как <или>, так как они могут быть преднамеренно использованы в этой области",
|
||||
Don't Override Status,Не переопределять статус,
|
||||
|
|
@ -990,7 +990,7 @@ Enable Auto Reply,Включить автоматический ответ,
|
|||
Enable Automatic Backup,Включить автоматическое резервное копирование,
|
||||
Enable Chat,Включить чат,
|
||||
Enable Comments,Включить комментарии,
|
||||
Enable Incoming,Включение входящей,
|
||||
Enable Incoming,Включить входящие,
|
||||
Enable Outgoing,Включить исходящие,
|
||||
Enable Password Policy,Включить политику паролей,
|
||||
Enable Print Server,Включить сервер печати,
|
||||
|
|
@ -1000,7 +1000,7 @@ Enable Scheduled Jobs,Включить запланированных задан
|
|||
Enable Social Login,Включить социальный вход,
|
||||
Enable Two Factor Auth,Включить двухфакторный аут,
|
||||
Enabled email inbox for user {0},Включен почтовый ящик для пользователя {0},
|
||||
"Encryption key is invalid, Please check site_config.json","Ключ шифрования недействителен, проверьте сайт_config.json",
|
||||
"Encryption key is invalid, Please check site_config.json","Ключ шифрования недействителен, проверьте site_config.json",
|
||||
End Date Field,Поле конечной даты,
|
||||
End Date cannot be before Start Date!,Дата окончания не может быть до даты начала!,
|
||||
Endpoint URL,URL конечной точки,
|
||||
|
|
@ -1029,8 +1029,8 @@ Error in Notification: {},Ошибка в уведомлении: {},
|
|||
Error while connecting to email account {0},Ошибка при подключении к учетной записи электронной почты {0},
|
||||
Error while evaluating Notification {0}. Please fix your template.,Ошибка при оценке уведомления {0}. Исправьте шаблон.,
|
||||
Error: Document has been modified after you have opened it,"Ошибка: документ был изменен после того, как вы открыли его",
|
||||
Error: Value missing for {0}: {1},Ошибка: значение отсутствует для {0}: {1},
|
||||
Errors in Background Events,Ошибки в фоновых событий,
|
||||
Error: Value missing for {0}: {1},Ошибка: отсутствует значение для {0}: {1},
|
||||
Errors in Background Events,Ошибки в фоновых событиях,
|
||||
Event Category,Категория события,
|
||||
Event Participants,Участники мероприятия,
|
||||
Event Type,Тип события,
|
||||
|
|
@ -1184,7 +1184,7 @@ Get Contacts,Получить контакты,
|
|||
Get Fields,Получить поля,
|
||||
Get your globally recognized avatar from Gravatar.com,Получить всемирно признанный аватара из Gravatar.com,
|
||||
GitHub,GitHub,
|
||||
Give Review Points,Дайте очки обзора,
|
||||
Give Review Points,Дайте баллы обзора,
|
||||
Global Unsubscribe,Глобальная отписка,
|
||||
Go to the document,Перейти к документу,
|
||||
Go to this URL after completing the form (only for Guest users),Перейдите по этому URL-адресу после заполнения формы (только для гостевых пользователей),
|
||||
|
|
@ -1461,8 +1461,8 @@ Letter Head Name,Название заголовка письма,
|
|||
Letter Head in HTML,Заголовок письма в HTML,
|
||||
Level Name,Название уровня,
|
||||
Liked,Понравилось,
|
||||
Liked By,В избранное К,
|
||||
Liked by {0},В избранное {0},
|
||||
Liked By,Нравится,
|
||||
Liked by {0},Нравится {0},
|
||||
Likes,Понравившееся,
|
||||
Limit Number of DB Backups,Ограничение количества резервных копий БД,
|
||||
Line,Линия,
|
||||
|
|
@ -1470,7 +1470,7 @@ Link DocType,Ссылка DocType,
|
|||
Link Expired,Срок действия ссылки,
|
||||
Link Name,Имя ссылки,
|
||||
Link Title,Название ссылки,
|
||||
"Link that is the website home page. Standard Links (index, login, products, blog, about, contact)","Ссылка, которая является стартовой страницей сайта. Стандартные ссылки (индекс, логин, продукты, блог, о, контакт)",
|
||||
"Link that is the website home page. Standard Links (index, login, products, blog, about, contact)","Ссылка, которая является стартовой страницей сайта. Стандартные ссылки (index, login, products, blog, about, contact)",
|
||||
Link to the page you want to open. Leave blank if you want to make it a group parent.,"Ссылка на страницу, которую вы хотите открыть. Оставьте пустым, если хотите сделать его родительским элементом группы.",
|
||||
Linked,Связанный,
|
||||
Linked With,Связанные с,
|
||||
|
|
@ -2096,7 +2096,7 @@ Revert Of,Вернуть из,
|
|||
Reverted,Отменено,
|
||||
Review Level,Уровень обзора,
|
||||
Review Levels,Уровни обзора,
|
||||
Review Points,Очки обзора,
|
||||
Review Points,Баллы обзора,
|
||||
Reviews,Отзывы,
|
||||
Revoke,Аннулировать,
|
||||
Revoked,Аннулировано,
|
||||
|
|
@ -2141,10 +2141,10 @@ SMS sent to following numbers: {0},SMS отправлено следующим
|
|||
SMTP Server,SMTP-сервер,
|
||||
SMTP Settings for outgoing emails,Настройки SMTP для исходящих писем,
|
||||
"SQL Conditions. Example: status=""Open""",SQL условия. Пример: статус = "Открыть",
|
||||
SSL/TLS Mode,Режим SSL / TLS,
|
||||
SSL/TLS Mode,Режим SSL/TLS,
|
||||
Salesforce,Salesforce,
|
||||
Same Field is entered more than once,Одно и то же поле вводится не один раз,
|
||||
Save API Secret: ,Сохранить API-интерфейс:,
|
||||
Save API Secret: ,Сохранить API секрет: ,
|
||||
Save As,Сохранить как,
|
||||
Save Filter,Сохранить фильтр,
|
||||
Save Report,Сохранить отчет,
|
||||
|
|
@ -2258,7 +2258,7 @@ Set Property After Alert,Задать свойство после оповеще
|
|||
Set Quantity,Установите Количество,
|
||||
Set Role For,Установить роль для,
|
||||
Set User Permissions,Задание разрешений пользователя,
|
||||
Set Value,Задать значение,
|
||||
Set Value,Установить значение,
|
||||
Set custom roles for page and report,Набор пользовательских ролей для страницы и отчета,
|
||||
"Set default format, page size, print style etc.","Установить форму, размер страницы, стиль печати и т.д., используюмых по умолчанию",
|
||||
Set non-standard precision for a Float or Currency field,Установите нестандартные точность для поплавка или валютной области,
|
||||
|
|
@ -2337,7 +2337,7 @@ Slideshow like display for the website,"Слайд-шоу, как дисплей
|
|||
Small Text,Маленьикий текст,
|
||||
Smallest Currency Fraction Value,Минимальное дробное значение,
|
||||
Smallest circulating fraction unit (coin). For e.g. 1 cent for USD and it should be entered as 0.01,"Минимальная разменная денежная единица (монета). Например, для доллара — 1 цент, и его нужно ввести как 0,01",
|
||||
Snapshot View,Снимок Посмотреть,
|
||||
Snapshot View,Просмотр снимка,
|
||||
Social,Сообщество,
|
||||
Social Login Key,Ключ социального входа,
|
||||
Social Login Provider,Социальный провайдер,
|
||||
|
|
@ -2418,7 +2418,7 @@ Suspend Sending,Приостановить Отправка,
|
|||
Switch To Desk,Переключение на рабочий стол,
|
||||
Symbol,Символ,
|
||||
Sync,Синхронизация,
|
||||
Sync on Migrate,Синхронизация по Migrate,
|
||||
Sync on Migrate,Синхронизировать при переносе,
|
||||
Syntax error in template,Синтаксическая ошибка в шаблоне,
|
||||
System,Система,
|
||||
System Page,Страница системы,
|
||||
|
|
@ -2450,7 +2450,7 @@ Thank you for your interest in subscribing to our updates,Спасибо за в
|
|||
Thank you for your message,Спасибо за ваше сообщение,
|
||||
The CSV format is case sensitive,Формат CSV чувствителен к регистру,
|
||||
The Condition '{0}' is invalid,Условие '{0}' является недействительным,
|
||||
The First User: You,Первый пользователя: Вы,
|
||||
The First User: You,Первый пользователь: Вы,
|
||||
"The application has been updated to a new version, please refresh this page","Приложение был обновлен до новой версии, пожалуйста, обновите эту страницу",
|
||||
The attachments could not be correctly linked to the new document,Вложения не могут быть правильно связаны с новым документом,
|
||||
The document could not be correctly assigned,Документ не может быть правильно назначен,
|
||||
|
|
@ -2653,7 +2653,7 @@ User Field,Поле пользователя,
|
|||
User ID of a Blogger,ID пользователя-блоггера,
|
||||
User Image,Изображение пользователя,
|
||||
User Name,Имя пользователя,
|
||||
User Permission,Пользователь Введено,
|
||||
User Permission,Разрешения пользователя,
|
||||
User Permissions,Разрешения пользователей,
|
||||
User Permissions are used to limit users to specific records.,Пользовательские разрешения используются для ограничения пользователей конкретными записями.,
|
||||
User Permissions created sucessfully,Пользовательские разрешения созданы успешно,
|
||||
|
|
@ -3068,8 +3068,8 @@ zoom-out,отдалить,
|
|||
{0} or {1},{0} или {1},
|
||||
{0} record deleted,{0} запись удалена,
|
||||
{0} records deleted,{0} записей удалено,
|
||||
{0} reverted your point on {1},{0} вернул вашу точку на {1},
|
||||
{0} reverted your points on {1},{0} вернул ваши очки на {1},
|
||||
{0} reverted your point on {1},{0} вернул ваш балл на {1},
|
||||
{0} reverted your points on {1},{0} вернул ваши баллы на {1},
|
||||
{0} reverted {1},{0} вернул {1},
|
||||
{0} room must have atmost one user.,{0} номер должен иметь самого одного пользователя.,
|
||||
{0} rows for {1},{0} строк для {1},
|
||||
|
|
@ -3148,7 +3148,7 @@ Access not allowed from this IP Address,Доступ с этого IP-адрес
|
|||
Action Type,Тип действия,
|
||||
Activity Log by ,Активность Журнал по,
|
||||
Add Fields,Добавить поля,
|
||||
Administration,Администрация,
|
||||
Administration,Администрирование,
|
||||
After Cancel,После отмены,
|
||||
After Delete,После удаления,
|
||||
After Save,После сохранения,
|
||||
|
|
@ -3157,7 +3157,7 @@ After Submit,После отправки,
|
|||
Aggregate Function Based On,"Агрегатная функция, основанная на",
|
||||
Aggregate Function field is required to create a dashboard chart,Поле Aggregate Function необходимо для создания диаграммы панели мониторинга.,
|
||||
All Records,Все записи,
|
||||
Allot Points To Assigned Users,Выделить очки назначенным пользователям,
|
||||
Allot Points To Assigned Users,Выделить баллы назначенным пользователям,
|
||||
Allow Auto Repeat,Разрешить автоматическое повторение,
|
||||
Allow Google Calendar Access,Разрешить доступ к Календарю Google,
|
||||
Allow Google Contacts Access,Разрешить доступ к контактам Google,
|
||||
|
|
@ -3380,7 +3380,7 @@ Invalid field name: {0},Неверное имя поля: {0},
|
|||
Invalid file URL. Please contact System Administrator.,"Неверный URL файла. Пожалуйста, свяжитесь с системным администратором.",
|
||||
Invalid include path,Неверный путь включения,
|
||||
Invalid username or password,неправильное имя пользователя или пароль,
|
||||
Is Primary,Первичный,
|
||||
Is Primary,Основной,
|
||||
Is Primary Mobile,Основной мобильный,
|
||||
Is Primary Phone,Основной телефон,
|
||||
Is Tree,Дерево,
|
||||
|
|
@ -3667,7 +3667,7 @@ via Data Import,через импорт данных,
|
|||
{0} are mandatory fields,{0} обязательные поля,
|
||||
{0} are required,{0} требуется,
|
||||
{0} assigned a new task {1} {2} to you,{0} назначил вам новое задание {1} {2},
|
||||
{0} gained {1} point for {2} {3},{0} набрал {1} очко за {2} {3},
|
||||
{0} gained {1} point for {2} {3},{0} получил {1} балл за {2} {3},
|
||||
{0} gained {1} points for {2} {3},{0} набрал {1} баллов за {2} {3},
|
||||
{0} has no versions tracked.,{0} не отслеживает версии.,
|
||||
{0} is not a valid report format. Report format should one of the following {1},{0} не является допустимым форматом отчета. Формат отчета должен быть одним из следующих {1},
|
||||
|
|
@ -4045,7 +4045,7 @@ No Permitted Charts on this Dashboard,На этой панели инструм
|
|||
No Permitted Charts,Нет разрешенных графиков,
|
||||
Reset Chart,Сбросить график,
|
||||
via {0},через {0},
|
||||
{0} is not a valid Phone Number,{0} не является действительным номером телефона,
|
||||
{0} is not a valid Phone Number,{0} недействительный номер телефона,
|
||||
Failed Transactions,Неудачные транзакции,
|
||||
Value for field {0} is too long in {1}. Length should be lesser than {2} characters,Значение поля {0} слишком длинное в {1}. Длина должна быть меньше {2} симв.,
|
||||
Data Too Long,Данные слишком длинные,
|
||||
|
|
@ -4121,8 +4121,8 @@ Using this console may allow attackers to impersonate you and steal your informa
|
|||
{0} w,{0} н,
|
||||
{0} M,{0} М,
|
||||
{0} y,{0} г,
|
||||
yesterday,вчерашний день,
|
||||
{0} years ago,{0} лет назад,
|
||||
yesterday,вчера,
|
||||
{0} years ago,{0} год назад,
|
||||
New Chart,Новый график,
|
||||
New Shortcut,Новый ярлык,
|
||||
Edit Chart,Изменить диаграмму,
|
||||
|
|
@ -4700,3 +4700,11 @@ Value cannot be negative for {0}: {1},Значение не может быть
|
|||
Negative Value,Отрицательное значение,
|
||||
Authentication failed while receiving emails from Email Account: {0}.,Ошибка аутентификации при получении писем из учетной записи электронной почты: {0}.,
|
||||
Message from server: {0},Сообщение с сервера: {0},
|
||||
Documentation,Документация,
|
||||
User Forum,Форум пользователей,
|
||||
Report an issue,Сообщить об ошибке,
|
||||
My Profile,Мой профиль,
|
||||
My Settings,Мои настройки,
|
||||
Toggle Full Width,Переключить ширину,
|
||||
Toggle Theme,Переключить тему,
|
||||
Modules,Модули,
|
||||
|
|
|
|||
|
Can't render this file because it contains an unexpected character in line 1588 and column 67.
|
|
|
@ -277,7 +277,9 @@ def get_email_subject_for_qr_code(kwargs_dict):
|
|||
|
||||
def get_email_body_for_qr_code(kwargs_dict):
|
||||
"""Get QRCode email body."""
|
||||
body_template = "Please click on the following link and follow the instructions on the page.<br><br> {{qrcode_link}}"
|
||||
body_template = _(
|
||||
"Please click on the following link and follow the instructions on the page. {0}"
|
||||
).format("<br><br> {{qrcode_link}}")
|
||||
body = frappe.render_template(body_template, kwargs_dict)
|
||||
return body
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue