소스 검색

Merge branch 'develop' of github.com:frappe/frappe into develop

version-14
Nabin Hait 11 년 전
부모
커밋
7c8ebaa820
61개의 변경된 파일228개의 추가작업 그리고 173개의 파일을 삭제
  1. +18
    -13
      README.md
  2. +3
    -1
      frappe/__init__.py
  3. +7
    -5
      frappe/app.py
  4. +20
    -14
      frappe/cli.py
  5. +1
    -1
      frappe/client.py
  6. +1
    -1
      frappe/core/README.md
  7. +2
    -2
      frappe/core/doctype/page/page.py
  8. +55
    -42
      frappe/core/doctype/profile/test_profile.py
  9. +1
    -1
      frappe/core/doctype/report/report.txt
  10. +1
    -1
      frappe/core/page/permission_manager/permission_manager.js
  11. +7
    -5
      frappe/installer.py
  12. +3
    -0
      frappe/model/bean.py
  13. +1
    -1
      frappe/model/doc.py
  14. +3
    -0
      frappe/modules/patch_handler.py
  15. +2
    -1
      frappe/patches.txt
  16. +4
    -1
      frappe/patches/4_0/set_todo_checked_as_closed.py
  17. +9
    -0
      frappe/patches/4_0/webnotes_to_frappe.py
  18. +2
    -2
      frappe/public/css/app.css
  19. +1
    -1
      frappe/public/js/frappe/app.js
  20. +1
    -1
      frappe/public/js/frappe/misc/number_format.js
  21. +2
    -2
      frappe/public/js/frappe/misc/pretty_date.js
  22. +2
    -1
      frappe/public/js/frappe/provide.js
  23. +5
    -5
      frappe/public/js/frappe/ui/editor.js
  24. +2
    -2
      frappe/public/js/frappe/ui/listing.js
  25. +3
    -3
      frappe/public/js/frappe/views/doclistview.js
  26. +1
    -1
      frappe/public/js/frappe/views/test_runner.js
  27. +4
    -4
      frappe/public/js/lib/jquery/jquery.min.js
  28. +1
    -1
      frappe/templates/base.html
  29. +3
    -3
      frappe/templates/generators/blog_post.html
  30. +3
    -3
      frappe/templates/generators/web_page.html
  31. +3
    -3
      frappe/templates/includes/comments.html
  32. +1
    -1
      frappe/templates/includes/inline_post.html
  33. +2
    -1
      frappe/templates/pages/login.py
  34. +1
    -1
      frappe/templates/pages/print.html
  35. +4
    -4
      frappe/templates/pages/update-password.html
  36. +1
    -1
      frappe/templates/website_group/edit_post.html
  37. +1
    -1
      frappe/templates/website_group/forum.html
  38. +1
    -1
      frappe/templates/website_group/post.html
  39. +3
    -3
      frappe/translate.py
  40. +2
    -2
      frappe/translations/ar.csv
  41. +2
    -2
      frappe/translations/de.csv
  42. +2
    -2
      frappe/translations/el.csv
  43. +2
    -2
      frappe/translations/es.csv
  44. +2
    -2
      frappe/translations/fr.csv
  45. +2
    -2
      frappe/translations/hi.csv
  46. +2
    -2
      frappe/translations/hr.csv
  47. +2
    -2
      frappe/translations/it.csv
  48. +2
    -2
      frappe/translations/nl.csv
  49. +2
    -2
      frappe/translations/pt-BR.csv
  50. +2
    -2
      frappe/translations/pt.csv
  51. +2
    -2
      frappe/translations/sr.csv
  52. +2
    -2
      frappe/translations/ta.csv
  53. +2
    -2
      frappe/translations/th.csv
  54. +2
    -2
      frappe/translations/zh-cn.csv
  55. +2
    -2
      frappe/translations/zh-tw.csv
  56. +1
    -1
      frappe/utils/backups.py
  57. +1
    -0
      frappe/website/doctype/website_sitemap_config/website_sitemap_config.py
  58. +1
    -1
      frappe/website/js/website.js
  59. +3
    -0
      frappe/website/website_generator.py
  60. +1
    -1
      frappe/widgets/query_report.py
  61. +4
    -4
      hooks.md

+ 18
- 13
README.md 파일 보기

@@ -1,8 +1,8 @@
## wnframework
## frappe


Full-stack web application framework that uses Python/MySql on the server side and a tightly integrated client side library. Primarily built for erpnext. Full-stack web application framework that uses Python/MySql on the server side and a tightly integrated client side library. Primarily built for erpnext.


Projects: [erpnext](http://erpnext.org) | [webnotes/erpnext](https://github.com/webnotes/erpnext)
Projects: [erpnext](http://erpnext.org) | [frappe/erpnext](https://github.com/frappe/erpnext)


## Setup ## Setup


@@ -11,25 +11,30 @@ To start a new project, in the application root:
Install: Install:


1. Go to the project folder 1. Go to the project folder
1. Install webnotes and your app:

$ git clone git@github.com:webnotes/wnframework lib
$ git clone git@github.com:webnotes/[your app] app
$ lib/wnf.py --make_conf
$ lib/wnf.py --reinstall
$ lib/wnf.py --build
1. Install frappe and your app:

mkdir bench
cd bench
git clone https://github.com/frappe/frappe.git
git clone https://github.com/frappe/[your_app]
sudo pip install -e frappe/ erpnext/ your_app/
mkdir sites
echo app >> sites/apps.txt
cd sites
frappe site.local --install erpnext
frappe site.local --install_app your_app


1. Run development server: 1. Run development server:


$ lib/wnf.py --serve

cd sites
frappe site.local --serve
enjoy! enjoy!


## wnf.py ## wnf.py


`$ lib/wnf.py --help` for more info
`frappe --help` for more info


## License ## License


wnframework is freely available to use under the MIT License
frappe is freely available to use under the MIT License

+ 3
- 1
frappe/__init__.py 파일 보기

@@ -416,6 +416,7 @@ def get_hooks(hook=None, app_name=None):
def load_app_hooks(app_name=None): def load_app_hooks(app_name=None):
hooks = {} hooks = {}
for app in [app_name] if app_name else get_installed_apps(): for app in [app_name] if app_name else get_installed_apps():
if app=="webnotes": app="frappe"
for item in get_file_items(get_pymodule_path(app, "hooks.txt")): for item in get_file_items(get_pymodule_path(app, "hooks.txt")):
key, value = item.split("=", 1) key, value = item.split("=", 1)
key, value = key.strip(), value.strip() key, value = key.strip(), value.strip()
@@ -441,7 +442,8 @@ def setup_module_map():
if not local.app_modules: if not local.app_modules:
local.module_app, local.app_modules = {}, {} local.module_app, local.app_modules = {}, {}
for app in get_all_apps(True):
for app in get_all_apps(True):
if app=="webnotes": app="frappe"
local.app_modules.setdefault(app, []) local.app_modules.setdefault(app, [])
for module in get_module_list(app): for module in get_module_list(app):
local.module_app[module] = app local.module_app[module] = app


+ 7
- 5
frappe/app.py 파일 보기

@@ -21,6 +21,7 @@ from frappe.utils import get_site_name
local_manager = LocalManager([frappe.local]) local_manager = LocalManager([frappe.local])


_site = None _site = None
_sites_path = os.environ.get("SITES_PATH", ".")


def handle_session_stopped(): def handle_session_stopped():
res = Response("""<html> res = Response("""<html>
@@ -41,7 +42,7 @@ def application(request):
try: try:
site = _site or get_site_name(request.host) site = _site or get_site_name(request.host)
frappe.init(site=site)
frappe.init(site=site, sites_path=_sites_path)
if not frappe.local.conf: if not frappe.local.conf:
# site does not exist # site does not exist
@@ -79,9 +80,10 @@ def application(request):


application = local_manager.make_middleware(application) application = local_manager.make_middleware(application)


def serve(port=8000, profile=False, site=None):
global application, _site
def serve(port=8000, profile=False, site=None, sites_path='.'):
global application, _site, _sites_path
_site = site _site = site
_sites_path = sites_path
from werkzeug.serving import run_simple from werkzeug.serving import run_simple


@@ -90,12 +92,12 @@ def serve(port=8000, profile=False, site=None):


if not os.environ.get('NO_STATICS'): if not os.environ.get('NO_STATICS'):
application = SharedDataMiddleware(application, { application = SharedDataMiddleware(application, {
'/assets': 'assets',
'/assets': os.path.join(sites_path, 'assets'),
}) })
if site: if site:
application = SharedDataMiddleware(application, { application = SharedDataMiddleware(application, {
'/files': os.path.join(site, 'public', 'files')
'/files': os.path.join(sites_path, site, 'public', 'files')
}) })


run_simple('0.0.0.0', int(port), application, use_reloader=True, run_simple('0.0.0.0', int(port), application, use_reloader=True,


+ 20
- 14
frappe/cli.py 파일 보기

@@ -13,8 +13,11 @@ site_arg_optional = []
def main(): def main():
parsed_args = frappe._dict(vars(setup_parser())) parsed_args = frappe._dict(vars(setup_parser()))
fn = get_function(parsed_args) fn = get_function(parsed_args)
if not parsed_args.get("sites_path"):
parsed_args["sites_path"] = "."
if parsed_args.get("sites_path"):
parsed_args["sites_path"] = parsed_args["sites_path"][0]
else:
parsed_args["sites_path"] = os.environ.get("SITES_PATH", ".")
sites_path = parsed_args.get("sites_path")
if not parsed_args.get("make_app"): if not parsed_args.get("make_app"):
@@ -22,25 +25,25 @@ def main():
for site in get_sites(parsed_args["sites_path"]): for site in get_sites(parsed_args["sites_path"]):
args = parsed_args.copy() args = parsed_args.copy()
args["site"] = site args["site"] = site
frappe.init(site)
frappe.init(site, sites_path=sites_path)
run(fn, args) run(fn, args)
else: else:
if not fn in site_arg_optional: if not fn in site_arg_optional:
if not parsed_args.get("site") and os.path.exists("currentsite.txt"):
with open("currentsite.txt", "r") as sitefile:
site = sitefile.read()
else:
site = parsed_args.get("site")
if not parsed_args.get("site") and os.path.exists(os.path.join(sites_path, "currentsite.txt")):
with open(os.path.join(sites_path, "currentsite.txt"), "r") as sitefile:
parsed_args["site"] = sitefile.read().strip()
site = parsed_args.get("site")


if not site: if not site:
print "Site argument required" print "Site argument required"
exit(1) exit(1)


if fn != 'install' and not os.path.exists(site):
if fn != 'install' and not os.path.exists(os.path.join(parsed_args["sites_path"], site)):
print "Did not find folder '{}'. Are you in sites folder?".format(parsed_args.get("site")) print "Did not find folder '{}'. Are you in sites folder?".format(parsed_args.get("site"))
exit(1) exit(1)
frappe.init(site)
frappe.init(site, sites_path=sites_path)
run(fn, parsed_args) run(fn, parsed_args)
else: else:
run(fn, parsed_args) run(fn, parsed_args)
@@ -106,6 +109,8 @@ def setup_install(parser):
help="Make a new application with boilerplate") help="Make a new application with boilerplate")
parser.add_argument("--install", metavar="DB-NAME", nargs=1, parser.add_argument("--install", metavar="DB-NAME", nargs=1,
help="Install a new db") help="Install a new db")
parser.add_argument("--sites_path", metavar="SITES_PATH", nargs=1,
help="path to directory with sites")
parser.add_argument("--install_app", metavar="APP-NAME", nargs=1, parser.add_argument("--install_app", metavar="APP-NAME", nargs=1,
help="Install a new app") help="Install a new app")
parser.add_argument("--root-password", nargs=1, parser.add_argument("--root-password", nargs=1,
@@ -290,7 +295,7 @@ def update(remote=None, branch=None, reload_gunicorn=False):
subprocess.check_output("killall -HUP gunicorn".split()) subprocess.check_output("killall -HUP gunicorn".split())


@cmd @cmd
def latest(verbose=True):
def latest(verbose=True, rebuild_website_config=True):
import frappe.modules.patch_handler import frappe.modules.patch_handler
import frappe.model.sync import frappe.model.sync
from frappe.website import rebuild_config from frappe.website import rebuild_config
@@ -308,7 +313,8 @@ def latest(verbose=True):
frappe.model.sync.sync_all() frappe.model.sync.sync_all()
# build website config if any changes in templates etc. # build website config if any changes in templates etc.
rebuild_config()
if rebuild_website_config:
rebuild_config()
except frappe.modules.patch_handler.PatchError, e: except frappe.modules.patch_handler.PatchError, e:
print "\n".join(frappe.local.patch_log_list) print "\n".join(frappe.local.patch_log_list)
@@ -625,9 +631,9 @@ def run_tests(app=None, module=None, doctype=None, verbose=False):
exit(1) exit(1)


@cmd @cmd
def serve(port=8000, profile=False):
def serve(port=8000, profile=False, sites_path='.'):
import frappe.app import frappe.app
frappe.app.serve(port=port, profile=profile, site=frappe.local.site)
frappe.app.serve(port=port, profile=profile, site=frappe.local.site, sites_path=sites_path)
@cmd @cmd
def request(args): def request(args):


+ 1
- 1
frappe/client.py 파일 보기

@@ -132,7 +132,7 @@ def get_js(src):
code = srcfile.read() code = srcfile.read()
if frappe.local.lang != "en": if frappe.local.lang != "en":
code += "\n\n$.extend(wn._messages, {})".format(json.dumps(\
code += "\n\n$.extend(frappe._messages, {})".format(json.dumps(\
frappe.get_lang_dict("jsfile", contentpath))) frappe.get_lang_dict("jsfile", contentpath)))
return code return code

+ 1
- 1
frappe/core/README.md 파일 보기

@@ -1 +1 @@
Core module contains the models required for the basic functioning of wnframework including DocType, Profile (user), Role and others.
Core module contains the models required for the basic functioning of frappe including DocType, Profile (user), Role and others.

+ 2
- 2
frappe/core/doctype/page/page.py 파일 보기

@@ -49,8 +49,8 @@ class DocType:
# js # js
if not os.path.exists(path + '.js'): if not os.path.exists(path + '.js'):
with open(path + '.js', 'w') as f: with open(path + '.js', 'w') as f:
f.write("""wn.pages['%s'].onload = function(wrapper) {
wn.ui.make_app_page({
f.write("""frappe.pages['%s'].onload = function(wrapper) {
frappe.ui.make_app_page({
parent: wrapper, parent: wrapper,
title: '%s', title: '%s',
single_column: true single_column: true


+ 55
- 42
frappe/core/doctype/profile/test_profile.py 파일 보기

@@ -57,46 +57,59 @@ class TestProfile(unittest.TestCase):
self.assertEquals(len(p_meta.get({"fieldname": ["not in", ["first_name", "last_name"]]})), len(p_meta) - 2) self.assertEquals(len(p_meta.get({"fieldname": ["not in", ["first_name", "last_name"]]})), len(p_meta) - 2)
test_records = [[{
"doctype":"Profile",
"email": "test@example.com",
"first_name": "_Test",
"new_password": "testpassword",
"enabled": 1
}, {
"doctype":"UserRole",
"parentfield":"user_roles",
"role": "_Test Role"
}, {
"doctype":"UserRole",
"parentfield":"user_roles",
"role": "System Manager"
}],
[{
"doctype":"Profile",
"email": "test1@example.com",
"first_name": "_Test1",
"new_password": "testpassword"
}],
[{
"doctype":"Profile",
"email": "test2@example.com",
"first_name": "_Test2",
"new_password": "testpassword"
}],
[{
"doctype":"Profile",
"email": "testdelete@example.com",
"first_name": "_Test",
"new_password": "testpassword",
"enabled": 1
}, {
"doctype":"UserRole",
"parentfield":"user_roles",
"role": "_Test Role 2"
}, {
"doctype":"UserRole",
"parentfield":"user_roles",
"role": "System Manager"
}],
test_records = [
[
{
"doctype":"Profile",
"email": "test@example.com",
"first_name": "_Test",
"new_password": "testpassword",
"enabled": 1
},
{
"doctype":"UserRole",
"parentfield":"user_roles",
"role": "_Test Role"
},
{
"doctype":"UserRole",
"parentfield":"user_roles",
"role": "System Manager"
}
],
[
{
"doctype":"Profile",
"email": "test1@example.com",
"first_name": "_Test1",
"new_password": "testpassword"
}
],
[
{
"doctype":"Profile",
"email": "test2@example.com",
"first_name": "_Test2",
"new_password": "testpassword"
}
],
[
{
"doctype":"Profile",
"email": "testdelete@example.com",
"first_name": "_Test",
"new_password": "testpassword",
"enabled": 1
},
{
"doctype":"UserRole",
"parentfield":"user_roles",
"role": "_Test Role 2"
},
{
"doctype":"UserRole",
"parentfield":"user_roles",
"role": "System Manager"
}
],
] ]

+ 1
- 1
frappe/core/doctype/report/report.txt 파일 보기

@@ -112,7 +112,7 @@
}, },
{ {
"depends_on": "eval:doc.report_type==\"Query Report\"", "depends_on": "eval:doc.report_type==\"Query Report\"",
"description": "JavaScript Format: wn.query_reports['REPORTNAME'] = {}",
"description": "JavaScript Format: frappe.query_reports['REPORTNAME'] = {}",
"doctype": "DocField", "doctype": "DocField",
"fieldname": "javascript", "fieldname": "javascript",
"fieldtype": "Code", "fieldtype": "Code",


+ 1
- 1
frappe/core/page/permission_manager/permission_manager.js 파일 보기

@@ -45,7 +45,7 @@ frappe.pages['permission-manager'].onload = function(wrapper) {
"<li>"+frappe._("If 'Restricted' is checked, the owner is always allowed based on Role.")+"</li>"+ "<li>"+frappe._("If 'Restricted' is checked, the owner is always allowed based on Role.")+"</li>"+
"<li>"+frappe._("Once you have set this, the users will only be able access documents where the link (e.g Company) exists.")+"</li>"+ "<li>"+frappe._("Once you have set this, the users will only be able access documents where the link (e.g Company) exists.")+"</li>"+
"<li>"+frappe._("Apart from System Manager, roles with Restrict permission can restrict other users for that Document Type")+"</li></ol><hr>\ "<li>"+frappe._("Apart from System Manager, roles with Restrict permission can restrict other users for that Document Type")+"</li></ol><hr>\
<p>"+frappe._("If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/frappe/frappe.ramework/issues'>GitHub Issues</a>")+"</p>\
<p>"+frappe._("If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/frappe/frappe/issues'>GitHub Issues</a>")+"</p>\
</tr></td>\ </tr></td>\
</table>"); </table>");
wrapper.permission_engine = new frappe.PermissionEngine(wrapper); wrapper.permission_engine = new frappe.PermissionEngine(wrapper);


+ 7
- 5
frappe/installer.py 파일 보기

@@ -38,7 +38,7 @@ def install_db(root_login="root", root_password=None, db_name=None, source_sql=N
frappe.flags.in_install_db = False frappe.flags.in_install_db = False


def create_database_and_user(force, verbose): def create_database_and_user(force, verbose):
db_name = frappe.conf.db_name
db_name = frappe.local.conf.db_name
dbman = DbManager(frappe.local.conn) dbman = DbManager(frappe.local.conn)
if force or (db_name not in dbman.get_database_list()): if force or (db_name not in dbman.get_database_list()):
dbman.delete_user(db_name) dbman.delete_user(db_name)
@@ -112,15 +112,16 @@ def install_app(name, verbose=False):
frappe.flags.in_install_app = False frappe.flags.in_install_app = False
def add_to_installed_apps(app_name):
def add_to_installed_apps(app_name, rebuild_sitemap=True):
installed_apps = frappe.get_installed_apps() installed_apps = frappe.get_installed_apps()
if not app_name in installed_apps: if not app_name in installed_apps:
installed_apps.append(app_name) installed_apps.append(app_name)
frappe.conn.set_global("installed_apps", json.dumps(installed_apps)) frappe.conn.set_global("installed_apps", json.dumps(installed_apps))
frappe.conn.commit() frappe.conn.commit()


from frappe.website.doctype.website_sitemap_config.website_sitemap_config import rebuild_website_sitemap_config
rebuild_website_sitemap_config()
if rebuild_sitemap:
from frappe.website.doctype.website_sitemap_config.website_sitemap_config import rebuild_website_sitemap_config
rebuild_website_sitemap_config()


frappe.clear_cache() frappe.clear_cache()


@@ -137,8 +138,9 @@ def set_all_patches_as_completed(app):
def make_conf(db_name=None, db_password=None, site_config=None): def make_conf(db_name=None, db_password=None, site_config=None):
site = frappe.local.site site = frappe.local.site
make_site_config(db_name, db_password, site_config) make_site_config(db_name, db_password, site_config)
sites_path = frappe.local.sites_path
frappe.destroy() frappe.destroy()
frappe.init(site)
frappe.init(site, sites_path=sites_path)


def make_site_config(db_name=None, db_password=None, site_config=None): def make_site_config(db_name=None, db_password=None, site_config=None):
frappe.create_folder(os.path.join(frappe.local.site_path)) frappe.create_folder(os.path.join(frappe.local.site_path))


+ 3
- 0
frappe/model/bean.py 파일 보기

@@ -38,6 +38,9 @@ class Bean:
if dt and dn: if dt and dn:
if isinstance(dn, dict): if isinstance(dn, dict):
dn = frappe.conn.get_value(dt, dn, "name") dn = frappe.conn.get_value(dt, dn, "name")
if dn is None:
raise frappe.DoesNotExistError
self.load_from_db(dt, dn) self.load_from_db(dt, dn)
elif isinstance(dt, list): elif isinstance(dt, list):
self.set_doclist(dt) self.set_doclist(dt)


+ 1
- 1
frappe/model/doc.py 파일 보기

@@ -15,7 +15,7 @@ from frappe.utils import *


class Document: class Document:
""" """
The wn(meta-data)framework equivalent of a Database Record.
The frappe(meta-data)framework equivalent of a Database Record.
Stores,Retrieves,Updates the record in the corresponding table. Stores,Retrieves,Updates the record in the corresponding table.
Runs the triggers required. Runs the triggers required.




+ 3
- 0
frappe/modules/patch_handler.py 파일 보기

@@ -29,6 +29,9 @@ def run_all():
def get_all_patches(): def get_all_patches():
patches = [] patches = []
for app in frappe.get_installed_apps(): for app in frappe.get_installed_apps():
# 3-to-4 fix
if app=="webnotes":
app="frappe"
patches.extend(frappe.get_file_items(frappe.get_pymodule_path(app, "patches.txt"))) patches.extend(frappe.get_file_items(frappe.get_pymodule_path(app, "patches.txt")))
return patches return patches


+ 2
- 1
frappe/patches.txt 파일 보기

@@ -10,4 +10,5 @@ frappe.patches.4_0.remove_index_sitemap
frappe.patches.4_0.add_delete_permission frappe.patches.4_0.add_delete_permission
frappe.patches.4_0.move_match_to_restricted frappe.patches.4_0.move_match_to_restricted
frappe.patches.4_0.set_todo_checked_as_closed frappe.patches.4_0.set_todo_checked_as_closed
frappe.patches.4_0.website_sitemap_hierarchy
frappe.patches.4_0.website_sitemap_hierarchy
frappe.patches.4_0.webnotes_to_frappe

+ 4
- 1
frappe/patches/4_0/set_todo_checked_as_closed.py 파일 보기

@@ -2,4 +2,7 @@ import frappe


def execute(): def execute():
frappe.reload_doc("core", "doctype", "todo") frappe.reload_doc("core", "doctype", "todo")
frappe.conn.sql("""update tabToDo set status = if(ifnull(checked,0)=0, 'Open', 'Closed')""")
try:
frappe.conn.sql("""update tabToDo set status = if(ifnull(checked,0)=0, 'Open', 'Closed')""")
except:
pass

+ 9
- 0
frappe/patches/4_0/webnotes_to_frappe.py 파일 보기

@@ -0,0 +1,9 @@
import frappe, json

def execute():
installed = frappe.get_installed_apps()
if "webnotes" in installed:
installed.remove("webnotes")
installed = ["frappe"] + installed
frappe.conn.set_global("installed_apps", json.dumps(installed))
frappe.clear_cache()

+ 2
- 2
frappe/public/css/app.css 파일 보기

@@ -216,11 +216,11 @@ div#freeze {
} }
/* form */ /* form */


.wn-editor {
.frappe-editor {
cursor: text; cursor: text;
} }


.wn-editor img {
.frappe-editor img {
max-width: 100%; max-width: 100%;
} }




+ 1
- 1
frappe/public/js/frappe/app.js 파일 보기

@@ -173,7 +173,7 @@ frappe.Application = Class.extend({
make_nav_bar: function() { make_nav_bar: function() {
// toolbar // toolbar
if(frappe.boot) { if(frappe.boot) {
frappe.container.frappe.oolbar = new frappe.ui.toolbar.Toolbar();
frappe.container.frappe_toolbar = new frappe.ui.toolbar.Toolbar();
} }
}, },
logout: function() { logout: function() {


+ 1
- 1
frappe/public/js/frappe/misc/number_format.js 파일 보기

@@ -1,7 +1,7 @@
// Copyright (c) 2013, Web Notes Technologies Pvt. Ltd. and Contributors // Copyright (c) 2013, Web Notes Technologies Pvt. Ltd. and Contributors
// MIT License. See license.txt // MIT License. See license.txt


if(!window.frappe. frappe.= {};
if(!window.frappe) window.frappe = {};


function flt(v, decimals, number_format) { function flt(v, decimals, number_format) {
if(v==null || v=='')return 0; if(v==null || v=='')return 0;


+ 2
- 2
frappe/public/js/frappe/misc/pretty_date.js 파일 보기

@@ -26,14 +26,14 @@ function prettyDate(time){




var comment_when = function(datetime) { var comment_when = function(datetime) {
return '<span class="frappe.timestamp" data-timestamp="'+datetime+'">' + prettyDate(datetime) + '</span>';
return '<span class="frappe-timestamp" data-timestamp="'+datetime+'">' + prettyDate(datetime) + '</span>';
}; };


frappe.provide("frappe.datetime"); frappe.provide("frappe.datetime");
frappe.datetime.comment_when = prettyDate; frappe.datetime.comment_when = prettyDate;
frappe.datetime.refresh_when = function() { frappe.datetime.refresh_when = function() {
if(jQuery) { if(jQuery) {
$(".frappe.timestamp").each(function() {
$(".frappe-timestamp").each(function() {
$(this).html(prettyDate($(this).attr("data-timestamp"))); $(this).html(prettyDate($(this).attr("data-timestamp")));
}) })
} }


+ 2
- 1
frappe/public/js/frappe/provide.js 파일 보기

@@ -2,7 +2,8 @@
// MIT License. See license.txt // MIT License. See license.txt


// provide a namespace // provide a namespace
if(!window.frappe.frappe.= {}
if(!window.frappe)
window.frappe = {};
frappe.provide = function(namespace) { frappe.provide = function(namespace) {
// docs: create a namespace // // docs: create a namespace //
var nsl = namespace.split('.'); var nsl = namespace.split('.');


+ 5
- 5
frappe/public/js/frappe/ui/editor.js 파일 보기

@@ -15,7 +15,7 @@ bsEditor = Class.extend({
this.setup_fixed_toolbar(); this.setup_fixed_toolbar();
} else if(this.options.parent) { } else if(this.options.parent) {
this.wrapper = $("<div></div>").appendTo(this.options.parent); this.wrapper = $("<div></div>").appendTo(this.options.parent);
this.setup_editor($("<div class='frappe.editor'></div>").appendTo(this.wrapper));
this.setup_editor($("<div class='frappe-list'></div>").appendTo(this.wrapper));
this.setup_inline_toolbar(); this.setup_inline_toolbar();
this.editor.css(this.options.inline_editor_style); this.editor.css(this.options.inline_editor_style);
this.set_editing(); this.set_editing();
@@ -223,8 +223,8 @@ bsEditorToolbar = Class.extend({
make: function(parent) { make: function(parent) {
if(!parent) if(!parent)
parent = $("body"); parent = $("body");
if(!parent.find(".frappe.editor-toolbar").length) {
this.toolbar = $('<div class="frappe.editor-toolbar frappe.ignore-click">\
if(!parent.find(".frappe-list-toolbar").length) {
this.toolbar = $('<div class="frappe-list-toolbar frappe-ignore-click">\
<div class="btn-toolbar" data-role="editor-toolbar" style="margin-bottom: 7px;">\ <div class="btn-toolbar" data-role="editor-toolbar" style="margin-bottom: 7px;">\
<div class="btn-group form-group">\ <div class="btn-group form-group">\
<a class="btn btn-default btn-small dropdown-toggle" data-toggle="dropdown" \ <a class="btn btn-default btn-small dropdown-toggle" data-toggle="dropdown" \
@@ -438,7 +438,7 @@ bsHTMLEditor = Class.extend({
style="height: 400px; width: 100%; font-family: Monaco, \'Courier New\', monospace; font-size: 11px">\ style="height: 400px; width: 100%; font-family: Monaco, \'Courier New\', monospace; font-size: 11px">\
</textarea><br>\ </textarea><br>\
<button class="btn btn-primary" style="margin-top: 7px;">Save</button>'); <button class="btn btn-primary" style="margin-top: 7px;">Save</button>');
this.modal.addClass("frappe.ignore-click");
this.modal.addClass("frappe-ignore-click");
this.modal.find(".btn-primary").on("click", function() { this.modal.find(".btn-primary").on("click", function() {
var html = me.modal.find("textarea").val(); var html = me.modal.find("textarea").val();
$.each(me.editor.dataurls, function(key, val) { $.each(me.editor.dataurls, function(key, val) {
@@ -480,7 +480,7 @@ bsLinkEditor = Class.extend({
</div>\ </div>\
<button class="btn btn-primary" style="margin-top: 7px;">Insert</button>'); <button class="btn btn-primary" style="margin-top: 7px;">Insert</button>');
this.modal.addClass("frappe.ignore-click");
this.modal.addClass("frappe-ignore-click");
this.modal.find(".btn-primary").on("click", function() { this.modal.find(".btn-primary").on("click", function() {
me.toolbar.restore_selection(); me.toolbar.restore_selection();
var url = me.modal.find("input[type=text]").val(); var url = me.modal.find("input[type=text]").val();


+ 2
- 2
frappe/public/js/frappe/ui/listing.js 파일 보기

@@ -61,7 +61,7 @@ frappe.ui.Listing = Class.extend({
$.extend(this, this.opts); $.extend(this, this.opts);
$(this.parent).html(repl('\ $(this.parent).html(repl('\
<div class="frappe.ist">\
<div class="frappe-list">\
<h3 class="title hide">%(title)s</h3>\ <h3 class="title hide">%(title)s</h3>\
\ \
<div class="list-filters" style="display: none;">\ <div class="list-filters" style="display: none;">\
@@ -99,7 +99,7 @@ frappe.ui.Listing = Class.extend({
</p>\ </p>\
</div>\ </div>\
', this.opts)); ', this.opts));
this.$w = $(this.parent).find('.frappe.ist');
this.$w = $(this.parent).find('.frappe-list');
this.set_events(); this.set_events();
if(this.appframe) { if(this.appframe) {


+ 3
- 3
frappe/public/js/frappe/views/doclistview.js 파일 보기

@@ -53,7 +53,7 @@ frappe.views.DocListView = frappe.ui.Listing.extend({
this.page.doclistview = this; this.page.doclistview = this;
this.$page = $(this.page).css({"min-height": "400px"}); this.$page = $(this.page).css({"min-height": "400px"});
$('<div class="frappe.ist-area" style="margin-bottom: 25px;">\
$('<div class="frappe-list-area" style="margin-bottom: 25px;">\
<div class="help">'+frappe._('Loading')+'...</div></div>') <div class="help">'+frappe._('Loading')+'...</div></div>')
.appendTo(this.$page.find(".layout-main-section")); .appendTo(this.$page.find(".layout-main-section"));
@@ -83,7 +83,7 @@ frappe.views.DocListView = frappe.ui.Listing.extend({
setup: function() { setup: function() {
this.can_delete = frappe.model.can_delete(this.doctype); this.can_delete = frappe.model.can_delete(this.doctype);
this.meta = locals.DocType[this.doctype]; this.meta = locals.DocType[this.doctype];
this.$page.find('.frappe.ist-area').empty(),
this.$page.find('.frappe-list-area').empty(),
this.setup_listview(); this.setup_listview();
this.setup_docstatus_filter(); this.setup_docstatus_filter();
this.init_list(false); this.init_list(false);
@@ -153,7 +153,7 @@ frappe.views.DocListView = frappe.ui.Listing.extend({
}, },
setup_listview: function() { setup_listview: function() {
this.listview = frappe.views.get_listview(this.doctype, this); this.listview = frappe.views.get_listview(this.doctype, this);
this.wrapper = this.$page.find('.frappe.ist-area');
this.wrapper = this.$page.find('.frappe-list-area');
this.page_length = 20; this.page_length = 20;
this.allow_delete = true; this.allow_delete = true;
}, },


+ 1
- 1
frappe/public/js/frappe/views/test_runner.js 파일 보기

@@ -15,7 +15,7 @@ frappe.standard_pages["test-runner"] = function() {
var route = frappe.get_route(); var route = frappe.get_route();
if(route.length < 2) { if(route.length < 2) {
msgprint("To run a test add the module name in the route after 'test-runner/'. \ msgprint("To run a test add the module name in the route after 'test-runner/'. \
For example, #test-runner/lib/js/frappe.test_app.js");
For example, #test-runner/lib/js/frappe/test_app.js");
return; return;
} }




+ 4
- 4
frappe/public/js/lib/jquery/jquery.min.js
파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
파일 보기


+ 1
- 1
frappe/templates/base.html 파일 보기

@@ -4,7 +4,7 @@
<meta charset="utf-8"> <meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>{{ title }}</title> <title>{{ title }}</title>
<meta name="generator" content="wnframework">
<meta name="generator" content="frappe">
<script type="text/javascript" src="/assets/frappe/js/lib/jquery/jquery.min.js"></script> <script type="text/javascript" src="/assets/frappe/js/lib/jquery/jquery.min.js"></script>
<link rel="shortcut icon" href="{{ favicon or "" }}" type="image/x-icon"> <link rel="shortcut icon" href="{{ favicon or "" }}" type="image/x-icon">


+ 3
- 3
frappe/templates/generators/blog_post.html 파일 보기

@@ -26,9 +26,9 @@
<script> <script>
$(function() { $(function() {
if(window.logged_in && getCookie("system_user")==="yes") { if(window.logged_in && getCookie("system_user")==="yes") {
wn.has_permission("Blog Post", "{{ name }}", "write", function(r) {
wn.require("assets/frappe/js/wn/website/editable.js");
wn.make_editable($('[itemprop="articleBody"]'), "Blog Post", "{{ name }}", "content");
frappe.has_permission("Blog Post", "{{ name }}", "write", function(r) {
frappe.require("assets/frappe/js/frappe/website/editable.js");
frappe.make_editable($('[itemprop="articleBody"]'), "Blog Post", "{{ name }}", "content");
}); });
} }
}); });


+ 3
- 3
frappe/templates/generators/web_page.html 파일 보기

@@ -42,9 +42,9 @@
<script> <script>
$(function() { $(function() {
if(window.logged_in && getCookie("system_user")==="yes") { if(window.logged_in && getCookie("system_user")==="yes") {
wn.has_permission("Web Page", "{{ docname }}", "write", function(r) {
wn.require("assets/frappe/js/wn/website/editable.js");
wn.make_editable($(".web-page-content"), "Web Page", "{{ docname }}", "main_section");
frappe.has_permission("Web Page", "{{ docname }}", "write", function(r) {
frappe.require("assets/frappe/js/frappe/website/editable.js");
frappe.make_editable($(".web-page-content"), "Web Page", "{{ docname }}", "main_section");
}); });
} }
}); });


+ 3
- 3
frappe/templates/includes/comments.html 파일 보기

@@ -58,11 +58,11 @@ $(document).ready(function() {
} }
if(!args.comment_by_fullname || !args.comment_by || !args.comment) { if(!args.comment_by_fullname || !args.comment_by || !args.comment) {
wn.msgprint("All fields are necessary to submit the comment.")
frappe.msgprint("All fields are necessary to submit the comment.")
return false; return false;
} }
wn.call({
frappe.call({
btn: this, btn: this,
type: "POST", type: "POST",
method: "frappe.templates.includes.comments.add_comment", method: "frappe.templates.includes.comments.add_comment",
@@ -70,7 +70,7 @@ $(document).ready(function() {
callback: function(r) { callback: function(r) {
if(r.exc) { if(r.exc) {
if(r._server_messages) if(r._server_messages)
wn.msgprint(r._server_messages);
frappe.msgprint(r._server_messages);
} else { } else {
$(r.message).appendTo("#comment-list"); $(r.message).appendTo("#comment-list");
$(".no-comment, .add-comment").toggle(false); $(".no-comment, .add-comment").toggle(false);


+ 1
- 1
frappe/templates/includes/inline_post.html 파일 보기

@@ -34,7 +34,7 @@
{%- endif %} {%- endif %}
</a></li> </a></li>
{%- endif -%} {%- endif -%}
<li><span class="wn-timestamp" data-timestamp="{{ post.creation }}"></span></li>
<li><span class="frappe-timestamp" data-timestamp="{{ post.creation }}"></span></li>
<li>by <span itemprop="author">{{ post.first_name or "" }} {{ post.last_name or "" }}</span></li> <li>by <span itemprop="author">{{ post.first_name or "" }} {{ post.last_name or "" }}</span></li>
<li class="edit-post pull-right hide" data-owner="{{ post.owner }}"> <li class="edit-post pull-right hide" data-owner="{{ post.owner }}">
<a class="text-muted" href="{{ edit_url }}">[edit]</a> <a class="text-muted" href="{{ edit_url }}">[edit]</a>


+ 2
- 1
frappe/templates/pages/login.py 파일 보기

@@ -6,5 +6,6 @@ import frappe


def get_context(context): def get_context(context):
# get settings from site config # get settings from site config
context["title"] = "Login"
if frappe.conf.get("fb_app_id"): if frappe.conf.get("fb_app_id"):
return { "fb_app_id": frappe.conf.fb_app_id, "title": "Login" }
return { "fb_app_id": frappe.conf.fb_app_id }

+ 1
- 1
frappe/templates/pages/print.html 파일 보기

@@ -4,7 +4,7 @@
<meta charset="utf-8"> <meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Print Format</title> <title>Print Format</title>
<meta name="generator" content="wnframework">
<meta name="generator" content="frappe">
<style> <style>
{{ css }} {{ css }}
</style> </style>


+ 4
- 4
frappe/templates/pages/update-password.html 파일 보기

@@ -46,15 +46,15 @@ $(document).ready(function() {
} }
if(!args.old_password && !args.key) { if(!args.old_password && !args.key) {
wn.msgprint("Old Password Required.");
frappe.msgprint("Old Password Required.");
return; return;
} }
if(!args.new_password) { if(!args.new_password) {
wn.msgprint("New Password Required.")
frappe.msgprint("New Password Required.")
return; return;
} }
wn.call({
frappe.call({
type: "POST", type: "POST",
method: "frappe.core.doctype.profile.profile.update_password", method: "frappe.core.doctype.profile.profile.update_password",
btn: $("#update"), btn: $("#update"),
@@ -62,7 +62,7 @@ $(document).ready(function() {
callback: function(r) { callback: function(r) {
if(r.message) { if(r.message) {
$("input").val(""); $("input").val("");
var dialog = wn.msgprint(r.message);
var dialog = frappe.msgprint(r.message);
dialog.on("hide.bs.modal", function() { dialog.on("hide.bs.modal", function() {
window.location.href = "login"; window.location.href = "login";
}); });


+ 1
- 1
frappe/templates/website_group/edit_post.html 파일 보기

@@ -1,7 +1,7 @@
{% include "templates/includes/post_editor.html" %} {% include "templates/includes/post_editor.html" %}


<script> <script>
wn.require("/assets/js/canvasResize.min.js");
frappe.require("/assets/js/canvasResize.min.js");
$(function() { $(function() {
website.bind_add_post(); website.bind_add_post();


+ 1
- 1
frappe/templates/website_group/forum.html 파일 보기

@@ -9,7 +9,7 @@
<script> <script>
$(function() { $(function() {
if($(".post").length===20) { if($(".post").length===20) {
wn.setup_pagination();
frappe.setup_pagination();
} }
{% if group.group_type == "Forum" -%} {% if group.group_type == "Forum" -%}


+ 1
- 1
frappe/templates/website_group/post.html 파일 보기

@@ -13,7 +13,7 @@
</div> </div>


<script> <script>
wn.require("/assets/js/canvasResize.min.js");
frappe.require("/assets/js/canvasResize.min.js");
$(function() { $(function() {
website.toggle_edit(true); website.toggle_edit(true);
website.toggle_upvote(); website.toggle_upvote();


+ 3
- 3
frappe/translate.py 파일 보기

@@ -13,7 +13,7 @@ Contributing:
# loading # loading
# doctype, page, report # doctype, page, report
# boot(startup) # boot(startup)
# wn.require
# frappe.require
# frappe._ # frappe._


import frappe, os, re, codecs, json import frappe, os, re, codecs, json
@@ -71,7 +71,7 @@ def get_dict(fortype, name=None):
def add_lang_dict(code): def add_lang_dict(code):
messages = extract_messages_from_code(code) messages = extract_messages_from_code(code)
code += "\n\n$.extend(wn._messages, %s)" % json.dumps(make_dict_from_messages(messages))
code += "\n\n$.extend(frappe._messages, %s)" % json.dumps(make_dict_from_messages(messages))
return code return code


def make_dict_from_messages(messages, full_dict=None): def make_dict_from_messages(messages, full_dict=None):
@@ -86,7 +86,7 @@ def make_dict_from_messages(messages, full_dict=None):
return out return out


def get_lang_js(fortype, name): def get_lang_js(fortype, name):
return "\n\n$.extend(wn._messages, %s)" % json.dumps(get_dict(fortype, name))
return "\n\n$.extend(frappe._messages, %s)" % json.dumps(get_dict(fortype, name))


def get_full_dict(lang): def get_full_dict(lang):
if lang == "en": return {} if lang == "en": return {}


+ 2
- 2
frappe/translations/ar.csv 파일 보기

@@ -368,7 +368,7 @@ Icon will appear on the button,سوف تظهر أيقونة على زر
"If image is selected, color will be ignored (attach first)",إذا تم تحديد الصورة، سيتم تجاهل اللون (إرفاق الأولى) "If image is selected, color will be ignored (attach first)",إذا تم تحديد الصورة، سيتم تجاهل اللون (إرفاق الأولى)
"If not, create a",إن لم يكن، إنشاء "If not, create a",إن لم يكن، إنشاء
"If the 'territory' Link Field exists, it will give you an option to select it",إذا حقل &#39;الأرض&#39; لينك موجود، وسوف تعطيك الخيار لتحديده "If the 'territory' Link Field exists, it will give you an option to select it",إذا حقل &#39;الأرض&#39; لينك موجود، وسوف تعطيك الخيار لتحديده
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/webnotes/wnframework/issues'>GitHub Issues</a>",إذا هذه التعليمات حيث لم تكن مفيدة ، يرجى إضافة في اقتراحاتكم في <a href='https://github.com/webnotes/wnframework/issues'> جيثب قضايا < / A>
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/frappe/frappe/issues'>GitHub Issues</a>",إذا هذه التعليمات حيث لم تكن مفيدة ، يرجى إضافة في اقتراحاتكم في <a href='https://github.com/frappe/frappe/issues'> جيثب قضايا < / A>
"If you set this, this Item will come in a drop-down under the selected parent.",إذا قمت بتعيين هذا ، فإن هذا البند تأتي في قائمة منسدلة تحت الأصل المحدد . "If you set this, this Item will come in a drop-down under the selected parent.",إذا قمت بتعيين هذا ، فإن هذا البند تأتي في قائمة منسدلة تحت الأصل المحدد .
Image,صورة Image,صورة
Image Link,رابط الصورة Image Link,رابط الصورة
@@ -404,7 +404,7 @@ Is Single,هو واحدة
Is Standard,هو معيار Is Standard,هو معيار
Is Submittable,هو Submittable Is Submittable,هو Submittable
JSON,JSON JSON,JSON
JavaScript Format: wn.query_reports['REPORTNAME'] = {},جافا سكريبت الصيغة: wn.query_reports [' REPORTNAME '] = { }
JavaScript Format: frappe.query_reports['REPORTNAME'] = {},جافا سكريبت الصيغة: frappe.query_reports [' REPORTNAME '] = { }
Javascript,جافا سكريبت Javascript,جافا سكريبت
Javascript to append to the head section of the page.,جافا سكريبت لإلحاق رئيس قسم من الصفحة. Javascript to append to the head section of the page.,جافا سكريبت لإلحاق رئيس قسم من الصفحة.
Keep a track of all communications,حفاظ على تعقب من كافة الاتصالات Keep a track of all communications,حفاظ على تعقب من كافة الاتصالات


+ 2
- 2
frappe/translations/de.csv 파일 보기

@@ -362,7 +362,7 @@ Icon will appear on the button,Icon wird auf der Schaltfläche angezeigt
"If image is selected, color will be ignored (attach first)","Wenn das Bild ausgewählt ist, wird die Farbe ignoriert (legen zuerst) werden" "If image is selected, color will be ignored (attach first)","Wenn das Bild ausgewählt ist, wird die Farbe ignoriert (legen zuerst) werden"
"If not, create a","Wenn nicht, erstellen Sie eine" "If not, create a","Wenn nicht, erstellen Sie eine"
"If the 'territory' Link Field exists, it will give you an option to select it","Wenn das ""Gebiet"" Link Field existiert, wird es geben Sie eine Option, um sie auszuwählen" "If the 'territory' Link Field exists, it will give you an option to select it","Wenn das ""Gebiet"" Link Field existiert, wird es geben Sie eine Option, um sie auszuwählen"
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/webnotes/wnframework/issues'>GitHub Issues</a>","Werden diese Hinweise nicht geholfen , wo , fügen Sie bitte Ihre Vorschläge an <a href='https://github.com/webnotes/wnframework/issues'> GitHub Probleme </ a>"
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/frappe/frappe/issues'>GitHub Issues</a>","Werden diese Hinweise nicht geholfen , wo , fügen Sie bitte Ihre Vorschläge an <a href='https://github.com/frappe/frappe/issues'> GitHub Probleme </ a>"
"If you set this, this Item will come in a drop-down under the selected parent.","Wenn Sie diese Einstellung , wird dieser Artikel in einer Drop-Down unter der ausgewählten Mutter kommen ." "If you set this, this Item will come in a drop-down under the selected parent.","Wenn Sie diese Einstellung , wird dieser Artikel in einer Drop-Down unter der ausgewählten Mutter kommen ."
Image,Bild Image,Bild
Image Link,Link zum Bild Image Link,Link zum Bild
@@ -398,7 +398,7 @@ Is Single,Ist Single
Is Standard,Ist Standard Is Standard,Ist Standard
Is Submittable,Ist Submittable Is Submittable,Ist Submittable
JSON,JSON JSON,JSON
JavaScript Format: wn.query_reports['REPORTNAME'] = {},JavaScript- Format: wn.query_reports [' REPORT '] = {}
JavaScript Format: frappe.query_reports['REPORTNAME'] = {},JavaScript- Format: frappe.query_reports [' REPORT '] = {}
Javascript,Javascript Javascript,Javascript
Javascript to append to the head section of the page.,"Javascript, um den Kopfteil der Seite anhängen." Javascript to append to the head section of the page.,"Javascript, um den Kopfteil der Seite anhängen."
Keep a track of all communications,Halten Sie einen Überblick über alle Kommunikations- Keep a track of all communications,Halten Sie einen Überblick über alle Kommunikations-


+ 2
- 2
frappe/translations/el.csv 파일 보기

@@ -368,7 +368,7 @@ Icon will appear on the button,Θα εμφανιστεί το εικονίδιο
"If image is selected, color will be ignored (attach first)","Εάν η εικόνα έχει επιλεγεί, το χρώμα θα πρέπει να αγνοηθεί (επισυνάψετε πρώτα)" "If image is selected, color will be ignored (attach first)","Εάν η εικόνα έχει επιλεγεί, το χρώμα θα πρέπει να αγνοηθεί (επισυνάψετε πρώτα)"
"If not, create a","Αν όχι, να δημιουργηθεί ένα" "If not, create a","Αν όχι, να δημιουργηθεί ένα"
"If the 'territory' Link Field exists, it will give you an option to select it","Αν πεδίου Link το «έδαφος» υπάρχει, αυτό θα σας δώσει μια επιλογή για να επιλέξετε" "If the 'territory' Link Field exists, it will give you an option to select it","Αν πεδίου Link το «έδαφος» υπάρχει, αυτό θα σας δώσει μια επιλογή για να επιλέξετε"
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/webnotes/wnframework/issues'>GitHub Issues</a>","Εάν αυτές οι οδηγίες , όπου δεν είναι χρήσιμο , παρακαλούμε να προσθέσετε δικές σας προτάσεις στο href='https://github.com/webnotes/wnframework/issues'> <a GitHub Θέματα < / a>"
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/frappe/frappe/issues'>GitHub Issues</a>","Εάν αυτές οι οδηγίες , όπου δεν είναι χρήσιμο , παρακαλούμε να προσθέσετε δικές σας προτάσεις στο href='https://github.com/frappe/frappe/issues'> <a GitHub Θέματα < / a>"
"If you set this, this Item will come in a drop-down under the selected parent.","Αν ορίσετε αυτό, αυτό το στοιχείο θα έρθει σε ένα drop-down κάτω από τον επιλεγμένο γονέα." "If you set this, this Item will come in a drop-down under the selected parent.","Αν ορίσετε αυτό, αυτό το στοιχείο θα έρθει σε ένα drop-down κάτω από τον επιλεγμένο γονέα."
Image,Εικόνα Image,Εικόνα
Image Link,Σύνδεσμος εικόνας Image Link,Σύνδεσμος εικόνας
@@ -404,7 +404,7 @@ Is Single,Είναι Single
Is Standard,Είναι πρότυπο Is Standard,Είναι πρότυπο
Is Submittable,Είναι Submittable Is Submittable,Είναι Submittable
JSON,JSON JSON,JSON
JavaScript Format: wn.query_reports['REPORTNAME'] = {},JavaScript Format: wn.query_reports [&#39;REPORTNAME&#39;] = {}
JavaScript Format: frappe.query_reports['REPORTNAME'] = {},JavaScript Format: frappe.query_reports [&#39;REPORTNAME&#39;] = {}
Javascript,Javascript Javascript,Javascript
Javascript to append to the head section of the page.,Javascript για να προσθέσετε στο τμήμα της κεφαλής της σελίδας. Javascript to append to the head section of the page.,Javascript για να προσθέσετε στο τμήμα της κεφαλής της σελίδας.
Keep a track of all communications,Κρατήστε ένα κομμάτι του συνόλου των επικοινωνιών Keep a track of all communications,Κρατήστε ένα κομμάτι του συνόλου των επικοινωνιών


+ 2
- 2
frappe/translations/es.csv 파일 보기

@@ -368,7 +368,7 @@ Icon will appear on the button,Aparecerá el icono en el botón
"If image is selected, color will be ignored (attach first)","Si se selecciona una imagen, el color será ignorado (adjunte primero)" "If image is selected, color will be ignored (attach first)","Si se selecciona una imagen, el color será ignorado (adjunte primero)"
"If not, create a","Si no, crea una" "If not, create a","Si no, crea una"
"If the 'territory' Link Field exists, it will give you an option to select it","Si el campo de &#39;territorio&#39; Link existe, se le dará la opción de seleccionar" "If the 'territory' Link Field exists, it will give you an option to select it","Si el campo de &#39;territorio&#39; Link existe, se le dará la opción de seleccionar"
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/webnotes/wnframework/issues'>GitHub Issues</a>","Si estas instrucciones cuando no es útil, por favor, añadir sus sugerencias en <a href='https://github.com/webnotes/wnframework/issues'> GitHub Issues < / a>"
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/frappe/frappe/issues'>GitHub Issues</a>","Si estas instrucciones cuando no es útil, por favor, añadir sus sugerencias en <a href='https://github.com/frappe/frappe/issues'> GitHub Issues < / a>"
"If you set this, this Item will come in a drop-down under the selected parent.","Si establece este , este artículo entrará en un menú desplegable bajo la matriz seleccionada." "If you set this, this Item will come in a drop-down under the selected parent.","Si establece este , este artículo entrará en un menú desplegable bajo la matriz seleccionada."
Image,Imagen Image,Imagen
Image Link,Enlace a la imagen Image Link,Enlace a la imagen
@@ -404,7 +404,7 @@ Is Single,Es el único
Is Standard,Es el estándar Is Standard,Es el estándar
Is Submittable,Es Submittable Is Submittable,Es Submittable
JSON,JSON JSON,JSON
JavaScript Format: wn.query_reports['REPORTNAME'] = {},JavaScript Formato: wn.query_reports [' REPORTNAME '] = { }
JavaScript Format: frappe.query_reports['REPORTNAME'] = {},JavaScript Formato: frappe.query_reports [' REPORTNAME '] = { }
Javascript,Javascript Javascript,Javascript
Javascript to append to the head section of the page.,Javascript para anexar a la sección principal de la página. Javascript to append to the head section of the page.,Javascript para anexar a la sección principal de la página.
Keep a track of all communications,Mantenga un registro de todas las comunicaciones Keep a track of all communications,Mantenga un registro de todas las comunicaciones


+ 2
- 2
frappe/translations/fr.csv 파일 보기

@@ -368,7 +368,7 @@ Icon will appear on the button,Icône apparaîtra sur le bouton
"If image is selected, color will be ignored (attach first)","Si l&#39;image est sélectionnée, la couleur sera ignoré (joindre en premier)" "If image is selected, color will be ignored (attach first)","Si l&#39;image est sélectionnée, la couleur sera ignoré (joindre en premier)"
"If not, create a","Sinon, créez un" "If not, create a","Sinon, créez un"
"If the 'territory' Link Field exists, it will give you an option to select it","Si le champ Lien du «territoire» existe, il vous donnera une option pour la sélectionner" "If the 'territory' Link Field exists, it will give you an option to select it","Si le champ Lien du «territoire» existe, il vous donnera une option pour la sélectionner"
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/webnotes/wnframework/issues'>GitHub Issues</a>","Si ces instructions où pas utile , s'il vous plaît ajouter vos suggestions à l'adresse <a href='https://github.com/webnotes/wnframework/issues'> GitHub questions </ a >"
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/frappe/frappe/issues'>GitHub Issues</a>","Si ces instructions où pas utile , s'il vous plaît ajouter vos suggestions à l'adresse <a href='https://github.com/frappe/frappe/issues'> GitHub questions </ a >"
"If you set this, this Item will come in a drop-down under the selected parent.","Si vous définissez cette , cet article va venir dans un menu déroulant dans le cadre du parent sélectionné ." "If you set this, this Item will come in a drop-down under the selected parent.","Si vous définissez cette , cet article va venir dans un menu déroulant dans le cadre du parent sélectionné ."
Image,Image Image,Image
Image Link,Lien vers l&#39;image Image Link,Lien vers l&#39;image
@@ -404,7 +404,7 @@ Is Single,Est célibataire
Is Standard,Est-standard Is Standard,Est-standard
Is Submittable,Est-Submittable Is Submittable,Est-Submittable
JSON,JSON JSON,JSON
JavaScript Format: wn.query_reports['REPORTNAME'] = {},JavaScript Format : wn.query_reports [' REPORTNAME '] = {}
JavaScript Format: frappe.query_reports['REPORTNAME'] = {},JavaScript Format : frappe.query_reports [' REPORTNAME '] = {}
Javascript,Javascript Javascript,Javascript
Javascript to append to the head section of the page.,Javascript à ajouter à la section head de la page. Javascript to append to the head section of the page.,Javascript à ajouter à la section head de la page.
Keep a track of all communications,Gardez une trace de toutes les communications Keep a track of all communications,Gardez une trace de toutes les communications


+ 2
- 2
frappe/translations/hi.csv 파일 보기

@@ -368,7 +368,7 @@ Icon will appear on the button,आइकन बटन पर दिखाई द
"If image is selected, color will be ignored (attach first)","यदि छवि का चयन किया गया है, रंग (1 देते हैं) पर ध्यान नहीं दिया जाएगा" "If image is selected, color will be ignored (attach first)","यदि छवि का चयन किया गया है, रंग (1 देते हैं) पर ध्यान नहीं दिया जाएगा"
"If not, create a","यदि नहीं, तो एक बनाने के लिए" "If not, create a","यदि नहीं, तो एक बनाने के लिए"
"If the 'territory' Link Field exists, it will give you an option to select it","यदि &#39;क्षेत्र&#39; लिंक क्षेत्र में मौजूद है, यह आप एक का चयन करने के लिए यह विकल्प दे देंगे" "If the 'territory' Link Field exists, it will give you an option to select it","यदि &#39;क्षेत्र&#39; लिंक क्षेत्र में मौजूद है, यह आप एक का चयन करने के लिए यह विकल्प दे देंगे"
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/webnotes/wnframework/issues'>GitHub Issues</a>","इन निर्देशों जहां मददगार नहीं हैं, <a href='https://github.com/webnotes/wnframework/issues'> GitHub मुद्दे </ a> पर अपने सुझाव में जोड़ने के लिए कृपया"
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/frappe/frappe/issues'>GitHub Issues</a>","इन निर्देशों जहां मददगार नहीं हैं, <a href='https://github.com/frappe/frappe/issues'> GitHub मुद्दे </ a> पर अपने सुझाव में जोड़ने के लिए कृपया"
"If you set this, this Item will come in a drop-down under the selected parent.","आप यह निर्धारित करते हैं, इस आइटम का चयन माता पिता के नीचे एक ड्रॉप डाउन में आ जाएगा ." "If you set this, this Item will come in a drop-down under the selected parent.","आप यह निर्धारित करते हैं, इस आइटम का चयन माता पिता के नीचे एक ड्रॉप डाउन में आ जाएगा ."
Image,छवि Image,छवि
Image Link,फोटो लिंक Image Link,फोटो लिंक
@@ -404,7 +404,7 @@ Is Single,एकल
Is Standard,मानक है Is Standard,मानक है
Is Submittable,Submittable है Is Submittable,Submittable है
JSON,JSON JSON,JSON
JavaScript Format: wn.query_reports['REPORTNAME'] = {},जावास्क्रिप्ट स्वरूप: wn.query_reports [' REPORTNAME '] = {}
JavaScript Format: frappe.query_reports['REPORTNAME'] = {},जावास्क्रिप्ट स्वरूप: frappe.query_reports [' REPORTNAME '] = {}
Javascript,जावास्क्रिप्ट Javascript,जावास्क्रिप्ट
Javascript to append to the head section of the page.,जावास्क्रिप्ट पृष्ठ के सिर अनुभाग को संलग्न करने के लिए. Javascript to append to the head section of the page.,जावास्क्रिप्ट पृष्ठ के सिर अनुभाग को संलग्न करने के लिए.
Keep a track of all communications,सभी संचार के एक ट्रैक रखें Keep a track of all communications,सभी संचार के एक ट्रैक रखें


+ 2
- 2
frappe/translations/hr.csv 파일 보기

@@ -368,7 +368,7 @@ Icon will appear on the button,Ikona će se pojaviti na gumb
"If image is selected, color will be ignored (attach first)","Ako je slika odabrana, boja će biti ignoriran (priložiti prvi)" "If image is selected, color will be ignored (attach first)","Ako je slika odabrana, boja će biti ignoriran (priložiti prvi)"
"If not, create a","Ako ne, stvoriti" "If not, create a","Ako ne, stvoriti"
"If the 'territory' Link Field exists, it will give you an option to select it","Ako &#39;teritoriju&#39; Link Polje postoji, to će vam dati mogućnost da ga odabrali" "If the 'territory' Link Field exists, it will give you an option to select it","Ako &#39;teritoriju&#39; Link Polje postoji, to će vam dati mogućnost da ga odabrali"
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/webnotes/wnframework/issues'>GitHub Issues</a>","Ako ove upute gdje nije korisno , dodajte u svojim prijedlozima na <a href='https://github.com/webnotes/wnframework/issues'> GitHub pitanja < / a>"
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/frappe/frappe/issues'>GitHub Issues</a>","Ako ove upute gdje nije korisno , dodajte u svojim prijedlozima na <a href='https://github.com/frappe/frappe/issues'> GitHub pitanja < / a>"
"If you set this, this Item will come in a drop-down under the selected parent.","Ako postavite ovo , ova stavka će doći u padajućem okviru odabranog roditelja ." "If you set this, this Item will come in a drop-down under the selected parent.","Ako postavite ovo , ova stavka će doći u padajućem okviru odabranog roditelja ."
Image,Slika Image,Slika
Image Link,Slika Link Image Link,Slika Link
@@ -404,7 +404,7 @@ Is Single,Je Samac
Is Standard,Je Standardni Is Standard,Je Standardni
Is Submittable,Je Submittable Is Submittable,Je Submittable
JSON,JSON JSON,JSON
JavaScript Format: wn.query_reports['REPORTNAME'] = {},JavaScript format : wn.query_reports [ ' REPORTNAME ' ] = { }
JavaScript Format: frappe.query_reports['REPORTNAME'] = {},JavaScript format : frappe.query_reports [ ' REPORTNAME ' ] = { }
Javascript,Javascript Javascript,Javascript
Javascript to append to the head section of the page.,Javascript da doda glave dijelu stranice. Javascript to append to the head section of the page.,Javascript da doda glave dijelu stranice.
Keep a track of all communications,Držite praćenje svih komunikacija Keep a track of all communications,Držite praćenje svih komunikacija


+ 2
- 2
frappe/translations/it.csv 파일 보기

@@ -368,7 +368,7 @@ Icon will appear on the button,Icona apparirà sul tasto
"If image is selected, color will be ignored (attach first)","Se si seleziona un&#39;immagine, il colore viene ignorata (allegare prima)" "If image is selected, color will be ignored (attach first)","Se si seleziona un&#39;immagine, il colore viene ignorata (allegare prima)"
"If not, create a","Se non, creare un" "If not, create a","Se non, creare un"
"If the 'territory' Link Field exists, it will give you an option to select it","Se il &#39;territorio&#39; Link campo esiste, che vi darà la possibilità di selezionare la" "If the 'territory' Link Field exists, it will give you an option to select it","Se il &#39;territorio&#39; Link campo esiste, che vi darà la possibilità di selezionare la"
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/webnotes/wnframework/issues'>GitHub Issues</a>","Se queste istruzioni se non disponibile, si prega di aggiungere nei vostri suggerimenti all'indirizzo <a href='https://github.com/webnotes/wnframework/issues'> GitHub Issues < / a>"
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/frappe/frappe/issues'>GitHub Issues</a>","Se queste istruzioni se non disponibile, si prega di aggiungere nei vostri suggerimenti all'indirizzo <a href='https://github.com/frappe/frappe/issues'> GitHub Issues < / a>"
"If you set this, this Item will come in a drop-down under the selected parent.","Se si imposta questo, questo articolo verrà in una discesa sotto il genitore selezionato ." "If you set this, this Item will come in a drop-down under the selected parent.","Se si imposta questo, questo articolo verrà in una discesa sotto il genitore selezionato ."
Image,Immagine Image,Immagine
Image Link,Immagine link Image Link,Immagine link
@@ -404,7 +404,7 @@ Is Single,È single
Is Standard,È standard Is Standard,È standard
Is Submittable,È Submittable Is Submittable,È Submittable
JSON,JSON JSON,JSON
JavaScript Format: wn.query_reports['REPORTNAME'] = {},Formato JavaScript: wn.query_reports [&#39;REPORTNAME&#39;] = {}
JavaScript Format: frappe.query_reports['REPORTNAME'] = {},Formato JavaScript: frappe.query_reports [&#39;REPORTNAME&#39;] = {}
Javascript,Javascript Javascript,Javascript
Javascript to append to the head section of the page.,Javascript da aggiungere alla sezione head della pagina. Javascript to append to the head section of the page.,Javascript da aggiungere alla sezione head della pagina.
Keep a track of all communications,Mantenere una traccia di tutte le comunicazioni Keep a track of all communications,Mantenere una traccia di tutte le comunicazioni


+ 2
- 2
frappe/translations/nl.csv 파일 보기

@@ -368,7 +368,7 @@ Icon will appear on the button,Pictogram verschijnt op de knop
"If image is selected, color will be ignored (attach first)","Als beeld is geselecteerd, wordt kleur worden genegeerd (voeg als eerste)" "If image is selected, color will be ignored (attach first)","Als beeld is geselecteerd, wordt kleur worden genegeerd (voeg als eerste)"
"If not, create a","Zo niet, maak dan een" "If not, create a","Zo niet, maak dan een"
"If the 'territory' Link Field exists, it will give you an option to select it","Als de &#39;grondgebied&#39; Link Field bestaat, zal het u een optie om deze te selecteren" "If the 'territory' Link Field exists, it will give you an option to select it","Als de &#39;grondgebied&#39; Link Field bestaat, zal het u een optie om deze te selecteren"
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/webnotes/wnframework/issues'>GitHub Issues</a>","Als deze aanwijzingen waar niet behulpzaam , gelieve toe te voegen in uw suggesties op <a href='https://github.com/webnotes/wnframework/issues'> GitHub Issues < / a>"
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/frappe/frappe/issues'>GitHub Issues</a>","Als deze aanwijzingen waar niet behulpzaam , gelieve toe te voegen in uw suggesties op <a href='https://github.com/frappe/frappe/issues'> GitHub Issues < / a>"
"If you set this, this Item will come in a drop-down under the selected parent.","Als u dit instelt , zal deze post in een drop -down onder de gekozen basismotor ." "If you set this, this Item will come in a drop-down under the selected parent.","Als u dit instelt , zal deze post in een drop -down onder de gekozen basismotor ."
Image,Beeld Image,Beeld
Image Link,Afbeelding Link Image Link,Afbeelding Link
@@ -404,7 +404,7 @@ Is Single,Is Single
Is Standard,Is Standaard Is Standard,Is Standaard
Is Submittable,Is Submittable Is Submittable,Is Submittable
JSON,JSON JSON,JSON
JavaScript Format: wn.query_reports['REPORTNAME'] = {},JavaScript Formaat : wn.query_reports [ ' ReportName ' ] = { }
JavaScript Format: frappe.query_reports['REPORTNAME'] = {},JavaScript Formaat : frappe.query_reports [ ' ReportName ' ] = { }
Javascript,Javascript Javascript,Javascript
Javascript to append to the head section of the page.,Javascript toe te voegen aan de head sectie van de pagina. Javascript to append to the head section of the page.,Javascript toe te voegen aan de head sectie van de pagina.
Keep a track of all communications,Houd een spoor van alle communicatie Keep a track of all communications,Houd een spoor van alle communicatie


+ 2
- 2
frappe/translations/pt-BR.csv 파일 보기

@@ -368,7 +368,7 @@ Icon will appear on the button,O ícone aparecerá no botão
"If image is selected, color will be ignored (attach first)","Se a imagem for selecionada, a cor será ignorada (anexar primeiro)" "If image is selected, color will be ignored (attach first)","Se a imagem for selecionada, a cor será ignorada (anexar primeiro)"
"If not, create a","Se não, crie um(a)" "If not, create a","Se não, crie um(a)"
"If the 'territory' Link Field exists, it will give you an option to select it","Se o campo com Link &#39;território&#39; existe, ele vai te dar uma opção para selecioná-lo" "If the 'territory' Link Field exists, it will give you an option to select it","Se o campo com Link &#39;território&#39; existe, ele vai te dar uma opção para selecioná-lo"
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/webnotes/wnframework/issues'>GitHub Issues</a>","Se estas instruções , onde não é útil , por favor, adicione suas sugestões em <a href='https://github.com/webnotes/wnframework/issues'> GitHub Issues </ a>"
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/frappe/frappe/issues'>GitHub Issues</a>","Se estas instruções , onde não é útil , por favor, adicione suas sugestões em <a href='https://github.com/frappe/frappe/issues'> GitHub Issues </ a>"
"If you set this, this Item will come in a drop-down under the selected parent.","Se você definir isso, este item virá em um drop-down sob o pai selecionado ." "If you set this, this Item will come in a drop-down under the selected parent.","Se você definir isso, este item virá em um drop-down sob o pai selecionado ."
Image,Imagem Image,Imagem
Image Link,Link da imagem Image Link,Link da imagem
@@ -404,7 +404,7 @@ Is Single,É único
Is Standard,É Padrão Is Standard,É Padrão
Is Submittable,É enviável Is Submittable,É enviável
JSON,JSON JSON,JSON
JavaScript Format: wn.query_reports['REPORTNAME'] = {},JavaScript Formato: wn.query_reports [' REPORTNAME '] = {}
JavaScript Format: frappe.query_reports['REPORTNAME'] = {},JavaScript Formato: frappe.query_reports [' REPORTNAME '] = {}
Javascript,Javascript Javascript,Javascript
Javascript to append to the head section of the page.,Javascript para acrescentar ao cabeçalho da página. Javascript to append to the head section of the page.,Javascript para acrescentar ao cabeçalho da página.
Keep a track of all communications,Mantenha o controle de todas as comunicações Keep a track of all communications,Mantenha o controle de todas as comunicações


+ 2
- 2
frappe/translations/pt.csv 파일 보기

@@ -368,7 +368,7 @@ Icon will appear on the button,Ícone aparecerá no botão
"If image is selected, color will be ignored (attach first)","Se a imagem for selecionada, a cor será ignorado (anexar primeiro)" "If image is selected, color will be ignored (attach first)","Se a imagem for selecionada, a cor será ignorado (anexar primeiro)"
"If not, create a","Se não, crie um" "If not, create a","Se não, crie um"
"If the 'territory' Link Field exists, it will give you an option to select it","Se o campo da &#39;território&#39; Link existe, ele vai te dar uma opção para selecioná-la" "If the 'territory' Link Field exists, it will give you an option to select it","Se o campo da &#39;território&#39; Link existe, ele vai te dar uma opção para selecioná-la"
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/webnotes/wnframework/issues'>GitHub Issues</a>","Als deze aanwijzingen waar niet behulpzaam , gelieve toe te voegen in uw suggesties op <a href='https://github.com/webnotes/wnframework/issues'> GitHub Issues < / a>"
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/frappe/frappe/issues'>GitHub Issues</a>","Als deze aanwijzingen waar niet behulpzaam , gelieve toe te voegen in uw suggesties op <a href='https://github.com/frappe/frappe/issues'> GitHub Issues < / a>"
"If you set this, this Item will come in a drop-down under the selected parent.","Als u dit instelt , zal deze post in een drop -down onder de gekozen basismotor ." "If you set this, this Item will come in a drop-down under the selected parent.","Als u dit instelt , zal deze post in een drop -down onder de gekozen basismotor ."
Image,Imagem Image,Imagem
Image Link,Link da imagem Image Link,Link da imagem
@@ -404,7 +404,7 @@ Is Single,É único
Is Standard,É Padrão Is Standard,É Padrão
Is Submittable,É Submittable Is Submittable,É Submittable
JSON,JSON JSON,JSON
JavaScript Format: wn.query_reports['REPORTNAME'] = {},JavaScript Formaat : wn.query_reports [ ' ReportName ' ] = { }
JavaScript Format: frappe.query_reports['REPORTNAME'] = {},JavaScript Formaat : frappe.query_reports [ ' ReportName ' ] = { }
Javascript,Javascript Javascript,Javascript
Javascript to append to the head section of the page.,Javascript para acrescentar à seção principal da página. Javascript to append to the head section of the page.,Javascript para acrescentar à seção principal da página.
Keep a track of all communications,Manter um controle de todas as comunicações Keep a track of all communications,Manter um controle de todas as comunicações


+ 2
- 2
frappe/translations/sr.csv 파일 보기

@@ -368,7 +368,7 @@ Icon will appear on the button,Икона ће се појавити на дуг
"If image is selected, color will be ignored (attach first)","Ако је слика изабрана, боја ће бити игнорисани (приложити први)" "If image is selected, color will be ignored (attach first)","Ако је слика изабрана, боја ће бити игнорисани (приложити први)"
"If not, create a","Ако не, направите" "If not, create a","Ако не, направите"
"If the 'territory' Link Field exists, it will give you an option to select it","Ако Линк пољу &quot;територије&quot; постоји, она ће вам дати могућност да изаберете" "If the 'territory' Link Field exists, it will give you an option to select it","Ако Линк пољу &quot;територије&quot; постоји, она ће вам дати могућност да изаберете"
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/webnotes/wnframework/issues'>GitHub Issues</a>","Ако ове инструкције где не помажу , молимо вас да додате у ваше сугестије на <а хреф='хттпс://гитхуб.цом/вебнотес/внфрамеворк/иссуес'> Гитхуб питања < / а>"
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/frappe/frappe/issues'>GitHub Issues</a>","Ако ове инструкције где не помажу , молимо вас да додате у ваше сугестије на <а хреф='хттпс://гитхуб.цом/вебнотес/внфрамеворк/иссуес'> Гитхуб питања < / а>"
"If you set this, this Item will come in a drop-down under the selected parent.","Ако сте поставили ово , ова ставка ће доћи у падајући под изабраном родитеља ." "If you set this, this Item will come in a drop-down under the selected parent.","Ако сте поставили ово , ова ставка ће доћи у падајући под изабраном родитеља ."
Image,Слика Image,Слика
Image Link,Слика Линк Image Link,Слика Линк
@@ -404,7 +404,7 @@ Is Single,Је Сингле
Is Standard,Је стандард Is Standard,Је стандард
Is Submittable,Да ли Субмиттабле Is Submittable,Да ли Субмиттабле
JSON,ЈСОН JSON,ЈСОН
JavaScript Format: wn.query_reports['REPORTNAME'] = {},Јава формат : вн.куери_репортс [ ' РЕПОРТНАМЕ ' ] = { }
JavaScript Format: frappe.query_reports['REPORTNAME'] = {},Јава формат : вн.куери_репортс [ ' РЕПОРТНАМЕ ' ] = { }
Javascript,Јавасцрипт Javascript,Јавасцрипт
Javascript to append to the head section of the page.,Јавасцрипт да додате на главе делу странице. Javascript to append to the head section of the page.,Јавасцрипт да додате на главе делу странице.
Keep a track of all communications,Водите евиденцију о свим комуникацијама Keep a track of all communications,Водите евиденцију о свим комуникацијама


+ 2
- 2
frappe/translations/ta.csv 파일 보기

@@ -368,7 +368,7 @@ Icon will appear on the button,ஐகான் பொத்தானை த
"If image is selected, color will be ignored (attach first)","படத்தை தேர்வு செய்தால், நிறம் (முதல் இணைக்கவும்) புறக்கணிக்கப்படும்" "If image is selected, color will be ignored (attach first)","படத்தை தேர்வு செய்தால், நிறம் (முதல் இணைக்கவும்) புறக்கணிக்கப்படும்"
"If not, create a","இல்லை என்றால், ஒரு உருவாக்க" "If not, create a","இல்லை என்றால், ஒரு உருவாக்க"
"If the 'territory' Link Field exists, it will give you an option to select it","&#39;பகுதியில்&#39; இணைப்பு புலம் உள்ளது என்றால், அதை நீங்கள் தேர்ந்தெடுக்க ஒரு விருப்பத்தை தரும்" "If the 'territory' Link Field exists, it will give you an option to select it","&#39;பகுதியில்&#39; இணைப்பு புலம் உள்ளது என்றால், அதை நீங்கள் தேர்ந்தெடுக்க ஒரு விருப்பத்தை தரும்"
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/webnotes/wnframework/issues'>GitHub Issues</a>","இந்த வழிமுறைகளை அங்கு பயனுள்ளதாக இல்லை என்றால், மிக href='https://github.com/webnotes/wnframework/issues'> மகிழ்ச்சியா சிக்கல்கள் < / a> உங்கள் ஆலோசனைகளை சேர்க்க தயவு செய்து"
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/frappe/frappe/issues'>GitHub Issues</a>","இந்த வழிமுறைகளை அங்கு பயனுள்ளதாக இல்லை என்றால், மிக href='https://github.com/frappe/frappe/issues'> மகிழ்ச்சியா சிக்கல்கள் < / a> உங்கள் ஆலோசனைகளை சேர்க்க தயவு செய்து"
"If you set this, this Item will come in a drop-down under the selected parent.","நீங்கள் இந்த அமைக்க என்றால், இந்த பொருள் தேர்வு பெற்றோர் கீழ் ஒரு துளி கீழே வரும் ." "If you set this, this Item will come in a drop-down under the selected parent.","நீங்கள் இந்த அமைக்க என்றால், இந்த பொருள் தேர்வு பெற்றோர் கீழ் ஒரு துளி கீழே வரும் ."
Image,படம் Image,படம்
Image Link,படம் இணைப்பு Image Link,படம் இணைப்பு
@@ -404,7 +404,7 @@ Is Single,ஒற்றை உள்ளது
Is Standard,ஸ்டாண்டர்ட் உள்ளது Is Standard,ஸ்டாண்டர்ட் உள்ளது
Is Submittable,Submittable உள்ளது Is Submittable,Submittable உள்ளது
JSON,JSON JSON,JSON
JavaScript Format: wn.query_reports['REPORTNAME'] = {},ஜாவா வடிவம்: wn.query_reports [' REPORTNAME '] = { }
JavaScript Format: frappe.query_reports['REPORTNAME'] = {},ஜாவா வடிவம்: frappe.query_reports [' REPORTNAME '] = { }
Javascript,ஜாவா ஸ்கிரிப்ட் Javascript,ஜாவா ஸ்கிரிப்ட்
Javascript to append to the head section of the page.,Javascript பக்கம் தலை பிரிவில் சேர்க்க வேண்டும். Javascript to append to the head section of the page.,Javascript பக்கம் தலை பிரிவில் சேர்க்க வேண்டும்.
Keep a track of all communications,அனைத்து தொடர்புகளையும் ஒரு கண்காணிக்க Keep a track of all communications,அனைத்து தொடர்புகளையும் ஒரு கண்காணிக்க


+ 2
- 2
frappe/translations/th.csv 파일 보기

@@ -368,7 +368,7 @@ Icon will appear on the button,ไอคอนจะปรากฏบนปุ
"If image is selected, color will be ignored (attach first)",หากภาพถูกเลือกสีจะถูกละเว้น (แนบแรก) "If image is selected, color will be ignored (attach first)",หากภาพถูกเลือกสีจะถูกละเว้น (แนบแรก)
"If not, create a",ถ้าไม่สร้าง "If not, create a",ถ้าไม่สร้าง
"If the 'territory' Link Field exists, it will give you an option to select it",ถ้าฟิลด์ &#39;ดินแดน&#39; แล้วก็จะให้คุณเลือกที่จะเลือก "If the 'territory' Link Field exists, it will give you an option to select it",ถ้าฟิลด์ &#39;ดินแดน&#39; แล้วก็จะให้คุณเลือกที่จะเลือก
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/webnotes/wnframework/issues'>GitHub Issues</a>",ถ้า คำแนะนำเหล่านี้ ที่ ไม่เป็นประโยชน์ โปรดเพิ่ม ใน คำแนะนำของคุณ ที่ href='https://github.com/webnotes/wnframework/issues'> <a GitHub ปัญหา </ a>
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/frappe/frappe/issues'>GitHub Issues</a>",ถ้า คำแนะนำเหล่านี้ ที่ ไม่เป็นประโยชน์ โปรดเพิ่ม ใน คำแนะนำของคุณ ที่ href='https://github.com/frappe/frappe/issues'> <a GitHub ปัญหา </ a>
"If you set this, this Item will come in a drop-down under the selected parent.",ถ้าคุณตั้งค่า นี้ รายการ นี้ จะมาในแบบเลื่อนลง ภายใต้การ ปกครอง ที่เลือก "If you set this, this Item will come in a drop-down under the selected parent.",ถ้าคุณตั้งค่า นี้ รายการ นี้ จะมาในแบบเลื่อนลง ภายใต้การ ปกครอง ที่เลือก
Image,ภาพ Image,ภาพ
Image Link,ลิงก์รูปภาพ Image Link,ลิงก์รูปภาพ
@@ -404,7 +404,7 @@ Is Single,เป็นโสด
Is Standard,เป็นมาตรฐาน Is Standard,เป็นมาตรฐาน
Is Submittable,เป็น Submittable Is Submittable,เป็น Submittable
JSON,JSON JSON,JSON
JavaScript Format: wn.query_reports['REPORTNAME'] = {},รูปแบบ JavaScript : wn.query_reports [ 'ชื่อรายงาน ] = { }
JavaScript Format: frappe.query_reports['REPORTNAME'] = {},รูปแบบ JavaScript : frappe.query_reports [ 'ชื่อรายงาน ] = { }
Javascript,javascript Javascript,javascript
Javascript to append to the head section of the page.,จาวาสคริปต์เพื่อผนวกกับส่วนหัวของหน้า Javascript to append to the head section of the page.,จาวาสคริปต์เพื่อผนวกกับส่วนหัวของหน้า
Keep a track of all communications,ติดตามการติดต่อสื่อสารทั้งหมด Keep a track of all communications,ติดตามการติดต่อสื่อสารทั้งหมด


+ 2
- 2
frappe/translations/zh-cn.csv 파일 보기

@@ -368,7 +368,7 @@ Icon will appear on the button,图标将显示在按钮上
"If image is selected, color will be ignored (attach first)",如果图像被选中,颜色将被忽略(先附上) "If image is selected, color will be ignored (attach first)",如果图像被选中,颜色将被忽略(先附上)
"If not, create a",如果没有,请创建一个 "If not, create a",如果没有,请创建一个
"If the 'territory' Link Field exists, it will give you an option to select it",如果&#39;领土&#39;链接字段存在,它会给你一个选项,选择它 "If the 'territory' Link Field exists, it will give you an option to select it",如果&#39;领土&#39;链接字段存在,它会给你一个选项,选择它
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/webnotes/wnframework/issues'>GitHub Issues</a>",如果这些指令,其中没有帮助,请在您的建议添加<a href='https://github.com/webnotes/wnframework/issues'>GitHub的问题</a>
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/frappe/frappe/issues'>GitHub Issues</a>",如果这些指令,其中没有帮助,请在您的建议添加<a href='https://github.com/frappe/frappe/issues'>GitHub的问题</a>
"If you set this, this Item will come in a drop-down under the selected parent.",如果你设置这个,这个项目会在一个下拉菜单中选定父下。 "If you set this, this Item will come in a drop-down under the selected parent.",如果你设置这个,这个项目会在一个下拉菜单中选定父下。
Image,图像 Image,图像
Image Link,图片链接 Image Link,图片链接
@@ -404,7 +404,7 @@ Is Single,单人
Is Standard,为标准 Is Standard,为标准
Is Submittable,是Submittable Is Submittable,是Submittable
JSON,JSON JSON,JSON
JavaScript Format: wn.query_reports['REPORTNAME'] = {},JavaScript的格式:wn.query_reports [&#39;REPORTNAME&#39;] = {}
JavaScript Format: frappe.query_reports['REPORTNAME'] = {},JavaScript的格式:frappe.query_reports [&#39;REPORTNAME&#39;] = {}
Javascript,使用Javascript Javascript,使用Javascript
Javascript to append to the head section of the page.,Javascript来附加到页面的head部分。 Javascript to append to the head section of the page.,Javascript来附加到页面的head部分。
Keep a track of all communications,保持跟踪所有通信 Keep a track of all communications,保持跟踪所有通信


+ 2
- 2
frappe/translations/zh-tw.csv 파일 보기

@@ -368,7 +368,7 @@ Icon will appear on the button,圖標將顯示在按鈕上
"If image is selected, color will be ignored (attach first)",如果圖像被選中,顏色將被忽略(先附上) "If image is selected, color will be ignored (attach first)",如果圖像被選中,顏色將被忽略(先附上)
"If not, create a",如果沒有,請創建一個 "If not, create a",如果沒有,請創建一個
"If the 'territory' Link Field exists, it will give you an option to select it",如果&#39;領土&#39;鏈接字段存在,它會給你一個選項,選擇它 "If the 'territory' Link Field exists, it will give you an option to select it",如果&#39;領土&#39;鏈接字段存在,它會給你一個選項,選擇它
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/webnotes/wnframework/issues'>GitHub Issues</a>",如果這些指令,其中沒有幫助,請在您的建議添加<a href='https://github.com/webnotes/wnframework/issues'>GitHub的問題</a>
"If these instructions where not helpful, please add in your suggestions at <a href='https://github.com/frappe/frappe/issues'>GitHub Issues</a>",如果這些指令,其中沒有幫助,請在您的建議添加<a href='https://github.com/frappe/frappe/issues'>GitHub的問題</a>
"If you set this, this Item will come in a drop-down under the selected parent.",如果你設置這個,這個項目會在一個下拉菜單中選定父下。 "If you set this, this Item will come in a drop-down under the selected parent.",如果你設置這個,這個項目會在一個下拉菜單中選定父下。
Image,圖像 Image,圖像
Image Link,圖片鏈接 Image Link,圖片鏈接
@@ -404,7 +404,7 @@ Is Single,單人
Is Standard,為標準 Is Standard,為標準
Is Submittable,是Submittable Is Submittable,是Submittable
JSON,JSON JSON,JSON
JavaScript Format: wn.query_reports['REPORTNAME'] = {},JavaScript的格式:wn.query_reports [&#39;REPORTNAME&#39;] = {}
JavaScript Format: frappe.query_reports['REPORTNAME'] = {},JavaScript的格式:frappe.query_reports [&#39;REPORTNAME&#39;] = {}
Javascript,使用Javascript Javascript,使用Javascript
Javascript to append to the head section of the page.,Javascript來附加到頁面的head部分。 Javascript to append to the head section of the page.,Javascript來附加到頁面的head部分。
Keep a track of all communications,保持跟踪所有通信 Keep a track of all communications,保持跟踪所有通信


+ 1
- 1
frappe/utils/backups.py 파일 보기

@@ -7,7 +7,7 @@ from __future__ import unicode_literals
To setup in defs set: To setup in defs set:
backup_path: path where backups will be taken (for eg /backups) backup_path: path where backups will be taken (for eg /backups)
backup_link_path: download link for backups (eg /var/www/wnframework/backups)
backup_link_path: download link for backups (eg /var/www/frappe/backups)
backup_url: base url of the backup folder (eg http://mysite.com/backups) backup_url: base url of the backup folder (eg http://mysite.com/backups)
""" """
#Imports #Imports


+ 1
- 0
frappe/website/doctype/website_sitemap_config/website_sitemap_config.py 파일 보기

@@ -43,6 +43,7 @@ def rebuild_website_sitemap_config():
frappe.conn.sql("""delete from `tabWebsite Sitemap Config`""") frappe.conn.sql("""delete from `tabWebsite Sitemap Config`""")
for app in frappe.get_installed_apps(): for app in frappe.get_installed_apps():
if app=="webnotes": app="frappe"
build_website_sitemap_config(app) build_website_sitemap_config(app)
cleanup_sitemap() cleanup_sitemap()


+ 1
- 1
frappe/website/js/website.js 파일 보기

@@ -3,7 +3,7 @@


frappe.provide("website"); frappe.provide("website");


$.extend(frappe. {
$.extend(frappe, {
_assets_loaded: [], _assets_loaded: [],
require: function(url) { require: function(url) {
if(frappe._assets_loaded.indexOf(url)!==-1) return; if(frappe._assets_loaded.indexOf(url)!==-1) return;


+ 3
- 0
frappe/website/website_generator.py 파일 보기

@@ -8,6 +8,9 @@ from frappe.website.utils import cleanup_page_name


from frappe.website.doctype.website_sitemap.website_sitemap import add_to_sitemap, update_sitemap, remove_sitemap from frappe.website.doctype.website_sitemap.website_sitemap import add_to_sitemap, update_sitemap, remove_sitemap


def call_website_generator(bean, method, *args, **kwargs):
getattr(WebsiteGenerator(bean.doc, bean.doclist), method)(*args, **kwargs)

class WebsiteGenerator(DocListController): class WebsiteGenerator(DocListController):
def autoname(self): def autoname(self):
self.doc.name = cleanup_page_name(self.get_page_title()) self.doc.name = cleanup_page_name(self.get_page_title())


+ 1
- 1
frappe/widgets/query_report.py 파일 보기

@@ -41,7 +41,7 @@ def get_script(report_name):
script = report.javascript script = report.javascript
if not script: if not script:
script = "wn.query_reports['%s']={}" % report_name
script = "frappe.query_reports['%s']={}" % report_name
# load translations # load translations
if frappe.lang != "en": if frappe.lang != "en":


+ 4
- 4
hooks.md 파일 보기

@@ -2,7 +2,7 @@


#### Application Name and Details #### Application Name and Details


1. `app_name` - slugified name e.g. "webnotes"
1. `app_name` - slugified name e.g. "frappe"
1. `app_title` - full title name e.g. "Web Notes" 1. `app_title` - full title name e.g. "Web Notes"
1. `app_publisher` 1. `app_publisher`
1. `app_description` 1. `app_description`
@@ -19,10 +19,10 @@
#### Javascript / CSS Builds #### Javascript / CSS Builds


1. `app_include_js` - include in "app" 1. `app_include_js` - include in "app"
1. `app_include_css` - assets/webnotes/css/splash.css
1. `app_include_css` - assets/frappe/css/splash.css


1. `web_include_js` - assets/js/webnotes-web.min.js
1. `web_include_css` - assets/css/webnotes-web.css
1. `web_include_js` - assets/js/frappe-web.min.js
1. `web_include_css` - assets/css/frappe-web.css


#### Desktop #### Desktop




불러오는 중...
취소
저장