Pārlūkot izejas kodu

Merge pull request #1091 from rmehta/user-fix

[cleanup] frappe.get_user()
version-14
Rushabh Mehta pirms 10 gadiem
vecāks
revīzija
66c1f45e0b
13 mainītis faili ar 32 papildinājumiem un 35 dzēšanām
  1. +18
    -17
      frappe/__init__.py
  2. +0
    -3
      frappe/auth.py
  3. +1
    -1
      frappe/boot.py
  4. +1
    -1
      frappe/core/notifications.py
  5. +1
    -1
      frappe/core/page/data_import_tool/data_import_tool.py
  6. +1
    -1
      frappe/database.py
  7. +1
    -1
      frappe/desk/desk_page.py
  8. +1
    -1
      frappe/desk/form/assign_to.py
  9. +1
    -1
      frappe/desk/form/load.py
  10. +1
    -1
      frappe/desk/form/save.py
  11. +2
    -2
      frappe/desk/notifications.py
  12. +3
    -3
      frappe/desk/page/messages/messages.py
  13. +1
    -2
      frappe/utils/user.py

+ 18
- 17
frappe/__init__.py Parādīt failu

@@ -263,17 +263,33 @@ def set_user(username):
"""Set current user. """Set current user.


:param username: **User** name to set as current user.""" :param username: **User** name to set as current user."""
from frappe.utils.user import User
local.session.user = username local.session.user = username
local.session.sid = username local.session.sid = username
local.cache = {} local.cache = {}
local.form_dict = _dict() local.form_dict = _dict()
local.jenv = None local.jenv = None
local.user_obj = None
local.session.data = _dict() local.session.data = _dict()
local.user = User(username)
local.role_permissions = {} local.role_permissions = {}
local.new_doc_templates = {} local.new_doc_templates = {}


def get_user():
from frappe.utils.user import User
if not local.user_obj:
local.user_obj = User(local.session.user)
return local.user_obj

def get_roles(username=None):
"""Returns roles of current user."""
if not local.session:
return ["Guest"]

if username:
import frappe.utils.user
return frappe.utils.user.get_roles(username)
else:
return get_user().get_roles()

def get_request_header(key, default=None): def get_request_header(key, default=None):
"""Return HTTP request header. """Return HTTP request header.


@@ -385,21 +401,6 @@ def clear_cache(user=None, doctype=None):


frappe.local.role_permissions = {} frappe.local.role_permissions = {}


def get_roles(username=None):
"""Returns roles of current user."""
if not local.session:
return ["Guest"]

return get_user(username).get_roles()

def get_user(username):
"""Returns `frappe.utils.user.User` instance of given user."""
from frappe.utils.user import User
if not username or username == local.session.user:
return local.user
else:
return User(username)

def has_permission(doctype, ptype="read", doc=None, user=None, verbose=False): def has_permission(doctype, ptype="read", doc=None, user=None, verbose=False):
"""Raises `frappe.PermissionError` if not permitted. """Raises `frappe.PermissionError` if not permitted.




+ 0
- 3
frappe/auth.py Parādīt failu

@@ -74,9 +74,6 @@ class HTTPRequest:
from frappe.translate import guess_language from frappe.translate import guess_language
frappe.local.lang = guess_language(lang_codes) frappe.local.lang = guess_language(lang_codes)


def setup_user(self):
frappe.local.user = frappe.utils.user.User()

def get_db_name(self): def get_db_name(self):
"""get database name from conf""" """get database name from conf"""
return conf.db_name return conf.db_name


+ 1
- 1
frappe/boot.py Parādīt failu

@@ -124,7 +124,7 @@ def get_fullnames():


def get_user(bootinfo): def get_user(bootinfo):
"""get user info""" """get user info"""
bootinfo.user = frappe.user.load_user()
bootinfo.user = frappe.get_user().load_user()


def add_home_page(bootinfo, docs): def add_home_page(bootinfo, docs):
"""load home page""" """load home page"""


+ 1
- 1
frappe/core/notifications.py Parādīt failu

@@ -42,4 +42,4 @@ def get_unread_messages():
WHERE comment_doctype IN ('My Company', 'Message') WHERE comment_doctype IN ('My Company', 'Message')
AND comment_docname = %s AND comment_docname = %s
AND ifnull(docstatus,0)=0 AND ifnull(docstatus,0)=0
""", (frappe.user.name,))[0][0]
""", (frappe.session.user,))[0][0]

+ 1
- 1
frappe/core/page/data_import_tool/data_import_tool.py Parādīt failu

@@ -23,7 +23,7 @@ def get_doctypes():
return [r[0] for r in frappe.db.sql("""select name from `tabDocType` return [r[0] for r in frappe.db.sql("""select name from `tabDocType`
where allow_import = 1""")] where allow_import = 1""")]
else: else:
return frappe.user._get("can_import")
return frappe.get_user()._get("can_import")


@frappe.whitelist() @frappe.whitelist()
def get_doctype_options(): def get_doctype_options():


+ 1
- 1
frappe/database.py Parādīt failu

