refactor: inline immediately returned variable

Inline a variable to a return in the case when the
variable being declared is immediately returned
This commit is contained in:
barredterra 2023-08-08 18:09:49 +02:00
parent eebbcd02b5
commit b553ed98d8
86 changed files with 262 additions and 378 deletions

View file

@ -242,7 +242,7 @@ class TestAutoRepeat(FrappeTestCase):
def make_auto_repeat(**args):
args = frappe._dict(args)
doc = frappe.get_doc(
return frappe.get_doc(
{
"doctype": "Auto Repeat",
"reference_doctype": args.reference_doctype or "ToDo",
@ -259,8 +259,6 @@ def make_auto_repeat(**args):
}
).insert(ignore_permissions=True)
return doc
def create_submittable_doctype(doctype, submit_perms=1):
if frappe.db.exists("DocType", doctype):

View file

@ -286,8 +286,7 @@ def check_node_executable():
def get_node_env():
node_env = {"NODE_OPTIONS": f"--max_old_space_size={get_safe_max_old_space_size()}"}
return node_env
return {"NODE_OPTIONS": f"--max_old_space_size={get_safe_max_old_space_size()}"}
def get_safe_max_old_space_size():

View file

@ -52,8 +52,7 @@ def pass_context(f):
def get_site(context, raise_err=True):
try:
site = context.sites[0]
return site
return context.sites[0]
except (IndexError, TypeError):
if raise_err:
raise frappe.SiteNotSpecifiedError

View file

@ -217,10 +217,17 @@ def invite_user(contact):
@frappe.whitelist()
def get_contact_details(contact):
contact = frappe.get_doc("Contact", contact)
out = {
return {
"contact_person": contact.get("name"),
"contact_display": " ".join(
filter(None, [contact.get("salutation"), contact.get("first_name"), contact.get("last_name")])
filter(
None,
[
contact.get("salutation"),
contact.get("first_name"),
contact.get("last_name"),
],
)
),
"contact_email": contact.get("email_id"),
"contact_mobile": contact.get("mobile_no"),
@ -228,7 +235,6 @@ def get_contact_details(contact):
"contact_designation": contact.get("designation"),
"contact_department": contact.get("department"),
}
return out
def update_contact(doc, method):

View file

@ -27,13 +27,12 @@ def get_custom_linked_doctype():
def get_custom_doc_for_address_and_contacts():
get_custom_linked_doctype()
linked_doc = frappe.get_doc(
return frappe.get_doc(
{
"doctype": "Test Custom Doctype",
"test_field": "Hello",
}
).insert()
return linked_doc
def create_linked_address(link_list):

View file

@ -51,8 +51,7 @@ class TestActivityLog(FrappeTestCase):
)
name = names[0]
auth_log = frappe.get_doc("Activity Log", name)
return auth_log
return frappe.get_doc("Activity Log", name)
def test_brute_security(self):
update_system_settings({"allow_consecutive_login_attempts": 3, "allow_login_after_fail": 5})

View file

@ -309,12 +309,14 @@ class Communication(Document, CommunicationEmailMixin):
return self._get_emails_list(self.bcc, exclude_displayname=exclude_displayname)
def get_attachments(self):
attachments = frappe.get_all(
return frappe.get_all(
"File",
fields=["name", "file_name", "file_url", "is_private"],
filters={"attached_to_name": self.name, "attached_to_doctype": self.DOCTYPE},
filters={
"attached_to_name": self.name,
"attached_to_doctype": self.DOCTYPE,
},
)
return attachments
def notify_change(self, action):
frappe.publish_realtime(

View file

@ -640,8 +640,7 @@ class Row:
return None
columns = self.header.get_columns(col_indexes)
doc = self._parse_doc(doctype, columns, values, parent_doc, table_df)
return doc
return self._parse_doc(doctype, columns, values, parent_doc, table_df)
def _parse_doc(self, doctype, columns, values, parent_doc=None, table_df=None):
doc = frappe._dict()

View file

@ -126,14 +126,17 @@ class DocField(Document):
if self.fieldtype == "Table MultiSelect":
table_doctype = self.options
link_doctype = frappe.db.get_value(
return frappe.db.get_value(
"DocField",
{"fieldtype": "Link", "parenttype": "DocType", "parent": table_doctype, "in_list_view": 1},
{
"fieldtype": "Link",
"parenttype": "DocType",
"parent": table_doctype,
"in_list_view": 1,
},
"options",
)
return link_doctype
def get_select_options(self):
if self.fieldtype == "Select":
options = self.options or ""

View file

@ -53,5 +53,4 @@ def get_app_logo():
def get_navbar_settings():
navbar_settings = frappe.get_single("Navbar Settings")
return navbar_settings
return frappe.get_single("Navbar Settings")

View file

@ -168,7 +168,7 @@ def process_filters_for_prepared_report(filters: dict[str, Any] | str) -> str:
@frappe.whitelist()
def get_reports_in_queued_state(report_name, filters):
reports = frappe.get_all(
return frappe.get_all(
"Prepared Report",
filters={
"report_name": report_name,
@ -177,7 +177,6 @@ def get_reports_in_queued_state(report_name, filters):
"owner": frappe.session.user,
},
)
return reports
def get_completed_prepared_report(filters, user, report_name):

View file

@ -1102,7 +1102,7 @@ def get_system_users(exclude_users=None, limit=None):
exclude_users += list(STANDARD_USERS)
system_users = frappe.db.sql_list(
return frappe.db.sql_list(
"""select name from `tabUser`
where enabled=1 and user_type != 'Website User'
and name not in ({}) {}""".format(
@ -1111,8 +1111,6 @@ def get_system_users(exclude_users=None, limit=None):
exclude_users,
)
return system_users
def get_active_users():
"""Returns No. of system users who logged in, in the last 3 days"""

View file

@ -144,13 +144,11 @@ def user_permission_exists(user, allow, for_value, applicable_for=None):
user_permissions = get_user_permissions(user).get(allow, [])
if not user_permissions:
return None
has_same_user_permission = find(
return find(
user_permissions,
lambda perm: perm["doc"] == for_value and perm.get("applicable_for") == applicable_for,
)
return has_same_user_permission
@frappe.whitelist()
@frappe.validate_and_sanitize_search_inputs

View file

@ -77,7 +77,7 @@ def calculate_chain(transaction_hash, previous_hash):
def get_columns(filters=None):
columns = [
return [
{
"label": _("Chain Integrity"),
"fieldname": "chain_integrity",
@ -90,9 +90,28 @@ def get_columns(filters=None):
"fieldtype": "Data",
"width": 150,
},
{"label": _("Reference Name"), "fieldname": "reference_name", "fieldtype": "Data", "width": 150},
{"label": _("Owner"), "fieldname": "owner", "fieldtype": "Data", "width": 100},
{"label": _("Modified By"), "fieldname": "modified_by", "fieldtype": "Data", "width": 100},
{"label": _("Timestamp"), "fieldname": "timestamp", "fieldtype": "Data", "width": 100},
{
"label": _("Reference Name"),
"fieldname": "reference_name",
"fieldtype": "Data",
"width": 150,
},
{
"label": _("Owner"),
"fieldname": "owner",
"fieldtype": "Data",
"width": 100,
},
{
"label": _("Modified By"),
"fieldname": "modified_by",
"fieldtype": "Data",
"width": 100,
},
{
"label": _("Timestamp"),
"fieldname": "timestamp",
"fieldtype": "Data",
"width": 100,
},
]
return columns

View file

@ -39,8 +39,7 @@ def get_doctype_name(table_name: str) -> str:
if table_name.startswith(("tab", "`tab", '"tab')):
table_name = table_name.replace("tab", "", 1)
table_name = table_name.replace("`", "")
table_name = table_name.replace('"', "")
return table_name
return table_name.replace('"', "")
class LazyString:

View file

@ -71,9 +71,7 @@ def get_user_default_as_list(key, user=None):
d = list(filter(None, (not isinstance(d, (list, tuple))) and [d] or d))
# filter default values if not found in user permission
values = [value for value in d if not not_in_user_permission(key, value)]
return values
return [value for value in d if not not_in_user_permission(key, value)]
def is_a_user_permission_key(key):

View file

@ -82,14 +82,10 @@ def get_permission_query_conditions(user):
allowed_modules = [
frappe.db.escape(module.get("module_name")) for module in get_modules_from_all_apps_for_user()
]
module_condition = (
"`tabDashboard`.`module` in ({allowed_modules}) or `tabDashboard`.`module` is NULL".format(
allowed_modules=",".join(allowed_modules)
)
return "`tabDashboard`.`module` in ({allowed_modules}) or `tabDashboard`.`module` is NULL".format(
allowed_modules=",".join(allowed_modules)
)
return module_condition
@frappe.whitelist()
def get_permitted_charts(dashboard_name):

View file

@ -264,11 +264,10 @@ def get_heatmap_chart_config(chart, filters, heatmap_year):
)
)
chart_config = {
return {
"labels": [],
"dataPoints": data,
}
return chart_config
def get_group_by_chart_config(chart, filters):
@ -292,12 +291,10 @@ def get_group_by_chart_config(chart, filters):
)
if data:
chart_config = {
return {
"labels": [item["name"] if item["name"] else "Not Specified" for item in data],
"datasets": [{"name": chart.name, "values": [item["count"] for item in data]}],
}
return chart_config
else:
return None

View file

@ -60,8 +60,7 @@ def get_permission_query_conditions(for_user):
def get_title(doctype, docname, title_field=None):
if not title_field:
title_field = frappe.get_meta(doctype).get_title_field()
title = docname if title_field == "name" else frappe.db.get_value(doctype, docname, title_field)
return title
return docname if title_field == "name" else frappe.db.get_value(doctype, docname, title_field)
def get_title_html(title):

View file

@ -201,8 +201,7 @@ def calculate_previous_result(doc, filters):
else:
previous_date = add_to_date(current_date, years=-1)
number = get_result(doc, filters, previous_date)
return number
return get_result(doc, filters, previous_date)
@frappe.whitelist()

View file

@ -321,7 +321,7 @@ def get_communication_data(
fields=fields, conditions=conditions
)
communications = frappe.db.sql(
return frappe.db.sql(
"""
SELECT *
FROM (({part1}) UNION ({part2})) AS combined
@ -332,12 +332,15 @@ def get_communication_data(
""".format(
part1=part1, part2=part2, group_by=(group_by or "")
),
dict(doctype=doctype, name=name, start=frappe.utils.cint(start), limit=limit),
dict(
doctype=doctype,
name=name,
start=frappe.utils.cint(start),
limit=limit,
),
as_dict=as_dict,
)
return communications
def get_assignments(dt, dn):
return frappe.get_all(

View file

@ -3,7 +3,7 @@ from frappe.utils import get_fullname
def get_leaderboards():
leaderboards = {
return {
"User": {
"fields": ["points"],
"method": "frappe.desk.leaderboard.get_energy_point_leaderboard",
@ -11,7 +11,6 @@ def get_leaderboards():
"icon": "users",
}
}
return leaderboards
@frappe.whitelist()

View file

@ -235,9 +235,7 @@ def get_filters_for(doctype):
"""get open filters for doctype"""
config = get_notification_config()
doctype_config = config.get("for_doctype").get(doctype, {})
filters = doctype_config if not isinstance(doctype_config, str) else None
return filters
return None if isinstance(doctype_config, str) else doctype_config
@frappe.whitelist()

View file

@ -315,10 +315,9 @@ class Leaderboard {
})
.join("");
const html = `<div class="list-headers">
<div class="list-item" data-list-renderer="List">${filters}</div>
</div>`;
return html;
return `<div class="list-headers">
<div class="list-item" data-list-renderer="List">${filters}</div>
</div>`;
}
render_list_result(items) {
@ -330,27 +329,24 @@ class Leaderboard {
})
.join("");
let html = `<div class="result-list">
<div class="list-items">
${_html}
</div>
</div>`;
return html;
return `<div class="result-list">
<div class="list-items">
${_html}
</div>
</div>`;
}
render_message() {
const display_class = this.message ? "" : "hide";
let html = `<div class="leaderboard-empty-state ${display_class}">
<div class="no-result text-center">
<img src="/assets/frappe/images/ui-states/search-empty-state.svg"
alt="Empty State"
class="null-state"
>
<div class="empty-state-text">${this.message}</div>
</div>
</div>`;
return html;
return `<div class="leaderboard-empty-state ${display_class}">
<div class="no-result text-center">
<img src="/assets/frappe/images/ui-states/search-empty-state.svg"
alt="Empty State"
class="null-state"
>
<div class="empty-state-text">${this.message}</div>
</div>
</div>`;
}
get_item_html(item, index) {
@ -367,19 +363,17 @@ class Leaderboard {
const name_html = item.formatted_name
? `<span class="text-muted ellipsis list-id">${item.formatted_name}</span>`
: `<a class="grey list-id ellipsis" href="${link}"> ${item.name} </a>`;
const html = `<div class="list-item">
<div class="list-item_content ellipsis list-item__content--flex-2 rank text-center">
<span class="text-muted ellipsis">${index}</span>
</div>
<div class="list-item_content ellipsis list-item__content--flex-2 name">
${name_html}
</div>
<div class="list-item_content ellipsis list-item__content--flex-2 value text-right">
<span class="text-muted ellipsis">${value}</span>
</div>
</div>`;
return html;
return `<div class="list-item">
<div class="list-item_content ellipsis list-item__content--flex-2 rank text-center">
<span class="text-muted ellipsis">${index}</span>
</div>
<div class="list-item_content ellipsis list-item__content--flex-2 name">
${name_html}
</div>
<div class="list-item_content ellipsis list-item__content--flex-2 value text-right">
<span class="text-muted ellipsis">${value}</span>
</div>
</div>`;
}
get_sidebar_item(item, icon) {

View file

@ -464,9 +464,7 @@ def get_data_for_custom_field(doctype, field):
if not frappe.has_permission(doctype, "read"):
frappe.throw(_("Not Permitted to read {0}").format(doctype), frappe.PermissionError)
value_map = frappe._dict(frappe.get_all(doctype, fields=["name", field], as_list=1))
return value_map
return frappe._dict(frappe.get_all(doctype, fields=["name", field], as_list=1))
def get_data_for_custom_report(columns):

View file

@ -110,12 +110,11 @@ def get_cached_contacts(txt):
if not txt:
return contacts
match = [
return [
d
for d in contacts
if (d.value and ((d.value and txt in d.value) or (d.description and txt in d.description)))
]
return match
def update_contact_cache(contacts):

View file

@ -417,8 +417,7 @@ class EmailAccount(Document):
@classmethod
def find_default_incoming(cls):
doc = cls.find_one_by_filters(enable_incoming=1, default_incoming=1)
return doc
return cls.find_one_by_filters(enable_incoming=1, default_incoming=1)
@classmethod
def get_account_details_from_site_config(cls):
@ -628,8 +627,7 @@ class EmailAccount(Document):
def get_unreplied_notification_emails(self):
"""Return list of emails listed"""
self.send_notification_to = self.send_notification_to.replace(",", "\n")
out = [e.strip() for e in self.send_notification_to.split("\n") if e.strip()]
return out
return [e.strip() for e in self.send_notification_to.split("\n") if e.strip()]
def on_trash(self):
"""Clear communications where email account is linked"""
@ -749,9 +747,7 @@ def get_append_to(
):
email_append_to_list.append(dt.doc_type)
email_append_to = [[d] for d in set(email_append_to_list) if txt in d]
return email_append_to
return [[d] for d in set(email_append_to_list) if txt in d]
def test_internet(host="8.8.8.8", port=53, timeout=3):
@ -889,8 +885,7 @@ def get_max_email_uid(email_account):
if not result:
return 1
else:
max_uid = cint(result[0].get("uid", 0)) + 1
return max_uid
return cint(result[0].get("uid", 0)) + 1
def setup_user_email_inbox(

View file

@ -517,9 +517,7 @@ def get_assignees(doc):
fields=["allocated_to"],
)
recipients = [d.allocated_to for d in assignees]
return recipients
return [d.allocated_to for d in assignees]
def get_emails_from_template(template, context):

View file

@ -15,8 +15,7 @@ def get_coords(doctype, filters, type):
elif type == "coordinates":
coords = return_coordinates(doctype, filters_sql)
out = convert_to_geojson(type, coords)
return out
return convert_to_geojson(type, coords)
def convert_to_geojson(type, coords):

View file

@ -22,12 +22,10 @@ class OAuthProviderSettings(Document):
def get_oauth_settings():
"""Returns oauth settings"""
out = frappe._dict(
return frappe._dict(
{
"skip_authorization": frappe.db.get_single_value(
"OAuth Provider Settings", "skip_authorization"
)
}
)
return out

View file

@ -57,8 +57,7 @@ def make_social_login_key(**kwargs):
kwargs["doctype"] = "Social Login Key"
if not "provider_name" in kwargs:
kwargs["provider_name"] = "Test OAuth2 Provider"
doc = frappe.get_doc(kwargs)
return doc
return frappe.get_doc(kwargs)
def create_or_update_social_login_key():

View file

@ -34,9 +34,7 @@ class TokenCache(Document):
# end: auto-generated types
def get_auth_header(self):
if self.access_token:
headers = {"Authorization": "Bearer " + self.get_password("access_token")}
return headers
return {"Authorization": "Bearer " + self.get_password("access_token")}
raise frappe.exceptions.DoesNotExistError
def update_data(self, data):

View file

@ -1383,7 +1383,7 @@ class Document(BaseDocument):
:param comment_type: e.g. `Comment`. See Communication for more info."""
out = frappe.get_doc(
return frappe.get_doc(
{
"doctype": "Comment",
"comment_type": comment_type,
@ -1394,7 +1394,6 @@ class Document(BaseDocument):
"content": text or comment_type,
}
).insert(ignore_permissions=True)
return out
def add_seen(self, user=None):
"""add the given/current user to list of users who have seen this document (_seen)"""
@ -1569,8 +1568,7 @@ class Document(BaseDocument):
pluck="allocated_to",
)
users = set(assigned_users)
return users
return set(assigned_users)
def add_tag(self, tag):
"""Add a Tag to this document"""

View file

@ -538,8 +538,7 @@ def _field_autoname(autoname, doc, skip_slicing=None):
`autoname` field starts with 'field:'
"""
fieldname = autoname if skip_slicing else autoname[6:]
name = (cstr(doc.get(fieldname)) or "").strip()
return name
return (cstr(doc.get(fieldname)) or "").strip()
def _prompt_autoname(autoname, doc):

View file

@ -59,10 +59,9 @@ def import_files(module, dt=None, dn=None, force=False, pre_process=None, reset_
def import_file(module, dt, dn, force=False, pre_process=None, reset_permissions=False):
"""Sync a file from txt if modifed, return false if not updated"""
path = get_file_path(module, dt, dn)
ret = import_file_by_path(
return import_file_by_path(
path, force, pre_process=pre_process, reset_permissions=reset_permissions
)
return ret
def get_file_path(module, dt, dn):

View file

@ -43,8 +43,7 @@ class OAuthWebRequestValidator(RequestValidator):
# The redirect used if none has been supplied.
# Prefer your clients to pre register a redirect uri rather than
# supplying one on each authorization request.
redirect_uri = frappe.db.get_value("OAuth Client", client_id, "default_redirect_uri")
return redirect_uri
return frappe.db.get_value("OAuth Client", client_id, "default_redirect_uri")
def validate_scopes(self, client_id, scopes, client, request, *args, **kwargs):
# Is the client allowed to access the requested scopes?
@ -231,10 +230,7 @@ class OAuthWebRequestValidator(RequestValidator):
otoken.save(ignore_permissions=True)
frappe.db.commit()
default_redirect_uri = frappe.db.get_value(
"OAuth Client", request.client["name"], "default_redirect_uri"
)
return default_redirect_uri
return frappe.db.get_value("OAuth Client", request.client["name"], "default_redirect_uri")
def invalidate_authorization_code(self, client_id, code, request, *args, **kwargs):
# Authorization codes are use once, invalidate it when a Bearer token
@ -375,8 +371,7 @@ class OAuthWebRequestValidator(RequestValidator):
def get_userinfo_claims(self, request):
user = frappe.get_doc("User", frappe.session.user)
userinfo = get_userinfo(user)
return userinfo
return get_userinfo(user)
def validate_id_token(self, token, scopes, request):
try:
@ -580,7 +575,7 @@ def get_userinfo(user):
else:
picture = urljoin(frappe_server_url, user.user_image)
userinfo = frappe._dict(
return frappe._dict(
{
"sub": frappe.db.get_value(
"User Social Login",
@ -597,8 +592,6 @@ def get_userinfo(user):
}
)
return userinfo
def get_url_delimiter(separator_character=" "):
return separator_character

View file

@ -67,10 +67,8 @@ def get_doctypes_to_skip(doctype, user):
else:
doctypes_to_skip.append(parent_doctype)
# to remove possible duplicates
doctypes_to_skip = list(set(doctypes_to_skip))
return doctypes_to_skip
# remove possible duplicates
return list(set(doctypes_to_skip))
# store user's valid perms to avoid repeated query

View file

@ -630,8 +630,7 @@ def allow_everything():
returns a dict with access to everything
eg. {"read": 1, "write": 1, ...}
"""
perm = {ptype: 1 for ptype in rights}
return perm
return {ptype: 1 for ptype in rights}
def get_allowed_docs_for_doctype(user_permissions, doctype):

View file

@ -713,8 +713,7 @@ frappe.ui.form.PrintView = class {
get_print_format_printer_map() {
// returns the whole object "print_format_printer_map" stored in the localStorage.
try {
let print_format_printer_map = JSON.parse(localStorage.print_format_printer_map);
return print_format_printer_map;
return JSON.parse(localStorage.print_format_printer_map);
} catch (e) {
return {};
}

View file

@ -107,10 +107,9 @@ frappe.defaults = {
let user_permission = this.get_user_permissions()[frappe.model.unscrub(key)];
if (user_permission && user_permission.length) {
let doc_found = user_permission.some((perm) => {
return user_permission.some((perm) => {
return perm.doc === value;
});
return doc_found;
} else {
// there is no user permission for this doctype
// so we can allow this doc i.e., value

View file

@ -70,9 +70,7 @@ frappe.ui.form.ControlMultiSelect = class ControlMultiSelect extends (
get_values() {
const value = this.get_value() || "";
const values = value.split(/\s*,\s*/).filter((d) => d);
return values;
return value.split(/\s*,\s*/).filter((d) => d);
}
get_data() {

View file

@ -175,10 +175,9 @@ frappe.ui.form.Dashboard = class FormDashboard {
make_progress_chart(title) {
this.progress_area.show();
let progress_chart = $(
'<div class="progress-chart" title="' + (title || "") + '"></div>'
).appendTo(this.progress_area.body);
return progress_chart;
return $('<div class="progress-chart" title="' + (title || "") + '"></div>').appendTo(
this.progress_area.body
);
}
refresh() {
@ -551,7 +550,7 @@ frappe.ui.form.Dashboard = class FormDashboard {
.addClass("indicator-column");
}
let indicator = $(
return $(
'<div class="col-sm-' +
colspan +
' indicator-column"><span class="indicator ' +
@ -560,8 +559,6 @@ frappe.ui.form.Dashboard = class FormDashboard {
label +
"</span></div>"
).appendTo(this.stats_area_row);
return indicator;
}
// graphs

View file

@ -667,7 +667,7 @@ class FilterArea {
const fields_dict = this.list_view.page.fields_dict;
let out = filters.reduce((out, filter) => {
return filters.reduce((out, filter) => {
const [dt, fieldname, condition, value] = filter;
out.promise = out.promise || Promise.resolve();
out.non_standard_filters = out.non_standard_filters || [];
@ -689,8 +689,6 @@ class FilterArea {
}
return out;
}, {});
return out;
}
remove_filters(filters) {

View file

@ -31,8 +31,7 @@ frappe.views.ListView = class ListView extends frappe.views.BaseList {
}
has_permissions() {
const can_read = frappe.perm.has_perm(this.doctype, 0, "read");
return can_read;
return frappe.perm.has_perm(this.doctype, 0, "read");
}
show() {
@ -992,26 +991,24 @@ frappe.views.ListView = class ListView extends frappe.views.BaseList {
const seen = this.get_seen_class(doc);
let subject_html = `
<span class="level-item select-like">
<input class="list-row-checkbox" type="checkbox"
data-name="${escape(doc.name)}">
<span class="list-row-like hidden-xs style="margin-bottom: 1px;">
${this.get_like_html(doc)}
</span>
</span>
<span class="level-item ${seen} ellipsis" title="${escaped_subject}">
<a class="ellipsis"
href="${this.get_form_link(doc)}"
title="${escaped_subject}"
data-doctype="${this.doctype}"
data-name="${escaped_subject}">
${subject}
</a>
</span>
`;
return subject_html;
return `
<span class="level-item select-like">
<input class="list-row-checkbox" type="checkbox"
data-name="${escape(doc.name)}">
<span class="list-row-like hidden-xs style="margin-bottom: 1px;">
${this.get_like_html(doc)}
</span>
</span>
<span class="level-item ${seen} ellipsis" title="${escaped_subject}">
<a class="ellipsis"
href="${this.get_form_link(doc)}"
title="${escaped_subject}"
data-doctype="${this.doctype}"
data-name="${escaped_subject}">
${subject}
</a>
</span>
`;
}
get_indicator_html(doc, show_workflow_state) {

View file

@ -41,8 +41,7 @@ frappe.workflow = {
let workflow_states =
frappe.get_children(frappe.workflow.workflows[doctype], "states", { state: state }) ||
[];
let allow_edit_list = workflow_states.map((d) => d.allow_edit);
return allow_edit_list;
return workflow_states.map((d) => d.allow_edit);
},
is_self_approval_enabled: function (doctype) {
return frappe.workflow.workflows[doctype].allow_self_approval;

View file

@ -22,9 +22,7 @@ frappe._.get_data_uri = (element) => {
const context = $canvas[0].getContext("2d");
context.drawImage(element, 0, 0, width, height);
const data_uri = $canvas[0].toDataURL("image/png");
return data_uri;
return $canvas[0].toDataURL("image/png");
};
function get_file_input() {

View file

@ -332,12 +332,11 @@ frappe.ui.FilterGroup = class {
}
get_filters_as_object() {
let filters = this.get_filters().reduce((acc, filter) => {
return this.get_filters().reduce((acc, filter) => {
return Object.assign(acc, {
[filter[1]]: [filter[2], filter[3]],
});
}, {});
return filters;
}
add_filters_to_filter_group(filters) {

View file

@ -169,23 +169,21 @@ frappe.ui.LinkPreview = class {
this.href = this.href.replace(new RegExp(" ", "g"), "%20");
}
let popover_content = `
<div class="preview-popover-header">
<div class="preview-header">
${this.get_image_html(preview_data)}
<div class="preview-name">
<a href=${this.href}>${__(preview_data.preview_title)}</a>
</div>
<div class="text-muted preview-title">${this.get_id_html(preview_data)}</div>
</div>
</div>
<hr>
<div class="popover-body">
${this.get_content_html(preview_data)}
</div>
`;
return popover_content;
return `
<div class="preview-popover-header">
<div class="preview-header">
${this.get_image_html(preview_data)}
<div class="preview-name">
<a href=${this.href}>${__(preview_data.preview_title)}</a>
</div>
<div class="text-muted preview-title">${this.get_id_html(preview_data)}</div>
</div>
</div>
<hr>
<div class="popover-body">
${this.get_content_html(preview_data)}
</div>
`;
}
get_id_html(preview_data) {

View file

@ -62,12 +62,10 @@ frappe.ui.Notifications = class Notifications {
let get_headers_html = (item) => {
let active = item.id == "notifications" ? "active" : "";
let html = `<li class="notifications-category ${active}"
id="${item.id}"
data-toggle="collapse"
>${item.label}</li>`;
return html;
return `<li class="notifications-category ${active}"
id="${item.id}"
data-toggle="collapse"
>${item.label}</li>`;
};
let navitem = $(`<ul class="notification-item-tabs nav nav-tabs" role="tablist"></ul>`);

View file

@ -62,20 +62,18 @@ frappe.ui.Page = class Page {
}
get_empty_state(title, message, primary_action) {
let $empty_state = $(`<div class="page-card-container">
<div class="page-card">
<div class="page-card-head">
<span class="indicator blue">
${title}</span>
</div>
<p>${message}</p>
<div>
<button class="btn btn-primary btn-sm">${primary_action}</button>
</div>
</div>
</div>`);
return $empty_state;
return $(`<div class="page-card-container">
<div class="page-card">
<div class="page-card-head">
<span class="indicator blue">
${title}</span>
</div>
<p>${message}</p>
<div>
<button class="btn btn-primary btn-sm">${primary_action}</button>
</div>
</div>
</div>`);
}
load_lib(callback) {

View file

@ -19,7 +19,7 @@ frappe.ui.DiffView = class DiffView {
filters: { docname: this.docname, ref_doctype: this.doctype },
});
const onchange = () => this.compute_diff();
let dialog = new frappe.ui.Dialog({
return new frappe.ui.Dialog({
title: __("Compare Versions"),
fields: [
{
@ -56,7 +56,6 @@ frappe.ui.DiffView = class DiffView {
],
size: "extra-large",
});
return dialog;
}
compute_diff() {

View file

@ -11,26 +11,24 @@ Object.assign(frappe.energy_points, {
},
format_form_log(log) {
const separator = `<span>&nbsp;-&nbsp;</span>`;
const formatted_log = `<span>
<!--${this.get_points(log.points)}&nbsp;-->
<a href="/app/energy-point-log/${log.name}">${this.get_form_log_message(log)}</a>
${log.reason ? separator + log.reason : ""}
</span>`;
return formatted_log;
return `<span>
<!--${this.get_points(log.points)}&nbsp;-->
<a href="/app/energy-point-log/${log.name}">${this.get_form_log_message(log)}</a>
${log.reason ? separator + log.reason : ""}
</span>`;
},
format_history_log(log) {
// redundant code to honor readability and to avoid confusion
const separator = `<span>&nbsp;-&nbsp;</span>`;
const route = frappe.utils.get_form_link(log.reference_doctype, log.reference_name);
const formatted_log = `<div class="flex">
<span class="${log.points >= 0 ? "green" : "red"} mr-2">
${this.get_points(log.points)}
</span>
<a href="${route}" class="text-muted">${this.get_history_log_message(log)}</a>
${log.reason ? separator + log.reason : ""}
${separator + frappe.datetime.comment_when(log.creation)}
</div>`;
return formatted_log;
return `<div class="flex">
<span class="${log.points >= 0 ? "green" : "red"} mr-2">
${this.get_points(log.points)}
</span>
<a href="${route}" class="text-muted">${this.get_history_log_message(log)}</a>
${log.reason ? separator + log.reason : ""}
${separator + frappe.datetime.comment_when(log.creation)}
</div>`;
},
get_history_log_message(log) {
const owner_name = frappe.user.full_name(log.owner).bold();

View file

@ -374,8 +374,7 @@ Object.assign(frappe.utils, {
get_scroll_position: function (element, additional_offset) {
let header_offset =
$(".navbar").height() + $(".page-head:visible").height() || $(".navbar").height();
let scroll_top = $(element).offset().top - header_offset - cint(additional_offset);
return scroll_top;
return $(element).offset().top - header_offset - cint(additional_offset);
},
filter_dict: function (dict, filters) {
var ret = [];
@ -1180,11 +1179,10 @@ Object.assign(frappe.utils, {
},
get_duration_options: function (docfield) {
let duration_options = {
return {
hide_days: docfield.hide_days,
hide_seconds: docfield.hide_seconds,
};
return duration_options;
},
get_number_system: function (country) {

View file

@ -48,7 +48,7 @@ function open_web_template_values_editor(template, current_values = {}) {
}
}
let fields = [
return [
...normal_fields,
...table_fields.map((tf) => {
let data = current_values[tf.fieldname] || [];
@ -66,7 +66,5 @@ function open_web_template_values_editor(template, current_values = {}) {
};
}),
];
return fields;
}
}

View file

@ -83,7 +83,7 @@ frappe.views.FileView = class FileView extends frappe.views.ListView {
}
file_menu_items() {
const items = [
return [
{
label: __("Home"),
action: () => {
@ -137,8 +137,6 @@ frappe.views.FileView = class FileView extends frappe.views.ListView {
},
},
];
return items;
}
add_file_action_buttons() {

View file

@ -74,11 +74,9 @@ frappe.views.InboxView = class InboxView extends frappe.views.ListView {
}
get_seen_class(doc) {
const seen =
Boolean(doc.seen) || JSON.parse(doc._seen || "[]").includes(frappe.session.user)
? ""
: "bold";
return seen;
return Boolean(doc.seen) || JSON.parse(doc._seen || "[]").includes(frappe.session.user)
? ""
: "bold";
}
get is_sent_emails() {

View file

@ -49,7 +49,7 @@ frappe.views.InteractionComposer = class InteractionComposer {
let me = this;
let interaction_docs = Object.keys(get_doc_mappings());
let fields = [
return [
{
label: __("Reference"),
fieldtype: "Select",
@ -95,8 +95,6 @@ frappe.views.InteractionComposer = class InteractionComposer {
fieldname: "select_attachments",
},
];
return fields;
}
get_event_categories() {
@ -336,7 +334,7 @@ frappe.views.InteractionComposer = class InteractionComposer {
};
function get_doc_mappings() {
const doc_map = {
return {
Event: {
field_map: {
interaction_type: "doctype",
@ -362,6 +360,4 @@ function get_doc_mappings() {
hidden_fields: ["public", "category"],
},
};
return doc_map;
}

View file

@ -732,8 +732,7 @@ frappe.views.QueryReport = class QueryReport extends frappe.views.BaseList {
get_query_params() {
const query_string = frappe.utils.get_query_string(frappe.get_route_str());
const query_params = frappe.utils.get_query_params(query_string);
return query_params;
return frappe.utils.get_query_params(query_string);
}
add_prepared_report_buttons(doc) {
@ -1292,7 +1291,7 @@ frappe.views.QueryReport = class QueryReport extends frappe.views.BaseList {
raise && this.toggle_message(false);
const filters = this.filters
return this.filters
.filter((f) => f.get_value())
.map((f) => {
var v = f.get_value();
@ -1310,7 +1309,6 @@ frappe.views.QueryReport = class QueryReport extends frappe.views.BaseList {
Object.assign(acc, f);
return acc;
}, {});
return filters;
}
get_filter(fieldname) {

View file

@ -142,7 +142,7 @@ frappe.report_utils = {
},
get_filter_values(filters) {
let filter_values = filters
return filters
.map((f) => {
var v = f.default;
return {
@ -153,7 +153,6 @@ frappe.report_utils = {
Object.assign(acc, f);
return acc;
}, {});
return filter_values;
},
get_result_of_fn(fn, values) {

View file

@ -280,8 +280,7 @@ export default class ChartWidget extends Widget {
return frappe.report_utils.prepare_field_from_column(col);
});
let data = frappe.report_utils.make_chart_options(columns, result, chart_fields).data;
return data;
return frappe.report_utils.make_chart_options(columns, result, chart_fields).data;
}
}

View file

@ -136,8 +136,7 @@ export default class NumberCardWidget extends Widget {
}
get_filters() {
const filters = frappe.dashboard_utils.get_all_filters(this.card_doc);
return filters;
return frappe.dashboard_utils.get_all_filters(this.card_doc);
}
render_card() {

View file

@ -95,7 +95,7 @@ class EnergyPointLog(Document):
self.reverted = 1
self.save(ignore_permissions=True)
revert_log = frappe.get_doc(
return frappe.get_doc(
{
"doctype": "Energy Point Log",
"points": -(self.points),
@ -108,8 +108,6 @@ class EnergyPointLog(Document):
}
).insert(ignore_permissions=True)
return revert_log
def get_notification_message(doc):
owner_name = get_fullname(doc.owner)

View file

@ -176,13 +176,11 @@ def get_other_fields_meta(meta):
optional_fields_map = {field: ("Text", 0) for field in optional_fields}
fields = dict(default_fields_map, **optional_fields_map, **child_table_fields_map)
field_map = [
return [
frappe._dict({"fieldname": field, "fieldtype": _type, "length": _length})
for field, (_type, _length) in fields.items()
]
return field_map
def get_table_column(doctype, fieldname):
table_columns = frappe.db.get_table_columns_description(f"tab{doctype}")

View file

@ -197,5 +197,4 @@ class TestFormLoad(FrappeTestCase):
def get_blog(blog_name):
frappe.response.docs = []
getdoc("Blog Post", blog_name)
doc = frappe.response.docs[0]
return doc
return frappe.response.docs[0]

View file

@ -205,8 +205,7 @@ def create_http_request():
frappe.form_dict["usr"] = "test@example.com"
frappe.form_dict["pwd"] = "Eastern_43A1W"
frappe.local.form_dict["cmd"] = "login"
http_requests = HTTPRequest()
return http_requests
return HTTPRequest()
def enable_2fa(bypass_two_factor_auth=0, bypass_restrict_ip_check=0):

View file

@ -414,7 +414,7 @@ def create_blog_post():
}
).insert(ignore_if_duplicate=True)
doc = frappe.get_doc(
return frappe.get_doc(
{
"name": "test-blog-attachment-post",
"doctype": "Blog Post",
@ -425,8 +425,6 @@ def create_blog_post():
},
).insert(ignore_if_duplicate=True)
return doc
@whitelist_for_tests
def create_test_user(username=None):

View file

@ -1259,11 +1259,7 @@ def get_messages(language, start=0, page_length=100, search_text=""):
from frappe.frappeclient import FrappeClient
translator = FrappeClient(get_translator_url())
translated_dict = translator.post_api(
"translator.api.get_strings_for_translation", params=locals()
)
return translated_dict
return translator.post_api("translator.api.get_strings_for_translation", params=locals())
@frappe.whitelist()
@ -1291,10 +1287,10 @@ def get_contribution_status(message_id):
doc = frappe.get_doc("Translation", message_id)
translator = FrappeClient(get_translator_url())
contributed_translation = translator.get_api(
"translator.api.get_contribution_status", params={"translation_id": doc.contribution_docname}
return translator.get_api(
"translator.api.get_contribution_status",
params={"translation_id": doc.contribution_docname},
)
return contributed_translation
def get_translator_url():

View file

@ -211,14 +211,13 @@ def process_2fa_for_sms(user, token, otp_secret):
phone = frappe.db.get_value("User", user, ["phone", "mobile_no"], as_dict=1)
phone = phone.mobile_no or phone.phone
status = send_token_via_sms(otp_secret, token=token, phone_no=phone)
verification_obj = {
return {
"token_delivery": status,
"prompt": status
and "Enter verification code sent to {}".format(phone[:4] + "******" + phone[-3:]),
"method": "SMS",
"setup": status,
}
return verification_obj
def process_2fa_for_otp_app(user, otp_secret, otp_issuer):
@ -229,8 +228,7 @@ def process_2fa_for_otp_app(user, otp_secret, otp_issuer):
else:
otp_setup_completed = False
verification_obj = {"method": "OTP App", "setup": otp_setup_completed}
return verification_obj
return {"method": "OTP App", "setup": otp_setup_completed}
def process_2fa_for_email(user, token, otp_secret, otp_issuer, method="Email"):
@ -254,13 +252,12 @@ def process_2fa_for_email(user, token, otp_secret, otp_issuer, method="Email"):
status = send_token_via_email(
user, token, otp_secret, otp_issuer, subject=subject, message=message
)
verification_obj = {
return {
"token_delivery": status,
"prompt": status and prompt,
"method": "Email",
"setup": status,
}
return verification_obj
def get_email_subject_for_2fa(kwargs_dict):
@ -268,8 +265,7 @@ def get_email_subject_for_2fa(kwargs_dict):
subject_template = _("Login Verification Code from {}").format(
frappe.db.get_single_value("System Settings", "otp_issuer_name")
)
subject = frappe.render_template(subject_template, kwargs_dict)
return subject
return frappe.render_template(subject_template, kwargs_dict)
def get_email_body_for_2fa(kwargs_dict):
@ -279,8 +275,7 @@ def get_email_body_for_2fa(kwargs_dict):
<br><br>
<b style="font-size: 18px;">{{ otp }}</b>
"""
body = frappe.render_template(body_template, kwargs_dict)
return body
return frappe.render_template(body_template, kwargs_dict)
def get_email_subject_for_qr_code(kwargs_dict):
@ -288,8 +283,7 @@ def get_email_subject_for_qr_code(kwargs_dict):
subject_template = _("One Time Password (OTP) Registration Code from {}").format(
frappe.db.get_single_value("System Settings", "otp_issuer_name")
)
subject = frappe.render_template(subject_template, kwargs_dict)
return subject
return frappe.render_template(subject_template, kwargs_dict)
def get_email_body_for_qr_code(kwargs_dict):
@ -297,8 +291,7 @@ def get_email_body_for_qr_code(kwargs_dict):
body_template = _(
"Please click on the following link and follow the instructions on the page. {0}"
).format("<br><br> <a href='{{qrcode_link}}'>{{qrcode_link}}</a>")
body = frappe.render_template(body_template, kwargs_dict)
return body
return frappe.render_template(body_template, kwargs_dict)
def get_link_for_qrcode(user, totp_uri):

View file

@ -935,8 +935,7 @@ def get_html_for_route(route):
set_request(method="GET", path=route)
response = get_response()
html = frappe.safe_decode(response.get_data())
return html
return frappe.safe_decode(response.get_data())
def get_file_size(path, format=False):

View file

@ -524,7 +524,7 @@ def scheduled_backup(
"""this function is called from scheduler
deletes backups older than 7 days
takes backup"""
odb = new_backup(
return new_backup(
older_than=older_than,
ignore_files=ignore_files,
backup_path=backup_path,
@ -539,7 +539,6 @@ def scheduled_backup(
force=force,
verbose=verbose,
)
return odb
def new_backup(
@ -621,8 +620,7 @@ def is_file_old(file_path, older_than=24):
def get_backup_path():
backup_path = frappe.utils.get_site_path(conf.get("backup_path", "private/backups"))
return backup_path
return frappe.utils.get_site_path(conf.get("backup_path", "private/backups"))
@frappe.whitelist()

View file

@ -80,8 +80,7 @@ def get_dashboards_with_link(docname, doctype):
elif doctype == "Number Card":
links = frappe.get_all("Number Card Link", fields=["parent"], filters={"card": docname})
dashboards = [link.parent for link in links]
return dashboards
return [link.parent for link in links]
def sync_dashboards(app=None):

View file

@ -799,10 +799,9 @@ def global_date_format(date, format="long"):
import babel.dates
date = getdate(date)
formatted_date = babel.dates.format_date(
return babel.dates.format_date(
date, locale=(frappe.local.lang or "en").replace("-", "_"), format=format
)
return formatted_date
def has_common(l1: typing.Hashable, l2: typing.Hashable) -> bool:
@ -1455,8 +1454,7 @@ def image_to_base64(image, extn: str) -> bytes:
if extn.lower() in ("jpg", "jpe"):
extn = "JPEG"
image.save(buffered, extn)
img_str = base64.b64encode(buffered.getvalue())
return img_str
return base64.b64encode(buffered.getvalue())
def pdf_to_base64(filename: str) -> bytes | None:
@ -1612,9 +1610,7 @@ def get_url(uri: str | None = None, full_address: bool = False) -> str:
):
host_name = host_name + ":" + str(port)
url = urljoin(host_name, uri) if uri else host_name
return url
return urljoin(host_name, uri) if uri else host_name
def get_host_name_from_request() -> str:
@ -1888,10 +1884,7 @@ def sanitize_column(column_name: str) -> None:
def scrub_urls(html: str) -> str:
html = expand_relative_urls(html)
# encoding should be responsibility of the composer
# html = quote_urls(html)
return html
return expand_relative_urls(html)
def expand_relative_urls(html: str) -> str:

View file

@ -9,8 +9,7 @@ from frappe.utils.scheduler import is_scheduler_disabled, is_scheduler_inactive
def get_workers():
with Connection(get_redis_conn()):
workers = Worker.all()
return workers
return Worker.all()
def purge_pending_jobs(event=None, site=None, queue=None):

View file

@ -59,9 +59,7 @@ def delete_lock(name):
def get_lock_path(name):
name = name.lower()
lock_path = get_site_path(LOCKS_DIR, name + ".lock")
return lock_path
return get_site_path(LOCKS_DIR, f"{name.lower()}.lock")
def release_document_locks():

View file

@ -183,8 +183,7 @@ def encrypt(txt, encryption_key=None):
# encryption_key is not in 32 url-safe base64-encoded format
frappe.throw(_("Encryption key is in invalid format!"))
cipher_text = cstr(cipher_suite.encrypt(encode(txt)))
return cipher_text
return cstr(cipher_suite.encrypt(encode(txt)))
def decrypt(txt, encryption_key=None):

View file

@ -173,9 +173,7 @@ def json_handler(obj):
return str(obj)
elif isinstance(obj, frappe.model.document.BaseDocument):
doc = obj.as_dict(no_nulls=True)
return doc
return obj.as_dict(no_nulls=True)
elif isinstance(obj, Iterable):
return list(obj)

View file

@ -121,9 +121,7 @@ class PrintFormatGenerator:
if self.header_html or self.footer_html:
self._apply_overlay_on_main(main_doc, self.header_body, self.footer_body)
pdf = main_doc.write_pdf()
return pdf
return main_doc.write_pdf()
def _compute_overlay_element(self, element: str):
"""

View file

@ -70,9 +70,7 @@ def handle_html(data):
value = ", ".join(value.split(" \n"))
value = " ".join(value.split("\n"))
value = ", ".join(value.split("# "))
return value
return ", ".join(value.split("# "))
def read_xlsx_file_from_attached_file(file_url=None, fcontent=None, filepath=None):

View file

@ -175,18 +175,25 @@ class BlogPost(WebsiteGenerator):
url = frappe.local.site + "/" + self.route
social_links = [
return [
{
"icon": "twitter",
"link": "https://twitter.com/intent/tweet?text=" + self.title + "&url=" + url,
},
{"icon": "facebook", "link": "https://www.facebook.com/sharer.php?u=" + url},
{"icon": "linkedin", "link": "https://www.linkedin.com/sharing/share-offsite/?url=" + url},
{"icon": "envelope", "link": "mailto:?subject=" + self.title + "&body=" + url},
{
"icon": "facebook",
"link": "https://www.facebook.com/sharer.php?u=" + url,
},
{
"icon": "linkedin",
"link": "https://www.linkedin.com/sharing/share-offsite/?url=" + url,
},
{
"icon": "envelope",
"link": "mailto:?subject=" + self.title + "&body=" + url,
},
]
return social_links
def load_comments(self, context):
context.comment_list = get_comment_list(self.doctype, self.name)

View file

@ -186,7 +186,7 @@ def make_test_blog(category_title="Test Blog Category"):
dict(doctype="Blogger", short_name="test-blogger", full_name="Test Blogger")
).insert()
test_blog = frappe.get_doc(
return frappe.get_doc(
dict(
doctype="Blog Post",
blog_category=category_name,
@ -197,5 +197,3 @@ def make_test_blog(category_title="Test Blog Category"):
published=1,
)
).insert()
return test_blog

View file

@ -48,8 +48,7 @@ class DocumentPage(BaseTemplatePage):
self.init_context()
self.update_context()
self.post_process_context()
html = frappe.get_template(self.template_path).render(self.context)
return html
return frappe.get_template(self.template_path).render(self.context)
def update_context(self):
self.context.doc = self.doc

View file

@ -186,7 +186,7 @@ class WebsiteAnalytics:
unique_count += data.get("unique_count")
total_count += data.get("count")
report_summary = [
return [
{
"value": total_count,
"label": "Total Page Views",
@ -198,4 +198,3 @@ class WebsiteAnalytics:
"datatype": "Int",
},
]
return report_summary

View file

@ -266,8 +266,7 @@ def get_base_template(path=None):
for pattern in patterns_desc:
if re.match(pattern, path):
templates = base_template_map[pattern]
base_template = templates[-1]
return base_template
return templates[-1]
def setup_index(page_info):

View file

@ -233,14 +233,11 @@ def get_next_link(route, url_prefix=None, app=None):
if next_item:
if next_item.route and next_item.title:
html = (
return (
'<p class="btn-next-wrapper">'
+ frappe._("Next")
+ ': <a class="btn-next" href="{url_prefix}{route}">{title}</a></p>'
).format(**next_item)
return html
return ""

View file

@ -482,14 +482,13 @@ def get_common_email_args(doc):
subject = _("Workflow Action") + f" on {doctype}: {docname}"
response = get_link_to_form(doctype, docname, f"{doctype}: {docname}")
common_args = {
return {
"template": "workflow_action",
"header": "Workflow Action",
"attachments": [frappe.attach_print(doctype, docname, file_name=docname, doc=doc)],
"subject": subject,
"message": response,
}
return common_args
def get_email_template(doc):

View file

@ -11,7 +11,6 @@ frappe.listview_settings["Workflow Action"] = {
}
docname = docname.match(/[%'"]/) ? encodeURIComponent(docname) : docname;
const link = "/app/" + frappe.router.slug(doctype) + "/" + docname;
return link;
return "/app/" + frappe.router.slug(doctype) + "/" + docname;
},
};