[refactor] fixes
This commit is contained in:
parent
474e565740
commit
d92caeb687
7 changed files with 70 additions and 68 deletions
|
|
@ -8,7 +8,7 @@ bootstrap client session
|
|||
|
||||
import frappe
|
||||
import frappe.defaults
|
||||
import frappe.desk.page
|
||||
import frappe.desk.desk_page
|
||||
from frappe.utils import get_gravatar
|
||||
|
||||
def get_bootinfo():
|
||||
|
|
@ -132,10 +132,10 @@ def add_home_page(bootinfo, docs):
|
|||
return
|
||||
home_page = frappe.db.get_default("desktop:home_page")
|
||||
try:
|
||||
page = frappe.desk.page.get(home_page)
|
||||
page = frappe.desk.desk_page.get(home_page)
|
||||
except (frappe.DoesNotExistError, frappe.PermissionError):
|
||||
frappe.message_log.pop()
|
||||
page = frappe.desk.page.get('desktop')
|
||||
page = frappe.desk.desk_page.get('desktop')
|
||||
|
||||
bootinfo['home_page'] = page.name
|
||||
docs.append(page)
|
||||
|
|
|
|||
|
|
@ -10,7 +10,8 @@ from frappe.model.document import Document
|
|||
|
||||
class Comment(Document):
|
||||
def get_feed(self):
|
||||
return "<i>{0}</i>".format(self.comment)
|
||||
return """<a href="#Form/{0}/{1}">{0} {1}</a>: <i>{2}</i>""".format(self.comment_doctype, self.comment_docname,
|
||||
self.comment)
|
||||
|
||||
def validate(self):
|
||||
if frappe.db.sql("""select count(*) from tabComment where comment_doctype=%s
|
||||
|
|
|
|||
53
frappe/desk/desk_page.py
Normal file
53
frappe/desk/desk_page.py
Normal file
|
|
@ -0,0 +1,53 @@
|
|||
# Copyright (c) 2013, Web Notes Technologies Pvt. Ltd. and Contributors
|
||||
# MIT License. See license.txt
|
||||
|
||||
from __future__ import unicode_literals
|
||||
import frappe
|
||||
from frappe.translate import send_translations
|
||||
|
||||
@frappe.whitelist()
|
||||
def get(name):
|
||||
"""
|
||||
Return the :term:`doclist` of the `Page` specified by `name`
|
||||
"""
|
||||
page = frappe.get_doc('Page', name)
|
||||
if has_permission(page):
|
||||
page.load_assets()
|
||||
return page
|
||||
else:
|
||||
frappe.response['403'] = 1
|
||||
raise frappe.PermissionError, 'No read permission for Page %s' % \
|
||||
(page.title or name)
|
||||
|
||||
@frappe.whitelist(allow_guest=True)
|
||||
def getpage():
|
||||
"""
|
||||
Load the page from `frappe.form` and send it via `frappe.response`
|
||||
"""
|
||||
page = frappe.form_dict.get('name')
|
||||
doc = get(page)
|
||||
|
||||
# load translations
|
||||
if frappe.lang != "en":
|
||||
send_translations(frappe.get_lang_dict("page", page))
|
||||
|
||||
frappe.response.docs.append(doc)
|
||||
|
||||
def has_permission(page):
|
||||
if frappe.user.name == "Administrator" or "System Manager" in frappe.user.get_roles():
|
||||
return True
|
||||
|
||||
page_roles = [d.role for d in page.get("roles")]
|
||||
if page_roles:
|
||||
if frappe.session.user == "Guest" and "Guest" not in page_roles:
|
||||
return False
|
||||
elif not set(page_roles).intersection(set(frappe.get_roles())):
|
||||
# check if roles match
|
||||
return False
|
||||
|
||||
if not frappe.has_permission("Page", ptype="read", doc=page):
|
||||
# check if there are any user_permissions
|
||||
return False
|
||||
else:
|
||||
# hack for home pages! if no page roles, allow everyone to see!
|
||||
return True
|
||||
|
|
@ -1,53 +0,0 @@
|
|||
# Copyright (c) 2013, Web Notes Technologies Pvt. Ltd. and Contributors
|
||||
# MIT License. See license.txt
|
||||
|
||||
from __future__ import unicode_literals
|
||||
import frappe
|
||||
from frappe.translate import send_translations
|
||||
|
||||
@frappe.whitelist()
|
||||
def get(name):
|
||||
"""
|
||||
Return the :term:`doclist` of the `Page` specified by `name`
|
||||
"""
|
||||
page = frappe.get_doc('Page', name)
|
||||
if has_permission(page):
|
||||
page.load_assets()
|
||||
return page
|
||||
else:
|
||||
frappe.response['403'] = 1
|
||||
raise frappe.PermissionError, 'No read permission for Page %s' % \
|
||||
(page.title or name)
|
||||
|
||||
@frappe.whitelist(allow_guest=True)
|
||||
def getpage():
|
||||
"""
|
||||
Load the page from `frappe.form` and send it via `frappe.response`
|
||||
"""
|
||||
page = frappe.form_dict.get('name')
|
||||
doc = get(page)
|
||||
|
||||
# load translations
|
||||
if frappe.lang != "en":
|
||||
send_translations(frappe.get_lang_dict("page", page))
|
||||
|
||||
frappe.response.docs.append(doc)
|
||||
|
||||
def has_permission(page):
|
||||
if frappe.user.name == "Administrator" or "System Manager" in frappe.user.get_roles():
|
||||
return True
|
||||
|
||||
page_roles = [d.role for d in page.get("roles")]
|
||||
if page_roles:
|
||||
if frappe.session.user == "Guest" and "Guest" not in page_roles:
|
||||
return False
|
||||
elif not set(page_roles).intersection(set(frappe.get_roles())):
|
||||
# check if roles match
|
||||
return False
|
||||
|
||||
if not frappe.has_permission("Page", ptype="read", doc=page):
|
||||
# check if there are any user_permissions
|
||||
return False
|
||||
else:
|
||||
# hack for home pages! if no page roles, allow everyone to see!
|
||||
return True
|
||||
|
|
@ -44,7 +44,8 @@ frappe.ActivityFeed = Class.extend({
|
|||
<i class="icon-fixed-width %(icon)s" style="margin-right: 5px;"></i>\
|
||||
<a %(onclick)s class="label %(add_class)s">\
|
||||
%(feed_type)s</a>\
|
||||
%(subject)s <span class="user-info">%(by)s / %(when)s</span></div>', data));
|
||||
<span class="small">%(subject)s</span>\
|
||||
<span class="user-info">%(by)s / %(when)s</span></div>', data));
|
||||
},
|
||||
scrub_data: function(data) {
|
||||
data.by = frappe.user_info(data.owner).fullname;
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
// Copyright (c) 2013, Web Notes Technologies Pvt. Ltd. and Contributors
|
||||
// MIT License. See license.txt
|
||||
|
||||
frappe.provide('frappe.core.pages.messages');
|
||||
frappe.provide('frappe.desk.pages.messages');
|
||||
|
||||
frappe.pages.messages.onload = function(wrapper) {
|
||||
frappe.ui.make_app_page({
|
||||
|
|
@ -26,18 +26,18 @@ frappe.pages.messages.onload = function(wrapper) {
|
|||
|
||||
wrapper.appframe.add_module_icon("Messages");
|
||||
|
||||
frappe.core.pages.messages = new frappe.core.pages.messages(wrapper);
|
||||
frappe.desk.pages.messages = new frappe.desk.pages.messages(wrapper);
|
||||
}
|
||||
|
||||
$(frappe.pages.messages).bind('show', function() {
|
||||
// remove alerts
|
||||
$('#alert-container .alert').remove();
|
||||
|
||||
frappe.core.pages.messages.show();
|
||||
setTimeout("frappe.core.pages.messages.refresh()", 5000);
|
||||
frappe.desk.pages.messages.show();
|
||||
setTimeout("frappe.desk.pages.messages.refresh()", 5000);
|
||||
})
|
||||
|
||||
frappe.core.pages.messages = Class.extend({
|
||||
frappe.desk.pages.messages = Class.extend({
|
||||
init: function(wrapper) {
|
||||
this.wrapper = wrapper;
|
||||
this.show_active_users();
|
||||
|
|
@ -52,7 +52,7 @@ frappe.core.pages.messages = Class.extend({
|
|||
var txt = $('#post-message textarea').val();
|
||||
if(txt) {
|
||||
return frappe.call({
|
||||
module: 'frappe.core',
|
||||
module: 'frappe.desk',
|
||||
page:'messages',
|
||||
method:'post',
|
||||
args: {
|
||||
|
|
@ -88,7 +88,7 @@ frappe.core.pages.messages = Class.extend({
|
|||
},
|
||||
// check for updates every 5 seconds if page is active
|
||||
refresh: function() {
|
||||
setTimeout("frappe.core.pages.messages.refresh()", 5000);
|
||||
setTimeout("frappe.desk.pages.messages.refresh()", 5000);
|
||||
if(frappe.container.page.label != 'Messages')
|
||||
return;
|
||||
if(!frappe.session_alive)
|
||||
|
|
@ -131,7 +131,7 @@ frappe.core.pages.messages = Class.extend({
|
|||
data.delete_html = "";
|
||||
if(data.owner==user || data.comment.indexOf("assigned to")!=-1) {
|
||||
data.delete_html = repl('<a class="close" \
|
||||
onclick="frappe.core.pages.messages.delete(this)"\
|
||||
onclick="frappe.desk.pages.messages.delete(this)"\
|
||||
data-name="%(name)s">×</a>', data);
|
||||
}
|
||||
|
||||
|
|
@ -167,7 +167,7 @@ frappe.core.pages.messages = Class.extend({
|
|||
show_active_users: function() {
|
||||
var me = this;
|
||||
return frappe.call({
|
||||
module:'frappe.core',
|
||||
module:'frappe.desk',
|
||||
page:'messages',
|
||||
method:'get_active_users',
|
||||
callback: function(r,rt) {
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ frappe.views.pageview = {
|
|||
} else {
|
||||
// get fresh
|
||||
return frappe.call({
|
||||
method: 'frappe.desk.page.getpage',
|
||||
method: 'frappe.desk.desk_page.getpage',
|
||||
args: {'name':name },
|
||||
callback: function(r) {
|
||||
localStorage["_page:" + name] = JSON.stringify(r.docs);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue