Merge branch 'develop' into fix-error-page

This commit is contained in:
Suraj Shetty 2022-06-01 15:41:11 +05:30 committed by GitHub
commit b7026a06ae
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 77 additions and 30 deletions

View file

@ -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

View file

@ -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"):

View file

@ -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)

View file

@ -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.

View file

@ -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