@@ -67,7 +67,7 @@ class Database:
def validate_query(self, q): def validate_query(self, q):
"""Throw exception for dangerous queries: `ALTER`, `DROP`, `TRUNCATE` if not `Administrator`.""" """Throw exception for dangerous queries: `ALTER`, `DROP`, `TRUNCATE` if not `Administrator`."""
cmd = q.strip().lower().split()[0] cmd = q.strip().lower().split()[0]
if cmd in ['alter', 'drop', 'truncate'] and frappe.user.name != 'Administrator':
if cmd in ['alter', 'drop', 'truncate'] and frappe.session.user != 'Administrator':
frappe.throw(_("Not permitted"), frappe.PermissionError) frappe.throw(_("Not permitted"), frappe.PermissionError)


def sql(self, query, values=(), as_dict = 0, as_list = 0, formatted = 0, def sql(self, query, values=(), as_dict = 0, as_list = 0, formatted = 0,


+ 1
- 1
frappe/desk/desk_page.py Parādīt failu

@@ -34,7 +34,7 @@ def getpage():
frappe.response.docs.append(doc) frappe.response.docs.append(doc)


def has_permission(page): def has_permission(page):
if frappe.user.name == "Administrator" or "System Manager" in frappe.user.get_roles():
if frappe.session.user == "Administrator" or "System Manager" in frappe.get_roles():
return True return True


page_roles = [d.role for d in page.get("roles")] page_roles = [d.role for d in page.get("roles")]


+ 1
- 1
frappe/desk/form/assign_to.py Parādīt failu

@@ -50,7 +50,7 @@ def add(args=None):
"priority": args.get("priority", "Medium"), "priority": args.get("priority", "Medium"),
"status": "Open", "status": "Open",
"date": args.get('date', nowdate()), "date": args.get('date', nowdate()),
"assigned_by": args.get('assigned_by', frappe.user.name),
"assigned_by": args.get('assigned_by', frappe.session.user),
}).insert(ignore_permissions=True) }).insert(ignore_permissions=True)


# set assigned_to if field exists # set assigned_to if field exists


+ 1
- 1
frappe/desk/form/load.py Parādīt failu

@@ -43,7 +43,7 @@ def getdoc(doctype, name, user=None):
raise raise


if doc and not name.startswith('_'): if doc and not name.startswith('_'):
frappe.user.update_recent(doctype, name)
frappe.get_user().update_recent(doctype, name)


frappe.response.docs.append(doc) frappe.response.docs.append(doc)




+ 1
- 1
frappe/desk/form/save.py Parādīt failu

@@ -23,7 +23,7 @@ def savedocs():


# update recent documents # update recent documents
run_onload(doc) run_onload(doc)
frappe.user.update_recent(doc.doctype, doc.name)
frappe.get_user().update_recent(doc.doctype, doc.name)
send_updated_docs(doc) send_updated_docs(doc)


except Exception: except Exception:


+ 2
- 2
frappe/desk/notifications.py Parādīt failu

@@ -57,7 +57,7 @@ def get_notifications_for_modules(config, notification_count):
return open_count_module return open_count_module


def get_notifications_for_doctypes(config, notification_count): def get_notifications_for_doctypes(config, notification_count):
can_read = frappe.user.get_can_read()
can_read = frappe.get_user().get_can_read()
open_count_doctype = {} open_count_doctype = {}


for d in config.for_doctype: for d in config.for_doctype:
@@ -107,7 +107,7 @@ def clear_doctype_notifications(doc, method=None, *args, **kwargs):
def get_notification_info_for_boot(): def get_notification_info_for_boot():
out = get_notifications() out = get_notifications()
config = get_notification_config() config = get_notification_config()
can_read = frappe.user.get_can_read()
can_read = frappe.get_user().get_can_read()
conditions = {} conditions = {}
module_doctypes = {} module_doctypes = {}
doctype_info = dict(frappe.db.sql("""select name, module from tabDocType""")) doctype_info = dict(frappe.db.sql("""select name, module from tabDocType"""))


+ 3
- 3
frappe/desk/page/messages/messages.py Parādīt failu

@@ -20,7 +20,7 @@ def get_list(arg=None):
frappe.db.sql("""UPDATE `tabComment` frappe.db.sql("""UPDATE `tabComment`
set docstatus = 1 where comment_doctype in ('My Company', 'Message') set docstatus = 1 where comment_doctype in ('My Company', 'Message')
and comment_docname = %s and comment_docname = %s
""", frappe.user.name)
""", frappe.session.user)


delete_notification_count_for("Messages") delete_notification_count_for("Messages")


@@ -102,9 +102,9 @@ def _notify(contact, txt, subject=None):
frappe.sendmail(\ frappe.sendmail(\
recipients=contact, recipients=contact,
sender= frappe.db.get_value("User", frappe.session.user, "email"), sender= frappe.db.get_value("User", frappe.session.user, "email"),
subject=subject or "New Message from " + get_fullname(frappe.user.name),
subject=subject or "New Message from " + get_fullname(frappe.session.user),
message=frappe.get_template("templates/emails/new_message.html").render({ message=frappe.get_template("templates/emails/new_message.html").render({
"from": get_fullname(frappe.user.name),
"from": get_fullname(frappe.session.user),
"message": txt, "message": txt,
"link": get_url() "link": get_url()
}), }),


+ 1
- 2
frappe/utils/user.py Parādīt failu

@@ -9,8 +9,7 @@ import frappe.share


class User: class User:
""" """
A user object is created at the beginning of every request with details of the use.
The global user object is `frappe.user`
A user permission object can be accessed as `frappe.get_user()`
""" """
def __init__(self, name=''): def __init__(self, name=''):
self.defaults = None self.defaults = None


Notiek ielāde…
Atcelt
Saglabāt