feat: added Page View doctype
This commit is contained in:
parent
80f27f6081
commit
bc042b37b7
6 changed files with 137 additions and 0 deletions
0
frappe/website/doctype/page_view/__init__.py
Normal file
0
frappe/website/doctype/page_view/__init__.py
Normal file
8
frappe/website/doctype/page_view/page_view.js
Normal file
8
frappe/website/doctype/page_view/page_view.js
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
// Copyright (c) 2020, Frappe Technologies and contributors
|
||||
// For license information, please see license.txt
|
||||
|
||||
frappe.ui.form.on('Page View', {
|
||||
// refresh: function(frm) {
|
||||
|
||||
// }
|
||||
});
|
||||
75
frappe/website/doctype/page_view/page_view.json
Normal file
75
frappe/website/doctype/page_view/page_view.json
Normal file
|
|
@ -0,0 +1,75 @@
|
|||
{
|
||||
"actions": [],
|
||||
"creation": "2020-04-15 22:54:46.009703",
|
||||
"doctype": "DocType",
|
||||
"editable_grid": 1,
|
||||
"engine": "InnoDB",
|
||||
"field_order": [
|
||||
"path",
|
||||
"referrer",
|
||||
"browser",
|
||||
"browser_version",
|
||||
"date"
|
||||
],
|
||||
"fields": [
|
||||
{
|
||||
"fieldname": "path",
|
||||
"fieldtype": "Data",
|
||||
"label": "Path",
|
||||
"set_only_once": 1
|
||||
},
|
||||
{
|
||||
"fieldname": "referrer",
|
||||
"fieldtype": "Data",
|
||||
"label": "Referrer",
|
||||
"search_index": 1,
|
||||
"set_only_once": 1
|
||||
},
|
||||
{
|
||||
"fieldname": "browser",
|
||||
"fieldtype": "Data",
|
||||
"label": "Browser",
|
||||
"search_index": 1,
|
||||
"set_only_once": 1
|
||||
},
|
||||
{
|
||||
"fieldname": "browser_version",
|
||||
"fieldtype": "Data",
|
||||
"label": "Browser Version",
|
||||
"set_only_once": 1
|
||||
},
|
||||
{
|
||||
"fieldname": "date",
|
||||
"fieldtype": "Datetime",
|
||||
"label": "Date",
|
||||
"set_only_once": 1
|
||||
}
|
||||
],
|
||||
"in_create": 1,
|
||||
"links": [],
|
||||
"modified": "2020-04-15 23:31:27.517793",
|
||||
"modified_by": "Administrator",
|
||||
"module": "Website",
|
||||
"name": "Page View",
|
||||
"owner": "Administrator",
|
||||
"permissions": [
|
||||
{
|
||||
"create": 1,
|
||||
"delete": 1,
|
||||
"email": 1,
|
||||
"export": 1,
|
||||
"print": 1,
|
||||
"read": 1,
|
||||
"report": 1,
|
||||
"role": "System Manager",
|
||||
"share": 1,
|
||||
"write": 1
|
||||
}
|
||||
],
|
||||
"quick_entry": 1,
|
||||
"read_only": 1,
|
||||
"sort_field": "modified",
|
||||
"sort_order": "DESC",
|
||||
"title_field": "path",
|
||||
"track_changes": 1
|
||||
}
|
||||
34
frappe/website/doctype/page_view/page_view.py
Normal file
34
frappe/website/doctype/page_view/page_view.py
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# Copyright (c) 2020, Frappe Technologies and contributors
|
||||
# For license information, please see license.txt
|
||||
|
||||
from __future__ import unicode_literals
|
||||
import frappe
|
||||
from frappe.model.document import Document
|
||||
|
||||
class PageView(Document):
|
||||
pass
|
||||
|
||||
|
||||
@frappe.whitelist(allow_guest=True)
|
||||
def make_view_log(path, referrer=None, browser=None, version=None):
|
||||
if path.startswith('/'):
|
||||
path = path[1:]
|
||||
|
||||
if is_tracking_enabled():
|
||||
view = frappe.new_doc("Page View")
|
||||
view.path = path
|
||||
view.referrer = referrer
|
||||
view.browser = browser
|
||||
view.browser_version = version
|
||||
view.date = frappe.utils.now_datetime()
|
||||
view.insert(ignore_permissions=True)
|
||||
|
||||
return
|
||||
|
||||
@frappe.whitelist()
|
||||
def get_page_view_count(path):
|
||||
return frappe.db.count("Page View", filters={'path': path})
|
||||
|
||||
def is_tracking_enabled():
|
||||
return frappe.db.get_value("Website Settings", "Website Settings", "enable_view_tracking")
|
||||
10
frappe/website/doctype/page_view/test_page_view.py
Normal file
10
frappe/website/doctype/page_view/test_page_view.py
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# Copyright (c) 2020, Frappe Technologies and Contributors
|
||||
# See license.txt
|
||||
from __future__ import unicode_literals
|
||||
|
||||
# import frappe
|
||||
import unittest
|
||||
|
||||
class TestPageView(unittest.TestCase):
|
||||
pass
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# Copyright (c) 2020, Frappe Technologies and Contributors
|
||||
# See license.txt
|
||||
from __future__ import unicode_literals
|
||||
|
||||
# import frappe
|
||||
import unittest
|
||||
|
||||
class TestWebsiteSettings(unittest.TestCase):
|
||||
pass
|
||||
Loading…
Add table
Reference in a new issue