From f712daf71010f98757faa3c46258ad7c5ee6328a Mon Sep 17 00:00:00 2001 From: Fabien Meghazi Date: Tue, 6 Sep 2011 15:04:29 +0200 Subject: [PATCH 01/42] [ADD] Add kanban view for crm.lead - Opportunities bzr revid: fme@openerp.com-20110906130429-9jbtgdodm3an8jdu --- addons/crm/crm_lead_menu.xml | 2 +- addons/crm/crm_lead_view.xml | 68 ++++++++++++++++++++++++++++++++++++ 2 files changed, 69 insertions(+), 1 deletion(-) diff --git a/addons/crm/crm_lead_menu.xml b/addons/crm/crm_lead_menu.xml index 264935fbe95..0d13911a5fe 100644 --- a/addons/crm/crm_lead_menu.xml +++ b/addons/crm/crm_lead_menu.xml @@ -60,7 +60,7 @@ Opportunities crm.lead - tree,form,graph,calendar + tree,form,graph,calendar,kanban [('type','=','opportunity')] {'search_default_user_id':uid,'search_default_current':1, 'search_default_section_id':section_id, 'stage_type': 'opportunity', 'default_type': 'opportunity'} diff --git a/addons/crm/crm_lead_view.xml b/addons/crm/crm_lead_view.xml index dcc73141f22..0ad576fd470 100644 --- a/addons/crm/crm_lead_view.xml +++ b/addons/crm/crm_lead_view.xml @@ -291,6 +291,74 @@ + + + CRM - Leads Kanban + crm.lead + kanban + + + + + + + + + + + + From 7779cab10a04b8bf7a59caf03b4ecf2992d82a34 Mon Sep 17 00:00:00 2001 From: Fabien Meghazi Date: Tue, 6 Sep 2011 15:45:20 +0200 Subject: [PATCH 02/42] [FIX] Kanban: Fixed context on buttons bzr revid: fme@openerp.com-20110906134520-w90kby9oyni4wed7 --- addons/web_kanban/static/src/js/kanban.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/web_kanban/static/src/js/kanban.js b/addons/web_kanban/static/src/js/kanban.js index 66c5a5e2d1c..b0d00e706fd 100644 --- a/addons/web_kanban/static/src/js/kanban.js +++ b/addons/web_kanban/static/src/js/kanban.js @@ -42,7 +42,7 @@ openerp.web_kanban.KanbanView = openerp.web.View.extend({ var child = this.fields_view.arch.children[i]; if (child.tag === "templates") { this.transform_qweb_template(child); - this.qweb.add_template(openerp.web.json_node_to_xml(child, true)); + this.qweb.add_template(openerp.web.json_node_to_xml(child)); break; } } From 448a0168244888c21c1f6684d8bb471a2f126d09 Mon Sep 17 00:00:00 2001 From: Fabien Meghazi Date: Tue, 6 Sep 2011 16:06:35 +0200 Subject: [PATCH 03/42] [ADD] Kanban: add color algo bzr revid: fme@openerp.com-20110906140635-2r3eouj8cjh8k47i --- addons/web_kanban/static/src/js/kanban.js | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/addons/web_kanban/static/src/js/kanban.js b/addons/web_kanban/static/src/js/kanban.js index b0d00e706fd..3a2ed27ddfb 100644 --- a/addons/web_kanban/static/src/js/kanban.js +++ b/addons/web_kanban/static/src/js/kanban.js @@ -48,7 +48,21 @@ openerp.web_kanban.KanbanView = openerp.web.View.extend({ } }, do_get_kanban_color: function(variable) { - return 'oe_kanban_color_1'; + var number_of_color_schemes = 2, + index = 0; + switch (typeof(variable)) { + case 'string': + for (var i=0, ii=variable.length; i Date: Tue, 6 Sep 2011 19:31:40 +0200 Subject: [PATCH 04/42] [FIX] fields.function: type=binary: workaround for the low byte values (<=0x1f) unsupported in XML We have a workaround in place for fields.function of binary type that may return values that are invalid in XML documents, and thus in our XML-RPC protocol. But out workaround failed to care for the invalid XML codepoints (below 0x1f) that are well valid in UTF-8 encoding. Added a sanity check for that as well, using a terrible workaround for this last resort case: b64-encode the bytes, to avoid crashing the request. bzr revid: odo@openerp.com-20110906173140-vc4tl6wstzt8h06o --- openerp/osv/fields.py | 47 ++++++++++++++++++++++++++----------------- 1 file changed, 28 insertions(+), 19 deletions(-) diff --git a/openerp/osv/fields.py b/openerp/osv/fields.py index fb973d2e521..7a8f460f5cb 100644 --- a/openerp/osv/fields.py +++ b/openerp/osv/fields.py @@ -32,7 +32,9 @@ * size """ +import base64 import datetime as DT +import re import string import sys import warnings @@ -727,34 +729,41 @@ def get_nice_size(value): size = len(value) return tools.human_size(size) +# See http://www.w3.org/TR/2000/REC-xml-20001006#NT-Char +# and http://bugs.python.org/issue10066 +invalid_xml_low_bytes = re.compile(r'[\x00-\x08\x0b-\x0c\x0e-\x1f]') + def sanitize_binary_value(value): # binary fields should be 7-bit ASCII base64-encoded data, # but we do additional sanity checks to make sure the values - # are not something else that won't pass via xmlrpc + # are not something else that won't pass via XML-RPC if isinstance(value, (xmlrpclib.Binary, tuple, list, dict)): # these builtin types are meant to pass untouched return value - # For all other cases, handle the value as a binary string: - # it could be a 7-bit ASCII string (e.g base64 data), but also - # any 8-bit content from files, with byte values that cannot - # be passed inside XML! - # See for more info: + # Handle invalid bytes values that will cause problems + # for XML-RPC. See for more info: # - http://bugs.python.org/issue10066 # - http://www.w3.org/TR/2000/REC-xml-20001006#NT-Char - # - # One solution is to convert the byte-string to unicode, - # so it gets serialized as utf-8 encoded data (always valid XML) - # If invalid XML byte values were present, tools.ustr() uses - # the Latin-1 codec as fallback, which converts any 8-bit - # byte value, resulting in valid utf-8-encoded bytes - # in the end: - # >>> unicode('\xe1','latin1').encode('utf8') == '\xc3\xa1' - # Note: when this happens, decoding on the other endpoint - # is not likely to produce the expected output, but this is - # just a safety mechanism (in these cases base64 data or - # xmlrpc.Binary values should be used instead) - return tools.ustr(value) + + # Coercing to unicode would normally allow it to properly pass via + # XML-RPC, transparently encoded as UTF-8 by xmlrpclib. + # (this works for _any_ byte values, thanks to the fallback + # to latin-1 passthrough encoding when decoding to unicode) + value = tools.ustr(value) + + # Due to Python bug #10066 this could still yield invalid XML + # bytes, specifically in the low byte range, that will crash + # the decoding side: [\x00-\x08\x0b-\x0c\x0e-\x1f] + # So check for low bytes values, and if any, perform + # base64 encoding - not very smart or useful, but this is + # our last resort to avoid crashing the request. + if invalid_xml_low_bytes.search(value): + # b64-encode after restoring the pure bytes with latin-1 + # passthrough encoding + value = base64.b64encode(value.encode('latin-1')) + + return value # --------------------------------------------------------- From 3416663637a5a6a6045ed22b4360a0b986bf4511 Mon Sep 17 00:00:00 2001 From: Antony Lesuisse Date: Tue, 6 Sep 2011 21:17:17 +0200 Subject: [PATCH 05/42] [FIX] sphinx documentation bzr revid: al@openerp.com-20110906191717-pxss44lvysatu07h --- Makefile | 3 +-- README.web | 42 +++++------------------------------------- doc/source/addons.rst | 4 ++-- 3 files changed, 8 insertions(+), 41 deletions(-) diff --git a/Makefile b/Makefile index 0a4d41800e0..1d4f6194a88 100644 --- a/Makefile +++ b/Makefile @@ -3,7 +3,6 @@ HOST = 127.0.0.1 PORT = 8080 - all: run run: @@ -25,5 +24,5 @@ clean: @rm -rf *.egg-info cloc: - cloc openerpweb/*.py addons/*/controllers/*.py addons/*/static/src/*.js addons/*/static/src/js/*.js addons/*/static/src/css/*.css addons/*/static/src/xml/*.xml + cloc addons/*/common/*.py addons/*/controllers/*.py addons/*/static/src/*.js addons/*/static/src/js/*.js addons/*/static/src/css/*.css addons/*/static/src/xml/*.xml diff --git a/README.web b/README.web index 50cd4fcaaf6..eec2d2a1896 100644 --- a/README.web +++ b/README.web @@ -1,42 +1,10 @@ -Coding style ------------- - -Javascript - http://javascript.crockford.com/code.html with the following amendements: - - Line Length should be 160 (132?), dont split at 80, rationale in 2011 we all use 16/9 screens - - http://google-styleguide.googlecode.com/svn/trunk/javascriptguide.xml ? - -Modules Conventions -------------------- - -addons//controllers/ python controller -addons//controllers/main.py main python controller is there is only one (or should it be .py ?) -addons//static/ static directory (directly served by the web server) -addons//static// directory containing an external javascrip library respect the directory structure of upstream is this directory -addons//static/openerp/ module specfic static files -addons//static/openerp/js/ module specific javscript files -addons//static/openerp/css/ module specific css files -addons//static/openerp/img/ module specific images files -addons//static/openerp/ other files -addons//__openerp__.py module manifest referencing js and css files - - -Dependecies +OpenERP Web ----------- -Depends on -install "CherryPy>=3.1.2" "-d cherrypy" -install "simplejson>=2.0.9" "-d simplejson" +to build documentation: -Maybe soon on +cd doc +make html -#install "Babel>=0.9.4" "-d babel" -#install "pytz>=2009j" "-d pytz" +then look at doc/build/html/index.html -Probably not anymore on: - -#install "Mako>=0.2.4" "-d mako" -#install "formencode>=1.2.2" "-d formencode" -#install "pyparsing>=1.5.2" "-f pyparsing.py" -#install "xlwt>=0.7" "-d xlwt" diff --git a/doc/source/addons.rst b/doc/source/addons.rst index 1d577fd52de..856c8b2a6c3 100644 --- a/doc/source/addons.rst +++ b/doc/source/addons.rst @@ -338,10 +338,10 @@ replace ``addons`` by the directory in which your own addon lives. Python ++++++ -.. autoclass:: base.common.backendrpc.OpenERPSession +.. autoclass:: web.common.backendrpc.OpenERPSession :members: -.. autoclass:: base.common.backendrpc.OpenERPModel +.. autoclass:: web.common.backendrpc.OpenERPModel :members: * Addons lifecycle (loading, execution, events, ...) From 6932592e268055cdbdd91b2a23930782a551d507 Mon Sep 17 00:00:00 2001 From: Antony Lesuisse Date: Tue, 6 Sep 2011 21:20:04 +0200 Subject: [PATCH 06/42] [FIX] documentation update README bzr revid: al@openerp.com-20110906192004-k2ozevvq1pg1b45c --- Makefile | 5 ++++- README.web | 5 ++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/Makefile b/Makefile index 1d4f6194a88..48b00b73822 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -.PHONY: all release clean +.PHONY: all doc release clean HOST = 127.0.0.1 PORT = 8080 @@ -23,6 +23,9 @@ clean: @rm -rf dist @rm -rf *.egg-info +doc: + cd doc; make html + cloc: cloc addons/*/common/*.py addons/*/controllers/*.py addons/*/static/src/*.js addons/*/static/src/js/*.js addons/*/static/src/css/*.css addons/*/static/src/xml/*.xml diff --git a/README.web b/README.web index eec2d2a1896..72393bacd34 100644 --- a/README.web +++ b/README.web @@ -1,10 +1,9 @@ OpenERP Web ----------- -to build documentation: +To build the documentation use: -cd doc -make html +$ make doc then look at doc/build/html/index.html From 02792660b8e90cfc20662ffcc2e1ad5c8631e8ac Mon Sep 17 00:00:00 2001 From: Antony Lesuisse Date: Tue, 6 Sep 2011 22:54:38 +0200 Subject: [PATCH 07/42] [IMP] factorize view/load part1 bzr revid: al@openerp.com-20110906205438-wk1x6dx2mp103en2 --- addons/web/controllers/main.py | 36 +++++++---------------- addons/web/static/src/js/form.js | 11 +++++-- addons/web/static/src/js/list-editable.js | 2 +- addons/web/static/src/js/list.js | 5 ++-- addons/web/static/src/js/view_tree.js | 1 + 5 files changed, 24 insertions(+), 31 deletions(-) diff --git a/addons/web/controllers/main.py b/addons/web/controllers/main.py index d9edee1cfca..5a907fbc8f9 100644 --- a/addons/web/controllers/main.py +++ b/addons/web/controllers/main.py @@ -884,22 +884,13 @@ class View(openerpweb.Controller): if context_string: elem.set(el, self.parse_context(context_string, session)) -class FormView(View): - _cp_path = "/web/formview" - @openerpweb.jsonrequest - def load(self, req, model, view_id, toolbar=False): - fields_view = self.fields_view_get(req, model, view_id, 'form', toolbar=toolbar) - return {'fields_view': fields_view} + def load(self, req, model, view_id, view_type, toolbar=False): + return self.fields_view_get(req, model, view_id, view_type, toolbar=toolbar) class ListView(View): _cp_path = "/web/listview" - @openerpweb.jsonrequest - def load(self, req, model, view_id, toolbar=False): - fields_view = self.fields_view_get(req, model, view_id, 'tree', toolbar=toolbar) - return {'fields_view': fields_view} - def process_colors(self, view, row, context): colors = view['arch']['attrs'].get('colors') @@ -918,6 +909,15 @@ class ListView(View): return color[0] return 'maroon' +class TreeView(View): + _cp_path = "/web/treeview" + + @openerpweb.jsonrequest + def action(self, req, model, id): + return load_actions_from_ir_values( + req,'action', 'tree_but_open',[(model, id)], + False) + class SearchView(View): _cp_path = "/web/searchview" @@ -1073,19 +1073,6 @@ class Action(openerpweb.Controller): return clean_action(req, req.session.model('ir.actions.server').run( [action_id], req.session.eval_context(req.context))) -class TreeView(View): - _cp_path = "/web/treeview" - - @openerpweb.jsonrequest - def load(self, req, model, view_id, toolbar=False): - return self.fields_view_get(req, model, view_id, 'tree', toolbar=toolbar) - - @openerpweb.jsonrequest - def action(self, req, model, id): - return load_actions_from_ir_values( - req,'action', 'tree_but_open',[(model, id)], - False) - class Export(View): _cp_path = "/web/export" @@ -1336,7 +1323,6 @@ class ExcelExport(Export): fp.close() return data - class Reports(View): _cp_path = "/web/report" diff --git a/addons/web/static/src/js/form.js b/addons/web/static/src/js/form.js index 7057ef6c10a..3b960663670 100644 --- a/addons/web/static/src/js/form.js +++ b/addons/web/static/src/js/form.js @@ -50,8 +50,13 @@ openerp.web.FormView = openerp.web.View.extend( /** @lends openerp.web.FormView# return def.promise(); } else { var context = new openerp.web.CompoundContext(this.dataset.get_context()); - return this.rpc("/web/formview/load", {"model": this.model, "view_id": this.view_id, - toolbar: this.options.sidebar, context: context}, this.on_loaded); + return this.rpc("/web/view/load", { + "model": this.model, + "view_id": this.view_id, + "view_type": "form", + toolbar: this.options.sidebar, + context: context + }, this.on_loaded); } }, stop: function() { @@ -65,7 +70,7 @@ openerp.web.FormView = openerp.web.View.extend( /** @lends openerp.web.FormView# }, on_loaded: function(data) { var self = this; - this.fields_view = data.fields_view; + this.fields_view = data; var frame = new (this.registry.get_object('frame'))(this, this.fields_view.arch); this.$element.html(QWeb.render(this.template, { 'frame': frame, 'view': this })); diff --git a/addons/web/static/src/js/list-editable.js b/addons/web/static/src/js/list-editable.js index d7a235f5a32..614c6fa42ef 100644 --- a/addons/web/static/src/js/list-editable.js +++ b/addons/web/static/src/js/list-editable.js @@ -74,7 +74,7 @@ openerp.web.list_editable = function (openerp) { }, on_loaded: function (data, grouped) { // tree/@editable takes priority on everything else if present. - this.options.editable = data.fields_view.arch.attrs.editable || this.options.editable; + this.options.editable = data.arch.attrs.editable || this.options.editable; return this._super(data, grouped); } }); diff --git a/addons/web/static/src/js/list.js b/addons/web/static/src/js/list.js index 1942bac179a..fe38721c520 100644 --- a/addons/web/static/src/js/list.js +++ b/addons/web/static/src/js/list.js @@ -147,7 +147,7 @@ openerp.web.ListView = openerp.web.View.extend( /** @lends openerp.web.ListView# */ on_loaded: function(data, grouped) { var self = this; - this.fields_view = data.fields_view; + this.fields_view = data; //this.log(this.fields_view); this.name = "" + this.fields_view.arch.attrs.string; @@ -218,7 +218,7 @@ openerp.web.ListView = openerp.web.View.extend( /** @lends openerp.web.ListView# if (!this.sidebar && this.options.sidebar && this.options.sidebar_id) { this.sidebar = new openerp.web.Sidebar(this, this.options.sidebar_id); this.sidebar.start(); - this.sidebar.add_toolbar(data.fields_view.toolbar); + this.sidebar.add_toolbar(this.fields_view.toolbar); this.set_common_sidebar_sections(this.sidebar); } }, @@ -373,6 +373,7 @@ openerp.web.ListView = openerp.web.View.extend( /** @lends openerp.web.ListView# return this.rpc('/web/listview/load', { model: this.model, view_id: this.view_id, + "view_type": "list", context: this.dataset.get_context(context), toolbar: this.options.sidebar }, callback); diff --git a/addons/web/static/src/js/view_tree.js b/addons/web/static/src/js/view_tree.js index 6257dc7e587..595288147e1 100644 --- a/addons/web/static/src/js/view_tree.js +++ b/addons/web/static/src/js/view_tree.js @@ -31,6 +31,7 @@ openerp.web.TreeView = openerp.web.View.extend({ return this.rpc("/web/treeview/load", { model: this.model, view_id: this.view_id, + view_type: "tree", toolbar: this.view_manager ? !!this.view_manager.sidebar : false }, this.on_loaded); }, From d57d2fcc0d567cc85b4656282b5e22c809fe57d9 Mon Sep 17 00:00:00 2001 From: Antony Lesuisse Date: Wed, 7 Sep 2011 01:08:59 +0200 Subject: [PATCH 08/42] [IMP] factorize view/load part2 addons bzr revid: al@openerp.com-20110906230859-qip1rc83y50w5g3j --- addons/web_calendar/__init__.py | 1 - addons/web_calendar/controllers/__init__.py | 1 - addons/web_calendar/controllers/main.py | 11 ----------- addons/web_calendar/static/src/js/calendar.js | 6 +++--- addons/web_gantt/__init__.py | 1 - addons/web_gantt/controllers/__init__.py | 1 - addons/web_gantt/controllers/main.py | 11 ----------- addons/web_gantt/static/src/js/gantt.js | 5 ++--- addons/web_kanban/__init__.py | 1 - addons/web_kanban/controllers/__init__.py | 1 - addons/web_kanban/controllers/main.py | 11 ----------- addons/web_kanban/static/src/js/kanban.js | 5 ++--- 12 files changed, 7 insertions(+), 48 deletions(-) delete mode 100644 addons/web_calendar/controllers/__init__.py delete mode 100644 addons/web_calendar/controllers/main.py delete mode 100644 addons/web_gantt/controllers/__init__.py delete mode 100644 addons/web_gantt/controllers/main.py delete mode 100644 addons/web_kanban/controllers/__init__.py delete mode 100644 addons/web_kanban/controllers/main.py diff --git a/addons/web_calendar/__init__.py b/addons/web_calendar/__init__.py index 4a64491e6bb..013e4b7ec4e 100644 --- a/addons/web_calendar/__init__.py +++ b/addons/web_calendar/__init__.py @@ -1,2 +1 @@ #!/usr/bin/python -import controllers diff --git a/addons/web_calendar/controllers/__init__.py b/addons/web_calendar/controllers/__init__.py deleted file mode 100644 index 039d9715fab..00000000000 --- a/addons/web_calendar/controllers/__init__.py +++ /dev/null @@ -1 +0,0 @@ -import main \ No newline at end of file diff --git a/addons/web_calendar/controllers/main.py b/addons/web_calendar/controllers/main.py deleted file mode 100644 index 4cf65bae77f..00000000000 --- a/addons/web_calendar/controllers/main.py +++ /dev/null @@ -1,11 +0,0 @@ -import web.common as openerpweb - -from web.controllers.main import View - -class CalendarView(View): - _cp_path = "/web_calendar/calendarview" - - @openerpweb.jsonrequest - def load(self, req, model, view_id, toolbar=False): - fields_view = self.fields_view_get(req, model, view_id, 'calendar', toolbar=toolbar) - return {'fields_view': fields_view} diff --git a/addons/web_calendar/static/src/js/calendar.js b/addons/web_calendar/static/src/js/calendar.js index b9609da803d..cf918c195a7 100644 --- a/addons/web_calendar/static/src/js/calendar.js +++ b/addons/web_calendar/static/src/js/calendar.js @@ -29,18 +29,18 @@ openerp.web_calendar.CalendarView = openerp.web.View.extend({ this.color_map = {}; }, start: function() { - this.rpc("/web_calendar/calendarview/load", {"model": this.model, "view_id": this.view_id, 'toolbar': true}, this.on_loaded); + this.rpc("/web/view/load", {"model": this.model, "view_id": this.view_id, "view_type":"calendar", 'toolbar': true}, this.on_loaded); }, stop: function() { scheduler.clearAll(); }, on_loaded: function(data) { + this.fields_view = data; this.calendar_fields = {}; this.ids = this.dataset.ids; this.color_values = []; this.info_fields = []; - this.fields_view = data.fields_view; this.name = this.fields_view.name || this.fields_view.arch.attrs.string; this.view_id = this.fields_view.view_id; @@ -79,7 +79,7 @@ openerp.web_calendar.CalendarView = openerp.web.View.extend({ this.sidebar.start(); this.sidebar.navigator = new openerp.web_calendar.SidebarNavigator(this.sidebar, this.sidebar.add_section('navigator', "Navigator"), this); this.sidebar.responsible = new openerp.web_calendar.SidebarResponsible(this.sidebar, this.sidebar.add_section('responsible', "Responsible"), this); - this.sidebar.add_toolbar(data.fields_view.toolbar); + this.sidebar.add_toolbar(this.fields_view.toolbar); this.set_common_sidebar_sections(this.sidebar); this.sidebar.do_unfold(); this.sidebar.do_fold.add_last(this.refresh_scheduler); diff --git a/addons/web_gantt/__init__.py b/addons/web_gantt/__init__.py index 53e20f29429..013e4b7ec4e 100644 --- a/addons/web_gantt/__init__.py +++ b/addons/web_gantt/__init__.py @@ -1,2 +1 @@ #!/usr/bin/python -import controllers \ No newline at end of file diff --git a/addons/web_gantt/controllers/__init__.py b/addons/web_gantt/controllers/__init__.py deleted file mode 100644 index 039d9715fab..00000000000 --- a/addons/web_gantt/controllers/__init__.py +++ /dev/null @@ -1 +0,0 @@ -import main \ No newline at end of file diff --git a/addons/web_gantt/controllers/main.py b/addons/web_gantt/controllers/main.py deleted file mode 100644 index 4f7e9201b38..00000000000 --- a/addons/web_gantt/controllers/main.py +++ /dev/null @@ -1,11 +0,0 @@ -import web.common as openerpweb -from web.controllers.main import View - -class GanttView(View): - _cp_path = "/web_gantt/ganttview" - - @openerpweb.jsonrequest - def load(self, req, model, view_id): - fields_view = self.fields_view_get(req, model, view_id, 'gantt') - return {'fields_view':fields_view} - diff --git a/addons/web_gantt/static/src/js/gantt.js b/addons/web_gantt/static/src/js/gantt.js index a2da2d99671..35f642a4df4 100644 --- a/addons/web_gantt/static/src/js/gantt.js +++ b/addons/web_gantt/static/src/js/gantt.js @@ -31,14 +31,13 @@ init: function(parent, element_id, dataset, view_id) { }, start: function() { - this.rpc("/web_gantt/ganttview/load", - {"model": this.model, "view_id": this.view_id}, this.on_loaded); + this.rpc("/web/view/load", {"model": this.model, "view_id": this.view_id, "view_type": "gantt"}, this.on_loaded); }, on_loaded: function(data) { var self = this; - this.fields_view = data.fields_view; + this.fields_view = data; this.name = this.fields_view.arch.attrs.string; this.view_id = this.fields_view.view_id; diff --git a/addons/web_kanban/__init__.py b/addons/web_kanban/__init__.py index 355939a4922..e69de29bb2d 100644 --- a/addons/web_kanban/__init__.py +++ b/addons/web_kanban/__init__.py @@ -1 +0,0 @@ -import controllers \ No newline at end of file diff --git a/addons/web_kanban/controllers/__init__.py b/addons/web_kanban/controllers/__init__.py deleted file mode 100644 index 039d9715fab..00000000000 --- a/addons/web_kanban/controllers/__init__.py +++ /dev/null @@ -1 +0,0 @@ -import main \ No newline at end of file diff --git a/addons/web_kanban/controllers/main.py b/addons/web_kanban/controllers/main.py deleted file mode 100644 index ac1ba0f7637..00000000000 --- a/addons/web_kanban/controllers/main.py +++ /dev/null @@ -1,11 +0,0 @@ -import web.common as openerpweb - -from web.controllers.main import View - -class KanbanView(View): - _cp_path = "/web_kanban/kanbanview" - - @openerpweb.jsonrequest - def load(self, req, model, view_id): - fields_view = self.fields_view_get(req, model, view_id, 'kanban') - return {'fields_view': fields_view} diff --git a/addons/web_kanban/static/src/js/kanban.js b/addons/web_kanban/static/src/js/kanban.js index 3a2ed27ddfb..f0333ca7bc3 100644 --- a/addons/web_kanban/static/src/js/kanban.js +++ b/addons/web_kanban/static/src/js/kanban.js @@ -19,12 +19,11 @@ openerp.web_kanban.KanbanView = openerp.web.View.extend({ this.qweb = new QWeb2.Engine(); }, start: function() { - return this.rpc("/web_kanban/kanbanview/load", - {"model": this.model, "view_id": this.view_id}, this.on_loaded); + return this.rpc("/web/view/load", {"model": this.model, "view_id": this.view_id, "view_type": "kanban"}, this.on_loaded); }, on_loaded: function(data) { var self = this; - this.fields_view = data.fields_view; + this.fields_view = data; this.add_qweb_template(); if (this.qweb.has_template('kanban-box')) { self.dataset.read_slice(_.keys(self.fields_view.fields), { From 87e04ddc878b6d8dc52c89634e83c702e55080d9 Mon Sep 17 00:00:00 2001 From: Launchpad Translations on behalf of openerp <> Date: Wed, 7 Sep 2011 04:35:44 +0000 Subject: [PATCH 09/42] Launchpad automatic translations update. bzr revid: launchpad_translations_on_behalf_of_openerp-20110907043544-h039px7e8kmmkhkx --- addons/account/i18n/ar.po | 2 +- addons/account/i18n/cs.po | 488 +++++++++++++++++++------------- addons/analytic/i18n/ar.po | 2 +- addons/analytic/i18n/cs.po | 275 ++++++++++++++++++ addons/audittrail/i18n/cs.po | 140 +++++---- addons/base_crypt/i18n/ar.po | 2 +- addons/event/i18n/cs.po | 408 ++++++++++++++------------ addons/event_project/i18n/cs.po | 36 ++- addons/google_map/i18n/ar.po | 2 +- addons/resource/i18n/cs.po | 17 +- 10 files changed, 917 insertions(+), 455 deletions(-) create mode 100644 addons/analytic/i18n/cs.po diff --git a/addons/account/i18n/ar.po b/addons/account/i18n/ar.po index 57eaf92dad9..283875aa412 100644 --- a/addons/account/i18n/ar.po +++ b/addons/account/i18n/ar.po @@ -13,7 +13,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-09-06 04:40+0000\n" +"X-Launchpad-Export-Date: 2011-09-07 04:35+0000\n" "X-Generator: Launchpad (build 13861)\n" #. module: account diff --git a/addons/account/i18n/cs.po b/addons/account/i18n/cs.po index 2fa996f7689..724567090f4 100644 --- a/addons/account/i18n/cs.po +++ b/addons/account/i18n/cs.po @@ -4,17 +4,17 @@ # msgid "" msgstr "" -"Project-Id-Version: OpenERP Server 6.0dev\n" +"Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-11 11:14+0000\n" -"PO-Revision-Date: 2011-08-13 17:32+0000\n" -"Last-Translator: Jan B. Krejčí \n" -"Language-Team: \n" +"PO-Revision-Date: 2011-09-06 11:21+0000\n" +"Last-Translator: Jiří Hajda \n" +"Language-Team: Czech \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-09-05 05:13+0000\n" -"X-Generator: Launchpad (build 13830)\n" +"X-Launchpad-Export-Date: 2011-09-07 04:35+0000\n" +"X-Generator: Launchpad (build 13861)\n" "X-Poedit-Language: Czech\n" #. module: account @@ -31,7 +31,7 @@ msgstr "Ostatní nastavení" #: code:addons/account/wizard/account_open_closed_fiscalyear.py:40 #, python-format msgid "No End of year journal defined for the fiscal year" -msgstr "" +msgstr "Není zadán konec roku knihy pro finanční rok" #. module: account #: code:addons/account/account.py:516 @@ -798,12 +798,12 @@ msgstr "Odkaz na partnera pro tuto fakturu." #: view:account.unreconcile.reconcile:0 #: model:ir.model,name:account.model_account_move_line_unreconcile_select msgid "Unreconciliation" -msgstr "" +msgstr "Zrušení likvidace" #. module: account #: model:ir.model,name:account.model_account_analytic_Journal_report msgid "Account Analytic Journal" -msgstr "" +msgstr "Analytický účet knihy" #. module: account #: model:ir.model,name:account.model_account_automatic_reconcile @@ -839,6 +839,7 @@ msgstr "dnů" msgid "" "If checked, the new chart of accounts will not contain this by default." msgstr "" +"Pokud je zaškrtnuto, nový účtový rozvrh toto nebude obsahovat jako výchozí." #. module: account #: code:addons/account/wizard/account_invoice_refund.py:102 @@ -847,6 +848,8 @@ msgid "" "Can not %s invoice which is already reconciled, invoice should be " "unreconciled first. You can only Refund this invoice" msgstr "" +"Nelze %s faktury, která je již likvidována, u faktury by měla být nejprve " +"zrušena likvidace. Můžete vrátit peníze pouze této faktury" #. module: account #: model:ir.actions.act_window,name:account.action_subscription_form_new @@ -870,6 +873,8 @@ msgid "" "You can not do this modification on a confirmed entry ! Please note that you " "can just change some non important fields !" msgstr "" +"Nemůžete provést tuto úpravu na potvrzeném záznamu ! Prosíme berte na " +"vědomí, že můžete změnit jen některé nedůležité pole !" #. module: account #: view:account.invoice.report:0 @@ -882,7 +887,7 @@ msgstr "Průmerné zpoždění placení" #: model:ir.actions.act_window,name:account.action_tax_code_tree #: model:ir.ui.menu,name:account.menu_action_tax_code_tree msgid "Chart of Taxes" -msgstr "" +msgstr "Daňový rozvrh" #. module: account #: view:account.fiscalyear:0 @@ -934,12 +939,12 @@ msgstr "Rozšířené filtry..." #. module: account #: model:ir.ui.menu,name:account.menu_account_central_journal msgid "Centralizing Journal" -msgstr "" +msgstr "Centralizovaná kniha" #. module: account #: selection:account.journal,type:0 msgid "Sale Refund" -msgstr "" +msgstr "Prodejní dobropis" #. module: account #: model:process.node,note:account.process_node_accountingstatemententries0 @@ -1134,7 +1139,7 @@ msgstr "Zrušit faktury" #. module: account #: view:account.unreconcile.reconcile:0 msgid "Unreconciliation transactions" -msgstr "" +msgstr "Nezlikvidované transakce" #. module: account #: field:account.invoice.tax,tax_code_id:0 @@ -1147,12 +1152,12 @@ msgstr "Kód daně" #. module: account #: field:account.account,currency_mode:0 msgid "Outgoing Currencies Rate" -msgstr "" +msgstr "Odchozí měnový poměr" #. module: account #: help:account.move.line,move_id:0 msgid "The move of this entry line." -msgstr "" +msgstr "Přesun této řádky záznamu" #. module: account #: field:account.move.line.reconcile,trans_nbr:0 @@ -1390,7 +1395,7 @@ msgstr "# cifer" #. module: account #: field:account.journal,entry_posted:0 msgid "Skip 'Draft' State for Manual Entries" -msgstr "" +msgstr "Přeskočit stav 'Koncept' pro ruční záznamy" #. module: account #: view:account.invoice.report:0 @@ -1431,6 +1436,8 @@ msgstr "" msgid "" "Example: at 14 net days 2 percents, remaining amount at 30 days end of month." msgstr "" +"Příklad: při 14 čistých dnech 2 procenta, zbývající čístka při 30 dnech " +"konce měsíce." #. module: account #: code:addons/account/invoice.py:823 @@ -1518,6 +1525,8 @@ msgstr "Hledat v bankovních výpisech" msgid "" "Wrong credit or debit value in model (Credit + Debit Must Be greater \"0\")!" msgstr "" +"Nesprávná hodnota Dal nebo Má dáti v modelu (Dal + Má dáti musí být větší " +"než \"0\")!" #. module: account #: view:account.chart.template:0 @@ -1641,7 +1650,7 @@ msgstr "Roční součet" #. module: account #: model:ir.actions.report.xml,name:account.report_account_voucher_new msgid "Print Voucher" -msgstr "" +msgstr "Tisknout poukaz" #. module: account #: view:account.change.currency:0 @@ -1655,6 +1664,9 @@ msgid "" "Have a complete tree view of all journal items per account code by clicking " "on an account." msgstr "" +"Zobrazí účtový rozvrh na finanční rok vaší společnosti a filtruje podle " +"období. Kliknutím na účet získáte celkový stromový pohled položek knihy na " +"kód účtu." #. module: account #: constraint:account.fiscalyear:0 @@ -1665,7 +1677,7 @@ msgstr "Chyba! Nemůžete definovat překrývající se finanční roky" #: code:addons/account/account_move_line.py:799 #, python-format msgid "The account is not defined to be reconciled !" -msgstr "" +msgstr "Účet není definován pro likvidaci !" #. module: account #: field:account.cashbox.line,pieces:0 @@ -1678,6 +1690,8 @@ msgid "" "If the active field is set to False, it will allow you to hide the journal " "period without removing it." msgstr "" +"Pokud je aktivní pole nastaveno na Nepravda, umožní vám skrýt období knihy " +"bez jeho odebrání." #. module: account #: view:res.partner:0 @@ -1698,12 +1712,12 @@ msgstr "Pohledávky & Závazky" #: code:addons/account/account_move_line.py:806 #, python-format msgid "You have to provide an account for the write off entry !" -msgstr "" +msgstr "Musíte poskytnout účet pro výpis záznamu !" #. module: account #: model:ir.model,name:account.model_account_common_journal_report msgid "Account Common Journal Report" -msgstr "" +msgstr "Obecný výkaz účetní knihy" #. module: account #: selection:account.partner.balance,display_partner:0 @@ -1713,7 +1727,7 @@ msgstr "Všichni partneři" #. module: account #: report:account.move.voucher:0 msgid "Ref. :" -msgstr "" +msgstr "Odk. :" #. module: account #: view:account.analytic.chart:0 @@ -1728,13 +1742,13 @@ msgstr "Moje položyk" #. module: account #: report:account.overdue:0 msgid "Customer Ref:" -msgstr "" +msgstr "Odkaz zákazníka:" #. module: account #: code:addons/account/account_cash_statement.py:329 #, python-format msgid "User %s does not have rights to access %s journal !" -msgstr "" +msgstr "U6ivatel %s nemá práva pro přístup k deníku %s !" #. module: account #: help:account.period,special:0 @@ -1760,7 +1774,7 @@ msgstr "Nemůžete deaktivovat účet, který obsahuje účetní pohyby." #. module: account #: field:account.move.line.reconcile,credit:0 msgid "Credit amount" -msgstr "" +msgstr "Částka Dal" #. module: account #: constraint:account.move.line:0 @@ -1785,7 +1799,7 @@ msgstr "Účet rezerv a zisku/ztrát" #. module: account #: sql_constraint:account.move.line:0 msgid "Wrong credit or debit value in accounting entry !" -msgstr "" +msgstr "Chybná hodnota Má dáti nebo dal v účetním záznamu !" #. module: account #: view:account.invoice.report:0 @@ -1812,7 +1826,7 @@ msgstr "Položky dle řádku" #. module: account #: report:account.tax.code.entries:0 msgid "A/c Code" -msgstr "" +msgstr "Kód A/c" #. module: account #: field:account.invoice,move_id:0 @@ -1908,7 +1922,7 @@ msgstr "" msgid "" "It adds the currency column if the currency is different then the company " "currency" -msgstr "" +msgstr "Přidává aktuální sloupec, pokud jměna je jiná než měna společnosti" #. module: account #: help:account.journal,allow_date:0 @@ -1916,6 +1930,8 @@ msgid "" "If set to True then do not accept the entry if the entry date is not into " "the period dates" msgstr "" +"Pokud je Pravda, pak nepříjímat záznam pokud datum záznamu není v rozmezí " +"období dat" #. module: account #: model:ir.actions.act_window,name:account.action_account_pl_report @@ -1932,7 +1948,7 @@ msgstr "Obrázek" #. module: account #: report:account.move.voucher:0 msgid "Canceled" -msgstr "" +msgstr "Zrušeno" #. module: account #: view:account.invoice:0 @@ -2019,7 +2035,7 @@ msgstr "Tento D.rok" #. module: account #: view:account.tax.chart:0 msgid "Account tax charts" -msgstr "" +msgstr "Daňový účtový rozvrh" #. module: account #: constraint:account.period:0 @@ -2454,7 +2470,7 @@ msgstr "" #. module: account #: report:account.journal.period.print:0 msgid "Label" -msgstr "" +msgstr "Označení" #. module: account #: view:account.tax:0 @@ -2476,7 +2492,7 @@ msgstr "Bankovní vyrovnání" #. module: account #: report:account.invoice:0 msgid "Disc.(%)" -msgstr "" +msgstr "Slev.(%)" #. module: account #: report:account.general.ledger:0 @@ -2640,16 +2656,18 @@ msgid "" "The statement balance is incorrect !\n" "The expected balance (%.2f) is different than the computed one. (%.2f)" msgstr "" +"Výpis zůstatku je neplatný !\n" +"Zůstatek útrat (%.2f) je jiný než vypočtený. (%.2f)" #. module: account #: model:process.transition,note:account.process_transition_paymentreconcile0 msgid "Payment entries are the second input of the reconciliation." -msgstr "" +msgstr "Platební položky jsou druhý vstup pro vyrovnání." #. module: account #: report:account.move.voucher:0 msgid "Number:" -msgstr "" +msgstr "Číslo:" #. module: account #: selection:account.print.journal,sort_selection:0 @@ -2703,7 +2721,7 @@ msgstr "použito v rámci likvidace výpisu, nemělo by se používat jinde" #. module: account #: field:account.invoice.tax,base_amount:0 msgid "Base Code Amount" -msgstr "" +msgstr "Částka základního kódu" #. module: account #: field:wizard.multi.charts.accounts,sale_tax:0 @@ -2880,7 +2898,7 @@ msgstr "Pohled" #: code:addons/account/account.py:2951 #, python-format msgid "BNK%s" -msgstr "" +msgstr "BNK%s" #. module: account #: code:addons/account/account.py:2950 @@ -2922,7 +2940,7 @@ msgstr "Nadřazená účetní kniha účtu" #. module: account #: help:account.journal.column,sequence:0 msgid "Gives the sequence order to journal column." -msgstr "" +msgstr "Dává pořadí do sloupce knihy." #. module: account #: view:account.tax.template:0 @@ -2942,6 +2960,8 @@ msgid "" "This wizard will validate all journal entries of a particular journal and " "period. Once journal entries are validated, you can not update them anymore." msgstr "" +"Průvodce ověří všechny záznamy knihy určité knihy a období. Jakmile jsou " +"záznamy ověřeny, nemůžete je již aktualizovat." #. module: account #: model:ir.actions.act_window,name:account.action_account_chart_template_form @@ -3080,12 +3100,12 @@ msgstr "DPH:" msgid "" "The amount expressed in the related account currency if not equal to the " "company one." -msgstr "" +msgstr "Částka vyjádřena ve vztažené měně, pokud neodpovídá té společnosti." #. module: account #: report:account.move.voucher:0 msgid "Journal:" -msgstr "" +msgstr "Kniha:" #. module: account #: view:account.bank.statement:0 @@ -3136,7 +3156,7 @@ msgstr "rok" #. module: account #: report:account.move.voucher:0 msgid "Authorised Signatory" -msgstr "" +msgstr "Autorizovaný podpis" #. module: account #: view:validate.account.move.lines:0 @@ -3144,12 +3164,14 @@ msgid "" "All selected journal entries will be validated and posted. It means you " "won't be able to modify their accounting fields anymore." msgstr "" +"Všechny vybrané záznamy deníku budou ověřeny a poslané. To znamená, že " +"nebudete schopni nadále měnit jejich účetní pole." #. module: account #: code:addons/account/invoice.py:373 #, python-format msgid "Cannot delete invoice(s) that are already opened or paid !" -msgstr "" +msgstr "Nelze odstranit faktury, které jsou již otevřené a zaplacené !" #. module: account #: report:account.account.balance.landscape:0 @@ -3164,7 +3186,7 @@ msgstr "Přesuny" #. module: account #: view:account.payment.term.line:0 msgid " value amount: n.a" -msgstr "" +msgstr " částka hodnoty: není" #. module: account #: view:account.chart:0 @@ -3190,7 +3212,7 @@ msgstr "Hledat pohyby" #: field:account.tax.code,name:0 #: field:account.tax.code.template,name:0 msgid "Tax Case Name" -msgstr "" +msgstr "Jméno daňového případu" #. module: account #: report:account.invoice:0 @@ -3205,6 +3227,8 @@ msgid "" "Selected Invoice(s) cannot be cancelled as they are already in 'Cancelled' " "or 'Done' state!" msgstr "" +"Vybrané faktury nemohou být zrušeny, protože jsou již ve stavu 'Zrušeno' " +"nebo 'Dokončeno'!" #. module: account #: code:addons/account/account.py:532 @@ -3264,7 +3288,7 @@ msgstr "Podrobnosti" #. module: account #: field:account.installer,bank_accounts_id:0 msgid "Your Bank and Cash Accounts" -msgstr "" +msgstr "Vaše bankovní a hotovostní účty" #. module: account #: report:account.invoice:0 @@ -3292,7 +3316,7 @@ msgstr "Centralizované protějšek" #. module: account #: model:ir.model,name:account.model_account_partner_reconcile_process msgid "Reconcilation Process partner by partner" -msgstr "" +msgstr "Proces likvidace partner po partnerovi" #. module: account #: selection:account.automatic.reconcile,power:0 @@ -3303,6 +3327,7 @@ msgstr "2" #: view:account.chart:0 msgid "(If you do not select Fiscal year it will take all open fiscal years)" msgstr "" +"(Pokud nemáte vybraný Fiskální rok, budou vzaty všechny fiskální roky)" #. module: account #: selection:account.aged.trial.balance,filter:0 @@ -3356,7 +3381,7 @@ msgstr "Nevyrovnaný" #: code:addons/account/wizard/account_fiscalyear_close.py:79 #, python-format msgid "The journal must have default credit and debit account" -msgstr "" +msgstr "Kniha musí mít výchozí účty Dal a Má dáti" #. module: account #: view:account.chart.template:0 @@ -3376,7 +3401,7 @@ msgstr "" #: code:addons/account/account_move_line.py:801 #, python-format msgid "Some entries are already reconciled !" -msgstr "" +msgstr "Některé položky byly již zlikvidovány !" #. module: account #: code:addons/account/account.py:1218 @@ -3385,6 +3410,8 @@ msgid "" "You cannot validate a Journal Entry unless all journal items are in same " "chart of accounts !" msgstr "" +"Nemůžete ověřit záznamy knihy, pokud nejsou všechny položky ve stejném " +"účtovém rozvrhu." #. module: account #: view:account.tax:0 @@ -3448,12 +3475,12 @@ msgstr "Množ." #. module: account #: field:account.invoice.report,address_contact_id:0 msgid "Contact Address Name" -msgstr "" +msgstr "Jméno kontaktu adresy" #. module: account #: field:account.move.line,blocked:0 msgid "Litigation" -msgstr "" +msgstr "Spor" #. module: account #: view:account.analytic.line:0 @@ -3481,6 +3508,8 @@ msgstr "Platební příkaz" msgid "" "Check this option if you want the user to reconcile entries in this account." msgstr "" +"Zaškrtněte tuto volbu, pokud chcete, aby uživatel likvidoval záznanmy v " +"tomto účtu." #. module: account #: model:ir.actions.report.xml,name:account.account_account_balance_landscape @@ -3514,7 +3543,7 @@ msgstr "#Položky" #, python-format msgid "" "You selected an Unit of Measure which is not compatible with the product." -msgstr "" +msgstr "Vybrali jste Měrnou jednotku, která není slučitelná s výrobkem." #. module: account #: code:addons/account/invoice.py:476 @@ -3629,7 +3658,7 @@ msgstr "Nastavit na koncept" #. module: account #: model:ir.actions.act_window,name:account.action_subscription_form msgid "Recurring Lines" -msgstr "" +msgstr "Opakující se řádky" #. module: account #: field:account.partner.balance,display_partner:0 @@ -3667,7 +3696,7 @@ msgstr "Průměrný kurz" #. module: account #: view:account.state.open:0 msgid "(Invoice should be unreconciled if you want to open it)" -msgstr "" +msgstr "(Faktura by měla být vyrovnánan, pokud ji chcete otevřít)" #. module: account #: field:account.aged.trial.balance,period_from:0 @@ -3706,7 +3735,7 @@ msgstr "Nastavení" #: model:account.payment.term,name:account.account_payment_term #: model:account.payment.term,note:account.account_payment_term msgid "30 Days End of Month" -msgstr "" +msgstr "30 den v měsíci" #. module: account #: model:ir.actions.act_window,name:account.action_account_analytic_balance @@ -3734,7 +3763,7 @@ msgstr "" #. module: account #: view:account.tax.template:0 msgid "Search Tax Templates" -msgstr "" +msgstr "Hledat daňovou šablonu" #. module: account #: model:ir.ui.menu,name:account.periodical_processing_journal_entries_validation @@ -3782,6 +3811,8 @@ msgid "" "This account will be used to value outgoing stock for the current product " "category using sale price" msgstr "" +"Tento účet bude použit pro ovenění odchozích zásob pro aktuální kategorii " +"výrobků s použitím prodejní ceny" #. module: account #: selection:account.automatic.reconcile,power:0 @@ -3798,7 +3829,7 @@ msgstr "" #. module: account #: view:account.bank.statement:0 msgid "Close CashBox" -msgstr "" +msgstr "Uzevření pokladny" #. module: account #: view:account.invoice.report:0 @@ -3815,7 +3846,7 @@ msgstr "Typ učtu" #: code:addons/account/invoice.py:722 #, python-format msgid "Global taxes defined, but are not in invoice lines !" -msgstr "" +msgstr "Definovány celkové daně, ale nejsou v řádcích faktury !" #. module: account #: field:account.entries.report,month:0 @@ -3831,7 +3862,7 @@ msgstr "Měsíc" #. module: account #: field:account.invoice.report,uom_name:0 msgid "Reference UoM" -msgstr "" +msgstr "Referenční MJ" #. module: account #: field:account.account,note:0 @@ -3876,7 +3907,7 @@ msgstr "" #: code:addons/account/account_analytic_line.py:90 #, python-format msgid "There is no expense account defined for this product: \"%s\" (id:%d)" -msgstr "" +msgstr "Pro tento výrobek nebyl definován nákladový účet: \"%s\" (id:%d)" #. module: account #: view:res.partner:0 @@ -3916,7 +3947,7 @@ msgstr "Všechny poslané položky" #: code:addons/account/account_bank_statement.py:357 #, python-format msgid "Statement %s is confirmed, journal items are created." -msgstr "" +msgstr "Výpis %s je potvrzen, záznamy knihy jsou vytvořeny." #. module: account #: constraint:account.fiscalyear:0 @@ -3931,7 +3962,7 @@ msgstr "Rozsah měsíců" #. module: account #: help:account.analytic.balance,empty_acc:0 msgid "Check if you want to display Accounts with 0 balance too." -msgstr "" +msgstr "Zaškrtněte pokud chcete zobrazit také účty s nulovým zůstatkem." #. module: account #: view:account.tax:0 @@ -4035,7 +4066,7 @@ msgstr "Nerealizováno" #. module: account #: model:ir.model,name:account.model_account_journal_select msgid "Account Journal Select" -msgstr "" +msgstr "Výběr knihy účtu" #. module: account #: view:account.invoice:0 @@ -4045,14 +4076,14 @@ msgstr "Tisknout fakturu" #. module: account #: view:account.tax.template:0 msgid "Credit Notes" -msgstr "" +msgstr "Poznámky Dal" #. module: account #: code:addons/account/account.py:2081 #: code:addons/account/wizard/account_use_model.py:69 #, python-format msgid "Unable to find a valid period !" -msgstr "" +msgstr "Nelze najít platné období !" #. module: account #: report:account.tax.code.entries:0 @@ -4062,17 +4093,17 @@ msgstr "" #. module: account #: view:wizard.multi.charts.accounts:0 msgid "res_config_contents" -msgstr "" +msgstr "res_config_contents" #. module: account #: view:account.unreconcile:0 msgid "Unreconciliate transactions" -msgstr "" +msgstr "Nevyrovnané transakce" #. module: account #: view:account.use.model:0 msgid "Create Entries From Models" -msgstr "" +msgstr "Vytvořit položky z modelů" #. module: account #: field:account.account.template,reconcile:0 @@ -4090,12 +4121,14 @@ msgid "" "This will automatically configure your chart of accounts, bank accounts, " "taxes and journals according to the selected template" msgstr "" +"Toto automaticky nastaví váš účetní rozvrh, bankovní účty, daně a knihy " +"podle vybrané šablony" #. module: account #: field:account.tax,price_include:0 #: field:account.tax.template,price_include:0 msgid "Tax Included in Price" -msgstr "" +msgstr "Daň zahrnutá v ceně" #. module: account #: model:ir.model,name:account.model_account_analytic_cost_ledger_journal_report @@ -4106,7 +4139,7 @@ msgstr "" #: model:ir.actions.act_window,name:account.action_model_form #: model:ir.ui.menu,name:account.menu_action_model_form msgid "Recurring Models" -msgstr "" +msgstr "Model opakování" #. module: account #: selection:account.automatic.reconcile,power:0 @@ -4132,7 +4165,7 @@ msgstr "Změnit" #: code:addons/account/wizard/account_report_aged_partner_balance.py:57 #, python-format msgid "UserError" -msgstr "" +msgstr "UserError" #. module: account #: field:account.journal,type_control_ids:0 @@ -4142,12 +4175,12 @@ msgstr "Typ prvků" #. module: account #: help:account.journal,default_credit_account_id:0 msgid "It acts as a default account for credit amount" -msgstr "" +msgstr "Chová se jako výchozí účet pro částku Dal" #. module: account #: help:account.partner.ledger,reconcil:0 msgid "Consider reconciled entries" -msgstr "" +msgstr "Uvažte vyrovnané záznamy" #. module: account #: model:ir.actions.act_window,name:account.action_validate_account_move_line @@ -4167,7 +4200,7 @@ msgstr "Zrušeno" #. module: account #: help:account.bank.statement,balance_end_cash:0 msgid "Closing balance based on cashBox" -msgstr "" +msgstr "Uzavírací zůstek založeny na pokladně" #. module: account #: constraint:account.account:0 @@ -4181,6 +4214,8 @@ msgid "" "You cannot create an account! \n" "Make sure if the account has children then it should be type \"View\"!" msgstr "" +"Nemůžete vytvořit účet! \n" +"Ujistěte se, že účet má potomky, které mají být typu \"View\"!" #. module: account #: view:account.subscription.generate:0 @@ -4192,7 +4227,7 @@ msgstr "Generová položky" #. module: account #: help:account.vat.declaration,chart_tax_id:0 msgid "Select Charts of Taxes" -msgstr "" +msgstr "Vyberte daňový rozvrh" #. module: account #: view:account.fiscal.position:0 @@ -4224,7 +4259,7 @@ msgstr "Zrušené faktury" #: code:addons/account/invoice.py:73 #, python-format msgid "You must define an analytic journal of type '%s' !" -msgstr "" +msgstr "Musíte definovat analytickou knihu typu '%s' !" #. module: account #: code:addons/account/account.py:1411 @@ -4266,13 +4301,13 @@ msgstr "Počáteční den" #. module: account #: field:account.chart.template,property_account_income:0 msgid "Income Account on Product Template" -msgstr "" +msgstr "Příjmový účet na šabloně výrobku" #. module: account #: help:res.partner,last_reconciliation_date:0 msgid "" "Date on which the partner accounting entries were reconciled last time" -msgstr "" +msgstr "Datum, při kterém byly naposledy vyrovnány účetní záznamy partnera" #. module: account #: field:account.fiscalyear.close,fy2_id:0 @@ -4298,6 +4333,8 @@ msgid "" "Please verify the price of the invoice !\n" "The real total does not match the computed total." msgstr "" +"Prosíme zkontrolujte cenu na faktuře !\n" +"Skutečný součet neodpovídá vypočtenému součtu." #. module: account #: view:account.invoice:0 @@ -4325,7 +4362,7 @@ msgstr "Ne" #. module: account #: help:account.invoice.tax,tax_code_id:0 msgid "The tax basis of the tax declaration." -msgstr "" +msgstr "Daňový základ pro deklaraci daně" #. module: account #: view:account.addtmpl.wizard:0 @@ -4335,7 +4372,7 @@ msgstr "Přidat" #. module: account #: help:account.invoice,date_invoice:0 msgid "Keep empty to use the current date" -msgstr "" +msgstr "Nechejte prázdné pro použití aktuálního data" #. module: account #: selection:account.journal,type:0 @@ -4355,7 +4392,7 @@ msgstr "Bankovní výpis použitý pro likvidaci banky" #. module: account #: model:process.transition,note:account.process_transition_suppliercustomerinvoice0 msgid "Draft invoices are validated. " -msgstr "" +msgstr "Koncepty faktůr jsou ověřeny. " #. module: account #: view:account.bank.statement:0 @@ -4366,7 +4403,7 @@ msgstr "Spočítat" #. module: account #: field:account.tax,type_tax_use:0 msgid "Tax Application" -msgstr "" +msgstr "Daňová aplikace" #. module: account #: view:account.move:0 @@ -4396,7 +4433,7 @@ msgstr "Položky deníku" #. module: account #: selection:account.account.type,report_type:0 msgid "Balance Sheet (Assets Accounts)" -msgstr "" +msgstr "Rozvaha (Majetkové účty)" #. module: account #: report:account.tax.code.entries:0 @@ -4463,12 +4500,12 @@ msgstr "" #. module: account #: view:account.fiscalyear.close:0 msgid "Generate Fiscal Year Opening Entries" -msgstr "" +msgstr "Generovat otvírající záznamy finančního roku" #. module: account #: field:account.journal,group_invoice_lines:0 msgid "Group Invoice Lines" -msgstr "" +msgstr "Skupinové řádky faktury" #. module: account #: view:account.invoice.cancel:0 @@ -4530,7 +4567,7 @@ msgstr "5" #. module: account #: report:account.analytic.account.balance:0 msgid "Analytic Balance -" -msgstr "" +msgstr "Analytický zůstatek -" #. module: account #: report:account.account.balance:0 @@ -4583,7 +4620,7 @@ msgstr "Platby" #. module: account #: view:account.tax:0 msgid "Reverse Compute Code" -msgstr "" +msgstr "Opačný výpočtový kód" #. module: account #: field:account.subscription.line,move_id:0 @@ -4627,7 +4664,7 @@ msgstr "Rok" #. module: account #: field:account.bank.statement,starting_details_ids:0 msgid "Opening Cashbox" -msgstr "" +msgstr "Otevírání pokladny" #. module: account #: view:account.payment.term.line:0 @@ -4654,7 +4691,7 @@ msgstr "měsíc" #: code:addons/account/account_bank_statement.py:293 #, python-format msgid "Journal Item \"%s\" is not valid" -msgstr "" +msgstr "Položka knihy \"%s\" není platná" #. module: account #: view:account.payment.term:0 @@ -4684,7 +4721,7 @@ msgstr "Výsledek vyrovnání" #: report:account.balancesheet.horizontal:0 #: report:account.balancesheet:0 msgid "Balance Sheet" -msgstr "Zůstatkový list" +msgstr "Rozvaha" #. module: account #: model:ir.ui.menu,name:account.final_accounting_reports @@ -4714,7 +4751,7 @@ msgstr "UoM" #: code:addons/account/wizard/account_invoice_refund.py:138 #, python-format msgid "No Period found on Invoice!" -msgstr "" +msgstr "Na faktuře nenalezeno žádné období!" #. module: account #: view:account.tax.template:0 @@ -4781,6 +4818,7 @@ msgstr "Daň z dětí" msgid "" "You can not create move line on receivable/payable account without partner" msgstr "" +"Bez partnera nemůžet vytvořit pohybový řádek v účtu pohledávek/závazků" #. module: account #: code:addons/account/account.py:2081 @@ -4797,7 +4835,7 @@ msgstr "Povolit zrušení položek" #. module: account #: field:account.tax.code,sign:0 msgid "Coefficent for parent" -msgstr "" +msgstr "Koeficient pro nadřazený" #. module: account #: report:account.partner.balance:0 @@ -4819,7 +4857,7 @@ msgstr "Transakce" #: help:account.tax.template,ref_tax_code_id:0 #: help:account.tax.template,tax_code_id:0 msgid "Use this code for the VAT declaration." -msgstr "" +msgstr "Použije tento kód pro deklaraci DPH." #. module: account #: view:account.move.line:0 @@ -4829,13 +4867,13 @@ msgstr "Dluh/Vklad" #. module: account #: view:report.hr.timesheet.invoice.journal:0 msgid "Analytic Entries Stats" -msgstr "" +msgstr "Statistiky analytických záznamů" #. module: account #: model:ir.actions.act_window,name:account.action_account_tax_code_template_form #: model:ir.ui.menu,name:account.menu_action_account_tax_code_template_form msgid "Tax Code Templates" -msgstr "" +msgstr "Šablony kódu daně" #. module: account #: model:ir.model,name:account.model_account_installer @@ -4853,6 +4891,8 @@ msgid "" "Number of days to add before computation of the day of month.If Date=15/01, " "Number of Days=22, Day of Month=-1, then the due date is 28/02." msgstr "" +"Počet dní pro přidáno před výpočtem dne v měsíci.Pokud datum=15.1, číslo " +"dne=22, Den v měsíci=-1, pak datum splatnosti je 28.2." #. module: account #: code:addons/account/account.py:2940 @@ -4871,7 +4911,7 @@ msgstr "Vstupní prvky" #: view:account.analytic.chart:0 #: view:project.account.analytic.line:0 msgid "(Keep empty to open the current situation)" -msgstr "" +msgstr "(Nechejte prázdné pro otevření aktuální situace)" #. module: account #: field:account.analytic.Journal.report,date1:0 @@ -4925,7 +4965,7 @@ msgstr "Výchozí daně" #: field:account.tax.template,ref_tax_sign:0 #: field:account.tax.template,tax_sign:0 msgid "Tax Code Sign" -msgstr "" +msgstr "Znak kódu daně" #. module: account #: model:ir.model,name:account.model_report_invoice_created @@ -4935,7 +4975,7 @@ msgstr "Výkaz faktur vytvořených za posledních 15 dnů" #. module: account #: field:account.fiscalyear,end_journal_period_id:0 msgid "End of Year Entries Journal" -msgstr "" +msgstr "Záznamy knihy konce roku" #. module: account #: code:addons/account/account_bank_statement.py:331 @@ -5014,6 +5054,8 @@ msgid "" "According value related accounts will be display on respective reports " "(Balance Sheet Profit & Loss Account)" msgstr "" +"Podle hodnoty vztažených účtů budou zobrazeny na příslušných výkazech " +"(Rozvaha účtů zisku & ztrát)" #. module: account #: field:account.report.general.ledger,sortby:0 @@ -5027,6 +5069,8 @@ msgid "" "There is no default default credit account defined \n" "on journal \"%s\"" msgstr "" +"Není definován výchozí účet Dal \n" +"v knize \"%s\"" #. module: account #: field:account.entries.report,amount_currency:0 @@ -5042,6 +5086,7 @@ msgid "" "Specified Journal does not have any account move entries in draft state for " "this period" msgstr "" +"Zadaná kniha nemá žádné pohybové záznamy v stavu Konceptu pro toto období" #. module: account #: model:ir.actions.act_window,name:account.action_view_move_line @@ -5071,7 +5116,7 @@ msgstr "Číslo (pohyb)" #. module: account #: view:account.invoice.refund:0 msgid "Refund Invoice Options" -msgstr "" +msgstr "Volby dobropisu faktury" #. module: account #: help:account.automatic.reconcile,power:0 @@ -5079,6 +5124,8 @@ msgid "" "Number of partial amounts that can be combined to find a balance point can " "be chosen as the power of the automatic reconciliation" msgstr "" +"Počet dílčích částek, které mohou být sloučeny k nalezení zůstatkového bodu " +"mohou být vybrány jako mocnina automatického vyrovnání" #. module: account #: help:account.payment.term.line,sequence:0 @@ -5143,12 +5190,12 @@ msgstr "Platné po" #. module: account #: view:board.board:0 msgid "Aged Receivables" -msgstr "" +msgstr "Staré pohledávky" #. module: account #: model:ir.actions.act_window,name:account.action_account_automatic_reconcile msgid "Account Automatic Reconcile" -msgstr "" +msgstr "Automatické vyrovnání účtu" #. module: account #: view:account.move:0 @@ -5176,7 +5223,7 @@ msgstr "Již vyrovnáno!" #. module: account #: help:account.tax,type:0 msgid "The computation method for the tax amount." -msgstr "" +msgstr "Výpočetní metoda pro částku daně." #. module: account #: help:account.installer.modules,account_anglo_saxon:0 @@ -5184,6 +5231,8 @@ msgid "" "This module will support the Anglo-Saxons accounting methodology by changing " "the accounting logic with stock transactions." msgstr "" +"Tento modul bude podporovat Anglo-saskou účetní metodologii pomocí změny " +"účetní logiky se skladovými transakcemi." #. module: account #: field:report.invoice.created,create_date:0 @@ -5257,7 +5306,7 @@ msgstr "" #. module: account #: field:account.payment.term.line,value:0 msgid "Valuation" -msgstr "" +msgstr "Ohodnocení" #. module: account #: selection:account.aged.trial.balance,result_selection:0 @@ -5278,12 +5327,12 @@ msgstr "Finanční mapování" #: model:ir.actions.act_window,name:account.action_account_state_open #: model:ir.model,name:account.model_account_state_open msgid "Account State Open" -msgstr "" +msgstr "Stav účtu otevřený" #. module: account #: report:account.analytic.account.quantity_cost_ledger:0 msgid "Max Qty:" -msgstr "" +msgstr "Max. množ.:" #. module: account #: view:account.invoice.refund:0 @@ -5302,6 +5351,9 @@ msgid "" "document shows your debit and credit taking in consideration some criteria " "you can choose by using the search tool." msgstr "" +"Z tohoto pohledu, mít analýzu vašich různých finančních účtů. Dokument " +"ukazuje vaše Má dáti a Dal bráno v potaz některé kritéria, které můžete " +"vybrat použitím nástroje hledání." #. module: account #: model:ir.actions.act_window,help:account.action_tax_code_list @@ -5376,7 +5428,7 @@ msgstr "Nemůžete použít neaktivní účet!" #: code:addons/account/account_move_line.py:794 #, python-format msgid "Entries are not of the same account or already reconciled ! " -msgstr "" +msgstr "Záznamy nejsou ze stejného účtu nebo jsou již zlikvidovány ! " #. module: account #: field:account.tax,account_collected_id:0 @@ -5427,7 +5479,7 @@ msgstr "" #. module: account #: help:account.tax,name:0 msgid "This name will be displayed on reports" -msgstr "" +msgstr "Toto jméno bude zobrazeno ve výkazech" #. module: account #: report:account.analytic.account.cost_ledger:0 @@ -5466,7 +5518,7 @@ msgstr "Jméno období deníku" #. module: account #: field:account.invoice.tax,factor_base:0 msgid "Multipication factor for Base code" -msgstr "" +msgstr "Násobek pro základní kód" #. module: account #: code:addons/account/wizard/account_report_common.py:126 @@ -5477,7 +5529,7 @@ msgstr "nerealizováno" #. module: account #: help:account.journal,company_id:0 msgid "Company related to this journal" -msgstr "" +msgstr "Společnost vztažená k této knize" #. module: account #: code:addons/account/wizard/account_invoice_state.py:44 @@ -5497,7 +5549,7 @@ msgstr "" #: model:ir.actions.act_window,name:account.action_analytic_entries_report #: model:ir.ui.menu,name:account.menu_action_analytic_entries_report msgid "Analytic Entries Analysis" -msgstr "" +msgstr "Analýza analytických záznamů" #. module: account #: selection:account.aged.trial.balance,direction_selection:0 @@ -5513,7 +5565,7 @@ msgstr "Analytická položka" #: view:res.company:0 #: field:res.company,overdue_msg:0 msgid "Overdue Payments Message" -msgstr "" +msgstr "Zpráva zpožděných plateb" #. module: account #: model:ir.actions.act_window,help:account.action_account_moves_all_a @@ -5539,12 +5591,12 @@ msgstr "částka hodnoty" msgid "" "The code will be used to generate the numbers of the journal entries of this " "journal." -msgstr "" +msgstr "Kód bude použit pro generování čísel záznamů knihy této knihy." #. module: account #: view:account.invoice:0 msgid "(keep empty to use the current period)" -msgstr "" +msgstr "(nechejte prázdné pro použití aktuálního období)" #. module: account #: model:process.transition,note:account.process_transition_supplierreconcilepaid0 @@ -5557,7 +5609,7 @@ msgstr "" #: code:addons/account/invoice.py:997 #, python-format msgid "Invoice '%s' is validated." -msgstr "" +msgstr "Faktura '%s' je ověřena." #. module: account #: view:account.chart.template:0 @@ -5583,7 +5635,7 @@ msgstr "Daně zákazníka" #. module: account #: view:account.addtmpl.wizard:0 msgid "Create an Account based on this template" -msgstr "" +msgstr "Vytvořit účet založený na šabloně" #. module: account #: view:account.account.type:0 @@ -5594,7 +5646,7 @@ msgstr "Nastavení vykazování" #. module: account #: constraint:account.move.line:0 msgid "Company must be same for its related account and period." -msgstr "" +msgstr "Společnost musí být stejná pro její vztažené účty a období." #. module: account #: field:account.tax,type:0 @@ -5636,12 +5688,12 @@ msgstr "Vyberte finanční rok k uzavření" #. module: account #: help:account.chart.template,tax_template_ids:0 msgid "List of all the taxes that have to be installed by the wizard" -msgstr "" +msgstr "Seznam všech daní, které mají být instalovány průvodcem" #. module: account #: model:ir.actions.report.xml,name:account.account_intracom msgid "IntraCom" -msgstr "" +msgstr "IntraCom" #. module: account #: view:account.move.line.reconcile.writeoff:0 @@ -5741,7 +5793,7 @@ msgstr "Výchozí zůstatek účtu" #. module: account #: view:account.installer:0 msgid "Configure Your Accounting Chart" -msgstr "" +msgstr "Nastavit váš Účtový rozvrh" #. module: account #: view:account.payment.term.line:0 @@ -5751,7 +5803,7 @@ msgstr " počet dní: 30" #. module: account #: help:account.analytic.line,currency_id:0 msgid "The related account currency if not equal to the company one." -msgstr "" +msgstr "Vztažená měna účtu, pokud neodpovídá té společnosti." #. module: account #: view:account.analytic.account:0 @@ -5761,7 +5813,7 @@ msgstr "Aktuální" #. module: account #: view:account.bank.statement:0 msgid "CashBox" -msgstr "" +msgstr "Pokladna" #. module: account #: selection:account.tax,type:0 @@ -5791,12 +5843,12 @@ msgstr "Cena" #. module: account #: view:project.account.analytic.line:0 msgid "View Account Analytic Lines" -msgstr "" +msgstr "Zobrazit řádky analytického účtu" #. module: account #: selection:account.account.type,report_type:0 msgid "Balance Sheet (Liability Accounts)" -msgstr "" +msgstr "Rozvaha (Závazkové účty)" #. module: account #: field:account.invoice,internal_number:0 @@ -5814,13 +5866,13 @@ msgstr "" #. module: account #: model:ir.actions.act_window,name:account.action_account_partner_reconcile msgid "Reconciliation: Go to Next Partner" -msgstr "" +msgstr "Likvidace: Přejít na dalšího partnera" #. module: account #: model:ir.actions.act_window,name:account.action_account_analytic_invert_balance #: model:ir.actions.report.xml,name:account.account_analytic_account_inverted_balance msgid "Inverted Analytic Balance" -msgstr "" +msgstr "Převrácený analytický zůstatek" #. module: account #: field:account.tax.template,applicable_type:0 @@ -5831,7 +5883,7 @@ msgstr "Typ platnosti" #: field:account.invoice,reference:0 #: field:account.invoice.line,invoice_id:0 msgid "Invoice Reference" -msgstr "" +msgstr "Reference faktury" #. module: account #: help:account.tax.template,sequence:0 @@ -5840,6 +5892,9 @@ msgid "" "higher ones. The order is important if you have a tax that has several tax " "children. In this case, the evaluation order is important." msgstr "" +"Toto pole posloupnosti je použito pro pořadí řádků daní od nižších " +"posloupností po vyšší. Pořadí je důležité, pokud máte daň, která má několik " +"daňových potomků. V tomto případě je vyhodnocení pořadí důležité." #. module: account #: selection:account.account,type:0 @@ -5879,12 +5934,12 @@ msgstr "" #. module: account #: sql_constraint:account.journal:0 msgid "The name of the journal must be unique per company !" -msgstr "" +msgstr "Jméno knihy musí být jedinečné pro každou společnost !" #. module: account #: field:account.account.template,nocreate:0 msgid "Optional create" -msgstr "" +msgstr "Volitelné vytvoření" #. module: account #: code:addons/account/invoice.py:409 @@ -5893,6 +5948,7 @@ msgstr "" #, python-format msgid "Can not find account chart for this company, Please Create account." msgstr "" +"Nelze nalézt účtový rozvrh pro tuto společnost, Prosíme vytvořte účet." #. module: account #: code:addons/account/wizard/account_report_aged_partner_balance.py:57 @@ -5926,7 +5982,7 @@ msgstr "Centralizace" #. module: account #: view:wizard.multi.charts.accounts:0 msgid "Generate Your Accounting Chart from a Chart Template" -msgstr "" +msgstr "Generovat váš Účtový rozvrh z Šablony rozvrhu" #. module: account #: view:account.account:0 @@ -6018,7 +6074,7 @@ msgstr "Hotovostní transakce" #: code:addons/account/wizard/account_state_open.py:37 #, python-format msgid "Invoice is already reconciled" -msgstr "" +msgstr "Faktura je již zlikvidována" #. module: account #: view:account.account:0 @@ -6035,7 +6091,7 @@ msgstr "Poznámky" #. module: account #: model:ir.model,name:account.model_analytic_entries_report msgid "Analytic Entries Statistics" -msgstr "" +msgstr "Statistika analytických účtů" #. module: account #: code:addons/account/account_analytic_line.py:141 @@ -6047,13 +6103,13 @@ msgstr "Položky: " #. module: account #: view:account.use.model:0 msgid "Create manual recurring entries in a chosen journal." -msgstr "" +msgstr "Ručně vytvořit opakované záznamy ve vybrané knize." #. module: account #: code:addons/account/account.py:1407 #, python-format msgid "Couldn't create move between different companies" -msgstr "" +msgstr "Nelze vytvoit pohyb mezi různými společnostmi." #. module: account #: model:ir.actions.act_window,help:account.action_account_type_form @@ -6112,6 +6168,8 @@ msgid "" "This account will be used instead of the default one as the receivable " "account for the current partner" msgstr "" +"Tento účet bude použit namísto výchozího jako jako účet pohledávek pro " +"aktuálního partnera" #. module: account #: field:account.tax,python_applicable:0 @@ -6130,6 +6188,7 @@ msgstr "Kód Pythonu" msgid "" "Please define the Reserve and Profit/Loss account for current user company !" msgstr "" +"Prosíme zadejte účet Rezerv a Zisku/Ztrát pro aktuální společnost uživatele !" #. module: account #: help:account.journal,update_posted:0 @@ -6137,6 +6196,8 @@ msgid "" "Check this box if you want to allow the cancellation the entries related to " "this journal or of the invoice related to this journal" msgstr "" +"Zaškrtněte toto políčko, pokud chcete povolit zrušení záznamů vztažených k " +"této knize nebo faktur vztažených k této knize" #. module: account #: view:account.fiscalyear.close:0 @@ -6151,7 +6212,7 @@ msgstr "Vytvořit položku" #. module: account #: view:account.payment.term.line:0 msgid " valuation: percent" -msgstr "" +msgstr " ocenění: procenta" #. module: account #: code:addons/account/account.py:509 @@ -6189,7 +6250,7 @@ msgstr "Chyba !" #: model:ir.actions.report.xml,name:account.account_vat_declaration #: model:ir.ui.menu,name:account.menu_account_vat_declaration msgid "Taxes Report" -msgstr "" +msgstr "Daňový výkaz" #. module: account #: selection:account.journal.period,state:0 @@ -6250,6 +6311,7 @@ msgstr "" msgid "" "Selected Entry Lines does not have any account move enties in draft state" msgstr "" +"Vybrané řádky záznamů nemají žádný záznamy pohybů účtu ve stavu koncept" #. module: account #: selection:account.aged.trial.balance,target_move:0 @@ -6280,7 +6342,7 @@ msgstr "Všechny položky" #: constraint:product.template:0 msgid "" "Error: The default UOM and the purchase UOM must be in the same category." -msgstr "" +msgstr "Chyba: Výchozí MJ a nákupní MJ musí být ve stejné kategorii." #. module: account #: view:account.journal.select:0 @@ -6301,7 +6363,7 @@ msgstr "Vyrovnání účtu" #. module: account #: model:ir.model,name:account.model_account_fiscal_position_tax msgid "Taxes Fiscal Position" -msgstr "" +msgstr "Finanční pozice daně" #. module: account #: report:account.general.ledger:0 @@ -6350,7 +6412,7 @@ msgstr "Vlastnosti" #. module: account #: model:ir.model,name:account.model_account_tax_chart msgid "Account tax chart" -msgstr "" +msgstr "Daňový rozvrh účtu" #. module: account #: report:account.analytic.account.cost_ledger:0 @@ -6386,13 +6448,13 @@ msgstr "Příjmové účty" #. module: account #: help:report.invoice.created,origin:0 msgid "Reference of the document that generated this invoice report." -msgstr "" +msgstr "Odkaz na dokumenty, které generovaly tento výkaz faktury." #. module: account #: field:account.tax.code,child_ids:0 #: field:account.tax.code.template,child_ids:0 msgid "Child Codes" -msgstr "" +msgstr "Podřízené kódy" #. module: account #: code:addons/account/invoice.py:476 @@ -6421,7 +6483,7 @@ msgstr "Obchod" #: view:account.journal.column:0 #: model:ir.model,name:account.model_account_journal_column msgid "Journal Column" -msgstr "" +msgstr "Sloupec knihy" #. module: account #: selection:account.invoice.report,state:0 @@ -6464,7 +6526,7 @@ msgstr "" #. module: account #: model:ir.actions.act_window,name:account.act_account_acount_move_line_open_unreconciled msgid "Unreconciled Entries" -msgstr "" +msgstr "Nevyrovnané položky" #. module: account #: model:ir.ui.menu,name:account.menu_menu_Bank_process @@ -6517,6 +6579,8 @@ msgid "" "This date will be used as the invoice date for Refund Invoice and Period " "will be chosen accordingly!" msgstr "" +"Tento datum bude použit jako datum faktury pro Dobropis faktury a Období " +"bude vybráno obdobně!" #. module: account #: field:account.aged.trial.balance,period_length:0 @@ -6567,12 +6631,12 @@ msgstr "Šablona daně účtu" #. module: account #: view:account.journal.select:0 msgid "Are you sure you want to open Journal Entries?" -msgstr "" +msgstr "Jste si jisti, že chcete otevřít Záznamy deníku?" #. module: account #: view:account.state.open:0 msgid "Are you sure you want to open this invoice ?" -msgstr "" +msgstr "Jste si jisti, že chcete otevřít fakturu ?" #. module: account #: code:addons/account/account_move_line.py:963 @@ -6596,7 +6660,7 @@ msgstr "Výpis" #. module: account #: help:account.journal,default_debit_account_id:0 msgid "It acts as a default account for debit amount" -msgstr "" +msgstr "Chová se jako výchozí účet pro částku Má dáti" #. module: account #: model:ir.module.module,description:account.module_meta_information @@ -6629,6 +6693,8 @@ msgid "" "You can search for individual account entries through useful information. To " "search for account entries, open a journal, then select a record line." msgstr "" +"Můžete hledat jednotlivé záznamy účtů přes užitečné informace. K hledání " +"záznamů účtů, otevřete knihu a pak vyberte řádek záznamu." #. module: account #: report:account.invoice:0 @@ -6642,7 +6708,7 @@ msgstr "Datum faktury" #. module: account #: help:res.partner,credit:0 msgid "Total amount this customer owes you." -msgstr "" +msgstr "Celková částka, kterou vám zákazník dluží." #. module: account #: model:ir.model,name:account.model_ir_sequence @@ -6710,6 +6776,8 @@ msgid "" "Bank Account Number, Company bank account if Invoice is customer or supplier " "refund, otherwise Partner bank account number." msgstr "" +"Číslo bakovního účtu, Bankovní účet společnosti, pokud faktura je dobropis " +"zákazníka nebo dodavatele, jinak číslo bankovního účtu partnera." #. module: account #: help:account.tax,domain:0 @@ -6723,7 +6791,7 @@ msgstr "" #: code:addons/account/account.py:952 #, python-format msgid "You should have chosen periods that belongs to the same company" -msgstr "" +msgstr "Měli byste vybrat období, které patří ke stejné společnosti" #. module: account #: field:account.fiscalyear.close,report_name:0 @@ -6748,7 +6816,7 @@ msgstr "Kód deníku musí být jedinečně na společnost !" #. module: account #: field:account.bank.statement,ending_details_ids:0 msgid "Closing Cashbox" -msgstr "" +msgstr "Uzávěrka pokladny" #. module: account #: view:account.journal:0 @@ -6768,6 +6836,9 @@ msgid "" "the system to go through the reconciliation process, based on the latest day " "it have been reconciled." msgstr "" +"Pole ukazuje dalšího partnera, který bude automaticky vybrán systémem pro " +"průchod procesem likvidace, založeném na posledních dnech, kdy byl " +"likvidován." #. module: account #: field:account.move.line.reconcile.writeoff,comment:0 @@ -6801,6 +6872,9 @@ msgid "" "will be added, Loss : Amount will be deducted.), Which is calculated from " "Profit & Loss Report" msgstr "" +"Tento účet je použit pro přesun Zisku/Ztrát(Pokud je zisk: Částka bude " +"přidána, Ztráta : Částka bude odečtena.), Který je spočítán z Výkazu Zisků & " +"Ztrát" #. module: account #: view:account.invoice.line:0 @@ -6827,7 +6901,7 @@ msgstr "" #: code:addons/account/account_cash_statement.py:250 #, python-format msgid "You can not have two open register for the same journal" -msgstr "" +msgstr "Nemůžete mít dva otevřené registry pro stejné knihy" #. module: account #: view:account.payment.term.line:0 @@ -6862,6 +6936,8 @@ msgid "" "Helps you generate reminder letters for unpaid invoices, including multiple " "levels of reminding and customized per-partner policies." msgstr "" +"Pomůže vám generovat připomínkové dopisy pro nezaplacené faktury, včetně " +"více úrovní připomínání a přizpůsobitelnou politiku dle partner." #. module: account #: selection:account.entries.report,move_line_state:0 @@ -6898,7 +6974,7 @@ msgstr ":" #. module: account #: selection:account.account,currency_mode:0 msgid "At Date" -msgstr "" +msgstr "V datum" #. module: account #: help:account.move.line,date_maturity:0 @@ -6946,7 +7022,7 @@ msgstr "Vlastnosti obchodu" #. module: account #: model:ir.ui.menu,name:account.menu_manual_reconcile msgid "Manual Reconciliation" -msgstr "" +msgstr "Ruční likvidace" #. module: account #: report:account.overdue:0 @@ -6995,7 +7071,7 @@ msgstr "Účty závazků" #. module: account #: model:ir.model,name:account.model_account_chart_template msgid "Templates for Account Chart" -msgstr "" +msgstr "Šablona pro Účtový rozvrh" #. module: account #: field:account.tax.code,code:0 @@ -7048,7 +7124,7 @@ msgstr "Posloupnost" #. module: account #: model:ir.model,name:account.model_account_bs_report msgid "Account Balance Sheet Report" -msgstr "" +msgstr "Výkaz rozvahy účtu" #. module: account #: help:account.tax,price_include:0 @@ -7057,6 +7133,8 @@ msgid "" "Check this if the price you use on the product and invoices includes this " "tax." msgstr "" +"Zaškrtněte toto, pokud cena, kterou používáte u výrobku a faktur zahrnuje " +"tuto daň." #. module: account #: view:account.state.open:0 @@ -7128,7 +7206,7 @@ msgstr "" #. module: account #: model:ir.ui.menu,name:account.menu_finance_legal_statement msgid "Legal Reports" -msgstr "" +msgstr "Zákonné výkazy" #. module: account #: field:account.tax.code,sum_period:0 @@ -7146,7 +7224,7 @@ msgstr "" #. module: account #: model:ir.model,name:account.model_account_cashbox_line msgid "CashBox Line" -msgstr "" +msgstr "Řádek pokladny" #. module: account #: view:account.partner.ledger:0 @@ -7187,13 +7265,13 @@ msgstr "Varování !" #. module: account #: field:account.entries.report,move_line_state:0 msgid "State of Move Line" -msgstr "" +msgstr "Stav poybového řádku" #. module: account #: model:ir.model,name:account.model_account_move_line_reconcile #: model:ir.model,name:account.model_account_move_line_reconcile_writeoff msgid "Account move line reconcile" -msgstr "" +msgstr "Likvidace řádky pohybu účtu" #. module: account #: view:account.subscription.generate:0 @@ -7204,7 +7282,7 @@ msgstr "Vypočítat předpaltné" #. module: account #: report:account.move.voucher:0 msgid "Amount (in words) :" -msgstr "" +msgstr "Částka (slovně) :" #. module: account #: field:account.bank.statement.line,partner_id:0 @@ -7317,6 +7395,8 @@ msgid "" "If this box is checked, the system will try to group the accounting lines " "when generating them from invoices." msgstr "" +"Pokud je políčko zaškrtnuto, systém se pokusí seskupit účetní řádky, když je " +"generuje z faktůr." #. module: account #: help:account.period,state:0 @@ -7561,7 +7641,7 @@ msgstr "Měna společnosti" #: report:pl.account:0 #: report:account.aged_trial_balance:0 msgid "Chart of Account" -msgstr "" +msgstr "Účtový rozvrh" #. module: account #: model:process.node,name:account.process_node_paymententries0 @@ -7588,7 +7668,7 @@ msgstr "" #: field:account.move.line,reconcile_partial_id:0 #: view:account.move.line.reconcile:0 msgid "Partial Reconcile" -msgstr "" +msgstr "Částečná likvidace" #. module: account #: model:ir.model,name:account.model_account_analytic_inverted_balance @@ -7598,18 +7678,18 @@ msgstr "" #. module: account #: model:ir.model,name:account.model_account_common_report msgid "Account Common Report" -msgstr "" +msgstr "Obecný výkaz účtu" #. module: account #: model:process.transition,name:account.process_transition_filestatement0 msgid "Automatic import of the bank sta" -msgstr "" +msgstr "Automatický import bankovního výpisu" #. module: account #: model:ir.actions.act_window,name:account.action_account_journal_view #: model:ir.ui.menu,name:account.menu_action_account_journal_view msgid "Journal Views" -msgstr "" +msgstr "Zobrazení knihy" #. module: account #: model:ir.model,name:account.model_account_move_bank_reconcile @@ -7626,7 +7706,7 @@ msgstr "Typy účtů" #: code:addons/account/invoice.py:905 #, python-format msgid "Cannot create invoice move on centralised journal" -msgstr "" +msgstr "Nelze vytvořit pohyb faktury na centralizované knize" #. module: account #: field:account.account.type,report_type:0 @@ -7656,7 +7736,7 @@ msgstr "Účet pohledávek" #. module: account #: view:account.bank.statement:0 msgid "CashBox Balance" -msgstr "" +msgstr "Zůstatek pokladny" #. module: account #: model:ir.model,name:account.model_account_fiscalyear_close_state @@ -7780,11 +7860,13 @@ msgid "" "The residual amount on a receivable or payable of a journal entry expressed " "in the company currency." msgstr "" +"Zbytková částka na pohledávkovém nebo závazkovém záznamu účtu vyjádřená v " +"měně společnosti." #. module: account #: view:account.payment.term.line:0 msgid " valuation: balance" -msgstr "" +msgstr " ocenění: zůstatek" #. module: account #: view:account.tax.code:0 @@ -7800,12 +7882,12 @@ msgstr "Od" #. module: account #: model:ir.model,name:account.model_account_fiscalyear_close msgid "Fiscalyear Close" -msgstr "" +msgstr "Uzavření finačního roku" #. module: account #: sql_constraint:account.account:0 msgid "The code of the account must be unique per company !" -msgstr "" +msgstr "Kód účtu musí být jedinečný pro společnosti !" #. module: account #: model:ir.actions.act_window,name:account.act_account_journal_2_account_invoice_opened @@ -7837,14 +7919,14 @@ msgstr "Tisk" #. module: account #: view:account.journal:0 msgid "Accounts Allowed (empty for no control)" -msgstr "" +msgstr "Povolené účty (prázdné pro neřízení)" #. module: account #: model:ir.actions.act_window,name:account.action_account_analytic_account_tree2 #: model:ir.actions.act_window,name:account.action_account_analytic_chart #: model:ir.ui.menu,name:account.menu_action_analytic_account_tree2 msgid "Chart of Analytic Accounts" -msgstr "" +msgstr "Rozvrh analytických účtů" #. module: account #: model:ir.ui.menu,name:account.menu_configuration_misc @@ -7900,7 +7982,7 @@ msgstr "Nechejte prázdné pro všechny otevřené finanční roky" #: code:addons/account/account_move_line.py:1062 #, python-format msgid "The account move (%s) for centralisation has been confirmed!" -msgstr "" +msgstr "Pohyb účtu (%s) pro centralizaci byl potvrzen!" #. module: account #: help:account.move.line,amount_currency:0 @@ -7908,6 +7990,7 @@ msgid "" "The amount expressed in an optional other currency if it is a multi-currency " "entry." msgstr "" +"Částka vyjádřena ve volitelné jiné měně, pokud je položka více-měnová." #. module: account #: view:account.account:0 @@ -7946,7 +8029,7 @@ msgstr "Určuje pořadí v zobrazení seznamu řádků výpisu" #. module: account #: model:process.transition,note:account.process_transition_validentries0 msgid "Accountant validates the accounting entries coming from the invoice." -msgstr "" +msgstr "Učetní ověří účetní položky přicházející z faktury" #. module: account #: model:ir.actions.act_window,help:account.action_account_fiscalyear_form @@ -8013,7 +8096,7 @@ msgstr "Počáteční položky deníku" #. module: account #: model:process.transition,note:account.process_transition_customerinvoice0 msgid "Draft invoices are checked, validated and printed." -msgstr "" +msgstr "Konceptové faktury jsou zkontrolovány, ověřeny a vytištěny." #. module: account #: help:account.chart.template,property_reserve_and_surplus_account:0 @@ -8058,6 +8141,9 @@ msgid "" "the amount of this case into its parent. For example, set 1/-1 if you want " "to add/substract it." msgstr "" +"Můžete zde určit koeficient, který bude použit, při konsolidaci částek " +"tohoto případu do jeho rodiče. Například, nastavte 1/-1 pokud chcete hodnotu " +"přičíst/odečíst." #. module: account #: view:account.invoice:0 @@ -8095,7 +8181,7 @@ msgstr "Období od" #: code:addons/account/installer.py:476 #, python-format msgid "Sales Refund Journal" -msgstr "" +msgstr "Kniha dobropisů prodeje" #. module: account #: code:addons/account/account.py:941 @@ -8104,6 +8190,8 @@ msgid "" "You cannot modify company of this period as its related record exist in " "Entry Lines" msgstr "" +"Nemůžete upravit společnost tohoto období, protože její vztažený záznam " +"existuje v řádcích záznamu" #. module: account #: view:account.move:0 @@ -8120,7 +8208,7 @@ msgstr "Registrované platby" #. module: account #: view:account.fiscalyear.close.state:0 msgid "Close states of Fiscal year and periods" -msgstr "" +msgstr "Zavírací stavy finančního roku a období" #. module: account #: view:account.analytic.line:0 @@ -8214,7 +8302,7 @@ msgstr "Začátek období" #: code:addons/account/account.py:2357 #, python-format msgid "Cannot locate parent code for template account!" -msgstr "" +msgstr "Nelze najít nadřazený kód pro šablonu účtu!" #. module: account #: field:account.aged.trial.balance,direction_selection:0 @@ -8255,6 +8343,8 @@ msgid "" "You cannot cancel the Invoice which is Partially Paid! You need to " "unreconcile concerned payment entries!" msgstr "" +"Nemůžete zrušit fakturu, která je Částečně zaplacena! Potřebujete zrušit " +"vyrovnání týkajících se platebních podmínek!" #. module: account #: report:account.overdue:0 @@ -8269,7 +8359,7 @@ msgstr "Nezaplacené" #. module: account #: report:account.overdue:0 msgid "Document: Customer account statement" -msgstr "" +msgstr "Dokument: Výpis účtu zákazníka" #. module: account #: constraint:account.move.line:0 @@ -8378,6 +8468,8 @@ msgid "" "This report is analysis by partner. It is a PDF report containing one line " "per partner representing the cumulative credit balance." msgstr "" +"Tento výkaz je analýza podle partnera. Jedná se o PDF výkaz obsahující jeden " +"řádek na partnera vyjadřující souhrnný zůstatek ve prospěch." #. module: account #: selection:account.account,type:0 @@ -8450,7 +8542,7 @@ msgstr "" #. module: account #: report:account.move.voucher:0 msgid "Receiver's Signature" -msgstr "" +msgstr "Podpis příjemce" #. module: account #: report:account.general.ledger:0 @@ -8479,7 +8571,7 @@ msgstr "Pohyb" #: code:addons/account/account_move_line.py:1134 #, python-format msgid "You can not change the tax, you should remove and recreate lines !" -msgstr "" +msgstr "Nemůžete změnit daň, měli byste odstranit a znovu vytvořit řádky !" #. module: account #: report:account.central.journal:0 @@ -8495,7 +8587,7 @@ msgstr "Bankovní výpisy" #: help:account.addtmpl.wizard,cparent_id:0 msgid "" "Creates an account with the selected template under this existing parent." -msgstr "" +msgstr "Vytváří účet s vybranou šablonou pod tímto existujícím rodičem." #. module: account #: selection:account.model.line,date_maturity:0 @@ -8509,6 +8601,8 @@ msgid "" "You have to define the bank account\n" "in the journal definition for reconciliation." msgstr "" +"Musíte zadat bankovní účet\n" +"v definici knihy pro likvidaci." #. module: account #: view:account.move.line.reconcile:0 @@ -8524,7 +8618,7 @@ msgstr "Běžný výkaz" #: view:account.account:0 #: field:account.account,child_consol_ids:0 msgid "Consolidated Children" -msgstr "" +msgstr "Konsolidovaný potomek" #. module: account #: code:addons/account/wizard/account_fiscalyear_close.py:82 @@ -8533,6 +8627,8 @@ msgid "" "The journal must have centralised counterpart without the Skipping draft " "state option checked!" msgstr "" +"Kniha musí mít centralizovaný protějšek bez zaškrtnutého stavu Přeskakovat " +"koncept!" #. module: account #: model:process.node,note:account.process_node_paymententries0 @@ -8751,6 +8847,8 @@ msgid "" "This account will be used instead of the default one as the payable account " "for the current partner" msgstr "" +"Tento účet bude použit namísto výchozího jako závazkový účet pro aktuálního " +"partnera" #. module: account #: field:account.period,special:0 @@ -8800,11 +8898,14 @@ msgid "" "created. If you leave that field empty, it will use the same journal as the " "current invoice." msgstr "" +"Nemůžete zde vybrat knihu pro použití pro dobropis faktury, která bude " +"vytvořena. Pokud necháte toto pole prázdné, bude použita stejná kniha jako u " +"aktuální faktury." #. module: account #: report:account.move.voucher:0 msgid "Through :" -msgstr "" +msgstr "Skrz :" #. module: account #: view:account.general.journal:0 @@ -8880,7 +8981,7 @@ msgstr "Kurz měny" #. module: account #: help:account.payment.term.line,value_amount:0 msgid "For Value percent enter % ratio between 0-1." -msgstr "" +msgstr "Pro hodnotu v procentech zadejte % koeficient mezi 0-1." #. module: account #: selection:account.entries.report,month:0 @@ -8913,11 +9014,12 @@ msgstr "" msgid "" "Allows invoice lines to impact multiple analytic accounts simultaneously." msgstr "" +"Umožní, aby řádky faktury měli dopad na více analytických účtů současně." #. module: account #: field:account.installer,sale_tax:0 msgid "Sale Tax(%)" -msgstr "" +msgstr "Prodejní daň(%)" #. module: account #: model:ir.actions.act_window,name:account.action_invoice_tree2 @@ -8970,6 +9072,8 @@ msgid "" "This report allows you to print or generate a pdf of your general ledger " "with details of all your account journals" msgstr "" +"Tento výkaz vám umožní tisknout nebo generovat pdf vaší obecné účetní knihy " +"s podrobnosti o všech vašich účtech" #. module: account #: selection:account.account,type:0 @@ -8990,7 +9094,7 @@ msgstr "Vnitřní typ" #. module: account #: report:account.move.voucher:0 msgid "State:" -msgstr "" +msgstr "Stav:" #. module: account #: model:ir.actions.act_window,name:account.action_subscription_form_running @@ -9265,7 +9369,7 @@ msgstr "" #. module: account #: report:account.move.voucher:0 msgid "On Account of :" -msgstr "" +msgstr "Na účtu :" #. module: account #: view:account.automatic.reconcile:0 @@ -9281,7 +9385,7 @@ msgstr "Stav faktury je Hotovo" #. module: account #: model:ir.model,name:account.model_report_account_sales msgid "Report of the Sales by Account" -msgstr "" +msgstr "Výkaz prodejů podle účtu" #. module: account #: model:ir.model,name:account.model_account_fiscal_position_account @@ -9339,6 +9443,8 @@ msgid "" "Make sure if the account template has parent then it should be type " "\"View\"! " msgstr "" +"Nemůžete vytvořit šablonu účtu! \n" +"Ujistěte se, že pokud má šablona účtu rodiče, měl by být typu \"Pohled\"! " #. module: account #: view:account.subscription:0 @@ -9418,7 +9524,7 @@ msgstr "Tisk Analytických deníků" #. module: account #: view:account.analytic.line:0 msgid "Fin.Account" -msgstr "" +msgstr "Fin.Account" #. module: account #: model:ir.actions.act_window,name:account.action_aged_receivable_graph @@ -9551,7 +9657,7 @@ msgstr "Hlead fakturu" #: view:account.invoice.report:0 #: model:ir.actions.act_window,name:account.action_account_invoice_refund msgid "Refund" -msgstr "" +msgstr "Dobropis" #. module: account #: field:wizard.multi.charts.accounts,bank_accounts_id:0 @@ -9580,7 +9686,7 @@ msgstr "Účetní dokumenty" #. module: account #: model:ir.model,name:account.model_validate_account_move_lines msgid "Validate Account Move Lines" -msgstr "" +msgstr "Ověřit řádky pohybů účtu" #. module: account #: model:ir.actions.act_window,name:account.action_account_analytic_cost_ledger_journal @@ -9677,7 +9783,7 @@ msgstr "Bankovní účet" #: model:ir.actions.act_window,name:account.action_account_central_journal #: model:ir.model,name:account.model_account_central_journal msgid "Account Central Journal" -msgstr "" +msgstr "Ústřední kniha účtů" #. module: account #: report:account.overdue:0 @@ -9709,12 +9815,12 @@ msgstr "Obvykle 1 nebo -1." #. module: account #: model:ir.model,name:account.model_account_fiscal_position_account_template msgid "Template Account Fiscal Mapping" -msgstr "" +msgstr "Fiskální mapování šablony účtu" #. module: account #: field:account.chart.template,property_account_expense:0 msgid "Expense Account on Product Template" -msgstr "" +msgstr "Účet útrat na šabloně výrobku" #. module: account #: field:account.analytic.line,amount_currency:0 @@ -9751,6 +9857,8 @@ msgid "" "The residual amount on a receivable or payable of a journal entry expressed " "in its currency (maybe different of the company currency)." msgstr "" +"Zbytková částka pohledávkovém a závazkovém záznamu knihy vyjádřená ve své " +"měně (může být jiná než měna společnosti)." #~ msgid "Generate entries before:" #~ msgstr "Generovat položky před:" diff --git a/addons/analytic/i18n/ar.po b/addons/analytic/i18n/ar.po index cbf8702f31c..ee7a5f9319e 100644 --- a/addons/analytic/i18n/ar.po +++ b/addons/analytic/i18n/ar.po @@ -14,7 +14,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-09-06 04:40+0000\n" +"X-Launchpad-Export-Date: 2011-09-07 04:35+0000\n" "X-Generator: Launchpad (build 13861)\n" #. module: analytic diff --git a/addons/analytic/i18n/cs.po b/addons/analytic/i18n/cs.po new file mode 100644 index 00000000000..105731badc3 --- /dev/null +++ b/addons/analytic/i18n/cs.po @@ -0,0 +1,275 @@ +# Translation of OpenERP Server. +# This file contains the translation of the following modules: +# * analytic +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: support@openerp.com\n" +"POT-Creation-Date: 2011-01-11 11:14+0000\n" +"PO-Revision-Date: 2011-09-06 06:48+0000\n" +"Last-Translator: Jiří Hajda \n" +"Language-Team: Czech \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-09-07 04:35+0000\n" +"X-Generator: Launchpad (build 13861)\n" +"X-Poedit-Language: czech\n" + +#. module: analytic +#: field:account.analytic.account,child_ids:0 +msgid "Child Accounts" +msgstr "Podřízené účty" + +#. module: analytic +#: field:account.analytic.account,name:0 +msgid "Account Name" +msgstr "Jméno účtu" + +#. module: analytic +#: help:account.analytic.line,unit_amount:0 +msgid "Specifies the amount of quantity to count." +msgstr "Určuje částku množství ke spočtení." + +#. module: analytic +#: model:ir.module.module,description:analytic.module_meta_information +msgid "" +"Module for defining analytic accounting object.\n" +" " +msgstr "" +"Modul pro definici objektu analyzického účtování.\n" +" " + +#. module: analytic +#: field:account.analytic.account,state:0 +msgid "State" +msgstr "Stav" + +#. module: analytic +#: field:account.analytic.account,user_id:0 +msgid "Account Manager" +msgstr "Správce účtu" + +#. module: analytic +#: selection:account.analytic.account,state:0 +msgid "Draft" +msgstr "Koncept" + +#. module: analytic +#: selection:account.analytic.account,state:0 +msgid "Closed" +msgstr "Uzavřeno" + +#. module: analytic +#: field:account.analytic.account,debit:0 +msgid "Debit" +msgstr "Má dáti" + +#. module: analytic +#: help:account.analytic.account,state:0 +msgid "" +"* When an account is created its in 'Draft' state. " +" \n" +"* If any associated partner is there, it can be in 'Open' state. " +" \n" +"* If any pending balance is there it can be in 'Pending'. " +" \n" +"* And finally when all the transactions are over, it can be in 'Close' " +"state. \n" +"* The project can be in either if the states 'Template' and 'Running'.\n" +" If it is template then we can make projects based on the template projects. " +"If its in 'Running' state it is a normal project. " +" \n" +" If it is to be reviewed then the state is 'Pending'.\n" +" When the project is completed the state is set to 'Done'." +msgstr "" +"* Když je účet vytvořen je ve stavu 'Koncept'. " +" \n" +"* Pokud je zde nějaký přidružený partner, může být ve stavu 'Otevřený'. " +" \n" +"* Pokud je zde nějaký čekající zůstatek, může být ve stavu 'Čekající'. " +" \n" +"* A nakonec, když jsou všechny transakce dokončeny, může být ve stavu " +"'Zavřený'. \n" +"* Projekt může být ve stavu 'Šablona' nebo 'Běžící'.\n" +" Pokud je šablona, tak můžeme vytvářet projekty založené na šablonách " +"projektů. Pokud je ve stavu 'Běžící' tak je to normální projekt. " +" \n" +" Pokud potřebuje překontrolovat, tak je ve stavu 'Čekající'.\n" +" Když je projekt dokončen, je stav nastaven na 'Dokončený'." + +#. module: analytic +#: field:account.analytic.account,type:0 +msgid "Account Type" +msgstr "Typ účtu" + +#. module: analytic +#: selection:account.analytic.account,state:0 +msgid "Template" +msgstr "Šablona" + +#. module: analytic +#: selection:account.analytic.account,state:0 +msgid "Pending" +msgstr "Čekající" + +#. module: analytic +#: model:ir.model,name:analytic.model_account_analytic_line +msgid "Analytic Line" +msgstr "Analytický řádek" + +#. module: analytic +#: field:account.analytic.account,description:0 +#: field:account.analytic.line,name:0 +msgid "Description" +msgstr "Popis" + +#. module: analytic +#: selection:account.analytic.account,type:0 +msgid "Normal" +msgstr "Běžný" + +#. module: analytic +#: field:account.analytic.account,company_id:0 +#: field:account.analytic.line,company_id:0 +msgid "Company" +msgstr "Společnost" + +#. module: analytic +#: field:account.analytic.account,quantity_max:0 +msgid "Maximum Quantity" +msgstr "Maximální množstvi" + +#. module: analytic +#: field:account.analytic.line,user_id:0 +msgid "User" +msgstr "Uživatel" + +#. module: analytic +#: field:account.analytic.account,parent_id:0 +msgid "Parent Analytic Account" +msgstr "Nadřazený analytický účet" + +#. module: analytic +#: field:account.analytic.line,date:0 +msgid "Date" +msgstr "Datum" + +#. module: analytic +#: field:account.analytic.account,currency_id:0 +msgid "Account currency" +msgstr "Měna účtu" + +#. module: analytic +#: field:account.analytic.account,quantity:0 +#: field:account.analytic.line,unit_amount:0 +msgid "Quantity" +msgstr "Množství" + +#. module: analytic +#: help:account.analytic.line,amount:0 +msgid "" +"Calculated by multiplying the quantity and the price given in the Product's " +"cost price. Always expressed in the company main currency." +msgstr "" +"Vypočteno jako násobek množství a ceny dané cenou Výrobku. Vždy vyjádřeno v " +"hlavní měně společnosti." + +#. module: analytic +#: help:account.analytic.account,quantity_max:0 +msgid "Sets the higher limit of quantity of hours." +msgstr "Nastavuje horní omezení množství hodin." + +#. module: analytic +#: field:account.analytic.account,credit:0 +msgid "Credit" +msgstr "Dal" + +#. module: analytic +#: field:account.analytic.line,amount:0 +msgid "Amount" +msgstr "Částka" + +#. module: analytic +#: field:account.analytic.account,contact_id:0 +msgid "Contact" +msgstr "Kontakt" + +#. module: analytic +#: constraint:account.analytic.account:0 +msgid "" +"Error! The currency has to be the same as the currency of the selected " +"company" +msgstr "Chyba! Měna musí být stejná jako měna vybrané společnosti" + +#. module: analytic +#: selection:account.analytic.account,state:0 +msgid "Cancelled" +msgstr "Zrušeno" + +#. module: analytic +#: field:account.analytic.account,balance:0 +msgid "Balance" +msgstr "Zůstatek" + +#. module: analytic +#: constraint:account.analytic.account:0 +msgid "Error! You can not create recursive analytic accounts." +msgstr "Chyba! Nemůžete vytvořit rekurzivní analytické účty." + +#. module: analytic +#: help:account.analytic.account,type:0 +msgid "" +"If you select the View Type, it means you won't allow to create journal " +"entries using that account." +msgstr "" +"Pokud vyberete Typ pohledu, znamená to, že nebudete moci vytvářet položky " +"deníku použitím tohoto účtu." + +#. module: analytic +#: field:account.analytic.account,date:0 +msgid "Date End" +msgstr "Datum ukončení" + +#. module: analytic +#: field:account.analytic.account,code:0 +msgid "Account Code" +msgstr "Kód účtu" + +#. module: analytic +#: field:account.analytic.account,complete_name:0 +msgid "Full Account Name" +msgstr "Plné jméno účtu" + +#. module: analytic +#: field:account.analytic.line,account_id:0 +#: model:ir.model,name:analytic.model_account_analytic_account +#: model:ir.module.module,shortdesc:analytic.module_meta_information +msgid "Analytic Account" +msgstr "Analytický účet" + +#. module: analytic +#: selection:account.analytic.account,type:0 +msgid "View" +msgstr "Pohled" + +#. module: analytic +#: field:account.analytic.account,partner_id:0 +msgid "Partner" +msgstr "Partner" + +#. module: analytic +#: field:account.analytic.account,date_start:0 +msgid "Date Start" +msgstr "Počáteční datum" + +#. module: analytic +#: selection:account.analytic.account,state:0 +msgid "Open" +msgstr "Otevřít" + +#. module: analytic +#: field:account.analytic.account,line_ids:0 +msgid "Analytic Entries" +msgstr "Analytické položky" diff --git a/addons/audittrail/i18n/cs.po b/addons/audittrail/i18n/cs.po index da46074a3c1..b69e6ea8eee 100644 --- a/addons/audittrail/i18n/cs.po +++ b/addons/audittrail/i18n/cs.po @@ -4,84 +4,85 @@ # msgid "" msgstr "" -"Project-Id-Version: OpenERP Server 5.0.4\n" +"Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-11 11:14+0000\n" -"PO-Revision-Date: 2009-02-03 06:25+0000\n" -"Last-Translator: <>\n" -"Language-Team: \n" +"PO-Revision-Date: 2011-09-06 06:48+0000\n" +"Last-Translator: Jiří Hajda \n" +"Language-Team: Czech \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-09-05 05:36+0000\n" -"X-Generator: Launchpad (build 13830)\n" +"X-Launchpad-Export-Date: 2011-09-07 04:35+0000\n" +"X-Generator: Launchpad (build 13861)\n" +"X-Poedit-Language: Czech\n" #. module: audittrail #: model:ir.module.module,shortdesc:audittrail.module_meta_information msgid "Audit Trail" -msgstr "" +msgstr "Prověřovací záznam" #. module: audittrail #: code:addons/audittrail/audittrail.py:81 #, python-format msgid "WARNING: audittrail is not part of the pool" -msgstr "" +msgstr "VAROVÁNÍ: přověřovací záznam není částí fondu" #. module: audittrail #: field:audittrail.log.line,log_id:0 msgid "Log" -msgstr "" +msgstr "Záznam" #. module: audittrail #: view:audittrail.rule:0 #: selection:audittrail.rule,state:0 msgid "Subscribed" -msgstr "" +msgstr "Upsaný" #. module: audittrail #: model:ir.model,name:audittrail.model_audittrail_rule msgid "Audittrail Rule" -msgstr "" +msgstr "Pravidlo prověřovacího záznamu" #. module: audittrail #: view:audittrail.view.log:0 #: model:ir.actions.act_window,name:audittrail.action_audittrail_log_tree #: model:ir.ui.menu,name:audittrail.menu_action_audittrail_log_tree msgid "Audit Logs" -msgstr "" +msgstr "Prověřovací záznamy" #. module: audittrail #: view:audittrail.log:0 #: view:audittrail.rule:0 msgid "Group By..." -msgstr "" +msgstr "Seskupit podle..." #. module: audittrail #: view:audittrail.rule:0 #: field:audittrail.rule,state:0 msgid "State" -msgstr "" +msgstr "Stav" #. module: audittrail #: view:audittrail.rule:0 msgid "_Subscribe" -msgstr "" +msgstr "_Upsat se" #. module: audittrail #: view:audittrail.rule:0 #: selection:audittrail.rule,state:0 msgid "Draft" -msgstr "" +msgstr "Koncept" #. module: audittrail #: field:audittrail.log.line,old_value:0 msgid "Old Value" -msgstr "" +msgstr "Stará hodnota" #. module: audittrail #: model:ir.actions.act_window,name:audittrail.action_audittrail_view_log msgid "View log" -msgstr "" +msgstr "Zobrazit záznam" #. module: audittrail #: help:audittrail.rule,log_read:0 @@ -93,22 +94,22 @@ msgstr "" #. module: audittrail #: field:audittrail.log,method:0 msgid "Method" -msgstr "" +msgstr "Metoda" #. module: audittrail #: field:audittrail.view.log,from:0 msgid "Log From" -msgstr "" +msgstr "Záznam formulářů" #. module: audittrail #: field:audittrail.log.line,log:0 msgid "Log ID" -msgstr "" +msgstr "ID záznamu" #. module: audittrail #: field:audittrail.log,res_id:0 msgid "Resource Id" -msgstr "" +msgstr "ID zdroje" #. module: audittrail #: help:audittrail.rule,user_id:0 @@ -125,61 +126,61 @@ msgstr "" #. module: audittrail #: field:audittrail.rule,user_id:0 msgid "Users" -msgstr "" +msgstr "Uživatelé" #. module: audittrail #: view:audittrail.log:0 msgid "Log Lines" -msgstr "" +msgstr "Řádky záznamu" #. module: audittrail #: view:audittrail.log:0 #: field:audittrail.log,object_id:0 #: field:audittrail.rule,object_id:0 msgid "Object" -msgstr "" +msgstr "Objekt" #. module: audittrail #: view:audittrail.rule:0 msgid "AuditTrail Rule" -msgstr "" +msgstr "Pravidlo prověřovacích záznamů" #. module: audittrail #: field:audittrail.view.log,to:0 msgid "Log To" -msgstr "" +msgstr "Zaznamenat do" #. module: audittrail #: view:audittrail.log:0 msgid "New Value Text: " -msgstr "" +msgstr "Nová textová hodnota: " #. module: audittrail #: view:audittrail.rule:0 msgid "Search Audittrail Rule" -msgstr "" +msgstr "Hledat pravidlo prověřovacích záznamů" #. module: audittrail #: model:ir.actions.act_window,name:audittrail.action_audittrail_rule_tree #: model:ir.ui.menu,name:audittrail.menu_action_audittrail_rule_tree msgid "Audit Rules" -msgstr "" +msgstr "Pravidla ověření" #. module: audittrail #: view:audittrail.log:0 msgid "Old Value : " -msgstr "" +msgstr "Stará hodnota : " #. module: audittrail #: field:audittrail.log,name:0 msgid "Resource Name" -msgstr "" +msgstr "Název zdroje" #. module: audittrail #: view:audittrail.log:0 #: field:audittrail.log,timestamp:0 msgid "Date" -msgstr "" +msgstr "Datum" #. module: audittrail #: help:audittrail.rule,log_write:0 @@ -187,26 +188,28 @@ msgid "" "Select this if you want to keep track of modification on any record of the " "object of this rule" msgstr "" +"Vyberte toto, pokud chcete udržovat sled úprav na jakémkoliv záznamu objektu " +"tohoto pravidla" #. module: audittrail #: field:audittrail.rule,log_create:0 msgid "Log Creates" -msgstr "" +msgstr "Záznam vytvoření" #. module: audittrail #: help:audittrail.rule,object_id:0 msgid "Select object for which you want to generate log." -msgstr "" +msgstr "Vyberte objekt, pro který chcete generovat záznam." #. module: audittrail #: view:audittrail.log:0 msgid "Old Value Text : " -msgstr "" +msgstr "Stará textová hodnota : " #. module: audittrail #: field:audittrail.rule,log_workflow:0 msgid "Log Workflow" -msgstr "" +msgstr "Záznam Pracovních postupů" #. module: audittrail #: model:ir.module.module,description:audittrail.module_meta_information @@ -220,11 +223,19 @@ msgid "" " delete on objects and can check logs.\n" " " msgstr "" +"\n" +" Tento modul dává správcům práva\n" +" ke sledování každé uživatelské operace na všech objektech\n" +" systému.\n" +"\n" +" Správce může zapsat pravidla pro čtení, zápis a \n" +" mazání nad objekty a může kontrolovat záznamy.\n" +" " #. module: audittrail #: field:audittrail.rule,log_read:0 msgid "Log Reads" -msgstr "" +msgstr "Záznam čtení" #. module: audittrail #: code:addons/audittrail/audittrail.py:82 @@ -235,17 +246,17 @@ msgstr "" #. module: audittrail #: field:audittrail.log,line_ids:0 msgid "Log lines" -msgstr "" +msgstr "Řádky záznamu" #. module: audittrail #: field:audittrail.log.line,field_id:0 msgid "Fields" -msgstr "" +msgstr "Pole" #. module: audittrail #: view:audittrail.rule:0 msgid "AuditTrail Rules" -msgstr "" +msgstr "Pravidla prověřovacícho záznamu" #. module: audittrail #: help:audittrail.rule,log_unlink:0 @@ -253,88 +264,93 @@ msgid "" "Select this if you want to keep track of deletion on any record of the " "object of this rule" msgstr "" +"Vyberte toto, pokud chcete udržovat přehled o mazání jakéhokoliv záznamu " +"objektu tohoto pravidla" #. module: audittrail #: view:audittrail.log:0 #: field:audittrail.log,user_id:0 msgid "User" -msgstr "" +msgstr "Uživatel" #. module: audittrail #: field:audittrail.rule,action_id:0 msgid "Action ID" -msgstr "" +msgstr "ID akce" #. module: audittrail #: view:audittrail.rule:0 msgid "Users (if User is not added then it will applicable for all users)" msgstr "" +"Uživatelé (pokud není uživatel přidán, bude platné pro všechny uživatele)" #. module: audittrail #: view:audittrail.rule:0 msgid "UnSubscribe" -msgstr "" +msgstr "Zrušit úpis" #. module: audittrail #: field:audittrail.rule,log_unlink:0 msgid "Log Deletes" -msgstr "" +msgstr "Záznam mazání" #. module: audittrail #: field:audittrail.log.line,field_description:0 msgid "Field Description" -msgstr "" +msgstr "Popis pole" #. module: audittrail #: view:audittrail.log:0 msgid "Search Audittrail Log" -msgstr "" +msgstr "Hledat záznam Prověřovacího záznamu" #. module: audittrail #: field:audittrail.rule,log_write:0 msgid "Log Writes" -msgstr "" +msgstr "Záznam zápisů" #. module: audittrail #: view:audittrail.view.log:0 msgid "Open Logs" -msgstr "" +msgstr "Tevřít záznamy" #. module: audittrail #: field:audittrail.log.line,new_value_text:0 msgid "New value Text" -msgstr "" +msgstr "Nová textová hodnota" #. module: audittrail #: field:audittrail.rule,name:0 msgid "Rule Name" -msgstr "" +msgstr "Název pravidla" #. module: audittrail #: field:audittrail.log.line,new_value:0 msgid "New Value" -msgstr "" +msgstr "Nová hodnota" #. module: audittrail #: view:audittrail.log:0 msgid "AuditTrail Logs" -msgstr "" +msgstr "Záznamy Prověřovacícho záznamu" #. module: audittrail #: model:ir.model,name:audittrail.model_audittrail_log msgid "Audittrail Log" -msgstr "" +msgstr "Záznam Prověřovacího záznamu" #. module: audittrail #: help:audittrail.rule,log_action:0 msgid "" "Select this if you want to keep track of actions on the object of this rule" msgstr "" +"Vyberte toto, pokud chcete udržovat přehled o akcích nad objekty tohoto " +"pravidla" #. module: audittrail #: view:audittrail.log:0 msgid "New Value : " -msgstr "" +msgstr "Nová hodnota : " #. module: audittrail #: sql_constraint:audittrail.rule:0 @@ -342,31 +358,33 @@ msgid "" "There is a rule defined on this object\n" " You can not define other on the same!" msgstr "" +"Je zadáno pravidlo nad tímto objektem\n" +" Na stejném nemůžete zadávat jiné!" #. module: audittrail #: field:audittrail.log.line,old_value_text:0 msgid "Old value Text" -msgstr "" +msgstr "Stará textová hodnota" #. module: audittrail #: view:audittrail.view.log:0 msgid "Cancel" -msgstr "" +msgstr "Zrušit" #. module: audittrail #: model:ir.model,name:audittrail.model_audittrail_view_log msgid "View Log" -msgstr "" +msgstr "Zobrazit záznam" #. module: audittrail #: model:ir.model,name:audittrail.model_audittrail_log_line msgid "Log Line" -msgstr "" +msgstr "Řádek záznamu" #. module: audittrail #: field:audittrail.rule,log_action:0 msgid "Log Action" -msgstr "" +msgstr "Akce záznamu" #. module: audittrail #: help:audittrail.rule,log_create:0 @@ -374,3 +392,5 @@ msgid "" "Select this if you want to keep track of creation on any record of the " "object of this rule" msgstr "" +"Vyberte toto, pokud chcete udržovat přehled o vytváření nad tímto záznamem " +"objektu tohoto pravidla" diff --git a/addons/base_crypt/i18n/ar.po b/addons/base_crypt/i18n/ar.po index b41a7390dd2..34fb8c096d1 100644 --- a/addons/base_crypt/i18n/ar.po +++ b/addons/base_crypt/i18n/ar.po @@ -14,7 +14,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-09-06 04:40+0000\n" +"X-Launchpad-Export-Date: 2011-09-07 04:35+0000\n" "X-Generator: Launchpad (build 13861)\n" #. module: base_crypt diff --git a/addons/event/i18n/cs.po b/addons/event/i18n/cs.po index afe4bedb6ab..79f078d716a 100644 --- a/addons/event/i18n/cs.po +++ b/addons/event/i18n/cs.po @@ -4,44 +4,45 @@ # msgid "" msgstr "" -"Project-Id-Version: OpenERP Server 6.0dev\n" +"Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2010-08-03 06:13+0000\n" -"Last-Translator: Mantavya Gajjar (Open ERP) \n" -"Language-Team: \n" +"PO-Revision-Date: 2011-09-06 06:14+0000\n" +"Last-Translator: Jiří Hajda \n" +"Language-Team: Czech \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-09-05 05:03+0000\n" -"X-Generator: Launchpad (build 13830)\n" +"X-Launchpad-Export-Date: 2011-09-07 04:35+0000\n" +"X-Generator: Launchpad (build 13861)\n" +"X-Poedit-Language: Czech\n" #. module: event #: view:event.event:0 msgid "Invoice Information" -msgstr "" +msgstr "Informace faktury" #. module: event #: help:event.event,register_max:0 msgid "Provide Maximun Number of Registrations" -msgstr "" +msgstr "Poskytuje maximální počet registrací" #. module: event #: view:partner.event.registration:0 msgid "Event Details" -msgstr "" +msgstr "Podrobnosti události" #. module: event #: field:event.event,main_speaker_id:0 msgid "Main Speaker" -msgstr "" +msgstr "Hlavní řečník" #. module: event #: view:event.event:0 #: view:event.registration:0 #: view:report.event.registration:0 msgid "Group By..." -msgstr "" +msgstr "Seskupit podle..." #. module: event #: field:event.event,register_min:0 @@ -51,12 +52,12 @@ msgstr "Minimální registrace" #. module: event #: model:ir.model,name:event.model_event_confirm_registration msgid "Confirmation for Event Registration" -msgstr "" +msgstr "Potvrzení pro registraci události" #. module: event #: field:event.registration.badge,title:0 msgid "Title" -msgstr "" +msgstr "Název" #. module: event #: field:event.event,mail_registr:0 @@ -66,23 +67,23 @@ msgstr "Registrační email" #. module: event #: model:ir.actions.act_window,name:event.action_event_confirm_registration msgid "Make Invoices" -msgstr "" +msgstr "Vytvoření faktůr" #. module: event #: view:event.event:0 #: view:event.registration:0 msgid "Registration Date" -msgstr "" +msgstr "Datum registrace" #. module: event #: help:event.event,main_speaker_id:0 msgid "Speaker who are giving speech on event." -msgstr "" +msgstr "Řečník, který promlouvá na událostí" #. module: event #: view:partner.event.registration:0 msgid "_Close" -msgstr "" +msgstr "_Zavřít" #. module: event #: model:event.event,name:event.event_0 @@ -96,11 +97,14 @@ msgid "" "event. Note that you can specify for each registration a specific amount if " "you want to" msgstr "" +"Toto bude výchozí cena použitá jako cena registrace, kdy je tato událost " +"fakturována. Berte na vědomí, že pokud chcete, můžete určit pro každou " +"registraci jinou částku" #. module: event #: selection:report.event.registration,month:0 msgid "March" -msgstr "" +msgstr "Březen" #. module: event #: field:event.event,mail_confirm:0 @@ -111,7 +115,7 @@ msgstr "Potvrzovací e-mail" #: code:addons/event/wizard/event_make_invoice.py:63 #, python-format msgid "Registration doesn't have any partner to invoice." -msgstr "" +msgstr "Registrace nemá žádného partnera k fakturaci." #. module: event #: field:event.event,company_id:0 @@ -119,12 +123,12 @@ msgstr "" #: view:report.event.registration:0 #: field:report.event.registration,company_id:0 msgid "Company" -msgstr "" +msgstr "Společnost" #. module: event #: field:event.make.invoice,invoice_date:0 msgid "Invoice Date" -msgstr "" +msgstr "Datum faktury" #. module: event #: code:addons/event/wizard/partner_event_registration.py:93 @@ -139,37 +143,37 @@ msgstr "Registrace události" #. module: event #: view:report.event.registration:0 msgid "Last 7 Days" -msgstr "" +msgstr "Posledních 7 dní" #. module: event #: field:event.event,parent_id:0 msgid "Parent Event" -msgstr "" +msgstr "Nadřazená událost" #. module: event #: model:ir.actions.act_window,name:event.action_make_invoices msgid "Make Invoice" -msgstr "" +msgstr "Fakturovat" #. module: event #: field:event.registration,price_subtotal:0 msgid "Subtotal" -msgstr "" +msgstr "Mezivýsledek" #. module: event #: view:report.event.registration:0 msgid "Event on Registration" -msgstr "" +msgstr "Události při registraci" #. module: event #: view:report.event.registration:0 msgid "Current Events" -msgstr "" +msgstr "Aktuální události" #. module: event #: view:event.registration:0 msgid "Add Internal Note" -msgstr "" +msgstr "Přidat vnitřní poznámku" #. module: event #: model:ir.actions.act_window,name:event.action_report_event_registration @@ -177,17 +181,17 @@ msgstr "" #: model:ir.ui.menu,name:event.menu_report_event_registration #: view:report.event.registration:0 msgid "Events Analysis" -msgstr "" +msgstr "Analýza události" #. module: event #: field:event.registration,message_ids:0 msgid "Messages" -msgstr "" +msgstr "Zprávy" #. module: event #: field:event.event,mail_auto_confirm:0 msgid "Mail Auto Confirm" -msgstr "" +msgstr "Automatické potvrzení poštou" #. module: event #: model:product.template,name:event.event_product_1_product_template @@ -206,17 +210,17 @@ msgstr "Potvrdit událost" #: selection:event.registration,state:0 #: selection:report.event.registration,state:0 msgid "Cancelled" -msgstr "" +msgstr "Zrušeno" #. module: event #: field:event.event,reply_to:0 msgid "Reply-To" -msgstr "" +msgstr "Odpovědět" #. module: event #: model:ir.actions.act_window,name:event.open_board_associations_manager msgid "Event Dashboard" -msgstr "" +msgstr "Nástěnka uválosti" #. module: event #: model:event.event,name:event.event_1 @@ -226,7 +230,7 @@ msgstr "Verdiho opera" #. module: event #: field:event.event,pricelist_id:0 msgid "Pricelist" -msgstr "" +msgstr "Ceník" #. module: event #: field:event.registration,contact_id:0 @@ -236,23 +240,23 @@ msgstr "Kontakt partnera" #. module: event #: model:ir.model,name:event.model_event_registration_badge msgid "event.registration.badge" -msgstr "" +msgstr "event.registration.badge" #. module: event #: field:event.registration,ref:0 msgid "Reference" -msgstr "" +msgstr "Odkaz" #. module: event #: help:event.event,date_end:0 #: help:partner.event.registration,end_date:0 msgid "Closing Date of Event" -msgstr "" +msgstr "Datum ukončení události" #. module: event #: view:event.registration:0 msgid "Emails" -msgstr "" +msgstr "Emaily" #. module: event #: view:event.registration:0 @@ -263,7 +267,7 @@ msgstr "Další informace" #: code:addons/event/wizard/event_make_invoice.py:83 #, python-format msgid "Customer Invoices" -msgstr "" +msgstr "Faktury zákazníků" #. module: event #: selection:event.event,state:0 @@ -279,7 +283,7 @@ msgstr "Typ události" #. module: event #: model:ir.model,name:event.model_event_type msgid " Event Type " -msgstr "" +msgstr " Typ události " #. module: event #: view:event.event:0 @@ -298,7 +302,7 @@ msgstr "Událost" #: view:event.registration:0 #: field:event.registration,badge_ids:0 msgid "Badges" -msgstr "" +msgstr "Vyznamenání" #. module: event #: view:event.event:0 @@ -312,12 +316,12 @@ msgstr "Potvrzeno" #. module: event #: view:event.confirm.registration:0 msgid "Registration Confirmation" -msgstr "" +msgstr "Potvrzení registrace" #. module: event #: help:event.event,pricelist_id:0 msgid "Pricelist version for current event." -msgstr "" +msgstr "Verze ceníku pro aktuální událost." #. module: event #: help:event.event,product_id:0 @@ -326,27 +330,30 @@ msgid "" "Thus it allows you to set the default label and the accounting info you want " "by default on these invoices." msgstr "" +"Faktury této registrace události budou vytvořeny pro tento výrobek. A tak " +"vám umožní nastavit výchozí titulek a účetní informace, které chcete jako " +"výchozí na těchto fakturách." #. module: event #: view:event.registration:0 msgid "Misc" -msgstr "" +msgstr "Různé" #. module: event #: view:event.event:0 #: field:event.event,speaker_ids:0 msgid "Other Speakers" -msgstr "" +msgstr "Další řečníci" #. module: event #: model:ir.model,name:event.model_event_make_invoice msgid "Event Make Invoice" -msgstr "" +msgstr "Událost vytváří fakturu" #. module: event #: help:event.registration,nb_register:0 msgid "Number of Registrations or Tickets" -msgstr "" +msgstr "Počet registrací nebo lístků" #. module: event #: code:addons/event/wizard/event_make_invoice.py:50 @@ -355,83 +362,83 @@ msgstr "" #: code:addons/event/wizard/event_make_invoice.py:62 #, python-format msgid "Warning !" -msgstr "" +msgstr "Varování !" #. module: event #: view:event.registration:0 msgid "Send New Email" -msgstr "" +msgstr "Poslat nový email" #. module: event #: view:event.event:0 msgid "Location" -msgstr "" +msgstr "Umístění" #. module: event #: view:event.registration:0 msgid "Reply" -msgstr "" +msgstr "Odpovědět" #. module: event #: field:event.event,register_current:0 #: view:report.event.registration:0 msgid "Confirmed Registrations" -msgstr "" +msgstr "Potvrzené registrace" #. module: event #: field:event.event,mail_auto_registr:0 msgid "Mail Auto Register" -msgstr "" +msgstr "Automatická registrace poštou" #. module: event #: field:event.event,type:0 #: field:partner.event.registration,event_type:0 msgid "Type" -msgstr "" +msgstr "Typ" #. module: event #: field:event.registration,email_from:0 msgid "Email" -msgstr "" +msgstr "Email" #. module: event #: field:event.registration,tobe_invoiced:0 msgid "To be Invoiced" -msgstr "" +msgstr "K fakturaci" #. module: event #: code:addons/event/event.py:394 #, python-format msgid "Error !" -msgstr "" +msgstr "Chyba !" #. module: event #: field:event.registration,create_date:0 msgid "Creation Date" -msgstr "" +msgstr "Datum vytvoření" #. module: event #: view:event.event:0 #: view:event.registration:0 #: view:res.partner:0 msgid "Cancel Registration" -msgstr "Ukončit registraci" +msgstr "Zrušit registraci" #. module: event #: code:addons/event/event.py:395 #, python-format msgid "Registered partner doesn't have an address to make the invoice." -msgstr "" +msgstr "Registrovaný partner nemá adresu k fakturaci." #. module: event #: field:event.registration,nb_register:0 msgid "Quantity" -msgstr "" +msgstr "Množství" #. module: event #: help:event.event,type:0 msgid "Type of Event like Seminar, Exhibition, Conference, Training." -msgstr "" +msgstr "Typ události jako seminář, výstava, konference, kurz." #. module: event #: help:event.event,mail_confirm:0 @@ -440,43 +447,46 @@ msgid "" "subscribes to a confirmed event. This is also the email sent to remind " "someone about the event." msgstr "" +"Tento email bude odeslán jakmile bude událost potvrzena nebo když se někdo " +"upíše k potvrzené události. Toto je také email odeslaný někomu k připomenutí " +"události." #. module: event #: help:event.event,register_prospect:0 msgid "Total of Prospect Registrati./event/event.py:41:ons" -msgstr "" +msgstr "Celkem očekávaných registrací" #. module: event #: selection:report.event.registration,month:0 msgid "July" -msgstr "" +msgstr "Červenec" #. module: event #: view:event.event:0 msgid "Event Organization" -msgstr "" +msgstr "Organizace události" #. module: event #: view:event.registration:0 msgid "History Information" -msgstr "" +msgstr "Informace historie" #. module: event #: view:event.registration:0 msgid "Dates" -msgstr "Datumy" +msgstr "Data" #. module: event #: view:event.confirm:0 #: view:event.confirm.registration:0 msgid "Confirm Anyway" -msgstr "" +msgstr "Přesto potvrdit" #. module: event #: code:addons/event/wizard/event_confirm_registration.py:54 #, python-format msgid "Warning: The Event '%s' has reached its Maximum Limit (%s)." -msgstr "" +msgstr "Varování: Událost '%s' dosáhla svého maximálního limitu (%s)." #. module: event #: view:event.event:0 @@ -489,7 +499,7 @@ msgstr "Registrace" #. module: event #: field:report.event.registration,nbevent:0 msgid "Number Of Events" -msgstr "" +msgstr "Počet událostí" #. module: event #: help:event.event,state:0 @@ -498,22 +508,26 @@ msgid "" "particular dates the state is set to 'Confirmed'. If the event is over, the " "state is set to 'Done'.If event is cancelled the state is set to 'Cancelled'." msgstr "" +"Pokud je událost vytvořena, stav je 'Koncept'. Pokud je událost potvrzena " +"pro určitá data, stav je nastaven na 'Potvrzené'. Pokud je po události, stav " +"je nastaven na 'Dokončeno'. Pokud je událost zrušena, stav je nastaven na " +"'Zrušeno'." #. module: event #: view:event.event:0 msgid "Cancel Event" -msgstr "Ukončit událost" +msgstr "Zrušit událost" #. module: event #: view:event.event:0 #: view:event.registration:0 msgid "Contact" -msgstr "" +msgstr "Kontaktní" #. module: event #: view:report.event.registration:0 msgid "Last 30 Days" -msgstr "" +msgstr "Posledních 30 dní" #. module: event #: view:event.event:0 @@ -521,45 +535,45 @@ msgstr "" #: field:event.registration,partner_id:0 #: model:ir.model,name:event.model_res_partner msgid "Partner" -msgstr "" +msgstr "Partner" #. module: event #: view:board.board:0 #: model:ir.actions.act_window,name:event.act_event_reg #: view:report.event.registration:0 msgid "Events Filling Status" -msgstr "" +msgstr "Stav naplnění události" #. module: event #: field:event.make.invoice,grouped:0 msgid "Group the invoices" -msgstr "" +msgstr "Seskupit faktury" #. module: event #: view:event.event:0 msgid "Mailing" -msgstr "" +msgstr "Odesílání" #. module: event #: model:product.template,name:event.event_product_0_product_template msgid "Ticket for Concert" -msgstr "" +msgstr "Lístek na koncert" #. module: event #: view:board.board:0 #: field:event.event,register_prospect:0 msgid "Unconfirmed Registrations" -msgstr "" +msgstr "Nepotvrzené registrace" #. module: event #: field:event.registration,partner_invoice_id:0 msgid "Partner Invoiced" -msgstr "" +msgstr "Fakturováno partnerovi" #. module: event #: field:event.registration,log_ids:0 msgid "Logs" -msgstr "" +msgstr "Záznamy" #. module: event #: view:event.event:0 @@ -569,33 +583,33 @@ msgstr "" #: view:report.event.registration:0 #: field:report.event.registration,state:0 msgid "State" -msgstr "" +msgstr "Stav" #. module: event #: selection:report.event.registration,month:0 msgid "September" -msgstr "" +msgstr "Září" #. module: event #: selection:report.event.registration,month:0 msgid "December" -msgstr "" +msgstr "Prosinec" #. module: event #: field:event.registration,event_product:0 msgid "Invoice Name" -msgstr "" +msgstr "Jméno faktury" #. module: event #: field:report.event.registration,draft_state:0 msgid " # No of Draft Registrations" -msgstr "" +msgstr " # Počet konceptů registrací" #. module: event #: view:report.event.registration:0 #: field:report.event.registration,month:0 msgid "Month" -msgstr "" +msgstr "Měsíc" #. module: event #: view:event.event:0 @@ -621,44 +635,59 @@ msgid "" "event or per event category in:\n" " Events / Reporting\n" msgstr "" +"Organizace a správa událostí.\n" +"\n" +" Tento modul vám umožní\n" +" * spravovat vaše události a jejich registrace\n" +" * použít více emailů k automatickému potvrzení a odeslání potvrzení " +"pro jakoukoliv registraci k události\n" +" * ...\n" +" Nástěnka pro asociace zahrnuje:\n" +" * Registrace podle událostí (graf)\n" +" Berte na vědomí, že:\n" +" - Můžete určit nové typy událostí v\n" +" Události / Nastavení / Typy událostí\n" +" - Můžete přistupovat k předdefinovaným výkazům o počtu registrací na " +"událost nebo na kategorii události v:\n" +" Události / Vykazování\n" #. module: event #: field:event.confirm.registration,msg:0 msgid "Message" -msgstr "" +msgstr "Zpráva" #. module: event #: constraint:event.event:0 msgid "Error ! You cannot create recursive event." -msgstr "" +msgstr "Chyba ! Nemůžete vytvořit rekurzivní událost." #. module: event #: field:event.registration,ref2:0 msgid "Reference 2" -msgstr "" +msgstr "Odkaz 2" #. module: event #: code:addons/event/event.py:357 #: view:report.event.registration:0 #, python-format msgid "Invoiced" -msgstr "" +msgstr "Fakturováno" #. module: event #: view:event.event:0 #: view:report.event.registration:0 msgid "My Events" -msgstr "" +msgstr "Moje události" #. module: event #: view:event.event:0 msgid "Speakers" -msgstr "" +msgstr "Řečníci" #. module: event #: view:event.make.invoice:0 msgid "Create invoices" -msgstr "" +msgstr "Vytvořit faktury" #. module: event #: help:event.registration,email_cc:0 @@ -667,26 +696,29 @@ msgid "" "outbound emails for this record before being sent. Separate multiple email " "addresses with a comma" msgstr "" +"Tyto emailové adresy budou přidány do pole CC všech příchozích a odchozích " +"emailů pro tento záznam před odesláním. Oddělte více emailových adres pomocí " +"čárky" #. module: event #: constraint:res.partner:0 msgid "Error ! You can not create recursive associated members." -msgstr "" +msgstr "Chyba ! Nemůžete vytvořit rekurzivní asociované členy." #. module: event #: view:event.make.invoice:0 msgid "Do you really want to create the invoice(s) ?" -msgstr "" +msgstr "Opravdu chcete vytvořit fakturu(y) ?" #. module: event #: view:event.event:0 msgid "Beginning Date" -msgstr "" +msgstr "Datum zahájení" #. module: event #: field:event.registration,date_closed:0 msgid "Closed" -msgstr "" +msgstr "Uzavřeno" #. module: event #: view:event.event:0 @@ -696,49 +728,51 @@ msgstr "" #: model:ir.ui.menu,name:event.menu_event_event_assiciation #: view:res.partner:0 msgid "Events" -msgstr "Akce" +msgstr "Události" #. module: event #: field:partner.event.registration,nb_register:0 msgid "Number of Registration" -msgstr "" +msgstr "Počet registrací" #. module: event #: field:event.event,child_ids:0 msgid "Child Events" -msgstr "" +msgstr "Podřízené události" #. module: event #: selection:report.event.registration,month:0 msgid "August" -msgstr "" +msgstr "Srpen" #. module: event #: field:res.partner,event_ids:0 #: field:res.partner,event_registration_ids:0 msgid "unknown" -msgstr "" +msgstr "neznámé" #. module: event #: selection:report.event.registration,month:0 msgid "June" -msgstr "" +msgstr "Červen" #. module: event #: help:event.event,mail_auto_registr:0 msgid "" "Check this box if you want to use the automatic mailing for new registration" msgstr "" +"Zaškrtněte toto políčko, pokud chcete použít automatickou poštu pro nové " +"registrace" #. module: event #: field:event.registration,write_date:0 msgid "Write Date" -msgstr "" +msgstr "Zapsat datum" #. module: event #: view:event.registration:0 msgid "My Registrations" -msgstr "" +msgstr "Moje registrace" #. module: event #: view:event.confirm:0 @@ -746,62 +780,66 @@ msgid "" "Warning: This Event has not reached its Minimum Registration Limit. Are you " "sure you want to confirm it?" msgstr "" +"Varování: Tato událost nedosáhla svého minimálního limitu registrací. " +"Opravdu ji chcete potvrdit?" #. module: event #: field:event.registration,active:0 msgid "Active" -msgstr "" +msgstr "Aktivní" #. module: event #: selection:report.event.registration,month:0 msgid "November" -msgstr "" +msgstr "Listopad" #. module: event #: view:report.event.registration:0 msgid "Extended Filters..." -msgstr "" +msgstr "Rozšířené filtry..." #. module: event #: help:event.event,reply_to:0 msgid "The email address put in the 'Reply-To' of all emails sent by OpenERP" msgstr "" +"Tato emailová adresa vložená v 'Odpovědět komu' všech emailů poslaných z " +"OpenERP" #. module: event #: selection:report.event.registration,month:0 msgid "October" -msgstr "" +msgstr "Říjen" #. module: event #: help:event.event,register_current:0 msgid "Total of Open and Done Registrations" -msgstr "" +msgstr "Celkem otevřených a dokončených registrací" #. module: event #: field:event.event,language:0 msgid "Language" -msgstr "" +msgstr "Jazyk" #. module: event #: view:event.registration:0 #: field:event.registration,email_cc:0 msgid "CC" -msgstr "" +msgstr "CC" #. module: event #: selection:report.event.registration,month:0 msgid "January" -msgstr "" +msgstr "Leden" #. module: event #: help:event.registration,email_from:0 msgid "These people will receive email." -msgstr "" +msgstr "Tito lidé obdrží email." #. module: event #: view:event.event:0 msgid "Set To Draft" -msgstr "" +msgstr "Nastavit na koncept" #. module: event #: code:addons/event/event.py:472 @@ -810,35 +848,35 @@ msgstr "" #: view:res.partner:0 #, python-format msgid "Confirm Registration" -msgstr "" +msgstr "Potvrdit registraci" #. module: event #: view:event.event:0 #: view:report.event.registration:0 #: view:res.partner:0 msgid "Date" -msgstr "" +msgstr "Datum" #. module: event #: model:ir.ui.menu,name:event.board_associations msgid "Dashboard" -msgstr "" +msgstr "Nástěnka" #. module: event #: view:event.event:0 msgid "Confirmation Email Body" -msgstr "" +msgstr "Tělo potvrzovacího emailu" #. module: event #: view:event.registration:0 #: view:res.partner:0 msgid "History" -msgstr "Přehled změn" +msgstr "Historie" #. module: event #: field:event.event,address_id:0 msgid "Location Address" -msgstr "" +msgstr "Adresa místa" #. module: event #: model:ir.ui.menu,name:event.menu_event_type @@ -849,28 +887,28 @@ msgstr "Typy událostí" #. module: event #: view:event.registration:0 msgid "Attachments" -msgstr "" +msgstr "Přílohy" #. module: event #: code:addons/event/wizard/event_make_invoice.py:59 #, python-format msgid "Event related doesn't have any product defined" -msgstr "" +msgstr "Vztažená událost nemá určen žádný výrobek" #. module: event #: view:event.event:0 msgid "Auto Confirmation Email" -msgstr "" +msgstr "Automatický potvrzovací email" #. module: event #: view:report.event.registration:0 msgid "Last 365 Days" -msgstr "" +msgstr "Posledních 365 dní" #. module: event #: constraint:event.event:0 msgid "Error ! Closing Date cannot be set before Beginning Date." -msgstr "" +msgstr "Chyba ! Datum uzavření nemůže být nastaven přes datum zahájení." #. module: event #: code:addons/event/event.py:442 @@ -885,37 +923,37 @@ msgstr "Dokončeno" #. module: event #: field:event.event,date_begin:0 msgid "Beginning date" -msgstr "" +msgstr "Datum zahájení" #. module: event #: view:event.registration:0 #: field:event.registration,invoice_id:0 msgid "Invoice" -msgstr "" +msgstr "Faktura" #. module: event #: view:report.event.registration:0 #: field:report.event.registration,year:0 msgid "Year" -msgstr "" +msgstr "Rok" #. module: event #: code:addons/event/event.py:517 #, python-format msgid "Cancel" -msgstr "Ukončení" +msgstr "Zrušit" #. module: event #: view:event.confirm:0 #: view:event.confirm.registration:0 #: view:event.make.invoice:0 msgid "Close" -msgstr "" +msgstr "Uzavřít" #. module: event #: view:event.event:0 msgid "Event by Registration" -msgstr "" +msgstr "Událost podle registrace" #. module: event #: code:addons/event/event.py:432 @@ -926,14 +964,14 @@ msgstr "Otevřít" #. module: event #: field:event.event,user_id:0 msgid "Responsible User" -msgstr "" +msgstr "Odpovědný uživatel" #. module: event #: code:addons/event/event.py:538 #: code:addons/event/event.py:545 #, python-format msgid "Auto Confirmation: [%s] %s" -msgstr "" +msgstr "Automatické potvrzení: [%s] %s" #. module: event #: view:event.event:0 @@ -942,42 +980,42 @@ msgstr "" #: view:report.event.registration:0 #: field:report.event.registration,user_id:0 msgid "Responsible" -msgstr "" +msgstr "Odpovědný" #. module: event #: field:event.event,unit_price:0 #: view:event.registration:0 #: field:partner.event.registration,unit_price:0 msgid "Registration Cost" -msgstr "" +msgstr "Cena registrace" #. module: event #: view:event.event:0 #: view:event.registration:0 msgid "Current" -msgstr "" +msgstr "Aktuální" #. module: event #: field:event.registration,unit_price:0 msgid "Unit Price" -msgstr "" +msgstr "Cena za kus" #. module: event #: view:report.event.registration:0 #: field:report.event.registration,speaker_id:0 #: field:res.partner,speaker:0 msgid "Speaker" -msgstr "" +msgstr "Řečník" #. module: event #: view:event.registration:0 msgid "Details" -msgstr "" +msgstr "Podrobnosti" #. module: event #: model:event.event,name:event.event_2 msgid "Conference on ERP Buisness" -msgstr "" +msgstr "Konference o ERP podnikání" #. module: event #: field:event.event,section_id:0 @@ -985,25 +1023,25 @@ msgstr "" #: view:report.event.registration:0 #: field:report.event.registration,section_id:0 msgid "Sale Team" -msgstr "" +msgstr "Prodejní tým" #. module: event #: field:partner.event.registration,start_date:0 msgid "Start date" -msgstr "" +msgstr "Počáteční datum" #. module: event #: field:event.event,date_end:0 #: field:partner.event.registration,end_date:0 msgid "Closing date" -msgstr "" +msgstr "Datum uzavření" #. module: event #: field:event.event,product_id:0 #: view:report.event.registration:0 #: field:report.event.registration,product_id:0 msgid "Product" -msgstr "Produkt" +msgstr "Výrobek" #. module: event #: view:event.event:0 @@ -1011,96 +1049,96 @@ msgstr "Produkt" #: view:event.registration:0 #: field:event.registration,description:0 msgid "Description" -msgstr "" +msgstr "Popis" #. module: event #: field:report.event.registration,confirm_state:0 msgid " # No of Confirmed Registrations" -msgstr "" +msgstr " # Počet potvrzených registrací" #. module: event #: model:ir.actions.act_window,name:event.act_register_event_partner msgid "Subscribe" -msgstr "" +msgstr "Upsat se" #. module: event #: selection:report.event.registration,month:0 msgid "May" -msgstr "" +msgstr "Květen" #. module: event #: view:res.partner:0 msgid "Events Registration" -msgstr "" +msgstr "Registrace událostí" #. module: event #: help:event.event,mail_registr:0 msgid "This email will be sent when someone subscribes to the event." -msgstr "" +msgstr "Email bude odeslán, když se někdo upíše k události." #. module: event #: model:product.template,name:event.event_product_2_product_template msgid "Ticket for Conference" -msgstr "Lístek pro Konferenci" +msgstr "Lístek pro konferenci" #. module: event #: field:event.registration.badge,address_id:0 msgid "Address" -msgstr "" +msgstr "Adresa" #. module: event #: view:board.board:0 #: model:ir.actions.act_window,name:event.act_event_view msgid "Next Events" -msgstr "" +msgstr "Další události" #. module: event #: view:partner.event.registration:0 msgid "_Subcribe" -msgstr "" +msgstr "_Upsat se" #. module: event #: model:ir.model,name:event.model_partner_event_registration msgid " event Registration " -msgstr "" +msgstr " registrace události " #. module: event #: help:event.event,date_begin:0 #: help:partner.event.registration,start_date:0 msgid "Beginning Date of Event" -msgstr "" +msgstr "Datum zahájení události" #. module: event #: selection:event.registration,state:0 msgid "Unconfirmed" -msgstr "" +msgstr "Nepotvrzené" #. module: event #: code:addons/event/event.py:542 #, python-format msgid "Auto Registration: [%s] %s" -msgstr "" +msgstr "Automatická registrace: [%s] %s" #. module: event #: field:event.registration,date_deadline:0 msgid "End Date" -msgstr "" +msgstr "Datum ukončení" #. module: event #: selection:report.event.registration,month:0 msgid "February" -msgstr "" +msgstr "Únor" #. module: event #: view:board.board:0 msgid "Association Dashboard" -msgstr "" +msgstr "Nástěnka asociací" #. module: event #: view:event.event:0 #: field:event.registration.badge,name:0 msgid "Name" -msgstr "" +msgstr "Jméno" #. module: event #: help:event.event,mail_auto_confirm:0 @@ -1108,17 +1146,19 @@ msgid "" "Check this box if you want ot use the automatic confirmation emailing or the " "reminder" msgstr "" +"Zaškrtněte toto políčko, pokud chcete použít automatické potvrzování " +"registrací nebo připomínání" #. module: event #: field:event.event,country_id:0 msgid "Country" -msgstr "" +msgstr "Země" #. module: event #: code:addons/event/wizard/event_make_invoice.py:55 #, python-format msgid "Registration is set as Cannot be invoiced" -msgstr "" +msgstr "Registrace je nastavena jako Nelze fakturovat" #. module: event #: code:addons/event/event.py:500 @@ -1127,18 +1167,18 @@ msgstr "" #: view:res.partner:0 #, python-format msgid "Close Registration" -msgstr "" +msgstr "Uzavřít registrace" #. module: event #: selection:report.event.registration,month:0 msgid "April" -msgstr "" +msgstr "Duben" #. module: event #: field:event.event,name:0 #: field:event.registration,name:0 msgid "Summary" -msgstr "" +msgstr "Souhrn" #. module: event #: view:event.event:0 @@ -1146,7 +1186,7 @@ msgstr "" #: view:report.event.registration:0 #: field:report.event.registration,type:0 msgid "Event Type" -msgstr "" +msgstr "Typ události" #. module: event #: view:event.event:0 @@ -1160,63 +1200,63 @@ msgstr "Registrace" #. module: event #: field:event.registration,date:0 msgid "Start Date" -msgstr "" +msgstr "Počáteční datum" #. module: event #: field:event.event,register_max:0 #: field:report.event.registration,register_max:0 msgid "Maximum Registrations" -msgstr "" +msgstr "Nejvíce registrací" #. module: event #: field:report.event.registration,date:0 msgid "Event Start Date" -msgstr "" +msgstr "Datum zahájení události" #. module: event #: view:event.event:0 msgid "Registration Email Body" -msgstr "" +msgstr "Tělo registračního emailu" #. module: event #: view:partner.event.registration:0 msgid "Event For Registration" -msgstr "" +msgstr "Událost pro registraci" #. module: event #: code:addons/event/wizard/event_make_invoice.py:51 #, python-format msgid "Invoice cannot be created if the registration is in %s state." -msgstr "" +msgstr "Pokud je registrace ve stavu %s, nemůže být vytvořena faktura." #. module: event #: view:event.confirm:0 #: model:ir.actions.act_window,name:event.action_event_confirm #: model:ir.model,name:event.model_event_confirm msgid "Event Confirmation" -msgstr "" +msgstr "Portvrzení události" #. module: event #: view:event.event:0 msgid "Auto Registration Email" -msgstr "" +msgstr "Email automatické registrace" #. module: event #: view:event.registration:0 #: view:report.event.registration:0 #: field:report.event.registration,total:0 msgid "Total" -msgstr "" +msgstr "Celkem" #. module: event #: help:event.event,register_min:0 msgid "Providee Minimum Number of Registrations" -msgstr "" +msgstr "Poskytuje minimální počet registrací" #. module: event #: field:event.event,speaker_confirmed:0 msgid "Speaker Confirmed" -msgstr "" +msgstr "Řečník potvrzen" #. module: event #: model:ir.actions.act_window,help:event.action_event_view @@ -1226,6 +1266,10 @@ msgid "" "caldav. Most of the users should work in the Calendar menu, and not in the " "list of events." msgstr "" +"Událost je nízkoúrovňový objekt použitý pro setkání a jiné dokumenty, které " +"by měly být synchronizovány s mobilními zařízeními nebo kalendářových " +"aplikací přes caldav. Většina uživatelů by měla pracovat s nabídkou " +"Kalendáře a ne v seznamu událostí." #~ msgid "Configuration" #~ msgstr "Konfigurace" diff --git a/addons/event_project/i18n/cs.po b/addons/event_project/i18n/cs.po index ca48e497bc9..394ccbfabaf 100644 --- a/addons/event_project/i18n/cs.po +++ b/addons/event_project/i18n/cs.po @@ -4,27 +4,28 @@ # msgid "" msgstr "" -"Project-Id-Version: OpenERP Server 6.0dev\n" +"Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2010-08-03 03:57+0000\n" -"Last-Translator: Mantavya Gajjar (Open ERP) \n" -"Language-Team: \n" +"PO-Revision-Date: 2011-09-06 06:16+0000\n" +"Last-Translator: Jiří Hajda \n" +"Language-Team: Czech \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-09-05 05:39+0000\n" -"X-Generator: Launchpad (build 13830)\n" +"X-Launchpad-Export-Date: 2011-09-07 04:35+0000\n" +"X-Generator: Launchpad (build 13861)\n" +"X-Poedit-Language: Czech\n" #. module: event_project #: model:ir.model,name:event_project.model_event_project msgid "Event Project" -msgstr "" +msgstr "Projekt události" #. module: event_project #: field:event.project,date:0 msgid "Date End" -msgstr "" +msgstr "Datum ukončení" #. module: event_project #: view:event.project:0 @@ -39,6 +40,9 @@ msgid "" " This module allows you to create retro planning for managing your " "events.\n" msgstr "" +"Organizace a správa událostí.\n" +"\n" +" Tento modul vám umožní zpětné plánování pro správu událostí.\n" #. module: event_project #: help:event.project,project_id:0 @@ -47,17 +51,20 @@ msgid "" "After click on 'Create Retro-planning', New Project will be duplicated from " "this template project." msgstr "" +"Toto je Šablona projektu. Projekt události je duplikát této Šablony. Po " +"kliknutí na 'Vytvořit Zpětné-plánování', bude vytvořen Nový projekt z této " +"šablony projektu." #. module: event_project #: view:event.project:0 #: model:ir.actions.act_window,name:event_project.action_event_project msgid "Retro-Planning" -msgstr "" +msgstr "Zpětné-plánování" #. module: event_project #: constraint:event.event:0 msgid "Error ! Closing Date cannot be set before Beginning Date." -msgstr "" +msgstr "Chyba ! Datum uzavření nemůže být nastaven přes datum zahájení." #. module: event_project #: field:event.event,project_id:0 @@ -79,6 +86,7 @@ msgstr "Všechny úkoly" #: model:ir.module.module,shortdesc:event_project.module_meta_information msgid "Event Project - Create Retro-Planning to manage your Events" msgstr "" +"Projekt události - Vytvořte Zpětné-plánování ke správě vašich událostí" #. module: event_project #: field:event.project,project_id:0 @@ -88,7 +96,7 @@ msgstr "Šablona projektu" #. module: event_project #: constraint:event.event:0 msgid "Error ! You cannot create recursive event." -msgstr "" +msgstr "Chyba ! Nemůžete vytvořit rekurzivní událost." #. module: event_project #: field:event.event,task_ids:0 @@ -98,17 +106,17 @@ msgstr "Úkoly projektu" #. module: event_project #: view:event.project:0 msgid "Close" -msgstr "" +msgstr "Zavřít" #. module: event_project #: field:event.project,date_start:0 msgid "Date Start" -msgstr "" +msgstr "Počáteční datum" #. module: event_project #: view:event.event:0 msgid "Create Retro-Planning" -msgstr "Vytvořit retro-plánování" +msgstr "Vytvořit zpětné-plánování" #. module: event_project #: model:ir.model,name:event_project.model_event_event diff --git a/addons/google_map/i18n/ar.po b/addons/google_map/i18n/ar.po index daa77071d8e..beee370b172 100644 --- a/addons/google_map/i18n/ar.po +++ b/addons/google_map/i18n/ar.po @@ -13,7 +13,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-09-06 04:39+0000\n" +"X-Launchpad-Export-Date: 2011-09-07 04:35+0000\n" "X-Generator: Launchpad (build 13861)\n" #. module: google_map diff --git a/addons/resource/i18n/cs.po b/addons/resource/i18n/cs.po index 12cb6b863a6..14f0d442e5e 100644 --- a/addons/resource/i18n/cs.po +++ b/addons/resource/i18n/cs.po @@ -6,16 +6,16 @@ msgid "" msgstr "" "Project-Id-Version: openobject-addons\n" -"Report-Msgid-Bugs-To: support@openerp.com\n" +"Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2011-01-11 11:16+0000\n" -"PO-Revision-Date: 2011-07-13 13:10+0000\n" -"Last-Translator: Chronos \n" +"PO-Revision-Date: 2011-09-06 06:16+0000\n" +"Last-Translator: Jiří Hajda \n" "Language-Team: Czech \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-09-05 05:47+0000\n" -"X-Generator: Launchpad (build 13830)\n" +"X-Launchpad-Export-Date: 2011-09-07 04:35+0000\n" +"X-Generator: Launchpad (build 13861)\n" "X-Poedit-Language: Czech\n" #. module: resource @@ -279,6 +279,10 @@ msgid "" "show a load of 100% for this phase by default, but if we put a efficency of " "200%, then his load will only be 50%." msgstr "" +"Toto pole vykresluje efektivitu zdroje k dokončení úloh. např. zdroj je dán " +"sám do fáze 5 dnů s 5 úlohách k němu přiřazených, ukáže jako výchozí " +"zatížení 100% pro tuto fázi, ale pokud dáme efektivitu 200%, pak jeho " +"zatížení bude pouze 50%." #. module: resource #: selection:resource.calendar.attendance,dayofweek:0 @@ -308,6 +312,9 @@ msgid "" "in a specific project phase. You can also set their efficiency level and " "workload based on their weekly working hours." msgstr "" +"Zdroje umožňují vytvořit a spravovat zdroje, které by měly být zapojené v " +"určitých fázích projektu. Můžete také nastavit jejich úroveň účinnosti a " +"základní zatížení na jejich týdeních pracovních hodinách." #. module: resource #: view:resource.resource:0 From 43cf7fc5670a0f3faa6a38de768e4ea69580c8e9 Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Wed, 7 Sep 2011 08:12:12 +0200 Subject: [PATCH 10/42] [IMP] no need to cd in the doc folder, just use -C bzr revid: xmo@openerp.com-20110907061212-renpsn79r7i7je75 --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 48b00b73822..9e84e356aaf 100644 --- a/Makefile +++ b/Makefile @@ -24,7 +24,7 @@ clean: @rm -rf *.egg-info doc: - cd doc; make html + make -C doc html cloc: cloc addons/*/common/*.py addons/*/controllers/*.py addons/*/static/src/*.js addons/*/static/src/js/*.js addons/*/static/src/css/*.css addons/*/static/src/xml/*.xml From ce55ea52550022b8da738e249f2e39b31276991e Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Wed, 7 Sep 2011 08:14:16 +0200 Subject: [PATCH 11/42] [FIX] more documentation bzr revid: xmo@openerp.com-20110907061416-thr8qy3td8dr78y0 --- doc/source/development.rst | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/doc/source/development.rst b/doc/source/development.rst index 3a88b767c44..bb7d6b6407b 100644 --- a/doc/source/development.rst +++ b/doc/source/development.rst @@ -391,14 +391,14 @@ Python These classes should be moved to other sections of the doc as needed, probably. -.. automodule:: base.common.dispatch +.. automodule:: web.common.dispatch :members: :undoc-members: - See also: :class:`~base.common.backendrpc.OpenERPSession`, - :class:`~base.common.backendrpc.OpenERPModel` + See also: :class:`~web.common.backendrpc.OpenERPSession`, + :class:`~web.common.backendrpc.OpenERPModel` -.. automodule:: base.controllers.main +.. automodule:: web.controllers.main :members: :undoc-members: From 0a4ebd1ed9f2d0068bc29d65bb77c7e84624316b Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Wed, 7 Sep 2011 08:34:57 +0200 Subject: [PATCH 12/42] [FIX] there is no view type 'list' in the openerp server, testing would be magic bzr revid: xmo@openerp.com-20110907063457-crgv4xxes23k0k4t --- addons/web/static/src/js/list.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/web/static/src/js/list.js b/addons/web/static/src/js/list.js index fe38721c520..6e1d534155a 100644 --- a/addons/web/static/src/js/list.js +++ b/addons/web/static/src/js/list.js @@ -373,7 +373,7 @@ openerp.web.ListView = openerp.web.View.extend( /** @lends openerp.web.ListView# return this.rpc('/web/listview/load', { model: this.model, view_id: this.view_id, - "view_type": "list", + view_type: "tree", context: this.dataset.get_context(context), toolbar: this.options.sidebar }, callback); From 6bb9c16249194a68c833ae5e9e438ba217dccc9b Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Wed, 7 Sep 2011 08:40:41 +0200 Subject: [PATCH 13/42] [FIX] fields_view_get breakage bzr revid: xmo@openerp.com-20110907064041-zd58839fg5x7ag4k --- addons/web/static/src/js/form.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/web/static/src/js/form.js b/addons/web/static/src/js/form.js index 3b960663670..91e19dbe0b0 100644 --- a/addons/web/static/src/js/form.js +++ b/addons/web/static/src/js/form.js @@ -99,7 +99,7 @@ openerp.web.FormView = openerp.web.View.extend( /** @lends openerp.web.FormView# this.sidebar.start(); this.sidebar.do_unfold(); this.sidebar.attachments = new openerp.web.form.SidebarAttachments(this.sidebar, this.sidebar.add_section('attachments', "Attachments"), this); - this.sidebar.add_toolbar(data.fields_view.toolbar); + this.sidebar.add_toolbar(this.fields_view.toolbar); this.set_common_sidebar_sections(this.sidebar); } this.has_been_loaded.resolve(); From 1ffd3f324d5e6960a04f92c5242374189836f31a Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Wed, 7 Sep 2011 08:44:24 +0200 Subject: [PATCH 14/42] [FIX] fields_view_get breakage: embedded views edition bzr revid: xmo@openerp.com-20110907064424-cm6gy11tf1370l3c --- addons/web/static/src/js/list.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/web/static/src/js/list.js b/addons/web/static/src/js/list.js index 6e1d534155a..30c7138936f 100644 --- a/addons/web/static/src/js/list.js +++ b/addons/web/static/src/js/list.js @@ -368,7 +368,7 @@ openerp.web.ListView = openerp.web.View.extend( /** @lends openerp.web.ListView# self.on_loaded(field_view_get, grouped); }; if (this.embedded_view) { - return $.Deferred().then(callback).resolve({fields_view: this.embedded_view}); + return $.Deferred().then(callback).resolve(this.embedded_view); } else { return this.rpc('/web/listview/load', { model: this.model, From 0b17356d23de5ca0f3d650d303fc68370e08caee Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Wed, 7 Sep 2011 09:23:58 +0200 Subject: [PATCH 15/42] [FIX] report action management: correctly download reports bzr revid: xmo@openerp.com-20110907072358-94qnrzx1ww951shv --- addons/web/controllers/main.py | 53 +++++++++++++++++++++---------- addons/web/static/src/js/views.js | 10 +++--- 2 files changed, 42 insertions(+), 21 deletions(-) diff --git a/addons/web/controllers/main.py b/addons/web/controllers/main.py index 5a907fbc8f9..a5a7dddcc4f 100644 --- a/addons/web/controllers/main.py +++ b/addons/web/controllers/main.py @@ -23,8 +23,6 @@ openerpweb.nonliterals = web.common.nonliterals from babel.messages.pofile import read_po -_REPORT_POLLER_DELAY = 0.05 - # Should move to openerpweb.Xml2Json class Xml2Json: # xml2json-direct @@ -1325,22 +1323,45 @@ class ExcelExport(Export): class Reports(View): _cp_path = "/web/report" + POLLING_DELAY = 0.25 + TYPES_MAPPING = { + 'doc': 'application/vnd.ms-word', + 'html': 'text/html', + 'odt': 'application/vnd.oasis.opendocument.text', + 'pdf': 'application/pdf', + 'sxw': 'application/vnd.sun.xml.writer', + 'xls': 'application/vnd.ms-excel', + } + + @openerpweb.httprequest + def index(self, req, action, token): + action = simplejson.loads(action) - @openerpweb.jsonrequest - def get_report(self, req, action): report_srv = req.session.proxy("report") - context = req.session.eval_context(openerpweb.nonliterals.CompoundContext(req.context, \ - action["context"])) - - args = [req.session._db, req.session._uid, req.session._password, action["report_name"], context["active_ids"], {"id": context["active_id"], "model": context["active_model"], "report_type": action["report_type"]}, context] - report_id = report_srv.report(*args) - report = None + context = req.session.eval_context( + openerpweb.nonliterals.CompoundContext( + req.context or {}, action[ "context"])) + report_id = report_srv.report( + req.session._db, req.session._uid, req.session._password, + action["report_name"], context["active_ids"], + {"id": context["active_id"], + "model": context["active_model"], + "report_type": action["report_type"]}, + context) + report_struct = None while True: - args2 = [req.session._db, req.session._uid, req.session._password, report_id] - report = report_srv.report_get(*args2) - if report["state"]: + report_struct = report_srv.report_get( + req.session._db, req.session._uid, req.session._password, report_id) + if report_struct["state"]: break - time.sleep(_REPORT_POLLER_DELAY) + time.sleep(self.POLLING_DELAY) - #TODO: ok now we've got the report, and so what? - return False + report = base64.b64decode(report_struct['result']) + report_mimetype = self.TYPES_MAPPING.get( + report_struct['format'], 'octet-stream') + return req.make_response(report, + headers=[ + ('Content-Disposition', 'attachment; filename="%s.%s"' % (action['report_name'], action['report_type'])), + ('Content-Type', report_mimetype), + ('Content-Length', len(report))], + cookies={'fileToken': int(token)}) diff --git a/addons/web/static/src/js/views.js b/addons/web/static/src/js/views.js index 936106ac103..e351d49c6eb 100644 --- a/addons/web/static/src/js/views.js +++ b/addons/web/static/src/js/views.js @@ -125,11 +125,11 @@ openerp.web.ActionManager = openerp.web.Widget.extend({ (this.client_widget = new ClientWidget(this, action.params)).appendTo(this); }, ir_actions_report_xml: function(action) { - this.rpc('/web/report/get_report', { - action: action, - context: {} - }).then(function(result) { - debugger; + $.blockUI(); + this.session.get_file({ + url: '/web/report', + data: {action: JSON.stringify(action)}, + complete: $.unblockUI }); } }); From 2a3cb447827f8e50cd3d00acb1756c858c4db064 Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Wed, 7 Sep 2011 09:28:18 +0200 Subject: [PATCH 16/42] [ADD] support for zipped reports (code=zlib/reportgz config key) in report downloader bzr revid: xmo@openerp.com-20110907072818-9ondrxh0q2j0yo7d --- addons/web/controllers/main.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/addons/web/controllers/main.py b/addons/web/controllers/main.py index a5a7dddcc4f..19ab3b9f476 100644 --- a/addons/web/controllers/main.py +++ b/addons/web/controllers/main.py @@ -11,6 +11,7 @@ import simplejson import textwrap import xmlrpclib import time +import zlib import webrelease from xml.etree import ElementTree from cStringIO import StringIO @@ -1357,6 +1358,8 @@ class Reports(View): time.sleep(self.POLLING_DELAY) report = base64.b64decode(report_struct['result']) + if report_struct.get('code') == 'zlib': + report = zlib.decompress(report) report_mimetype = self.TYPES_MAPPING.get( report_struct['format'], 'octet-stream') return req.make_response(report, From 0fc1b42aef80807f84137c08e3b3c97249e3ac0d Mon Sep 17 00:00:00 2001 From: Fabien Meghazi Date: Wed, 7 Sep 2011 09:48:10 +0200 Subject: [PATCH 17/42] [IMP] Improved css. bzr revid: fme@openerp.com-20110907074810-17ssgepzpc11u7bd --- addons/web/static/src/css/base.css | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/addons/web/static/src/css/base.css b/addons/web/static/src/css/base.css index c6241cd4429..3003f9402ac 100644 --- a/addons/web/static/src/css/base.css +++ b/addons/web/static/src/css/base.css @@ -838,7 +838,8 @@ label.error { .openerp label.oe_label_help { cursor: help; } -.openerp .oe_form_field label.oe_label, .openerp .oe_form_field label.oe_label_help { +.openerp label.oe_label, +.openerp label.oe_label_help { text-align: right; margin: 3px 0 0 10px; } From 3908e0eb885467a1196ac0ce7fec48c983ecda7f Mon Sep 17 00:00:00 2001 From: Fabien Meghazi Date: Wed, 7 Sep 2011 10:16:33 +0200 Subject: [PATCH 18/42] [ADD] QWeb2: add default dict bzr revid: fme@openerp.com-20110907081633-vhuaf55e1dxxja2z --- addons/web/static/lib/qweb/qweb2.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/addons/web/static/lib/qweb/qweb2.js b/addons/web/static/lib/qweb/qweb2.js index cfb9c9c461d..473e80d1229 100644 --- a/addons/web/static/lib/qweb/qweb2.js +++ b/addons/web/static/lib/qweb/qweb2.js @@ -201,7 +201,7 @@ QWeb2.Engine = (function() { this.templates = {}; this.compiled_templates = {}; this.extend_templates = {}; - this.dict = {}; + this.default_dict = {}; this.tools = QWeb2.tools; this.jQuery = window.jQuery; this.reserved_words = QWeb2.RESERVED_WORDS.slice(0); @@ -323,10 +323,12 @@ QWeb2.Engine = (function() { " return r.join('');"; }, render : function(template, dict) { + var ndict = QWeb2.tools.extend({}, this.default_dict); + QWeb2.tools.extend(ndict, dict); if (this.debug && window['console'] !== undefined) { console.time("QWeb render template " + template); } - var r = this._render(template, dict); + var r = this._render(template, ndict); if (this.debug && window['console'] !== undefined) { console.timeEnd("QWeb render template " + template); } From e0eec18342f5afc2a074f33707535cadf40abf19 Mon Sep 17 00:00:00 2001 From: Fabien Meghazi Date: Wed, 7 Sep 2011 11:37:43 +0200 Subject: [PATCH 19/42] [IMP] Removed global QWeb. Now instanciate a QWeb2.Engine for each session: instance.web.qweb bzr revid: fme@openerp.com-20110907093743-k0224c5qjb74hxvb --- addons/web/controllers/main.py | 1 - addons/web/static/src/js/chrome.js | 1 + addons/web/static/src/js/core.js | 5 +++-- addons/web/static/src/js/data_export.js | 1 + addons/web/static/src/js/form.js | 1 + addons/web/static/src/js/list.js | 1 + addons/web/static/src/js/search.js | 1 + addons/web/static/src/js/view_tree.js | 1 + addons/web/static/src/js/views.js | 1 + addons/web_calendar/static/src/js/calendar.js | 1 + addons/web_dashboard/static/src/js/dashboard.js | 2 +- addons/web_default_home/static/src/js/home.js | 1 + addons/web_diagram/static/src/js/diagram.js | 1 + addons/web_gantt/static/src/js/gantt.js | 1 + addons/web_graph/static/src/js/graph.js | 1 + addons/web_kanban/static/src/js/kanban.js | 1 + 16 files changed, 17 insertions(+), 4 deletions(-) diff --git a/addons/web/controllers/main.py b/addons/web/controllers/main.py index 19ab3b9f476..d18d393c3c3 100644 --- a/addons/web/controllers/main.py +++ b/addons/web/controllers/main.py @@ -103,7 +103,6 @@ home_template = textwrap.dedent(""" %(javascript)s '%i for i in jslist]) # css tags csslist = ['/web/webclient/css'] if req.debug: - csslist = manifest_glob(req.config.addons_path, ['web'], 'css') + csslist = [i + '?debug=' + str(time.time()) for i in manifest_glob(req.config.addons_path, ['web'], 'css')] css = "\n ".join([''%i for i in csslist]) r = home_template % { 'javascript': js, From 3d9fb5d4cc7ed3e187ce577d382177818652c08b Mon Sep 17 00:00:00 2001 From: Fabien Meghazi Date: Wed, 7 Sep 2011 13:02:07 +0200 Subject: [PATCH 21/42] [FIX] Fix bug caused by View#load refactoring bzr revid: fme@openerp.com-20110907110207-lujx2cnhabsbfzgf --- addons/web/static/src/js/form.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/web/static/src/js/form.js b/addons/web/static/src/js/form.js index 0b931d7df88..73695e93ea3 100644 --- a/addons/web/static/src/js/form.js +++ b/addons/web/static/src/js/form.js @@ -47,7 +47,7 @@ openerp.web.FormView = openerp.web.View.extend( /** @lends openerp.web.FormView# if (this.embedded_view) { var def = $.Deferred().then(this.on_loaded); var self = this; - setTimeout(function() {def.resolve({fields_view: self.embedded_view});}, 0); + setTimeout(function() {def.resolve(self.embedded_view);}, 0); return def.promise(); } else { var context = new openerp.web.CompoundContext(this.dataset.get_context()); From 1f9289a098afbec64e492d6ec2bd054f74c1d905 Mon Sep 17 00:00:00 2001 From: niv-openerp Date: Wed, 7 Sep 2011 14:37:03 +0200 Subject: [PATCH 22/42] [imp] improved server loggin bzr revid: nicolas.vanhoren@openerp.com-20110907123703-owcjsptzd4o3h3ww --- addons/web/common/dispatch.py | 25 ++++++++++++------------- addons/web_chat/controllers/main.py | 5 ++++- openerp-web.py | 11 +++++++++++ 3 files changed, 27 insertions(+), 14 deletions(-) diff --git a/addons/web/common/dispatch.py b/addons/web/common/dispatch.py index 0f2b7fd2293..571b5179a46 100644 --- a/addons/web/common/dispatch.py +++ b/addons/web/common/dispatch.py @@ -26,6 +26,11 @@ import backendrpc as backend __all__ = ['Root', 'jsonrequest', 'httprequest', 'Controller', 'WebRequest', 'JsonRequest', 'HttpRequest'] +_logger = logging.getLogger(__name__) +if not _logger.handlers: + _logger.addHandler(logging.StreamHandler(sys.stdout)) + _logger.propagate = False + #----------------------------------------------------------- # Globals (wont move into a pool) #----------------------------------------------------------- @@ -159,8 +164,7 @@ class JsonRequest(WebRequest): else: self.jsonrequest = simplejson.loads(request, object_hook=nonliterals.non_literal_decoder) self.init(self.jsonrequest.get("params", {})) - if self.debug or 1: - print "--> %s.%s %s" % (controller.__class__.__name__, method.__name__, self.jsonrequest) + _logger.debug("--> %s.%s %s" % (controller.__class__.__name__, method.__name__, self.jsonrequest)) response['id'] = self.jsonrequest.get('id') response["result"] = method(controller, self, **self.params) except backend.OpenERPUnboundException: @@ -197,10 +201,7 @@ class JsonRequest(WebRequest): if error: response["error"] = error - if self.debug or 1: - print "<--", response - print - + _logger.debug("<-- %s" % response) content = simplejson.dumps(response, cls=nonliterals.NonLiteralEncoder) return werkzeug.wrappers.Response( content, headers=[('Content-Type', 'application/json'), @@ -237,15 +238,13 @@ class HttpRequest(WebRequest): akw[key] = value else: akw[key] = type(value) - if self.debug or 1: - print "%s --> %s.%s %r" % (self.httprequest.method, controller.__class__.__name__, method.__name__, akw) + _logger.debug("%s --> %s.%s %r" % (self.httprequest.method, controller.__class__.__name__, method.__name__, akw)) r = method(controller, self, **self.params) if self.debug or 1: if isinstance(r, werkzeug.wrappers.BaseResponse): - print '<--', r + _logger.debug('<-- %s' % r) else: - print "<--", 'size:', len(r) - print + _logger.debug("<-- size: %s" % len(r)) return r def make_response(self, data, headers=None, cookies=None): @@ -391,7 +390,7 @@ class Root(object): manifest_path = os.path.join(addons_path, module, '__openerp__.py') if os.path.isfile(manifest_path): manifest = ast.literal_eval(open(manifest_path).read()) - print "Loading", module + _logger.info("Loading %s", module) m = __import__(module) addons_module[module] = m addons_manifest[module] = manifest @@ -424,6 +423,6 @@ class Root(object): meth = rest[0] m = getattr(c, meth) if getattr(m, 'exposed', False): - print "Dispatching to", ps, c, meth, m + _logger.debug("Dispatching to %s %s %s %s", ps, c, meth, m) return m return None diff --git a/addons/web_chat/controllers/main.py b/addons/web_chat/controllers/main.py index 1e0710163f8..e9a026759b1 100644 --- a/addons/web_chat/controllers/main.py +++ b/addons/web_chat/controllers/main.py @@ -3,6 +3,9 @@ import time import simplejson import web.common as openerpweb +import logging + +_logger = logging.getLogger(__name__) #---------------------------------------------------------- # OpenERP Web ajaxim Controllers @@ -195,7 +198,7 @@ class PollServer(openerpweb.Controller): """ mq = req.applicationsession.setdefault("web_chat", PollServerMessageQueue()) - print "======== chat status ========",kw + _logger.debug("======== chat status ======== %s", kw) # mq.write() return {"action": ""} diff --git a/openerp-web.py b/openerp-web.py index 29a958b7834..a9c948b4202 100755 --- a/openerp-web.py +++ b/openerp-web.py @@ -3,6 +3,7 @@ import optparse import os import sys import tempfile +import logging import werkzeug.serving @@ -31,6 +32,10 @@ optparser.add_option('--no-serve-static', dest='serve_static', optparser.add_option('--reloader', dest='reloader', default=False, action='store_true', help="Reload application when python files change") +optparser.add_option("--log-level", dest="log_level", + default='debug', help="Log level", metavar="LOG_LEVEL") +optparser.add_option("--log-config", dest="log_config", + default='', help="Log config file", metavar="LOG_CONFIG") import web.common.dispatch @@ -38,6 +43,12 @@ if __name__ == "__main__": (options, args) = optparser.parse_args(sys.argv[1:]) os.environ["TZ"] = "UTC" + + if not options.log_config: + logging.basicConfig(level=getattr(logging, options.log_level.upper())) + else: + logging.config.fileConfig(options.log_config) + app = web.common.dispatch.Root(options) werkzeug.serving.run_simple( From e2c6e14fbb2d1f2698d86b0f223e97bc176885e1 Mon Sep 17 00:00:00 2001 From: niv-openerp Date: Wed, 7 Sep 2011 14:44:24 +0200 Subject: [PATCH 23/42] [fix] problem with file config for logging bzr revid: nicolas.vanhoren@openerp.com-20110907124424-o12vxv6ux7hpzeq7 --- openerp-web.py | 1 + 1 file changed, 1 insertion(+) diff --git a/openerp-web.py b/openerp-web.py index a9c948b4202..9153740b2a8 100755 --- a/openerp-web.py +++ b/openerp-web.py @@ -4,6 +4,7 @@ import os import sys import tempfile import logging +import logging.config import werkzeug.serving From 3b1627b7a461fb808ac4225ea1f4a7519980fe3c Mon Sep 17 00:00:00 2001 From: niv-openerp Date: Wed, 7 Sep 2011 15:05:02 +0200 Subject: [PATCH 24/42] [fix] problem with xmo and concept of cleaning actions bzr revid: nicolas.vanhoren@openerp.com-20110907130502-r8a3146hmq8oojvy --- addons/web/controllers/main.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/addons/web/controllers/main.py b/addons/web/controllers/main.py index 3a67a44f710..844eaf9dfea 100644 --- a/addons/web/controllers/main.py +++ b/addons/web/controllers/main.py @@ -451,8 +451,6 @@ def load_actions_from_ir_values(req, key, key2, models, meta): def clean_action(req, action): action.setdefault('flags', {}) - if action['type'] != 'ir.actions.act_window': - return action context = req.session.eval_context(req.context) eval_ctx = req.session.evaluation_context(context) @@ -464,7 +462,9 @@ def clean_action(req, action): if isinstance(action.get('domain'), basestring): action['domain'] = eval( action['domain'], eval_ctx ) or [] - return fix_view_modes(action) + if action['type'] == 'ir.actions.act_window': + return fix_view_modes(action) + return action # I think generate_views,fix_view_modes should go into js ActionManager def generate_views(action): From b4694f6a91efb1dbd93ed72bbb53cde52a85cc91 Mon Sep 17 00:00:00 2001 From: niv-openerp Date: Wed, 7 Sep 2011 15:23:20 +0200 Subject: [PATCH 25/42] [fix] (x-files mode on) problem with some reports that are not reports (x-files mode off) bzr revid: nicolas.vanhoren@openerp.com-20110907132320-uf2e5a6crjg04r84 --- addons/web/controllers/main.py | 7 +++++-- addons/web/static/src/js/views.js | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/addons/web/controllers/main.py b/addons/web/controllers/main.py index 844eaf9dfea..225e55c0591 100644 --- a/addons/web/controllers/main.py +++ b/addons/web/controllers/main.py @@ -1060,8 +1060,11 @@ class Action(openerpweb.Controller): context = req.session.eval_context(req.context) action_type = Actions.read([action_id], ['type'], context) if action_type: - action = req.session.model(action_type[0]['type']).read([action_id], False, - context) + ctx = {} + if action_type[0]['type'] == 'ir.actions.report.xml': + ctx.update({'bin_size': True}) + ctx.update(context) + action = req.session.model(action_type[0]['type']).read([action_id], False, ctx) if action: value = clean_action(req, action[0]) return {'result': value} diff --git a/addons/web/static/src/js/views.js b/addons/web/static/src/js/views.js index 2c616359f01..37738d3ec51 100644 --- a/addons/web/static/src/js/views.js +++ b/addons/web/static/src/js/views.js @@ -454,7 +454,7 @@ openerp.web.Sidebar = openerp.web.Widget.extend({ }; self.rpc("/web/action/load", { action_id: item.action.id, - context: _.extend({"bin_size": true}, additional_context) + context: additional_context }, function(result) { result.result.context = _.extend(result.result.context || {}, additional_context); From 51d0c0037b07d2f09437ba11eb494be451345848 Mon Sep 17 00:00:00 2001 From: niv-openerp Date: Wed, 7 Sep 2011 15:28:10 +0200 Subject: [PATCH 26/42] [imp] added warning when no item selected in reports bzr revid: nicolas.vanhoren@openerp.com-20110907132810-q0norgc0qrlvg3hs --- addons/web/static/src/js/views.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/addons/web/static/src/js/views.js b/addons/web/static/src/js/views.js index 37738d3ec51..d94c697a2ee 100644 --- a/addons/web/static/src/js/views.js +++ b/addons/web/static/src/js/views.js @@ -444,7 +444,10 @@ openerp.web.Sidebar = openerp.web.Widget.extend({ if (item.action) { var ids = self.widget_parent.get_selected_ids(); if (ids.length == 0) { - //TODO niv: maybe show a warning? + $("
").text(_t("You must choose at least one record.")).dialog({ + title: _t("Warning"), + modal: true + }); return false; } var additional_context = { From 41dd08123341392bb48897f861f6a3a09293dfc4 Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Wed, 7 Sep 2011 16:19:35 +0200 Subject: [PATCH 27/42] [IMP] move dispatch logger config to launcher script to avoid clobbering file-based or server-integrated logging config bzr revid: xmo@openerp.com-20110907141935-0tudrot0yc49ma4y --- addons/web/common/dispatch.py | 3 --- openerp-web.py | 3 +++ 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/addons/web/common/dispatch.py b/addons/web/common/dispatch.py index 571b5179a46..e4d88713409 100644 --- a/addons/web/common/dispatch.py +++ b/addons/web/common/dispatch.py @@ -27,9 +27,6 @@ __all__ = ['Root', 'jsonrequest', 'httprequest', 'Controller', 'WebRequest', 'JsonRequest', 'HttpRequest'] _logger = logging.getLogger(__name__) -if not _logger.handlers: - _logger.addHandler(logging.StreamHandler(sys.stdout)) - _logger.propagate = False #----------------------------------------------------------- # Globals (wont move into a pool) diff --git a/openerp-web.py b/openerp-web.py index 9153740b2a8..e58941448cd 100755 --- a/openerp-web.py +++ b/openerp-web.py @@ -47,6 +47,9 @@ if __name__ == "__main__": if not options.log_config: logging.basicConfig(level=getattr(logging, options.log_level.upper())) + dispatch = logging.getLogger('web.common.dispatch') + dispatch.addHandler(logging.StreamHandler(sys.stdout)) + dispatch.propagate = False else: logging.config.fileConfig(options.log_config) From 66e2cee0d55563ba8916990418e9cc12c36ac012 Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Wed, 7 Sep 2011 16:21:20 +0200 Subject: [PATCH 28/42] [IMP] logging string formatting bzr revid: xmo@openerp.com-20110907142120-2bq0k6xxwkenpuqh --- addons/web/common/dispatch.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/addons/web/common/dispatch.py b/addons/web/common/dispatch.py index e4d88713409..92808e7e475 100644 --- a/addons/web/common/dispatch.py +++ b/addons/web/common/dispatch.py @@ -161,7 +161,7 @@ class JsonRequest(WebRequest): else: self.jsonrequest = simplejson.loads(request, object_hook=nonliterals.non_literal_decoder) self.init(self.jsonrequest.get("params", {})) - _logger.debug("--> %s.%s %s" % (controller.__class__.__name__, method.__name__, self.jsonrequest)) + _logger.debug("--> %s.%s %s", controller.__class__.__name__, method.__name__, self.jsonrequest) response['id'] = self.jsonrequest.get('id') response["result"] = method(controller, self, **self.params) except backend.OpenERPUnboundException: @@ -198,7 +198,7 @@ class JsonRequest(WebRequest): if error: response["error"] = error - _logger.debug("<-- %s" % response) + _logger.debug("<-- %s", response) content = simplejson.dumps(response, cls=nonliterals.NonLiteralEncoder) return werkzeug.wrappers.Response( content, headers=[('Content-Type', 'application/json'), @@ -235,13 +235,13 @@ class HttpRequest(WebRequest): akw[key] = value else: akw[key] = type(value) - _logger.debug("%s --> %s.%s %r" % (self.httprequest.method, controller.__class__.__name__, method.__name__, akw)) + _logger.debug("%s --> %s.%s %r", self.httprequest.method, controller.__class__.__name__, method.__name__, akw) r = method(controller, self, **self.params) if self.debug or 1: if isinstance(r, werkzeug.wrappers.BaseResponse): - _logger.debug('<-- %s' % r) + _logger.debug('<-- %s', r) else: - _logger.debug("<-- size: %s" % len(r)) + _logger.debug("<-- size: %s", len(r)) return r def make_response(self, data, headers=None, cookies=None): From a2485c3c4c08e601b1dfa902da367a4c084557e4 Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Wed, 7 Sep 2011 16:22:27 +0200 Subject: [PATCH 29/42] [FIX] name of all logger to exist at the correct place in the loggers hierarchy bzr revid: xmo@openerp.com-20110907142227-601yrbrzhcv1vq38 --- addons/web/common/dispatch.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/web/common/dispatch.py b/addons/web/common/dispatch.py index 92808e7e475..a88c5b6289c 100644 --- a/addons/web/common/dispatch.py +++ b/addons/web/common/dispatch.py @@ -185,7 +185,7 @@ class JsonRequest(WebRequest): } } except Exception: - logging.getLogger('openerp.JSONRequest.dispatch').exception\ + logging.getLogger(__name__ + '.JSONRequest.dispatch').exception\ ("An error occured while handling a json request") error = { 'code': 300, From c4735c677090ff107d0af4200a4d7009f8023904 Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Wed, 7 Sep 2011 16:31:10 +0200 Subject: [PATCH 30/42] [ADD] autogenerated json-rpc2 ID, in a multithreaded server many requests may reach the server simultanously leading to logs which are a pain to decipher bzr revid: xmo@openerp.com-20110907143110-ujmkir821alxjxoo --- addons/web/static/src/js/core.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/web/static/src/js/core.js b/addons/web/static/src/js/core.js index ae2c4d0d657..da2afae3680 100644 --- a/addons/web/static/src/js/core.js +++ b/addons/web/static/src/js/core.js @@ -375,7 +375,7 @@ openerp.web.Session = openerp.web.CallbackEnabled.extend( /** @lends openerp.web jsonrpc: "2.0", method: "call", params: params, - id:null + id: _.uniqueId('browser-client-') }).then(function () {deferred.resolve.apply(deferred, arguments);}, function(error) {deferred.reject(error, $.Event());}); return deferred.fail(function() { From bc4485ef9632d26d9d9a162c96e1d26647169205 Mon Sep 17 00:00:00 2001 From: Fabien Meghazi Date: Wed, 7 Sep 2011 16:53:11 +0200 Subject: [PATCH 31/42] [ADD] Added FormDialog bzr revid: fme@openerp.com-20110907145311-0ry7eb2jryn3n2km --- addons/web/static/src/js/form.js | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/addons/web/static/src/js/form.js b/addons/web/static/src/js/form.js index 73695e93ea3..6042ebf7c66 100644 --- a/addons/web/static/src/js/form.js +++ b/addons/web/static/src/js/form.js @@ -456,6 +456,34 @@ openerp.web.FormView = openerp.web.View.extend( /** @lends openerp.web.FormView# return id ? [id] : []; } }); +openerp.web.FormDialog = openerp.web.Dialog.extend({ + init: function(parent, options, view_id, dataset) { + this._super(parent, options); + this.dataset = dataset; + this.view_id = view_id; + return this; + }, + start: function() { + this._super(); + this.form = new openerp.web.FormView(this, this.element_id, this.dataset, this.view_id, { + sidebar: false, + pager: false + }); + this.form.start(); + this.form.on_created.add_last(this.on_form_dialog_saved); + this.form.on_saved.add_last(this.on_form_dialog_saved); + return this; + }, + load_id: function(id) { + var self = this; + return this.dataset.read_ids([id], _.keys(this.form.fields_view.fields), function(records) { + self.form.on_record_loaded(records[0]); + }); + }, + on_form_dialog_saved: function() { + this.close(); + } +}); /** @namespace */ openerp.web.form = {}; From ffa4549555f6697e22fc72c2fa9efa8cdb340eb2 Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Wed, 7 Sep 2011 17:02:57 +0200 Subject: [PATCH 32/42] [IMP] cleanup toolbar actions bzr revid: xmo@openerp.com-20110907150257-ewan3jhboq0xe710 --- addons/web/controllers/main.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/addons/web/controllers/main.py b/addons/web/controllers/main.py index 225e55c0591..489445deb29 100644 --- a/addons/web/controllers/main.py +++ b/addons/web/controllers/main.py @@ -762,6 +762,8 @@ class View(openerpweb.Controller): fvg = Model.fields_view_get(view_id, view_type, context, toolbar, submenu) # todo fme?: check that we should pass the evaluated context here self.process_view(req.session, fvg, context, transform) + if toolbar and transform: + self.process_toolbar(req, fvg['toolbar']) return fvg def process_view(self, session, fvg, context, transform): @@ -793,6 +795,17 @@ class View(openerpweb.Controller): if field.get('context'): field["context"] = self.parse_context(field["context"], session) + def process_toolbar(self, req, toolbar): + """ + The toolbar is a mapping of section_key: [action_descriptor] + + We need to clean all those actions in order to ensure correct + round-tripping + """ + for section in toolbar.keys(): + toolbar[section] = [clean_action(req, action) + for action in toolbar[section]] + @openerpweb.jsonrequest def add_custom(self, req, view_id, arch): CustomView = req.session.model('ir.ui.view.custom') From 86b77c4cf389b5f9fa7f09bc4a130f51437a07bf Mon Sep 17 00:00:00 2001 From: Antony Lesuisse Date: Wed, 7 Sep 2011 17:41:05 +0200 Subject: [PATCH 33/42] [IMP] logging use default python logging output bzr revid: al@openerp.com-20110907154105-0p2qf3iz1s22pvch --- openerp-web.py | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/openerp-web.py b/openerp-web.py index e58941448cd..5617a0b8bdd 100755 --- a/openerp-web.py +++ b/openerp-web.py @@ -44,15 +44,12 @@ if __name__ == "__main__": (options, args) = optparser.parse_args(sys.argv[1:]) os.environ["TZ"] = "UTC" - + if not options.log_config: logging.basicConfig(level=getattr(logging, options.log_level.upper())) - dispatch = logging.getLogger('web.common.dispatch') - dispatch.addHandler(logging.StreamHandler(sys.stdout)) - dispatch.propagate = False else: logging.config.fileConfig(options.log_config) - + app = web.common.dispatch.Root(options) werkzeug.serving.run_simple( From 43a788378df5ad3ba4e9a481b9249771d2b1068c Mon Sep 17 00:00:00 2001 From: Antony Lesuisse Date: Wed, 7 Sep 2011 18:14:08 +0200 Subject: [PATCH 34/42] [IMP] logging debug use pprint bzr revid: al@openerp.com-20110907161408-0b4y5irl3c95mtn4 --- addons/web/common/dispatch.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/addons/web/common/dispatch.py b/addons/web/common/dispatch.py index a88c5b6289c..2375623532c 100644 --- a/addons/web/common/dispatch.py +++ b/addons/web/common/dispatch.py @@ -4,6 +4,7 @@ from __future__ import with_statement import functools import logging import os +import pprint import sys import traceback import uuid @@ -161,7 +162,8 @@ class JsonRequest(WebRequest): else: self.jsonrequest = simplejson.loads(request, object_hook=nonliterals.non_literal_decoder) self.init(self.jsonrequest.get("params", {})) - _logger.debug("--> %s.%s %s", controller.__class__.__name__, method.__name__, self.jsonrequest) + if _logger.isEnabledFor(logging.DEBUG): + _logger.debug("--> %s.%s\n%s", controller.__class__.__name__, method.__name__, pprint.pformat(self.jsonrequest)) response['id'] = self.jsonrequest.get('id') response["result"] = method(controller, self, **self.params) except backend.OpenERPUnboundException: @@ -198,7 +200,8 @@ class JsonRequest(WebRequest): if error: response["error"] = error - _logger.debug("<-- %s", response) + if _logger.isEnabledFor(logging.DEBUG): + _logger.debug("<--\n%s", pprint.pformat(response)) content = simplejson.dumps(response, cls=nonliterals.NonLiteralEncoder) return werkzeug.wrappers.Response( content, headers=[('Content-Type', 'application/json'), @@ -420,6 +423,6 @@ class Root(object): meth = rest[0] m = getattr(c, meth) if getattr(m, 'exposed', False): - _logger.debug("Dispatching to %s %s %s %s", ps, c, meth, m) + _logger.debug("Dispatching to %s %s %s", ps, c, meth) return m return None From 9b18066adcb6fa9a5a9847a2292d1fef4f1aa5a4 Mon Sep 17 00:00:00 2001 From: Fabien Meghazi Date: Wed, 7 Sep 2011 18:33:15 +0200 Subject: [PATCH 35/42] [FIX] Fixed FieldSelection problems with false values lp bug: https://launchpad.net/bugs/838924 fixed bzr revid: fme@openerp.com-20110907163315-b014e9pulr3nsqt4 --- addons/web/static/src/js/form.js | 25 +++++++++++++++---------- addons/web/static/src/xml/base.xml | 6 ++---- 2 files changed, 17 insertions(+), 14 deletions(-) diff --git a/addons/web/static/src/js/form.js b/addons/web/static/src/js/form.js index 6042ebf7c66..d4bf9d76573 100644 --- a/addons/web/static/src/js/form.js +++ b/addons/web/static/src/js/form.js @@ -1251,11 +1251,16 @@ openerp.web.form.FieldTextXml = openerp.web.form.Field.extend({ openerp.web.form.FieldSelection = openerp.web.form.Field.extend({ init: function(view, node) { + var self = this; this._super(view, node); this.template = "FieldSelection"; - this.field_index = _.map(this.field.selection, function(x, index) { - return {"ikey": "" + index, "ekey": x[0], "label": x[1]}; + this.values = this.field.selection; + _.each(this.values, function(v, i) { + if (v[0] === false && v[1] === '') { + self.values.splice(i, 1); + } }); + this.values.unshift([false, '']); }, start: function() { // Flag indicating whether we're in an event chain containing a change @@ -1285,13 +1290,14 @@ openerp.web.form.FieldSelection = openerp.web.form.Field.extend({ value = value === null ? false : value; value = value instanceof Array ? value[0] : value; this._super(value); - var option = _.detect(this.field_index, function(x) {return x.ekey === value;}); - this.$element.find('select').val(option === undefined ? '' : option.ikey); + var index = 0; + for (var i = 0, ii = this.values.length; i < ii; i++) { + if (this.values[i][0] === value) index = i; + } + this.$element.find('select')[0].selectedIndex = index; }, set_value_from_ui: function() { - var ikey = this.$element.find('select').val(); - var option = _.detect(this.field_index, function(x) {return x.ikey === ikey;}); - this.value = option === undefined ? false : option.ekey; + this.value = this.values[this.$element.find('select')[0].selectedIndex][0]; this._super(); }, update_dom: function() { @@ -1299,9 +1305,8 @@ openerp.web.form.FieldSelection = openerp.web.form.Field.extend({ this.$element.find('select').attr('disabled', this.readonly); }, validate: function() { - var ikey = this.$element.find('select').val(); - var option = _.detect(this.field_index, function(x) {return x.ikey === ikey;}); - this.invalid = this.required && (option === undefined || option.ekey === false); + var value = this.values[this.$element.find('select')[0].selectedIndex]; + this.invalid = !(value && !(this.required && value[0] === false)); }, focus: function() { this.$element.find('select').focus(); diff --git a/addons/web/static/src/xml/base.xml b/addons/web/static/src/xml/base.xml index 677488d9d7d..ae03c8789b6 100644 --- a/addons/web/static/src/xml/base.xml +++ b/addons/web/static/src/xml/base.xml @@ -799,10 +799,8 @@ t-att-id="widget.element_id + '_field'" t-att-class="'field_' + widget.type" style="width: 100%"> - - + + From 08a456b3691395d1e4bdf7689fd26f69b65b1231 Mon Sep 17 00:00:00 2001 From: Antony Lesuisse Date: Wed, 7 Sep 2011 19:41:09 +0200 Subject: [PATCH 36/42] [FIX] debug by default until we fix css merging bzr revid: al@openerp.com-20110907174109-xgh3c4efdftpyujt --- addons/web/common/dispatch.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/web/common/dispatch.py b/addons/web/common/dispatch.py index 2375623532c..0829f360806 100644 --- a/addons/web/common/dispatch.py +++ b/addons/web/common/dispatch.py @@ -316,7 +316,7 @@ class Root(object): by the server, will be filtered by this pattern """ def __init__(self, options): - self.root = werkzeug.urls.Href('/web/webclient/home') + self.root = werkzeug.urls.Href('/web/webclient/home?debug') self.config = options self.session_cookie = 'sessionid' From 01e70a7a8e71c78ace8e2889c761bedba5c8a915 Mon Sep 17 00:00:00 2001 From: Fabien Meghazi Date: Wed, 7 Sep 2011 21:20:52 +0200 Subject: [PATCH 37/42] [FIX] Editable list gets wrong fields view get object due to previous refactoring lp bug: https://launchpad.net/bugs/843841 fixed bzr revid: fme@openerp.com-20110907192052-0bx7viwvee2r4i2d --- addons/web/static/src/js/list-editable.js | 2 +- addons/web_kanban/static/src/js/kanban.js | 58 +++++++++++------------ 2 files changed, 29 insertions(+), 31 deletions(-) diff --git a/addons/web/static/src/js/list-editable.js b/addons/web/static/src/js/list-editable.js index 614c6fa42ef..ab78e5e0139 100644 --- a/addons/web/static/src/js/list-editable.js +++ b/addons/web/static/src/js/list-editable.js @@ -183,7 +183,7 @@ openerp.web.list_editable = function (openerp) { template: 'ListView.row.form', registry: openerp.web.list.form.widgets }); - $.when(self.edition_form.on_loaded({fields_view: self.get_form_fields_view()})).then(function () { + $.when(self.edition_form.on_loaded(self.get_form_fields_view())).then(function () { // put in $.when just in case FormView.on_loaded becomes asynchronous $new_row.find('td') .addClass('oe-field-cell') diff --git a/addons/web_kanban/static/src/js/kanban.js b/addons/web_kanban/static/src/js/kanban.js index dd101f44346..d6aff04e471 100644 --- a/addons/web_kanban/static/src/js/kanban.js +++ b/addons/web_kanban/static/src/js/kanban.js @@ -18,6 +18,9 @@ openerp.web_kanban.KanbanView = openerp.web.View.extend({ this.all_display_data = false; this.groups = []; this.qweb = new QWeb2.Engine(); + if (this.options.action_views_ids.form) { + this.form_dialog = new openerp.web.FormDialog(this, {}, this.options.action_views_ids.form, dataset).start(); + } }, start: function() { return this.rpc("/web/view/load", {"model": this.model, "view_id": this.view_id, "view_type": "kanban"}, this.on_loaded); @@ -157,25 +160,20 @@ openerp.web_kanban.KanbanView = openerp.web.View.extend({ } }, on_confirm_click: function (dataset, button_attrs, index, record_id) { - if (button_attrs.type == 'edit') { - this.do_edit_record(dataset, index); + this.on_execute_button_click(dataset, button_attrs, record_id); + }, + do_add_record: function() { + this.dataset.index = null; + this.do_switch_view('form'); + }, + do_edit_record: function(record_id) { + if (this.form_dialog) { + this.form_dialog.load_id(record_id); + this.form_dialog.open(); } else { - this.on_execute_button_click(dataset, button_attrs, record_id); + this.notification.warn("Kanban", "No form view defined for this object"); } }, - do_add_record: function () { - this.do_edit_record(this.dataset, null); - }, - do_edit_record: function (dataset, index) { - var self = this; - _.extend(this.dataset, { - domain: dataset.domain, - context: dataset.get_context() - }).read_slice([], {}, function () { - self.dataset.index = index; - self.do_switch_view('form'); - }); - }, do_delete: function (id) { var self = this; return $.when(this.dataset.unlink([id])).then(function () { @@ -311,24 +309,24 @@ openerp.web_kanban.KanbanView = openerp.web.View.extend({ self.all_display_data.splice(index, 1); } }); - this.$element.find('.oe_kanban_action').click(function() { - var record_id = $(this).closest(".oe_kanban_record").attr("id"); - if (record_id) { - record_id = parseInt(record_id.split("_")[1]) - if (record_id) { - if ($(this).data("type") == "delete") { - self.do_delete(record_id); - } else { - var button_attrs = $(this).data() - self.on_button_click(button_attrs, record_id); - } - } - } - }); + this.$element.find('.oe_kanban_action').click(this.on_action_clicked); this.$element.find('.oe_kanban_record').click(function() { $(this).find('.oe_kanban_box_show_onclick').removeClass('oe_kanban_box_show_onclick'); }); }, + on_action_clicked: function(evt) { + var $action = $(evt.currentTarget), + record_id = parseInt($action.closest(".oe_kanban_record").attr("id").split('_')[1]), + type = $action.data('type'); + if (type == 'delete') { + this.do_delete(record_id); + } else if (type == 'edit') { + this.do_edit_record(record_id); + } else { + var button_attrs = $(this).data(); + this.on_button_click(button_attrs, record_id); + } + }, do_transform_record: function(record) { var self = this, new_record = {}; From e8e6a91431c46eca2b08226164a37127f0e5f79c Mon Sep 17 00:00:00 2001 From: Olivier Dony Date: Wed, 7 Sep 2011 22:55:18 +0200 Subject: [PATCH 38/42] [IMP] document: (usability) improved wording of virtual folder wizard screen bzr revid: odo@openerp.com-20110907205518-we9s9ws5dphrcs7b --- addons/document/wizard/document_configuration.py | 8 ++++---- addons/document/wizard/document_configuration_view.xml | 6 +++--- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/addons/document/wizard/document_configuration.py b/addons/document/wizard/document_configuration.py index 40dc2b3afd8..3485e7412c7 100644 --- a/addons/document/wizard/document_configuration.py +++ b/addons/document/wizard/document_configuration.py @@ -28,9 +28,9 @@ class document_configuration(osv.osv_memory): _inherit = 'res.config' _columns = { - 'sale_order' : fields.boolean('Sale Order', help="Auto directory configuration for Sale Orders and Quotation with report."), - 'product' : fields.boolean('Product', help="Auto directory configuration for Products."), - 'project': fields.boolean('Project', help="Auto directory configuration for Projects."), + 'sale_order' : fields.boolean('Sale Orders', help="Create virtual folders for Sale Orders and Quotations. One virtual folder will appear for each, in which the latest printed PDF document can be downloaded at any time, and where you can manage (view, add, delete) other attachments."), + 'product' : fields.boolean('Products', help="Create virtual folders for Products. One virtual folder will appear for each product, where you can manage (view, add, delete) the files attached to the product"), + 'project': fields.boolean('Projects', help="Create virtual folders for Projects. One virtual folder will appear for each project, where you can manage (view, add, delete) the files attached to the project"), } @@ -81,7 +81,7 @@ class document_configuration(osv.osv_memory): }) content_pool.create(cr, uid, { - 'name': "Print Qutation", + 'name': "Print Quotation", 'suffix': "_print", 'report_id': order_report_id, 'extension': '.pdf', diff --git a/addons/document/wizard/document_configuration_view.xml b/addons/document/wizard/document_configuration_view.xml index f6c3131b3a0..eaba3b7115e 100644 --- a/addons/document/wizard/document_configuration_view.xml +++ b/addons/document/wizard/document_configuration_view.xml @@ -11,10 +11,10 @@ Knowledge Application Configuration - Configure Resource Directory + Virtual Document Folders - Choose the following Resouces to auto directory configuration. + OpenERP's Document Management System supports mapping virtual folders with documents. The virtual folder of a document can be used to manage the files attached to the document, or to print and download any document report. A few common virtual folders can be created for you automatically from this screen. 12 @@ -33,7 +33,7 @@ - Auto Configure Directory + Document Management System: Configure Virtual Folders ir.actions.act_window document.configuration From a0a1ea0cfaeb107be1e2f041c33148d8c6133331 Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Thu, 8 Sep 2011 09:03:09 +0200 Subject: [PATCH 39/42] [FIX] cleanup of toolbar actions during fields_view_get bzr revid: xmo@openerp.com-20110908070309-bbwmqxmwmmj06srj --- addons/web/controllers/main.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/addons/web/controllers/main.py b/addons/web/controllers/main.py index 489445deb29..e302f721fc7 100644 --- a/addons/web/controllers/main.py +++ b/addons/web/controllers/main.py @@ -802,9 +802,14 @@ class View(openerpweb.Controller): We need to clean all those actions in order to ensure correct round-tripping """ - for section in toolbar.keys(): - toolbar[section] = [clean_action(req, action) - for action in toolbar[section]] + for actions in toolbar.itervalues(): + for action in actions: + if 'context' in action: + action['context'] = self.parse_context( + action['context'], req.session) + if 'domain' in action: + action['domain'] = self.parse_domain( + action['domain'], req.session) @openerpweb.jsonrequest def add_custom(self, req, view_id, arch): From e13a97446a56aeb8745ff1563edbc0b7f73f9c70 Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Thu, 8 Sep 2011 09:14:15 +0200 Subject: [PATCH 40/42] [FIX] reports: report_type may be missing from the action descriptor, don't rely on it being there bzr revid: xmo@openerp.com-20110908071415-9gdyvkpwq7i7fxob --- addons/web/controllers/main.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/addons/web/controllers/main.py b/addons/web/controllers/main.py index e302f721fc7..647c6155018 100644 --- a/addons/web/controllers/main.py +++ b/addons/web/controllers/main.py @@ -1362,13 +1362,15 @@ class Reports(View): context = req.session.eval_context( openerpweb.nonliterals.CompoundContext( req.context or {}, action[ "context"])) + + report_data = {"id": context["active_id"], "model": context["active_model"]} + if 'report_type' in action: + report_data['report_type'] = action['report_type'] report_id = report_srv.report( req.session._db, req.session._uid, req.session._password, action["report_name"], context["active_ids"], - {"id": context["active_id"], - "model": context["active_model"], - "report_type": action["report_type"]}, - context) + report_data, context) + report_struct = None while True: report_struct = report_srv.report_get( @@ -1384,7 +1386,7 @@ class Reports(View): report_struct['format'], 'octet-stream') return req.make_response(report, headers=[ - ('Content-Disposition', 'attachment; filename="%s.%s"' % (action['report_name'], action['report_type'])), + ('Content-Disposition', 'attachment; filename="%s.%s"' % (action['report_name'], report_struct['format'])), ('Content-Type', report_mimetype), ('Content-Length', len(report))], cookies={'fileToken': int(token)}) From 5b223f59610d598ff21de86f6e36ddaf956b47fc Mon Sep 17 00:00:00 2001 From: Fabien Meghazi Date: Thu, 8 Sep 2011 10:29:59 +0200 Subject: [PATCH 41/42] [REM] Remove useless colspan="1" on labels in order to be compatible with web client's heuristic for label vs paragraph detection bzr revid: fme@openerp.com-20110908082959-vb2pcrsuuz43vxqi --- addons/sale/sale_view.xml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/addons/sale/sale_view.xml b/addons/sale/sale_view.xml index 86835320d40..cb96ef279c5 100644 --- a/addons/sale/sale_view.xml +++ b/addons/sale/sale_view.xml @@ -493,13 +493,13 @@ - @@ -507,15 +507,15 @@ - - - From bba27daf04ff27b1f3c71e0dee7c73375efc11a4 Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Thu, 8 Sep 2011 12:14:06 +0200 Subject: [PATCH 42/42] [FIX] don't display non-searchable (non-stored without a fnct_search) function fields lp bug: https://launchpad.net/bugs/823049 fixed bzr revid: xmo@openerp.com-20110908101406-f6r8bgt155nq65in --- addons/web/static/src/xml/base.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/addons/web/static/src/xml/base.xml b/addons/web/static/src/xml/base.xml index ae03c8789b6..5ac1929fce3 100644 --- a/addons/web/static/src/xml/base.xml +++ b/addons/web/static/src/xml/base.xml @@ -1111,7 +1111,8 @@