From 2c08dc0ba610db61fe349d1602c12528ca8fc715 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=A9ry=20Debongnie?= Date: Fri, 19 Dec 2014 13:38:37 +0100 Subject: [PATCH 1/9] [IMP] web: new pivot view, full rewrite of graph view This commit is a split of the former graphview into a pivot view (the tabular view) and graph view (the various charts). The code was fully rewritten. * pivot view should be faster (better underlying data structure and better algorithm) * better integration with the web client (use of sidebar, of menu buttons, bettor style) * new feature: pivot view can be sorted * new feature: pivot view cells can be clicked to open a list view with the corresponding domain * web_graph addon was removed, and the graph view code has been moved to the addon web. * the interaction with the searchbar was changed (no more column facet) * better and simpler code for graph view * mary corner cases in graph charts have been corrected (for ex, pie chart with positive and negative numbers) * graph/pivot correctly save their state when added to dashboard/saved (state such as current measure, chart mode, column groupbys, ...) --- addons/web/controllers/__init__.py | 2 +- addons/web/controllers/main.py | 4 - .../main.py => web/controllers/pivot.py} | 8 +- .../static/lib/nvd3/d3.v3.js | 0 .../src/css => web/static/lib/nvd3}/nv.d3.css | 0 .../static/lib/nvd3/nv.d3.js | 477 +++++----- addons/web/static/src/css/base.css | 106 ++- addons/web/static/src/css/base.sass | 101 +- addons/web/static/src/js/search.js | 143 +-- addons/web/static/src/js/view_graph.js | 446 +++++++++ addons/web/static/src/js/view_pivot.js | 733 ++++++++++++++- addons/web/static/src/js/views.js | 10 +- addons/web/static/src/xml/base.xml | 72 +- addons/web/views/webclient_templates.xml | 5 + addons/web_graph/__init__.py | 1 - addons/web_graph/__openerp__.py | 24 - addons/web_graph/controllers/__init__.py | 1 - addons/web_graph/doc/index.rst | 183 ---- addons/web_graph/i18n/ar.po | 195 ---- addons/web_graph/i18n/bg.po | 195 ---- addons/web_graph/i18n/bn.po | 195 ---- addons/web_graph/i18n/bs.po | 195 ---- addons/web_graph/i18n/ca.po | 195 ---- addons/web_graph/i18n/cs.po | 195 ---- addons/web_graph/i18n/da.po | 195 ---- addons/web_graph/i18n/de.po | 199 ---- addons/web_graph/i18n/el.po | 195 ---- addons/web_graph/i18n/en_AU.po | 195 ---- addons/web_graph/i18n/en_GB.po | 198 ---- addons/web_graph/i18n/es.po | 200 ---- addons/web_graph/i18n/es_AR.po | 195 ---- addons/web_graph/i18n/es_CL.po | 195 ---- addons/web_graph/i18n/es_CR.po | 195 ---- addons/web_graph/i18n/es_DO.po | 195 ---- addons/web_graph/i18n/es_EC.po | 195 ---- addons/web_graph/i18n/es_MX.po | 195 ---- addons/web_graph/i18n/et.po | 195 ---- addons/web_graph/i18n/fa.po | 195 ---- addons/web_graph/i18n/fi.po | 195 ---- addons/web_graph/i18n/fr.po | 195 ---- addons/web_graph/i18n/fr_CA.po | 195 ---- addons/web_graph/i18n/gl.po | 195 ---- addons/web_graph/i18n/gu.po | 195 ---- addons/web_graph/i18n/he.po | 195 ---- addons/web_graph/i18n/hr.po | 195 ---- addons/web_graph/i18n/hu.po | 199 ---- addons/web_graph/i18n/it.po | 195 ---- addons/web_graph/i18n/ja.po | 195 ---- addons/web_graph/i18n/ka.po | 195 ---- addons/web_graph/i18n/ko.po | 195 ---- addons/web_graph/i18n/lt.po | 195 ---- addons/web_graph/i18n/mk.po | 195 ---- addons/web_graph/i18n/mn.po | 195 ---- addons/web_graph/i18n/nb.po | 195 ---- addons/web_graph/i18n/nl.po | 199 ---- addons/web_graph/i18n/nl_BE.po | 195 ---- addons/web_graph/i18n/pl.po | 195 ---- addons/web_graph/i18n/pt.po | 200 ---- addons/web_graph/i18n/pt_BR.po | 199 ---- addons/web_graph/i18n/ro.po | 198 ---- addons/web_graph/i18n/ru.po | 195 ---- addons/web_graph/i18n/sl.po | 195 ---- addons/web_graph/i18n/sq.po | 195 ---- addons/web_graph/i18n/sr@latin.po | 195 ---- addons/web_graph/i18n/sv.po | 195 ---- addons/web_graph/i18n/th.po | 195 ---- addons/web_graph/i18n/tr.po | 199 ---- addons/web_graph/i18n/web_graph.pot | 192 ---- addons/web_graph/i18n/zh_CN.po | 195 ---- addons/web_graph/static/src/css/graph.css | 165 ---- addons/web_graph/static/src/js/graph_view.js | 297 ------ .../web_graph/static/src/js/graph_widget.js | 875 ------------------ addons/web_graph/static/src/js/pivot_table.js | 468 ---------- addons/web_graph/static/src/xml/web_graph.xml | 65 -- addons/web_graph/views/web_graph.xml | 19 - openerp/addons/base/ir/ir_actions.py | 1 + openerp/addons/base/rng/view.rng | 6 + openerp/models.py | 4 + 78 files changed, 1805 insertions(+), 12389 deletions(-) rename addons/{web_graph/controllers/main.py => web/controllers/pivot.py} (93%) rename addons/{web_graph => web}/static/lib/nvd3/d3.v3.js (100%) mode change 100644 => 100755 rename addons/{web_graph/static/src/css => web/static/lib/nvd3}/nv.d3.css (100%) mode change 100644 => 100755 rename addons/{web_graph => web}/static/lib/nvd3/nv.d3.js (97%) mode change 100644 => 100755 create mode 100644 addons/web/static/src/js/view_graph.js delete mode 100644 addons/web_graph/__init__.py delete mode 100644 addons/web_graph/__openerp__.py delete mode 100644 addons/web_graph/controllers/__init__.py delete mode 100644 addons/web_graph/doc/index.rst delete mode 100644 addons/web_graph/i18n/ar.po delete mode 100644 addons/web_graph/i18n/bg.po delete mode 100644 addons/web_graph/i18n/bn.po delete mode 100644 addons/web_graph/i18n/bs.po delete mode 100644 addons/web_graph/i18n/ca.po delete mode 100644 addons/web_graph/i18n/cs.po delete mode 100644 addons/web_graph/i18n/da.po delete mode 100644 addons/web_graph/i18n/de.po delete mode 100644 addons/web_graph/i18n/el.po delete mode 100644 addons/web_graph/i18n/en_AU.po delete mode 100644 addons/web_graph/i18n/en_GB.po delete mode 100644 addons/web_graph/i18n/es.po delete mode 100644 addons/web_graph/i18n/es_AR.po delete mode 100644 addons/web_graph/i18n/es_CL.po delete mode 100644 addons/web_graph/i18n/es_CR.po delete mode 100644 addons/web_graph/i18n/es_DO.po delete mode 100644 addons/web_graph/i18n/es_EC.po delete mode 100644 addons/web_graph/i18n/es_MX.po delete mode 100644 addons/web_graph/i18n/et.po delete mode 100644 addons/web_graph/i18n/fa.po delete mode 100644 addons/web_graph/i18n/fi.po delete mode 100644 addons/web_graph/i18n/fr.po delete mode 100644 addons/web_graph/i18n/fr_CA.po delete mode 100644 addons/web_graph/i18n/gl.po delete mode 100644 addons/web_graph/i18n/gu.po delete mode 100644 addons/web_graph/i18n/he.po delete mode 100644 addons/web_graph/i18n/hr.po delete mode 100644 addons/web_graph/i18n/hu.po delete mode 100644 addons/web_graph/i18n/it.po delete mode 100644 addons/web_graph/i18n/ja.po delete mode 100644 addons/web_graph/i18n/ka.po delete mode 100644 addons/web_graph/i18n/ko.po delete mode 100644 addons/web_graph/i18n/lt.po delete mode 100644 addons/web_graph/i18n/mk.po delete mode 100644 addons/web_graph/i18n/mn.po delete mode 100644 addons/web_graph/i18n/nb.po delete mode 100644 addons/web_graph/i18n/nl.po delete mode 100644 addons/web_graph/i18n/nl_BE.po delete mode 100644 addons/web_graph/i18n/pl.po delete mode 100644 addons/web_graph/i18n/pt.po delete mode 100644 addons/web_graph/i18n/pt_BR.po delete mode 100644 addons/web_graph/i18n/ro.po delete mode 100644 addons/web_graph/i18n/ru.po delete mode 100644 addons/web_graph/i18n/sl.po delete mode 100644 addons/web_graph/i18n/sq.po delete mode 100644 addons/web_graph/i18n/sr@latin.po delete mode 100644 addons/web_graph/i18n/sv.po delete mode 100644 addons/web_graph/i18n/th.po delete mode 100644 addons/web_graph/i18n/tr.po delete mode 100644 addons/web_graph/i18n/web_graph.pot delete mode 100644 addons/web_graph/i18n/zh_CN.po delete mode 100644 addons/web_graph/static/src/css/graph.css delete mode 100644 addons/web_graph/static/src/js/graph_view.js delete mode 100644 addons/web_graph/static/src/js/graph_widget.js delete mode 100644 addons/web_graph/static/src/js/pivot_table.js delete mode 100644 addons/web_graph/static/src/xml/web_graph.xml delete mode 100644 addons/web_graph/views/web_graph.xml diff --git a/addons/web/controllers/__init__.py b/addons/web/controllers/__init__.py index 12a7e529b67..36199bde25b 100644 --- a/addons/web/controllers/__init__.py +++ b/addons/web/controllers/__init__.py @@ -1 +1 @@ -from . import main +from . import main, pivot diff --git a/addons/web/controllers/main.py b/addons/web/controllers/main.py index 75d40bcf8e0..f29623d8957 100644 --- a/addons/web/controllers/main.py +++ b/addons/web/controllers/main.py @@ -1638,7 +1638,3 @@ class Apps(http.Controller): sakey = Session().save_session_action(action) debug = '?debug' if req.debug else '' return werkzeug.utils.redirect('/web{0}#sa={1}'.format(debug, sakey)) - - - -# vim:expandtab:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/web_graph/controllers/main.py b/addons/web/controllers/pivot.py similarity index 93% rename from addons/web_graph/controllers/main.py rename to addons/web/controllers/pivot.py index 0899fc7271f..3ec3dbd91be 100644 --- a/addons/web_graph/controllers/main.py +++ b/addons/web/controllers/pivot.py @@ -11,12 +11,12 @@ except ImportError: class TableExporter(http.Controller): - @http.route('/web_graph/check_xlwt', type='json', auth='none') + @http.route('/web/pivot/check_xlwt', type='json', auth='none') def check_xlwt(self): return xlwt is not None - @http.route('/web_graph/export_xls', type='http', auth="user") + @http.route('/web/pivot/export_xls', type='http', auth="user") def export_xls(self, data, token): jdata = simplejson.loads(data) nbr_measures = jdata['nbr_measures'] @@ -63,7 +63,7 @@ class TableExporter(http.Controller): worksheet.write(y,0, '', header_plain) for measure in jdata['measure_row']: style = header_bold if measure['is_bold'] else header_plain - worksheet.write(y, x, measure['text'], style); + worksheet.write(y, x, measure['measure'], style); x = x + 1 y = y + 1 @@ -71,7 +71,7 @@ class TableExporter(http.Controller): x = 0 for row in jdata['rows']: worksheet.write(y, x, row['indent'] * ' ' + row['title'], header_plain) - for cell in row['cells']: + for cell in row['values']: x = x + 1 if cell.get('is_bold', False): worksheet.write(y, x, cell['value'], bold) diff --git a/addons/web_graph/static/lib/nvd3/d3.v3.js b/addons/web/static/lib/nvd3/d3.v3.js old mode 100644 new mode 100755 similarity index 100% rename from addons/web_graph/static/lib/nvd3/d3.v3.js rename to addons/web/static/lib/nvd3/d3.v3.js diff --git a/addons/web_graph/static/src/css/nv.d3.css b/addons/web/static/lib/nvd3/nv.d3.css old mode 100644 new mode 100755 similarity index 100% rename from addons/web_graph/static/src/css/nv.d3.css rename to addons/web/static/lib/nvd3/nv.d3.css diff --git a/addons/web_graph/static/lib/nvd3/nv.d3.js b/addons/web/static/lib/nvd3/nv.d3.js old mode 100644 new mode 100755 similarity index 97% rename from addons/web_graph/static/lib/nvd3/nv.d3.js rename to addons/web/static/lib/nvd3/nv.d3.js index 4534016f9b3..1aaff86c786 --- a/addons/web_graph/static/lib/nvd3/nv.d3.js +++ b/addons/web/static/lib/nvd3/nv.d3.js @@ -3,7 +3,7 @@ var nv = window.nv || {}; -nv.version = '1.1.14b'; +nv.version = '1.1.15b'; nv.dev = true //set false when in production window.nv = nv; @@ -68,7 +68,10 @@ nv.render = function render(step) { nv.render.queue.splice(0, i); if (nv.render.queue.length) setTimeout(arguments.callee, 0); - else { nv.render.active = false; nv.dispatch.render_end(); } + else { + nv.dispatch.render_end(); + nv.render.active = false; + } }, 0); }; @@ -968,15 +971,16 @@ nv.utils.pjax = function(links, content) { } /* For situations where we want to approximate the width in pixels for an SVG:text element. -Most common instance is when the element is in a display:none; container. +Most common instance is when the element is in a display:none; container. Forumla is : text.length * font-size * constant_factor */ nv.utils.calcApproxTextWidth = function (svgTextElem) { - if (svgTextElem instanceof d3.selection) { + if (typeof svgTextElem.style === 'function' + && typeof svgTextElem.text === 'function') { var fontSize = parseInt(svgTextElem.style("font-size").replace("px","")); var textLength = svgTextElem.text().length; - return textLength * fontSize * 0.5; + return textLength * fontSize * 0.5; } return 0; }; @@ -984,8 +988,8 @@ nv.utils.calcApproxTextWidth = function (svgTextElem) { /* Numbers that are undefined, null or NaN, convert them to zeros. */ nv.utils.NaNtoZero = function(n) { - if (typeof n !== 'number' - || isNaN(n) + if (typeof n !== 'number' + || isNaN(n) || n === null || n === Infinity) return 0; @@ -1109,7 +1113,7 @@ nv.utils.optionsFunc = function(args) { return 'translate(' + scale(d) + ',0)' }) .select('text') - .attr('dy', '0em') + .attr('dy', '-0.5em') .attr('y', -axis.tickPadding()) .attr('text-anchor', 'middle') .text(function(d,i) { @@ -1267,7 +1271,7 @@ nv.utils.optionsFunc = function(args) { if (scale(d) < scale.range()[1] + 10 || scale(d) > scale.range()[0] - 10) { // 10 is assuming text height is 16... if d is 0, leave it! if (d > 1e-10 || d < -1e-10) // accounts for minor floating point errors... though could be problematic if the scale is EXTREMELY SMALL d3.select(this).attr('opacity', 0); - + d3.select(this).select('text').attr('opacity', 0); // Don't remove the ZERO line!! } }); @@ -1333,7 +1337,7 @@ nv.utils.optionsFunc = function(args) { d3.rebind(chart, scale, 'domain', 'range', 'rangeBand', 'rangeBands'); //these are also accessible by chart.scale(), but added common ones directly for ease of use chart.options = nv.utils.optionsFunc.bind(chart); - + chart.margin = function(_) { if(!arguments.length) return margin; margin.top = typeof _.top != 'undefined' ? _.top : margin.top; @@ -2516,6 +2520,7 @@ nv.models.cumulativeLineChart = function() { , average = function(d) { return d.average } , dispatch = d3.dispatch('tooltipShow', 'tooltipHide', 'stateChange', 'changeState') , transitionDuration = 250 + , noErrorCheck = false //if set to TRUE, will bypass an error check in the indexify function. ; xAxis @@ -2547,36 +2552,8 @@ nv.models.cumulativeLineChart = function() { nv.tooltip.show([left, top], content, null, null, offsetElement); }; -/* - //Moved to see if we can get better behavior to fix issue #315 - var indexDrag = d3.behavior.drag() - .on('dragstart', dragStart) - .on('drag', dragMove) - .on('dragend', dragEnd); - - function dragStart(d,i) { - d3.select(chart.container) - .style('cursor', 'ew-resize'); - } - - function dragMove(d,i) { - d.x += d3.event.dx; - d.i = Math.round(dx.invert(d.x)); - - d3.select(this).attr('transform', 'translate(' + dx(d.i) + ',0)'); - chart.update(); - } - - function dragEnd(d,i) { - d3.select(chart.container) - .style('cursor', 'auto'); - chart.update(); - } -*/ - //============================================================ - function chart(selection) { selection.each(function(data) { var container = d3.select(this).classed('nv-chart-' + id, true), @@ -2713,7 +2690,7 @@ nv.models.cumulativeLineChart = function() { gEnter.append('g').attr('class', 'nv-avgLinesWrap').style("pointer-events","none"); gEnter.append('g').attr('class', 'nv-legendWrap'); gEnter.append('g').attr('class', 'nv-controlsWrap'); - + //------------------------------------------------------------ // Legend @@ -2746,7 +2723,13 @@ nv.models.cumulativeLineChart = function() { { key: 'Re-scale y-axis', disabled: !rescaleY } ]; - controls.width(140).color(['#444', '#444', '#444']); + controls + .width(140) + .color(['#444', '#444', '#444']) + .rightAlign(false) + .margin({top: 5, right: 0, bottom: 5, left: 20}) + ; + g.select('.nv-controlsWrap') .datum(controlsData) .attr('transform', 'translate(0,' + (-margin.top) +')') @@ -2777,7 +2760,7 @@ nv.models.cumulativeLineChart = function() { //------------------------------------------------------------ // Main Chart Component(s) - + //------------------------------------------------------------ //Set up interactive layer if (useInteractiveGuideline) { @@ -2918,7 +2901,7 @@ nv.models.cumulativeLineChart = function() { function updateZero() { indexLine .data([index]); - + //When dragging the index line, turn off line transitions. // Then turn them back on when done dragging. var oldDuration = chart.transitionDuration(); @@ -2950,7 +2933,7 @@ nv.models.cumulativeLineChart = function() { updateZero(); }); - controls.dispatch.on('legendClick', function(d,i) { + controls.dispatch.on('legendClick', function(d,i) { d.disabled = !d.disabled; rescaleY = !d.disabled; @@ -2961,7 +2944,7 @@ nv.models.cumulativeLineChart = function() { legend.dispatch.on('stateChange', function(newState) { - state.disabled = newState.disabled; + state.disabled = newState.disabled; dispatch.stateChange(state); chart.update(); }); @@ -2969,12 +2952,12 @@ nv.models.cumulativeLineChart = function() { interactiveLayer.dispatch.on('elementMousemove', function(e) { lines.clearHighlights(); var singlePoint, pointIndex, pointXLocation, allData = []; - - + + data - .filter(function(series, i) { + .filter(function(series, i) { series.seriesIndex = i; - return !series.disabled; + return !series.disabled; }) .forEach(function(series,i) { pointIndex = nv.interactiveBisect(series.values, e.pointXValue, chart.x()); @@ -3102,7 +3085,7 @@ nv.models.cumulativeLineChart = function() { d3.rebind(chart, lines, 'defined', 'isArea', 'x', 'y', 'xScale','yScale', 'size', 'xDomain', 'yDomain', 'xRange', 'yRange', 'forceX', 'forceY', 'interactive', 'clipEdge', 'clipVoronoi','useVoronoi', 'id'); chart.options = nv.utils.optionsFunc.bind(chart); - + chart.margin = function(_) { if (!arguments.length) return margin; margin.top = typeof _.top != 'undefined' ? _.top : margin.top; @@ -3220,6 +3203,12 @@ nv.models.cumulativeLineChart = function() { return chart; }; + chart.noErrorCheck = function(_) { + if (!arguments.length) return noErrorCheck; + noErrorCheck = _; + return chart; + }; + //============================================================ @@ -3233,11 +3222,16 @@ nv.models.cumulativeLineChart = function() { if (!line.values) { return line; } - var v = lines.y()(line.values[idx], idx); + var indexValue = line.values[idx]; + if (indexValue == null) { + return line; + } + var v = lines.y()(indexValue, idx); //TODO: implement check below, and disable series if series loses 100% or more cause divide by 0 issue - if (v < -.95) { + if (v < -.95 && !noErrorCheck) { //if a series loses more than 100%, calculations fail.. anything close can cause major distortion (but is mathematically correct till it hits 100) + line.tempDisabled = true; return line; } @@ -3730,7 +3724,10 @@ nv.models.discreteBarChart = function() { var g = wrap.select('g'); gEnter.append('g').attr('class', 'nv-x nv-axis'); - gEnter.append('g').attr('class', 'nv-y nv-axis'); + gEnter.append('g').attr('class', 'nv-y nv-axis') + .append('g').attr('class', 'nv-zeroLine') + .append('line'); + gEnter.append('g').attr('class', 'nv-barsWrap'); g.attr('transform', 'translate(' + margin.left + ',' + margin.top + ')'); @@ -3805,6 +3802,14 @@ nv.models.discreteBarChart = function() { .call(yAxis); } + // Zero line + g.select(".nv-zeroLine line") + .attr("x1",0) + .attr("x2",availableWidth) + .attr("y1", y(0)) + .attr("y2", y(0)) + ; + //------------------------------------------------------------ @@ -4322,7 +4327,7 @@ nv.models.historicalBarChart = function() { // Event Handling/Dispatching (in chart's scope) //------------------------------------------------------------ - legend.dispatch.on('legendClick', function(d,i) { + legend.dispatch.on('legendClick', function(d,i) { d.disabled = !d.disabled; if (!data.filter(function(d) { return !d.disabled }).length) { @@ -4344,7 +4349,7 @@ nv.models.historicalBarChart = function() { data.forEach(function(d) { d.disabled = true; }); - d.disabled = false; + d.disabled = false; state.disabled = data.map(function(d) { return !!d.disabled }); dispatch.stateChange(state); @@ -4366,7 +4371,7 @@ nv.models.historicalBarChart = function() { state.disabled = e.disabled; } - selection.call(chart); + chart.update(); }); //============================================================ @@ -4408,11 +4413,11 @@ nv.models.historicalBarChart = function() { chart.xAxis = xAxis; chart.yAxis = yAxis; - d3.rebind(chart, bars, 'defined', 'isArea', 'x', 'y', 'size', 'xScale', 'yScale', + d3.rebind(chart, bars, 'defined', 'isArea', 'x', 'y', 'size', 'xScale', 'yScale', 'xDomain', 'yDomain', 'xRange', 'yRange', 'forceX', 'forceY', 'interactive', 'clipEdge', 'clipVoronoi', 'id', 'interpolate','highlightPoint','clearHighlights', 'interactive'); chart.options = nv.utils.optionsFunc.bind(chart); - + chart.margin = function(_) { if (!arguments.length) return margin; margin.top = typeof _.top != 'undefined' ? _.top : margin.top; @@ -4645,8 +4650,7 @@ nv.models.indentedTree = function() { d3.select(this).select('span') .attr('class', d3.functor(column.classes) ) - .text(function(d) { return column.format ? column.format(d) : - (d[column.key] || '-') }); + .text(function(d) { return column.format ? (d[column.key] ? column.format(d[column.key]) : '-') : (d[column.key] || '-'); }); }); if (column.showCount) { @@ -4921,7 +4925,7 @@ nv.models.indentedTree = function() { data.forEach(function(series) { series.disabled = true; }); - d.disabled = false; + d.disabled = false; dispatch.stateChange({ disabled: data.map(function(d) { return !!d.disabled }) }); @@ -4954,12 +4958,14 @@ nv.models.indentedTree = function() { var legendText = d3.select(this).select('text'); var nodeTextLength; try { - nodeTextLength = legendText.node().getComputedTextLength(); + nodeTextLength = legendText.getComputedTextLength(); + // If the legendText is display:none'd (nodeTextLength == 0), simulate an error so we approximate, instead + if(nodeTextLength <= 0) throw Error(); } catch(e) { nodeTextLength = nv.utils.calcApproxTextWidth(legendText); } - + seriesWidths.push(nodeTextLength + 28); // 28 is ~ the width of the circle plus some padding }); @@ -5050,7 +5056,7 @@ nv.models.indentedTree = function() { chart.dispatch = dispatch; chart.options = nv.utils.optionsFunc.bind(chart); - + chart.margin = function(_) { if (!arguments.length) return margin; margin.top = typeof _.top != 'undefined' ? _.top : margin.top; @@ -5141,7 +5147,7 @@ nv.models.line = function() { .size(16) // default size .sizeDomain([16,256]) //set to speed up calculation, needs to be unset if there is a custom size accessor ; - + //============================================================ @@ -5209,7 +5215,7 @@ nv.models.line = function() { wrap.select('#nv-edge-clip-' + scatter.id() + ' rect') .attr('width', availableWidth) - .attr('height', availableHeight); + .attr('height', (availableHeight > 0) ? availableHeight : 0); g .attr('clip-path', clipEdge ? 'url(#nv-edge-clip-' + scatter.id() + ')' : ''); scatterWrap @@ -5223,11 +5229,9 @@ nv.models.line = function() { groups.enter().append('g') .style('stroke-opacity', 1e-6) .style('fill-opacity', 1e-6); - groups.exit() - .transition() - .style('stroke-opacity', 1e-6) - .style('fill-opacity', 1e-6) - .remove(); + + groups.exit().remove(); + groups .attr('class', function(d,i) { return 'nv-group nv-series-' + i }) .classed('hover', function(d) { return d.hover }) @@ -5256,7 +5260,7 @@ nv.models.line = function() { }); groups.exit().selectAll('path.nv-area') .remove(); - + areaPaths .transition() .attr('d', function(d) { @@ -5283,15 +5287,7 @@ nv.models.line = function() { .x(function(d,i) { return nv.utils.NaNtoZero(x0(getX(d,i))) }) .y(function(d,i) { return nv.utils.NaNtoZero(y0(getY(d,i))) }) ); - groups.exit().selectAll('path.nv-line') - .transition() - .attr('d', - d3.svg.line() - .interpolate(interpolate) - .defined(defined) - .x(function(d,i) { return nv.utils.NaNtoZero(x(getX(d,i))) }) - .y(function(d,i) { return nv.utils.NaNtoZero(y(getY(d,i))) }) - ); + linePaths .transition() .attr('d', @@ -5321,11 +5317,11 @@ nv.models.line = function() { chart.dispatch = scatter.dispatch; chart.scatter = scatter; - d3.rebind(chart, scatter, 'id', 'interactive', 'size', 'xScale', 'yScale', 'zScale', 'xDomain', 'yDomain', 'xRange', 'yRange', + d3.rebind(chart, scatter, 'id', 'interactive', 'size', 'xScale', 'yScale', 'zScale', 'xDomain', 'yDomain', 'xRange', 'yRange', 'sizeDomain', 'forceX', 'forceY', 'forceSize', 'clipVoronoi', 'useVoronoi', 'clipRadius', 'padData','highlightPoint','clearHighlights'); chart.options = nv.utils.optionsFunc.bind(chart); - + chart.margin = function(_) { if (!arguments.length) return margin; margin.top = typeof _.top != 'undefined' ? _.top : margin.top; @@ -5479,7 +5475,7 @@ nv.models.lineChart = function() { //set state.disabled state.disabled = data.map(function(d) { return !!d.disabled }); - + if (!defaultState) { var key; defaultState = {}; @@ -5538,7 +5534,9 @@ nv.models.lineChart = function() { gEnter.append('g').attr('class', 'nv-legendWrap'); gEnter.append('g').attr('class', 'nv-interactive'); - g.select("rect").attr("width",availableWidth).attr("height",availableHeight); + g.select("rect") + .attr("width",availableWidth) + .attr("height",(availableHeight > 0) ? availableHeight : 0); //------------------------------------------------------------ // Legend @@ -5571,7 +5569,7 @@ nv.models.lineChart = function() { //------------------------------------------------------------ // Main Chart Component(s) - + //------------------------------------------------------------ //Set up interactive layer if (useInteractiveGuideline) { @@ -5644,9 +5642,9 @@ nv.models.lineChart = function() { lines.clearHighlights(); var singlePoint, pointIndex, pointXLocation, allData = []; data - .filter(function(series, i) { + .filter(function(series, i) { series.seriesIndex = i; - return !series.disabled; + return !series.disabled; }) .forEach(function(series,i) { pointIndex = nv.interactiveBisect(series.values, e.pointXValue, chart.x()); @@ -5702,7 +5700,7 @@ nv.models.lineChart = function() { dispatch.on('changeState', function(e) { - if (typeof e.disabled !== 'undefined') { + if (typeof e.disabled !== 'undefined' && data.length === e.disabled.length) { data.forEach(function(series,i) { series.disabled = e.disabled[i]; }); @@ -8533,6 +8531,7 @@ nv.models.multiBarHorizontal = function() { , disabled // used in conjunction with barColor to communicate from multiBarHorizontalChart what series are disabled , stacked = false , showValues = false + , showBarLabels = false , valuePadding = 60 , valueFormat = d3.format(',.2f') , delay = 1200 @@ -8745,6 +8744,21 @@ nv.models.multiBarHorizontal = function() { bars.selectAll('text').text(''); } + if (showBarLabels && !stacked) { + barsEnter.append('text').classed('nv-bar-label',true); + bars.select('text.nv-bar-label') + .attr('text-anchor', function(d,i) { return getY(d,i) < 0 ? 'start' : 'end' }) + .attr('y', x.rangeBand() / (data.length * 2)) + .attr('dy', '.32em') + .text(function(d,i) { return getX(d,i) }); + bars.transition() + .select('text.nv-bar-label') + .attr('x', function(d,i) { return getY(d,i) < 0 ? y(0) - y(getY(d,i)) + 4 : -4 }); + } + else { + bars.selectAll('text.nv-bar-label').text(''); + } + bars .attr('class', function(d,i) { return getY(d,i) < 0 ? 'nv-bar negative' : 'nv-bar positive'}) @@ -8919,6 +8933,13 @@ nv.models.multiBarHorizontal = function() { return chart; }; + chart.showBarLabels = function(_) { + if (!arguments.length) return showBarLabels; + showBarLabels = _; + return chart; + }; + + chart.valueFormat= function(_) { if (!arguments.length) return valueFormat; valueFormat = _; @@ -8956,6 +8977,8 @@ nv.models.multiBarHorizontalChart = function() { , color = nv.utils.defaultColor() , showControls = true , showLegend = true + , showXAxis = true + , showYAxis = true , stacked = false , tooltips = true , tooltip = function(key, x, y, e, graph) { @@ -9076,7 +9099,9 @@ nv.models.multiBarHorizontalChart = function() { var g = wrap.select('g'); gEnter.append('g').attr('class', 'nv-x nv-axis'); - gEnter.append('g').attr('class', 'nv-y nv-axis'); + gEnter.append('g').attr('class', 'nv-y nv-axis') + .append('g').attr('class', 'nv-zeroLine') + .append('line'); gEnter.append('g').attr('class', 'nv-barsWrap'); gEnter.append('g').attr('class', 'nv-legendWrap'); gEnter.append('g').attr('class', 'nv-controlsWrap'); @@ -9157,30 +9182,40 @@ nv.models.multiBarHorizontalChart = function() { //------------------------------------------------------------ // Setup Axes - xAxis - .scale(x) - .ticks( availableHeight / 24 ) - .tickSize(-availableWidth, 0); + if (showXAxis) { + xAxis + .scale(x) + .ticks( availableHeight / 24 ) + .tickSize(-availableWidth, 0); - g.select('.nv-x.nv-axis').transition() - .call(xAxis); + g.select('.nv-x.nv-axis').transition() + .call(xAxis); - var xTicks = g.select('.nv-x.nv-axis').selectAll('g'); + var xTicks = g.select('.nv-x.nv-axis').selectAll('g'); - xTicks - .selectAll('line, text') - .style('opacity', 1) + xTicks + .selectAll('line, text'); + } + if (showYAxis) { + yAxis + .scale(y) + .ticks( availableWidth / 100 ) + .tickSize( -availableHeight, 0); - yAxis - .scale(y) - .ticks( availableWidth / 100 ) - .tickSize( -availableHeight, 0); + g.select('.nv-y.nv-axis') + .attr('transform', 'translate(0,' + availableHeight + ')'); + g.select('.nv-y.nv-axis').transition() + .call(yAxis); + } - g.select('.nv-y.nv-axis') - .attr('transform', 'translate(0,' + availableHeight + ')'); - g.select('.nv-y.nv-axis').transition() - .call(yAxis); + // Zero line + g.select(".nv-zeroLine line") + .attr("x1", y(0)) + .attr("x2", y(0)) + .attr("y1", 0) + .attr("y2", -availableHeight) + ; //------------------------------------------------------------ @@ -9190,7 +9225,7 @@ nv.models.multiBarHorizontalChart = function() { // Event Handling/Dispatching (in chart's scope) //------------------------------------------------------------ - legend.dispatch.on('stateChange', function(newState) { + legend.dispatch.on('stateChange', function(newState) { state = newState; dispatch.stateChange(state); chart.update(); @@ -9239,7 +9274,7 @@ nv.models.multiBarHorizontalChart = function() { state.stacked = e.stacked; } - selection.call(chart); + chart.update(); }); //============================================================ @@ -9280,10 +9315,11 @@ nv.models.multiBarHorizontalChart = function() { chart.xAxis = xAxis; chart.yAxis = yAxis; - d3.rebind(chart, multibar, 'x', 'y', 'xDomain', 'yDomain', 'xRange', 'yRange', 'forceX', 'forceY', 'clipEdge', 'id', 'delay', 'showValues', 'valueFormat', 'stacked', 'barColor'); + d3.rebind(chart, multibar, 'x', 'y', 'xDomain', 'yDomain', 'xRange', 'yRange', 'forceX', 'forceY', + 'clipEdge', 'id', 'delay', 'showValues','showBarLabels', 'valueFormat', 'stacked', 'barColor'); chart.options = nv.utils.optionsFunc.bind(chart); - + chart.margin = function(_) { if (!arguments.length) return margin; margin.top = typeof _.top != 'undefined' ? _.top : margin.top; @@ -9324,6 +9360,18 @@ nv.models.multiBarHorizontalChart = function() { return chart; }; + chart.showXAxis = function(_) { + if (!arguments.length) return showXAxis; + showXAxis = _; + return chart; + }; + + chart.showYAxis = function(_) { + if (!arguments.length) return showYAxis; + showYAxis = _; + return chart; + }; + chart.tooltip = function(_) { if (!arguments.length) return tooltip; tooltip = _; @@ -10252,9 +10300,11 @@ nv.models.pie = function() { var g = wrap.select('g'); gEnter.append('g').attr('class', 'nv-pie'); + gEnter.append('g').attr('class', 'nv-pieLabels'); wrap.attr('transform', 'translate(' + margin.left + ',' + margin.top + ')'); g.select('.nv-pie').attr('transform', 'translate(' + availableWidth / 2 + ',' + availableHeight / 2 + ')'); + g.select('.nv-pieLabels').attr('transform', 'translate(' + availableWidth / 2 + ',' + availableHeight / 2 + ')'); //------------------------------------------------------------ @@ -10285,7 +10335,11 @@ nv.models.pie = function() { var slices = wrap.select('.nv-pie').selectAll('.nv-slice') .data(pie); + var pieLabels = wrap.select('.nv-pieLabels').selectAll('.nv-label') + .data(pie); + slices.exit().remove(); + pieLabels.exit().remove(); var ae = slices.enter().append('g') .attr('class', 'nv-slice') @@ -10341,78 +10395,92 @@ nv.models.pie = function() { .each(function(d) { this._current = d; }); //.attr('d', arc); - d3.transition(slices.select('path')) + slices.select('path') + .transition() .attr('d', arc) .attrTween('d', arcTween); if (showLabels) { // This does the normal label var labelsArc = d3.svg.arc().innerRadius(0); - + if (pieLabelsOutside){ labelsArc = arc; } if (donutLabelsOutside) { labelsArc = d3.svg.arc().outerRadius(arc.outerRadius()); } - ae.append("g").classed("nv-label", true) - .each(function(d, i) { - var group = d3.select(this); + pieLabels.enter().append("g").classed("nv-label",true) + .each(function(d,i) { + var group = d3.select(this); - group - .attr('transform', function(d) { - if (labelSunbeamLayout) { - d.outerRadius = arcRadius + 10; // Set Outer Coordinate - d.innerRadius = arcRadius + 15; // Set Inner Coordinate - var rotateAngle = (d.startAngle + d.endAngle) / 2 * (180 / Math.PI); - if ((d.startAngle+d.endAngle)/2 < Math.PI) { - rotateAngle -= 90; + group + .attr('transform', function(d) { + if (labelSunbeamLayout) { + d.outerRadius = arcRadius + 10; // Set Outer Coordinate + d.innerRadius = arcRadius + 15; // Set Inner Coordinate + var rotateAngle = (d.startAngle + d.endAngle) / 2 * (180 / Math.PI); + if ((d.startAngle+d.endAngle)/2 < Math.PI) { + rotateAngle -= 90; + } else { + rotateAngle += 90; + } + return 'translate(' + labelsArc.centroid(d) + ') rotate(' + rotateAngle + ')'; } else { - rotateAngle += 90; + d.outerRadius = radius + 10; // Set Outer Coordinate + d.innerRadius = radius + 15; // Set Inner Coordinate + return 'translate(' + labelsArc.centroid(d) + ')' } - return 'translate(' + labelsArc.centroid(d) + ') rotate(' + rotateAngle + ')'; - } else { - d.outerRadius = radius + 10; // Set Outer Coordinate - d.innerRadius = radius + 15; // Set Inner Coordinate - return 'translate(' + labelsArc.centroid(d) + ')' - } - }); + }); - group.append('rect') - .style('stroke', '#fff') - .style('fill', '#fff') - .attr("rx", 3) - .attr("ry", 3); + group.append('rect') + .style('stroke', '#fff') + .style('fill', '#fff') + .attr("rx", 3) + .attr("ry", 3); - group.append('text') - .style('text-anchor', labelSunbeamLayout ? ((d.startAngle + d.endAngle) / 2 < Math.PI ? 'start' : 'end') : 'middle') //center the text on it's origin or begin/end if orthogonal aligned - .style('fill', '#000') + group.append('text') + .style('text-anchor', labelSunbeamLayout ? ((d.startAngle + d.endAngle) / 2 < Math.PI ? 'start' : 'end') : 'middle') //center the text on it's origin or begin/end if orthogonal aligned + .style('fill', '#000') - - }); - - slices.select(".nv-label").transition() - .attr('transform', function(d) { - if (labelSunbeamLayout) { - d.outerRadius = arcRadius + 10; // Set Outer Coordinate - d.innerRadius = arcRadius + 15; // Set Inner Coordinate - var rotateAngle = (d.startAngle + d.endAngle) / 2 * (180 / Math.PI); - if ((d.startAngle+d.endAngle)/2 < Math.PI) { - rotateAngle -= 90; - } else { - rotateAngle += 90; - } - return 'translate(' + labelsArc.centroid(d) + ') rotate(' + rotateAngle + ')'; - } else { - d.outerRadius = radius + 10; // Set Outer Coordinate - d.innerRadius = radius + 15; // Set Inner Coordinate - return 'translate(' + labelsArc.centroid(d) + ')' - } }); - slices.each(function(d, i) { - var slice = d3.select(this); + var labelLocationHash = {}; + var avgHeight = 14; + var avgWidth = 140; + var createHashKey = function(coordinates) { - slice - .select(".nv-label text") + return Math.floor(coordinates[0]/avgWidth) * avgWidth + ',' + Math.floor(coordinates[1]/avgHeight) * avgHeight; + }; + pieLabels.transition() + .attr('transform', function(d) { + if (labelSunbeamLayout) { + d.outerRadius = arcRadius + 10; // Set Outer Coordinate + d.innerRadius = arcRadius + 15; // Set Inner Coordinate + var rotateAngle = (d.startAngle + d.endAngle) / 2 * (180 / Math.PI); + if ((d.startAngle+d.endAngle)/2 < Math.PI) { + rotateAngle -= 90; + } else { + rotateAngle += 90; + } + return 'translate(' + labelsArc.centroid(d) + ') rotate(' + rotateAngle + ')'; + } else { + d.outerRadius = radius + 10; // Set Outer Coordinate + d.innerRadius = radius + 15; // Set Inner Coordinate + + /* + Overlapping pie labels are not good. What this attempts to do is, prevent overlapping. + Each label location is hashed, and if a hash collision occurs, we assume an overlap. + Adjust the label's y-position to remove the overlap. + */ + var center = labelsArc.centroid(d); + var hashKey = createHashKey(center); + if (labelLocationHash[hashKey]) { + center[1] -= avgHeight; + } + labelLocationHash[createHashKey(center)] = true; + return 'translate(' + center + ')' + } + }); + pieLabels.select(".nv-label text") .style('text-anchor', labelSunbeamLayout ? ((d.startAngle + d.endAngle) / 2 < Math.PI ? 'start' : 'end') : 'middle') //center the text on it's origin or begin/end if orthogonal aligned .text(function(d, i) { var percent = (d.endAngle - d.startAngle) / (2 * Math.PI); @@ -10423,15 +10491,6 @@ nv.models.pie = function() { }; return (d.value && percent > labelThreshold) ? labelTypes[labelType] : ''; }); - - var textBox = slice.select('text').node().getBBox(); - slice.select(".nv-label rect") - .attr("width", textBox.width + 10) - .attr("height", textBox.height + 10) - .attr("transform", function() { - return "translate(" + [textBox.x - 5, textBox.y - 5] + ")"; - }); - }); } @@ -10510,7 +10569,7 @@ nv.models.pie = function() { getY = d3.functor(_); return chart; }; - + chart.description = function(_) { if (!arguments.length) return getDescription; getDescription = _; @@ -10522,7 +10581,7 @@ nv.models.pie = function() { showLabels = _; return chart; }; - + chart.labelSunbeamLayout = function(_) { if (!arguments.length) return labelSunbeamLayout; labelSunbeamLayout = _; @@ -10534,7 +10593,7 @@ nv.models.pie = function() { donutLabelsOutside = _; return chart; }; - + chart.pieLabelsOutside = function(_) { if (!arguments.length) return pieLabelsOutside; pieLabelsOutside = _; @@ -10553,7 +10612,7 @@ nv.models.pie = function() { donut = _; return chart; }; - + chart.donutRatio = function(_) { if (!arguments.length) return donutRatio; donutRatio = _; @@ -11040,7 +11099,7 @@ nv.models.scatter = function() { wrap.select('#nv-edge-clip-' + id + ' rect') .attr('width', availableWidth) - .attr('height', availableHeight); + .attr('height', (availableHeight > 0) ? availableHeight : 0); g .attr('clip-path', clipEdge ? 'url(#nv-edge-clip-' + id + ')' : ''); @@ -13465,7 +13524,7 @@ nv.models.stackedArea = function() { point: d, series: d.key, pos: [d3.event.pageX, d3.event.pageY], - seriesIndex: i + seriesIndex: d.seriesIndex }); }) .on('mouseout', function(d,i) { @@ -13474,7 +13533,7 @@ nv.models.stackedArea = function() { point: d, series: d.key, pos: [d3.event.pageX, d3.event.pageY], - seriesIndex: i + seriesIndex: d.seriesIndex }); }) .on('click', function(d,i) { @@ -13483,12 +13542,12 @@ nv.models.stackedArea = function() { point: d, series: d.key, pos: [d3.event.pageX, d3.event.pageY], - seriesIndex: i + seriesIndex: d.seriesIndex }); }) - path.exit().transition() - .attr('d', function(d,i) { return zeroArea(d.values,i) }) - .remove(); + + path.exit().remove(); + path .style('fill', function(d,i){ return d.color || color(d, d.seriesIndex) @@ -13850,28 +13909,28 @@ nv.models.stackedAreaChart = function() { if (showControls) { var controlsData = [ { - key: controlLabels.stacked || 'Stacked', - metaKey: 'Stacked', - disabled: stacked.style() != 'stack', - style: 'stack' + key: controlLabels.stacked || 'Stacked', + metaKey: 'Stacked', + disabled: stacked.style() != 'stack', + style: 'stack' }, { - key: controlLabels.stream || 'Stream', - metaKey: 'Stream', - disabled: stacked.style() != 'stream', - style: 'stream' + key: controlLabels.stream || 'Stream', + metaKey: 'Stream', + disabled: stacked.style() != 'stream', + style: 'stream' }, { - key: controlLabels.expanded || 'Expanded', - metaKey: 'Expanded', - disabled: stacked.style() != 'expand', - style: 'expand' + key: controlLabels.expanded || 'Expanded', + metaKey: 'Expanded', + disabled: stacked.style() != 'expand', + style: 'expand' }, { - key: controlLabels.stack_percent || 'Stack %', - metaKey: 'Stack_Percent', - disabled: stacked.style() != 'stack_percent', - style: 'stack_percent' + key: controlLabels.stack_percent || 'Stack %', + metaKey: 'Stack_Percent', + disabled: stacked.style() != 'stack_percent', + style: 'stack_percent' } ]; @@ -13960,7 +14019,7 @@ nv.models.stackedAreaChart = function() { .scale(y) .ticks(stacked.offset() == 'wiggle' ? 0 : availableHeight / 36) .tickSize(-availableWidth, 0) - .setTickFormat( (stacked.style() == 'expand' || stacked.style() == 'stack_percent') + .setTickFormat( (stacked.style() == 'expand' || stacked.style() == 'stack_percent') ? d3.format('%') : yAxisTickFormat); g.select('.nv-y.nv-axis') @@ -14007,7 +14066,7 @@ nv.models.stackedAreaChart = function() { d.disabled = false; stacked.style(d.style); - + state.style = stacked.style(); dispatch.stateChange(state); @@ -14049,7 +14108,13 @@ nv.models.stackedAreaChart = function() { var yValue = chart.yScale().invert(e.mouseY); var yDistMax = Infinity, indexToHighlight = null; allData.forEach(function(series,i) { - if ( yValue >= series.stackedValue.y0 && yValue <= (series.stackedValue.y0 + series.stackedValue.y)) + + //To handle situation where the stacked area chart is negative, we need to use absolute values + //when checking if the mouse Y value is within the stack area. + yValue = Math.abs(yValue); + var stackedY0 = Math.abs(series.stackedValue.y0); + var stackedY = Math.abs(series.stackedValue.y); + if ( yValue >= stackedY0 && yValue <= (stackedY + stackedY0)) { indexToHighlight = i; return; @@ -14062,7 +14127,7 @@ nv.models.stackedAreaChart = function() { var xValue = xAxis.tickFormat()(chart.x()(singlePoint,pointIndex)); //If we are in 'expand' mode, force the format to be a percentage. - var valueFormatter = (stacked.style() == 'expand') ? + var valueFormatter = (stacked.style() == 'expand') ? function(d,i) {return d3.format(".1%")(d);} : function(d,i) {return yAxis.tickFormat()(d); }; interactiveLayer.tooltip @@ -14094,7 +14159,7 @@ nv.models.stackedAreaChart = function() { // Update chart from a state object passed to event handler dispatch.on('changeState', function(e) { - if (typeof e.disabled !== 'undefined') { + if (typeof e.disabled !== 'undefined' && data.length === e.disabled.length) { data.forEach(function(series,i) { series.disabled = e.disabled[i]; }); @@ -14300,4 +14365,4 @@ nv.models.stackedAreaChart = function() { return chart; } -})(); \ No newline at end of file +})(); diff --git a/addons/web/static/src/css/base.css b/addons/web/static/src/css/base.css index 379fc66c75a..de947590cec 100644 --- a/addons/web/static/src/css/base.css +++ b/addons/web/static/src/css/base.css @@ -1050,7 +1050,7 @@ .openerp .oe-view-manager-header .dropdown-menu li a { padding: 3px 25px; } -.openerp .oe-view-manager-header .dropdown-menu .oe_searchview_custom_public a:after { +.openerp .oe-view-manager-header .dropdown-menu .oe_searchview_custom_public a:after, .openerp .oe-view-manager-header .dropdown-menu .oe-share-filter:after { font-family: FontAwesome; content: ""; color: #666; @@ -1519,6 +1519,110 @@ .openerp .oe_view.oe_cannot_create .oe_view_nocontent_create { display: none; } +.openerp .oe_pivot table { + width: auto; +} +.openerp .oe_pivot col.hover { + background-color: #f5f5f5; +} +.openerp .oe_pivot th { + background-color: #ffffff; + font-weight: normal; + vertical-align: top; + border: 1px solid #bfbfb6; + border-top: none; +} +.openerp .oe_pivot th.oe-total { + background-color: #f0eeee; + font-weight: bold; + vertical-align: bottom; +} +.openerp .oe_pivot td { + border: 1px solid #bfbfb6; + text-align: right; +} +.openerp .oe_pivot td.oe-closed, .openerp .oe_pivot td.oe-opened { + cursor: pointer; +} +.openerp .oe_pivot .oe-closed, .openerp .oe_pivot .oe-opened { + cursor: pointer; + background-color: #f0eeee; + border-left: none; + text-align: left; +} +.openerp .oe_pivot .oe-closed:hover, .openerp .oe_pivot .oe-opened:hover { + background-color: #e6e6e6; +} +.openerp .oe_pivot.oe-enable-linking td:not(.oe-closed):not(.oe-opened):not(.oe-empty) { + cursor: pointer; +} +.openerp .oe_pivot.oe-enable-linking td:not(.oe-closed):not(.oe-opened):not(.oe-empty):hover { + color: #428bca; +} +.openerp .oe_pivot .oe-closed:before { + font-family: FontAwesome; + margin-right: 5px; + content: ""; +} +.openerp .oe_pivot .oe-opened:before { + font-family: FontAwesome; + margin-right: 5px; + content: ""; + text-align: left; +} +.openerp .oe_pivot .measure-row { + background-color: #f0eeee; + cursor: pointer; +} +.openerp .oe_pivot .o-sorted:after { + font-family: FontAwesome; + margin-left: 5px; +} +.openerp .oe_pivot .o-sorted-asc:after { + content: ""; +} +.openerp .oe_pivot .o-sorted-desc:after { + content: ""; +} +.openerp .oe_pivot .dropdown-menu a { + color: black; +} +.openerp .oe_pivot .dropdown-menu .pivot-dropdown-submenu { + position: relative; +} +.openerp .oe_pivot .dropdown-menu .pivot-dropdown-submenu > .dropdown-menu { + top: 0; + left: 100%; +} +.openerp .oe_pivot .dropdown-menu .pivot-dropdown-submenu .field-selection:after { + content: ""; + width: 3px; + float: right; + margin-left: 5px; + color: #333; + font-family: FontAwesome; +} +.openerp .oe_pivot .dropdown-menu .pivot-dropdown-submenu:hover > .dropdown-menu { + display: block; +} +.openerp .o-dashboard .oe_pivot th { + border-top: 1px solid #bfbfb6; +} +.openerp .o-dashboard .oe_pivot th, .openerp .o-dashboard .oe_pivot .oe-closed, .openerp .o-dashboard .oe_pivot .oe-opened { + border-left: 1px solid #bfbfb6; +} +.openerp .o-dashboard .oe_graph svg { + min-height: 250px; +} +.openerp .o-dashboard .oe_graph .nv-pieLabels { + display: none; +} +.openerp .oe_graph { + height: 100%; +} +.openerp .oe_graph > div { + height: 100%; +} .openerp .oe_formview { background: white; } diff --git a/addons/web/static/src/css/base.sass b/addons/web/static/src/css/base.sass index 34e2678cfbc..3353c28ff18 100644 --- a/addons/web/static/src/css/base.sass +++ b/addons/web/static/src/css/base.sass @@ -915,12 +915,11 @@ $sheet-padding: 16px position: relative a padding: 3px 25px - .oe_searchview_custom_public - a:after - font-family: FontAwesome - content: "\f0c0" - color: #666 - margin-left: 3px + .oe_searchview_custom_public a:after,.oe-share-filter:after + font-family: FontAwesome + content: "\f0c0" + color: #666 + margin-left: 3px .selected display: block a @@ -1295,6 +1294,96 @@ $sheet-padding: 16px .oe_view_nocontent_create display: none // }}} + // PivotView.base and dynamic tags {{{ + .oe_pivot + table + width: auto + col.hover + background-color: #f5f5f5 + th + background-color: #ffffff + font-weight: normal + vertical-align: top + border: 1px solid #bfbfb6 + border-top: none + th.oe-total + background-color: #f0eeee + font-weight: bold + vertical-align: bottom + td + border: 1px solid #bfbfb6 + text-align: right + td.oe-closed,td.oe-opened + cursor: pointer + .oe-closed, .oe-opened + cursor: pointer + background-color: #f0eeee + border-left: none + text-align: left + &:hover + background-color: #e6e6e6 + &.oe-enable-linking + td:not(.oe-closed):not(.oe-opened):not(.oe-empty) + cursor: pointer + &:hover + color: #428bca + .oe-closed:before + font-family: FontAwesome + margin-right: 5px + content: "\f067" + .oe-opened:before + font-family: FontAwesome + margin-right: 5px + content: "\f068" + text-align: left + .measure-row + background-color: #f0eeee + cursor: pointer + .o-sorted:after + font-family: FontAwesome + margin-left: 5px + .o-sorted-asc:after + content: "\f0d7" + .o-sorted-desc:after + content: "\f0d8" + .dropdown-menu + a + color: black + .pivot-dropdown-submenu + position: relative + > .dropdown-menu + top: 0 + left: 100% + .field-selection:after + content: "\f0da" + width: 3px + float: right + margin-left: 5px + color: #333 + font-family: FontAwesome + .pivot-dropdown-submenu:hover + > .dropdown-menu + display: block + .o-dashboard + .oe_pivot + th + border-top: 1px solid #bfbfb6 + th, .oe-closed, .oe-opened + border-left: 1px solid #bfbfb6 + .oe_graph + svg + min-height: 250px + .nv-pieLabels + display: none + + // }}} + // GraphView.base and dynamic tags {{{ + .oe_graph + height: 100% + > div + height: 100% + + // }}} // FormView.base and dynamic tags {{{ .oe_formview background: white diff --git a/addons/web/static/src/js/search.js b/addons/web/static/src/js/search.js index 312432d1960..d2c67416fbc 100644 --- a/addons/web/static/src/js/search.js +++ b/addons/web/static/src/js/search.js @@ -246,7 +246,7 @@ my.InputView = instance.web.Widget.extend({ // Read text content (ignore pasted HTML) var data = this.$el.text(); if (!data) - return; + return; // paste raw text back in this.$el.empty().text(data); this.el.normalize(); @@ -373,7 +373,7 @@ instance.web.SearchView = instance.web.Widget.extend(/** @lends instance.web.Sea disable_custom_filters: false, }); this._super(parent); - this.query = undefined; + this.query = undefined; this.dataset = dataset; this.view_id = view_id; this.search_fields = []; @@ -433,60 +433,6 @@ instance.web.SearchView = instance.web.Widget.extend(/** @lends instance.web.Sea } return $.when(custom_filters_ready).then(this.proxy('set_default_filters')); }, - // it should parse the arch field of the view, instantiate the corresponding - // filters/fields, and put them in the correct variables: - // * this.search_fields is a list of all the fields, - // * this.filters: groups of filters - // * this.group_by: group_bys - prepare_search_inputs: function () { - var self = this, - arch = this.fields_view_get.arch; - - var filters = [].concat.apply([], _.map(arch.children, function (item) { - return item.tag !== 'group' ? eval_item(item) : item.children.map(eval_item); - })); - function eval_item (item) { - var category = 'filters'; - if (item.attrs.context) { - try { - var context = instance.web.pyeval.eval('context', item.attrs.context); - if (context.group_by) { - category = 'group_by'; - } - } catch (e) {} - } - return { - item: item, - category: category, - } - } - var current_group = [], - current_category = 'filters', - categories = {filters: this.filters, group_by: this.groupbys}; - - _.each(filters.concat({category:'filters', item: 'separator'}), function (filter) { - if (filter.item.tag === 'filter' && filter.category === current_category) { - return current_group.push(new my.Filter(filter.item, self)); - } - if (current_group.length) { - var group = new my.FilterGroup(current_group, self); - categories[current_category].push(group); - current_group = []; - } - if (filter.item.tag === 'field') { - var attrs = filter.item.attrs, - field = self.fields_view_get.fields[attrs.name], - Obj = my.fields.get_any([attrs.widget, field.type]); - if (Obj) { - self.search_fields.push(new (Obj) (filter.item, field, self)); - } - } - if (filter.item.tag === 'filter') { - current_group.push(new my.Filter(filter.item, self)); - } - current_category = filter.category; - }); - }, set_default_filters: function () { var self = this, default_custom_filter = this.$buttons && this.favorite_menu.get_default_filter(); @@ -499,7 +445,7 @@ instance.web.SearchView = instance.web.Widget.extend(/** @lends instance.web.Sea return $.when.apply(null, defaults).then(function () { self.query.reset(_(arguments).compact(), {preventSearch: true}); }); - } + } this.query.reset([], {preventSearch: true}); return $.when(); }, @@ -559,7 +505,7 @@ instance.web.SearchView = instance.web.Widget.extend(/** @lends instance.web.Sea contexts: contexts, groupbys: groupbys, }; - }, + }, toggle_visibility: function (is_visible) { this.$el.toggle(!this.headless && is_visible); this.$buttons && this.$buttons.toggle(!this.headless && is_visible && this.visible_filters); @@ -643,7 +589,7 @@ instance.web.SearchView = instance.web.Widget.extend(/** @lends instance.web.Sea }, /** * @param {openerp.web.search.SearchQuery | undefined} Undefined if event is change - * @param {openerp.web.search.Facet} + * @param {openerp.web.search.Facet} * @param {Object} [options] */ renderFacets: function (collection, model, options) { @@ -698,6 +644,60 @@ instance.web.SearchView = instance.web.Widget.extend(/** @lends instance.web.Sea renderChangedFacets: function (model, options) { this.renderFacets(undefined, model, options); }, + // it should parse the arch field of the view, instantiate the corresponding + // filters/fields, and put them in the correct variables: + // * this.search_fields is a list of all the fields, + // * this.filters: groups of filters + // * this.group_by: group_bys + prepare_search_inputs: function () { + var self = this, + arch = this.fields_view_get.arch; + + var filters = [].concat.apply([], _.map(arch.children, function (item) { + return item.tag !== 'group' ? eval_item(item) : item.children.map(eval_item); + })); + function eval_item (item) { + var category = 'filters'; + if (item.attrs.context) { + try { + var context = instance.web.pyeval.eval('context', item.attrs.context); + if (context.group_by) { + category = 'group_by'; + } + } catch (e) {} + } + return { + item: item, + category: category, + }; + } + var current_group = [], + current_category = 'filters', + categories = {filters: this.filters, group_by: this.groupbys}; + + _.each(filters.concat({category:'filters', item: 'separator'}), function (filter) { + if (filter.item.tag === 'filter' && filter.category === current_category) { + return current_group.push(new my.Filter(filter.item, self)); + } + if (current_group.length) { + var group = new my.FilterGroup(current_group, self); + categories[current_category].push(group); + current_group = []; + } + if (filter.item.tag === 'field') { + var attrs = filter.item.attrs, + field = self.fields_view_get.fields[attrs.name], + Obj = my.fields.get_any([attrs.widget, field.type]); + if (Obj) { + self.search_fields.push(new (Obj) (filter.item, field, self)); + } + } + if (filter.item.tag === 'filter') { + current_group.push(new my.Filter(filter.item, self)); + } + current_category = filter.category; + }); + }, }); /** @@ -1086,7 +1086,7 @@ instance.web.search.Field = instance.web.search.Input.extend( /** @lends instanc var value_to_domain; var self = this; - var domain = this.attrs['filter_domain']; + var domain = this.attrs.filter_domain; if (domain) { value_to_domain = function (facetValue) { return new instance.web.CompoundDomain(domain) @@ -1538,7 +1538,7 @@ instance.web.search.GroupByMenu = instance.web.Widget.extend({ self.toggle_add_menu(false); var field = self.$group_selector.find(':selected').data('name'); self.add_groupby_to_menu(field); - }); + }); }); }, get_groupable_fields: function (fields) { @@ -1582,9 +1582,7 @@ instance.web.search.FavoriteMenu = instance.web.Widget.extend({ this.toggle_save_menu(); }, 'click .oe-save-name button': 'save_favorite', - 'hidden.bs.dropdown': function () { - this.close_menus(); - }, + 'hidden.bs.dropdown': 'close_menus', }, init: function (parent, query, target_model, action_id) { this._super.apply(this,arguments); @@ -1647,10 +1645,21 @@ instance.web.search.FavoriteMenu = instance.web.Widget.extend({ this.$inputs.first().focus(); return; } + if (_.chain(this.filters) + .pluck('name') + .contains(filter_name).value()) { + this.do_warn(_t("Error"), _t("Filter with same name already exists.")); + this.$inputs.first().focus(); + return; + } var search = this.searchview.build_search_data(), + view_manager = this.findAncestor(function (a) { + return a instanceof instance.web.ViewManager + }), + view_context = view_manager ? view_manager.active_view.controller.get_context() : {}, results = instance.web.pyeval.sync_eval_domains_and_contexts({ domains: search.domains, - contexts: search.contexts, + contexts: search.contexts.concat(view_context || []), group_by_seq: search.groupbys || [], }); if (!_.isEmpty(results.group_by)) { @@ -1758,7 +1767,7 @@ instance.web.search.FavoriteMenu = instance.web.Widget.extend({ $('') .addClass('fa fa-trash-o remove-filter') .click(function (event) { - event.stopImmediatePropagation(); + event.stopImmediatePropagation(); self.remove_filter(filter, $filter, key); }) .appendTo($filter); @@ -1794,7 +1803,7 @@ instance.web.search.FavoriteMenu = instance.web.Widget.extend({ if (_.isEmpty(self.filters)) { self.$divider.hide(); } - }); + }); }, }); diff --git a/addons/web/static/src/js/view_graph.js b/addons/web/static/src/js/view_graph.js new file mode 100644 index 00000000000..dea16c3396c --- /dev/null +++ b/addons/web/static/src/js/view_graph.js @@ -0,0 +1,446 @@ +/*--------------------------------------------------------- + * Odoo Pivot Table view + *---------------------------------------------------------*/ + +(function (a, b, c) { +'use strict'; + +var instance = openerp, + _lt = instance.web._lt, + _t = instance.web._t, + QWeb = instance.web.qweb; + +nv.dev = false; // sets nvd3 library in production mode + +instance.web.views.add('graph', 'instance.web.GraphView'); + +instance.web.GraphView = instance.web.View.extend({ + className: 'oe_graph', + display_name: _lt('Graph'), + view_type: 'graph', + + init: function(parent, dataset, view_id, options) { + this._super(parent, dataset, view_id, options); + + this.model = new instance.web.Model(dataset.model, {group_by_no_leaf: true}); + this.measures = []; + this.active_measure = '__count__'; + this.initial_groupbys = []; + this.$buttons = options.$buttons; + this.widget = undefined; + }, + start: function () { + var load_fields = this.model.call('fields_get', []) + .then(this.prepare_fields.bind(this)); + + return $.when(this._super(), load_fields).then(this.render_buttons.bind(this)); + }, + render_buttons: function () { + var context = {measures: _.pairs(_.omit(this.measures, '__count__'))}; + this.$buttons.html(QWeb.render('GraphView.buttons', context)); + this.$measure_list = this.$buttons.find('.oe-measure-list'); + this.update_measure(); + this.$buttons.find('button').tooltip(); + this.$buttons.click(this.on_button_click.bind(this)); + }, + update_measure: function () { + var self = this; + this.$measure_list.find('li').each(function (index, li) { + $(li).toggleClass('selected', $(li).data('field') === self.active_measure); + }); + }, + view_loading: function (fvg) { + var self = this; + fvg.arch.children.forEach(function (field) { + var name = field.attrs.name; + if (field.attrs.interval) { + name += ':' + field.attrs.interval; + } + if (field.attrs.type === 'measure') { + self.active_measure = name; + } else { + self.initial_groupbys.push(name); + } + }); + }, + do_show: function () { + this.do_push_state({}); + this.$el.show(); + return this._super(); + }, + prepare_fields: function (fields) { + var self = this; + this.fields = fields; + _.each(fields, function (field, name) { + if ((name !== 'id') && (field.store === true)) { + if (field.type === 'integer' || field.type === 'float') { + self.measures[name] = field; + } + } + }); + this.measures.__count__ = {string: _t("Quantity"), type: "integer"}; + }, + do_search: function (domain, context, group_by) { + if (!this.widget) { + this.initial_groupbys = context.graph_groupbys || this.initial_groupbys; + this.widget = new instance.web.GraphWidget(this, this.dataset.model, { + measure: context.graph_measure || this.active_measure, + mode: context.graph_mode || this.active_mode, + domain: domain, + groupbys: this.initial_groupbys, + context: context, + fields: this.fields, + }); + // append widget + this.$el.hide(); + this.widget.appendTo(this.$el); + } else { + var groupbys = group_by.length ? group_by : this.initial_groupbys.slice(0); + this.widget.update_data(domain, groupbys); + } + }, + get_context: function () { + return !this.widget ? {} : { + graph_mode: this.widget.mode, + graph_measure: this.widget.measure, + graph_groupbys: this.widget.groupbys + }; + }, + on_button_click: function (event) { + var $target = $(event.target); + if ($target.hasClass('oe-bar-mode')) {this.widget.set_mode('bar');} + if ($target.hasClass('oe-line-mode')) {this.widget.set_mode('line');} + if ($target.hasClass('oe-pie-mode')) {this.widget.set_mode('pie');} + if ($target.parents('.oe-measure-list').length) { + var parent = $target.parent(), + field = parent.data('field'); + this.active_measure = field; + parent.toggleClass('selected'); + event.stopPropagation(); + this.update_measure(); + this.widget.set_measure(this.active_measure); + } + }, +}); + +instance.web.GraphWidget = instance.web.Widget.extend({ + init: function (parent, model, options) { + this._super(parent); + this.context = options.context; + this.fields = options.fields; + this.fields.__count__ = _t("Quantity"); + this.model = new instance.web.Model(model, {group_by_no_leaf: true}); + + this.domain = options.domain || []; + this.groupbys = options.groupbys || []; + this.mode = options.mode || "bar"; + this.measure = options.measure || "__count__"; + }, + start: function () { + return this.load_data().then(this.proxy('display_graph')); + }, + update_data: function (domain, groupbys) { + this.domain = domain; + this.groupbys = groupbys; + return this.load_data().then(this.proxy('display_graph')); + }, + set_mode: function (mode) { + this.mode = mode; + this.display_graph(); + }, + set_measure: function (measure) { + this.measure = measure; + return this.load_data().then(this.proxy('display_graph')); + }, + load_data: function () { + var fields = this.groupbys.slice(0); + if (this.measure !== '__count__'.slice(0)) + fields = fields.concat(this.measure); + return this.model + .query(fields) + .filter(this.domain) + .context(this.context) + .lazy(false) + .group_by(this.groupbys.slice(0,2)) + .then(this.proxy('prepare_data')); + }, + prepare_data: function () { + var raw_data = arguments[0], + is_count = this.measure === '__count__'; + var data_pt, j, values, value; + + this.data = []; + for (var i = 0; i < raw_data.length; i++) { + data_pt = raw_data[i].attributes; + values = []; + if (this.groupbys.length === 1) data_pt.value = [data_pt.value]; + for (j = 0; j < data_pt.value.length; j++) { + values[j] = this.sanitize_value(data_pt.value[j], data_pt.grouped_on[j]); + } + value = is_count ? data_pt.length : data_pt.aggregates[this.measure]; + this.data.push({ + labels: values, + value: value + }); + } + }, + sanitize_value: function (value, field) { + if (value === false) return _t("Undefined"); + if (value instanceof Array) return value[1]; + if (field && this.fields[field] && (this.fields[field].type === 'selection')) { + var selected = _.where(this.fields[field].selection, {0: value})[0]; + return selected ? selected[1] : value; + } + return value; + }, + display_graph: function () { + if (this.to_remove) { + nv.utils.offWindowResize(this.to_remove); + } + this.$el.empty(); + if (!this.data.length) { + this.$el.append(QWeb.render('GraphView.error', { + title: _t("No data to display"), + description: _t("No data available for this chart. " + + "Try to add some records, or make sure that" + + "there is no active filter in the search bar."), + })); + } else { + this['display_' + this.mode](); + } + }, + display_bar: function () { + // prepare data for bar chart + var data, values, + measure = this.fields[this.measure].string; + // zero groupbys + if (this.groupbys.length === 0) { + data = [{ + values: [{ + x: this.ViewManager.title, + y: this.data[0].value}], + key: measure + }]; + } + // one groupby + if (this.groupbys.length === 1) { + values = this.data.map(function (datapt) { + return {x: datapt.labels, y: datapt.value}; + }); + data = [ + { + values: values, + key: measure, + } + ]; + } + if (this.groupbys.length > 1) { + var xlabels = [], + series = [], + label, serie, value; + values = {}; + for (var i = 0; i < this.data.length; i++) { + label = this.data[i].labels[0]; + serie = this.data[i].labels[1]; + value = this.data[i].value; + if ((!xlabels.length) || (xlabels[xlabels.length-1] !== label)) { + xlabels.push(label); + } + series.push(this.data[i].labels[1]); + if (!(serie in values)) {values[serie] = {};} + values[serie][label] = this.data[i].value; + } + series = _.uniq(series); + data = []; + var current_serie, j; + for (i = 0; i < series.length; i++) { + current_serie = {values: [], key: series[i]}; + for (j = 0; j < xlabels.length; j++) { + current_serie.values.push({ + x: xlabels[j], + y: values[series[i]][xlabels[j]] || 0, + }); + } + data.push(current_serie); + } + } + var svg = d3.select(this.$el[0]).append('svg'); + svg.datum(data); + + svg.transition().duration(0); + + var chart = nv.models.multiBarChart(); + chart.options({ + delay: 250, + transitionDuration: 10, + showLegend: true, + showXAxis: true, + showYAxis: true, + rightAlignYAxis: false, + stacked: true, + reduceXTicks: false, + // rotateLabels: 40, + showControls: (this.groupbys.length > 1) + }); + + chart(svg); + this.to_remove = chart.update; + nv.utils.onWindowResize(chart.update); + }, + display_pie: function () { + var data = [], + tickValues, + tickFormat, + measure = this.fields[this.measure].string; + + var all_negative = true, + some_negative = false, + all_zero = true; + this.data.forEach(function (datapt) { + all_negative = all_negative && (datapt.value < 0); + some_negative = some_negative || (datapt.value < 0); + all_zero = all_zero && (datapt.value === 0) + }); + if (some_negative && !all_negative) { + return this.$el.append(QWeb.render('GraphView.error', { + title: _t("Invalid data"), + description: _t("Pie chart cannot mix positive and negative numbers. " + + "Try to change your domain to only display positive results"), + })); + } + if (all_zero) { + return this.$el.append(QWeb.render('GraphView.error', { + title: _t("Invalid data"), + description: _t("Pie chart cannot display all zero numbers.. " + + "Try to change your domain to display positive results"), + })); + } + if (this.groupbys.length) { + data = this.data.map(function (datapt) { + return {x:datapt.labels.join("/"), y: datapt.value}; + }); + } + var svg = d3.select(this.$el[0]).append('svg'); + svg.datum(data); + + svg.transition().duration(100); + + var chart = nv.models.pieChart(); + chart.options({ + delay: 250, + transitionDuration: 100, + color: d3.scale.category10().range(), + }); + + chart(svg); + this.to_remove = chart.update; + nv.utils.onWindowResize(chart.update); + }, + display_line: function () { + if (this.data.length < 2) { + this.$el.append(QWeb.render('GraphView.error', { + title: _t("Not enough data points"), + description: "You need at least two data points to display a line chart." + })); + return; + } + var self = this, + data = [], + tickValues, + tickFormat, + measure = this.fields[this.measure].string; + if (this.groupbys.length === 1) { + var values = this.data.map(function (datapt, index) { + return {x: index, y: datapt.value}; + }); + data = [ + { + values: values, + key: measure, + } + ]; + tickValues = this.data.map(function (d, i) { return i;}); + tickFormat = function (d) {return self.data[d].labels;}; + } + if (this.groupbys.length > 1) { + data = []; + var data_dict = {}, + tick = 0, + tickLabels = [], + serie, tickLabel, + identity = function (p) {return p;}; + tickValues = []; + for (var i = 0; i < this.data.length; i++) { + if (this.data[i].labels[0] !== tickLabel) { + tickLabel = this.data[i].labels[0]; + tickValues.push(tick); + tickLabels.push(tickLabel); + tick++; + } + serie = this.data[i].labels[1]; + if (!data_dict[serie]) { + data_dict[serie] = { + values: [], + key: serie, + }; + } + data_dict[serie].values.push({ + x: tick, y: this.data[i].value, + }); + data = _.map(data_dict, identity); + } + tickFormat = function (d) {return tickLabels[d];}; + } + + var svg = d3.select(this.$el[0]).append('svg'); + svg.datum(data); + + svg.transition().duration(0); + + var chart = nv.models.lineChart(); + chart.options({ + margin: {left: 50, right: 50}, + useInteractiveGuideline: true, + showLegend: true, + showXAxis: true, + showYAxis: true, + }); + chart.xAxis.tickValues(tickValues) + .tickFormat(tickFormat); + + chart(svg); + this.to_remove = chart.update; + nv.utils.onWindowResize(chart.update); + }, + destroy: function () { + nv.utils.offWindowResize(this.to_remove); + return this._super(); + } +}); + +// monkey patch nvd3 to allow removing eventhandler on windowresize events +// see https://github.com/novus/nvd3/pull/396 for more details + +// Adds a resize listener to the window. +nv.utils.onWindowResize = function(fun) { + if (fun === null) return; + window.addEventListener('resize', fun); +}; + +// Backwards compatibility with current API. +nv.utils.windowResize = nv.utils.onWindowResize; + +// Removes a resize listener from the window. +nv.utils.offWindowResize = function(fun) { + if (fun === null) return; + window.removeEventListener('resize', fun); +}; + +// monkey patch nvd3 to prevent crashes when user changes view and nvd3 tries +// to remove tooltips after 500 ms... seriously nvd3, what were you thinking? +nv.tooltip.cleanup = function () { + $('.nvtooltip').remove(); +}; + + +})(); diff --git a/addons/web/static/src/js/view_pivot.js b/addons/web/static/src/js/view_pivot.js index 9aa294ead55..34846236aea 100644 --- a/addons/web/static/src/js/view_pivot.js +++ b/addons/web/static/src/js/view_pivot.js @@ -8,7 +8,9 @@ var instance = openerp, _lt = instance.web._lt, _t = instance.web._t, - QWeb = instance.web.qweb; + QWeb = instance.web.qweb, + format_value = instance.web.format_value, + total = _t("Total"); instance.web.views.add('pivot', 'instance.web.PivotView'); @@ -16,43 +18,101 @@ instance.web.PivotView = instance.web.View.extend({ template: 'PivotView', display_name: _lt('Pivot'), view_type: 'pivot', + events: { + 'click .oe-opened': 'on_open_header_click', + 'click .oe-closed': 'on_closed_header_click', + 'click .o-field-menu': 'on_field_menu_selection', + 'click td': 'on_cell_click', + 'click .measure-row': 'on_measure_row_click', + }, init: function(parent, dataset, view_id, options) { this._super(parent, dataset, view_id, options); this.model = new instance.web.Model(dataset.model, {group_by_no_leaf: true}); - this.action_manager = parent.action_manager; this.$buttons = options.$buttons; + this.$sidebar = options.$sidebar; this.fields = {}; this.measures = {}; this.groupable_fields = {}; + this.ready = false; // will be ready after the first do_search + this.data_loaded = $.Deferred(); + this.title = options.title; + + this.main_row = { + root: undefined, + groupbys: [], + }; + this.main_col = { + root: undefined, + groupbys: [], + }; + this.initial_col_groupby = []; + this.initial_row_groupby = []; - this.row_groupbys = []; - this.col_groupbys = []; this.active_measures = []; + this.headers = {}; + this.cells = {}; + this.has_data = false; + + this.last_header_selected = null; + this.sorted_column = {}; }, start: function () { - var self = this, - load_fields = this.model.call('fields_get', []) + var self = this; + this.$table_container = this.$('.o-pivot-table'); + + var load_fields = this.model.call('fields_get', []) .then(this.prepare_fields.bind(this)); - return $.when(this._super(), load_fields).then(function () { - var context = {measures: _.pairs(self.measures)}; - self.$buttons.html(QWeb.render('PivotView.buttons', self), context); + if (this.$sidebar) { + openerp.session.rpc('/web/pivot/check_xlwt').then(function (result) { + if (result) { + self.sidebar = new instance.web.Sidebar(self); + self.sidebar.appendTo(self.$sidebar); + self.sidebar.add_items('other', [{ + label: _t("Download xls"), + callback: self.dowload_table.bind(self) + }]); + } + }); + } + return $.when(this._super(), load_fields).then(this.render_buttons.bind(this)); + }, + render_buttons: function () { + var self = this; + var context = {measures: _.pairs(_.omit(this.measures, '__count__'))}; + this.$buttons.html(QWeb.render('PivotView.buttons', context)); + this.$buttons.click(this.on_button_click.bind(this)); + this.active_measures.forEach(function (measure) { + self.$buttons.find('li[data-field="' + measure + '"]').addClass('selected'); }); + + var another_ctx = {fields: _.pairs(this.groupable_fields)}; + this.$field_selection = this.$('.o-field-selection'); + this.$field_selection.html(QWeb.render('PivotView.FieldSelection', another_ctx)); + openerp.web.bus.on('click', self, function () { + self.$field_selection.find('ul').first().hide(); + }); + this.$buttons.find('button').tooltip(); }, view_loading: function (fvg) { var self = this; - this.do_push_state({}); + this.title = this.title || fvg.arch.attrs.string; + this.enable_linking = !fvg.arch.attrs.disable_linking; + this.$el.toggleClass('oe-enable-linking', this.enable_linking); fvg.arch.children.forEach(function (field) { - var name = field.attrs.name + (field.attrs.interval || ''); + var name = field.attrs.name; + if (field.attrs.interval) { + name += ':' + field.attrs.interval; + } //noinspection FallThroughInSwitchStatementJS switch (field.attrs.type) { case 'measure': self.active_measures.push(name); break; case 'col': - self.col_groupbys.push(name); + self.initial_col_groupby.push(name); break; default: if ('operator' in field.attrs) { @@ -60,9 +120,12 @@ instance.web.PivotView = instance.web.View.extend({ break; } case 'row': - self.row_groupbys.push(name); + self.initial_row_groupby.push(name); } }); + if ((!self.active_measures.length) || fvg.arch.attrs.display_quantity){ + self.active_measures.push('__count__'); + } }, prepare_fields: function (fields) { var self = this, @@ -79,11 +142,653 @@ instance.web.PivotView = instance.web.View.extend({ } } }); + this.measures.__count__ = {string: "Quantity", type: "integer"}; }, do_search: function (domain, context, group_by) { + if (!this.ready) { + this.initial_row_groupby = context.pivot_row_groupby || this.initial_row_groupby; + this.initial_col_groupby = context.pivot_col_groupby || this.initial_col_groupby; + } + this.main_row.groupbys = group_by.length ? group_by : this.initial_row_groupby.slice(0); + this.main_col.groupbys = context.pivot_column_groupby || this.initial_col_groupby.slice(0); + this.active_measures = context.pivot_measures || this.active_measures; + + this.domain = domain; + this.context = context; + if (!this.ready) { + this.data_loaded = this.load_data(true); + this.ready = true; + return; + } + this.data_loaded = this.load_data(false); + return this.do_show(); + }, + do_show: function () { + var self = this; + this.do_push_state({}); + this.data_loaded.done(function () { + self.display_table(); + self.$el.show(); + }); + return this._super(); + }, + get_context: function () { + return !this.ready ? {} : { + pivot_measures: this.active_measures, + pivot_column_groupby: this.main_col.groupbys, + pivot_row_groupby: this.main_row.groupbys, + }; + }, + on_button_click: function (event) { + var $target = $(event.target); + if ($target.hasClass('oe-pivot-flip')) { return this.flip();} + if ($target.hasClass('oe-pivot-expand-all')) {return this.expand_all();} + if ($target.parents('.oe-measure-list').length) { + var parent = $target.parent(), + field = parent.data('field'); + parent.toggleClass('selected'); + event.stopPropagation(); + return this.toggle_measure(field); + } + if ($target.hasClass('oe-pivot-download')) { + return this.dowload_table(); + } + }, + on_open_header_click: function (event) { + var id = $(event.target).data('id'), + header = this.headers[id]; + header.expanded = false; + header.children = []; + var new_groupby_length = this.get_header_depth(header.root) - 1; + header.root.groupbys.splice(new_groupby_length); + this.display_table(); + }, + on_closed_header_click: function (event) { + var id = $(event.target).data('id'), + header = this.headers[id], + groupbys = header.root.groupbys; + if (header.path.length - 1 < groupbys.length) { + this.expand_header(header, groupbys[header.path.length - 1]) + .then(this.proxy('display_table')); + } else { + var $test = $(event.target); + var pos = $test.position(); + this.last_header_selected = id; + var $menu = this.$field_selection.find('ul').first(); + $menu.css('top', pos.top + $test.parent().height() - 2); + $menu.css('left', pos.left + event.offsetX); + $menu.show(); + event.stopPropagation(); + } + }, + on_cell_click: function (event) { + var $target = $(event.target); + if ($target.hasClass('oe-closed') + || $target.hasClass('oe-opened') + || $target.hasClass('oe-empty') + || !this.enable_linking) { + return; + } + var row_id = $target.data('id'), + col_id = $target.data('col_id'), + row_domain = this.headers[row_id].domain, + col_domain = this.headers[col_id].domain, + context = _.omit(_.clone(this.context), 'group_by'); + + return this.do_action({ + type: 'ir.actions.act_window', + name: this.title, + res_model: this.model.name, + views: [[false, 'list'], [false, 'form']], + view_type : "list", + view_mode : "list", + target: 'current', + context: context, + domain: this.domain.concat(row_domain, col_domain), + }); + }, + on_measure_row_click: function (event) { + var $target = $(event.target), + col_id = $target.data('id'), + measure = $target.data('measure'); + + this.sort_rows(col_id, measure, $target.hasClass('o-sorted-asc')); + this.display_table(); + }, + sort_rows: function (col_id, measure, descending) { + console.log('order', descending); + var self = this; + traverse_tree(this.main_row.root, function (header) { + header.children.sort(compare); + }); + this.sorted_column = { + id: col_id, + measure: measure, + order: descending ? 'desc' : 'asc', + }; + + function compare (row1, row2) { + var values1 = self.get_value(row1.id, col_id), + values2 = self.get_value(row2.id, col_id), + value1 = values1 ? values1[measure] : 0, + value2 = values2 ? values2[measure] : 0; + return descending ? value1 - value2 : value2 - value1; + } + }, + on_field_menu_selection: function (event) { + var self = this; + var field = $(event.target).parent().data('field'), + interval = $(event.target).data('interval'), + header = this.headers[this.last_header_selected]; + if (interval) field = field + ':' + interval; + this.expand_header(header, field) + .then(function () { + header.root.groupbys.push(field); + }) + .then(this.proxy('display_table')); + }, + expand_header: function (header, field) { + var self = this; + + var other_root = header.root.other_root, + this_groupbys = header.root.groupbys, + other_groupbys = header.root.other_root.groupbys, + fields = [].concat(field, other_groupbys, this.active_measures), + groupbys = []; + + for (var i = 0; i <= other_groupbys.length; i++) { + groupbys.push([field].concat(other_groupbys.slice(0,i))); + } + return $.when.apply(null, groupbys.map(function (groupby) { + return self.model.query(fields) + .filter(header.domain.length ? header.domain : self.domain) + .context(self.context) + .lazy(false) + .group_by(groupby); + })).then(function () { + var data = Array.prototype.slice.call(arguments), + datapt, attrs, j, k, l, row, col, cell_value, field_name; + for (i = 0; i < data.length; i++) { + for (j = 0; j < data[i].length; j++){ + datapt = data[i][j]; + attrs = datapt.attributes; + if (i === 0) attrs.value = [attrs.value]; + for (k = 0; k < attrs.value.length; k++) { + if (k < 1) field_name = field; + else field_name = other_groupbys[k - 1]; + attrs.value[k] = self.sanitize_value(attrs.value[k], field_name); + } + if (i === 0) { + row = self.make_header(datapt, header.root, 0, 1, header); + } else { + row = self.get_header(datapt, header.root, 0, 1, header); + } + col = self.get_header(datapt, other_root, 1, i + 1); + if (!col) continue; + for (cell_value = {}, l=0; l < self.active_measures.length; l++) { + cell_value[self.active_measures[l]] = attrs.aggregates[self.active_measures[l]]; + } + cell_value.__count__ = attrs.length; + if (!self.cells[row.id]) self.cells[row.id] = []; + self.cells[row.id][col.id] = cell_value; + } + } + }); + }, + expand_all: function () { + this.load_data(false).then(this.proxy('display_table')); + }, + // returns a deferred that resolve when the data is loaded. + load_data: function (update) { + var should_update = (update && this.main_row.root && this.main_col.root); + var self = this, + i, j, + groupbys = [], + row_gbs = this.main_row.groupbys, + col_gbs = this.main_col.groupbys, + fields = [].concat(row_gbs, col_gbs, this.active_measures); + for (i = 0; i < row_gbs.length + 1; i++) { + for (j = 0; j < col_gbs.length + 1; j++) { + groupbys.push(row_gbs.slice(0,i).concat(col_gbs.slice(0,j))); + } + } + return $.when.apply(null, groupbys.map(function (groupby) { + return self.model.query(fields) + .filter(self.domain) + .context(self.context) + .lazy(false) + // .order_by(['probable_revenue']) + .group_by(groupby); + })).then(function () { + var data = Array.prototype.slice.call(arguments); + self.prepare_data(data, should_update); + }); + }, + prepare_data: function (data, should_update) { + var i, j, k, l, m, + index = 0, + row_gbs = this.main_row.groupbys, + col_gbs = this.main_col.groupbys, + main_row_header, main_col_header, + row, col, attrs, datapt, cell_value, + field; + + for (i = 0; i < row_gbs.length + 1; i++) { + for (j = 0; j < col_gbs.length + 1; j++) { + for (k = 0; k < data[index].length; k++) { + datapt = data[index][k]; + attrs = datapt.attributes; + if (i + j === 1) { + attrs.value = [attrs.value]; + } + for (l = 0; l < attrs.value.length; l++) { + if (l < i) field = row_gbs[l]; + else field = col_gbs[l - i]; + attrs.value[l] = this.sanitize_value(attrs.value[l], field); + } + if (j === 0) { + row = this.make_header(datapt, main_row_header, 0, i); + } else { + row = this.get_header(datapt, main_row_header, 0, i); + } + if (i === 0) { + col = this.make_header(datapt, main_col_header, i, i+j); + } else { + col = this.get_header(datapt, main_col_header, i, i+j); + } + if (i + j === 0) { + this.has_data = attrs.length > 0; + main_row_header = row; + main_col_header = col; + } + if (!this.cells[row.id]) this.cells[row.id] = []; + for (cell_value = {}, m=0; m < this.active_measures.length; m++) { + cell_value[this.active_measures[m]] = attrs.aggregates[this.active_measures[m]]; + } + cell_value.__count__ = attrs.length; + this.cells[row.id][col.id] = cell_value; + } + index++; + } + } + if (should_update) { + this.update_tree(this.main_row.root, main_row_header); + var new_groupby_length = this.get_header_depth(main_row_header) - 1; + main_row_header.groupbys = this.main_row.root.groupbys.slice(0, new_groupby_length); + this.update_tree(this.main_col.root, main_col_header); + new_groupby_length = this.get_header_depth(main_col_header) - 1; + main_col_header.groupbys = this.main_col.root.groupbys.slice(0, new_groupby_length); + } else { + main_row_header.groupbys = this.main_row.groupbys; + main_col_header.groupbys = this.main_col.groupbys; + } + main_row_header.other_root = main_col_header; + main_col_header.other_root = main_row_header; + this.main_row.root = main_row_header; + this.main_col.root = main_col_header; + }, + update_tree: function (old_tree, new_tree) { + if (!old_tree.expanded) { + new_tree.expanded = false; + new_tree.children = []; + return; + } + var tree, j, old_title, new_title; + for (var i = 0; i < new_tree.children.length; i++) { + tree = undefined; + new_title = new_tree.children[i].path[new_tree.children[i].path.length - 1]; + for (j = 0; j < old_tree.children.length; j++) { + old_title = old_tree.children[j].path[old_tree.children[j].path.length - 1]; + if (old_title === new_title) { + tree = old_tree.children[j]; + break; + } + } + if (tree) this.update_tree(tree, new_tree.children[i]); + else { + new_tree.children[i].expanded = false; + new_tree.children[i].children = []; + } + } + }, + sanitize_value: function (value, field) { + if (value === false) return _t("Undefined"); + if (value instanceof Array) return value[1]; + if (field && this.fields[field] && (this.fields[field].type === 'selection')) { + var selected = _.where(this.fields[field].selection, {0: value})[0]; + return selected ? selected[1] : value; + } + return value; + }, + make_header: function (data_pt, root, i, j, parent_header) { + var attrs = data_pt.attributes, + value = attrs.value, + title = value.length ? value[value.length - 1] : total; + var path, parent; + if (parent_header) { + path = parent_header.path.concat(title); + parent = parent_header; + } else { + path = [total].concat(value.slice(i,j-1)); + parent = value.length ? find_path_in_tree(root, path) : null; + } + var header = { + id: generate_id(), + expanded: false, + domain: data_pt.model._domain, + children: [], + path: value.length ? parent.path.concat(title) : [title] + }; + this.headers[header.id] = header; + header.root = root || header; + if (parent) { + parent.children.push(header); + parent.expanded = true; + } + return header; + }, + get_header: function (data_pt, root, i, j, parent) { + var path; + if (parent) { + path = parent.path.concat(data_pt.attributes.value.slice(i,j)); + } else { + path = [total].concat(data_pt.attributes.value.slice(i,j)); + } + return find_path_in_tree(root, path); + }, + display_table: function () { + if (!this.active_measures.length || !this.has_data) { + return this.$table_container.empty().append(QWeb.render('PivotView.nodata')); + } + var $fragment = $(document.createDocumentFragment()), + $table = $('') + .addClass('table table-hover table-condensed') + .appendTo($fragment), + $thead = $('').appendTo($table), + $tbody = $('').appendTo($table), + headers = this.compute_headers(), + rows = this.compute_rows(), + nbr_measures = this.active_measures.length, + nbr_cols = (this.main_col.width === 1) ? nbr_measures : (this.main_col.width + 1)*nbr_measures; + for (var i=0; i < nbr_cols + 1; i++) { + $table.prepend($('')); + } + this.draw_headers($thead, headers); + this.draw_rows($tbody, rows); + $table.on('hover', 'td', function () { + $table.find('col:eq(' + $(this).index()+')').toggleClass('hover'); + }); + this.$table_container.empty().append($fragment); + this.$table_container.find('.oe-opened,.oe-closed').tooltip(); + }, + draw_headers: function ($thead, headers) { + var self = this, + i, j, cell, $row, $cell, + display_total = this.main_col.width > 1; + + var groupby_labels = _.map(this.main_col.groupbys, function (gb) { + return self.groupable_fields[gb.split(':')[0]].string; + }); + + for (i = 0; i < headers.length; i++) { + $row = $(''); + for (j = 0; j < headers[i].length; j++) { + cell = headers[i][j]; + $cell = $(''); + $header = $('
') + .text(cell.title) + .attr('rowspan', cell.height) + .attr('colspan', cell.width); + if (cell.total) { + $cell.addClass('oe-total'); + } + if (i > 0) { + $cell.attr('title', groupby_labels[i-1]); + } + if (cell.expanded !== undefined) { + $cell.addClass(cell.expanded ? 'oe-opened' : 'oe-closed'); + $cell.data('id', cell.id); + } + if (cell.measure) { + $cell.addClass('measure-row text-muted') + .text(this.measures[cell.measure].string) + .toggleClass('oe-total', cell.is_bold); + $cell.data('id', cell.id).data('measure', cell.measure); + if (cell.id === this.sorted_column.id && cell.measure === this.sorted_column.measure) { + $cell.addClass('o-sorted o-sorted-' + this.sorted_column.order); + } + } + $row.append($cell); + } + $thead.append($row); + } + }, + draw_rows: function ($tbody, rows) { + var self = this, + i, j, value, $row, $cell, $header, + nbr_measures = this.active_measures.length, + length = rows[0].values.length, + display_total = this.main_col.width > 1; + + var groupby_labels = _.map(this.main_row.groupbys, function (gb) { + return self.groupable_fields[gb.split(':')[0]].string; + }); + var measure_types = this.active_measures.map(function (name) { + return self.measures[name].type; + }); + for (i = 0; i < rows.length; i++) { + $row = $('
') + .text(rows[i].title) + .data('id', rows[i].id) + .css('padding-left', (5 + rows[i].indent * 30) + 'px') + .addClass(rows[i].expanded ? 'oe-opened' : 'oe-closed'); + if (rows[i].indent > 0) $header.attr('title', groupby_labels[rows[i].indent - 1]); + $header.appendTo($row); + for (j = 0; j < length; j++) { + value = format_value(rows[i].values[j], {type: measure_types[j % nbr_measures]}); + $cell = $('') + .data('id', rows[i].id) + .data('col_id', rows[i].col_ids[Math.floor(j / nbr_measures)]) + .toggleClass('oe-empty', !value) + .text(value); + if (((j >= length - this.active_measures.length) && display_total) || i === 0){ + $cell.css('font-weight', 'bold'); + } + $row.append($cell); + } + $tbody.append($row); + } + }, + compute_headers: function () { + var self = this, + main_col_dims = this.get_header_width_depth(this.main_col.root), + depth = main_col_dims.depth, + width = main_col_dims.width, + nbr_measures = this.active_measures.length, + result = [[{width:1, height: depth + 1}]], + col_ids = []; + this.main_col.width = width; + traverse_tree(this.main_col.root, function (header) { + var index = header.path.length - 1, + cell = { + width: self.get_header_width(header) * nbr_measures, + height: header.expanded ? 1 : depth - index, + title: header.path[header.path.length-1], + id: header.id, + expanded: header.expanded, + }; + if (!header.expanded) col_ids.push(header.id); + if (result[index]) result[index].push(cell); + else result[index] = [cell]; + }); + col_ids.push(this.main_col.root.id); + this.main_col.width = width; + if (width > 1) { + var total_cell = {width:nbr_measures, height: depth, title:""}; + if (nbr_measures === 1) { + total_cell.title = this.measures[this.active_measures[0]].string; + total_cell.total = true; + } + result[0].push(total_cell); + } + var nbr_cols = width === 1 ? nbr_measures : (width + 1)*nbr_measures; + for (var i = 0, measure_row = [], measure; i < nbr_cols; i++) { + measure = this.active_measures[i % nbr_measures]; + measure_row.push({ + measure: measure, + is_bold: (width > 1) && (i >= nbr_measures*width), + id: col_ids[Math.floor(i / nbr_measures)], + }); + } + result.push(measure_row); + return result; + }, + get_header_width: function (header) { + var self = this; + if (!header.children.length) return 1; + if (!header.expanded) return 1; + return header.children.reduce(function (s, c) { + return s + self.get_header_width(c); + }, 0); + }, + get_header_width_depth: function (header) { + var depth = 1, + width = 0; + traverse_tree (header, function (hdr) { + depth = Math.max(depth, hdr.path.length); + if (!hdr.expanded) width++; + }); + return {width: width, depth: depth}; + }, + get_header_depth: function (header) { + var depth = 1; + traverse_tree(header, function (hdr) { + depth = Math.max(depth, hdr.path.length); + }); + return depth; + }, + compute_rows: function () { + var self = this, + aggregates, i, + result = [], + nbr_measures = this.active_measures.length; + traverse_tree(this.main_row.root, function (header) { + var values = [], + col_ids = []; + result.push({ + id: header.id, + col_ids: col_ids, + indent: header.path.length - 1, + title: header.path[header.path.length-1], + expanded: header.expanded, + values: values, + }); + traverse_tree(self.main_col.root, add_cells, header.id, values, col_ids); + if (self.main_col.width > 1) { + aggregates = self.get_value(header.id, self.main_col.root.id); + for (i = 0; i < self.active_measures.length; i++) { + values.push(aggregates && aggregates[self.active_measures[i]]); + } + col_ids.push( self.main_col.root.id); + } + }); + return result; + function add_cells (col_hdr, row_id, values, col_ids) { + if (col_hdr.expanded) return; + col_ids.push(col_hdr.id); + aggregates = self.get_value(row_id, col_hdr.id); + for (i = 0; i < self.active_measures.length; i++) { + values.push(aggregates && aggregates[self.active_measures[i]]); + } + } + }, + get_value: function (id1, id2) { + if ((id1 in this.cells) && (id2 in this.cells[id1])) { + return this.cells[id1][id2]; + } + if (id2 in this.cells) return this.cells[id2][id1]; + }, + flip: function () { + var temp = this.main_col; + this.main_col = this.main_row; + this.main_row = temp; + this.display_table(); + }, + toggle_measure: function (field) { + if (_.contains(this.active_measures, field)) { + this.active_measures = _.without(this.active_measures, field); + this.display_table(); + } else { + this.active_measures.push(field); + this.load_data().then(this.display_table.bind(this)); + } + }, + dowload_table: function () { + openerp.web.blockUI(); + var nbr_measures = this.active_measures.length, + headers = this.compute_headers(), + measure_row = nbr_measures > 1 ? _.last(headers) : [], + rows = this.compute_rows(), + i, j, value; + headers[0].splice(0,1); + // process measure_row + for (i = 0; i < measure_row.length; i++) { + measure_row[i].measure = this.measures[measure_row[i].measure].string; + } + // process all rows + for (i =0, j, value; i < rows.length; i++) { + for (j = 0; j < rows[i].values.length; j++) { + value = rows[i].values[j]; + rows[i].values[j] = { + is_bold: (i === 0) || ((this.main_col.width > 1) && (j >= rows[i].values.length - nbr_measures)), + value: (value === undefined) ? "" : value, + }; + } + } + var table = { + headers: nbr_measures > 1 ? _.initial(headers) : headers, + measure_row: measure_row, + rows: rows, + nbr_measures: nbr_measures, + title: this.title, + }; + var c = openerp.webclient.crashmanager; + this.session.get_file({ + url: '/web/pivot/export_xls', + data: {data: JSON.stringify(table)}, + complete: openerp.web.unblockUI, + error: c.rpc_error.bind(c) + }); }, }); +// helpers +var id = -1; + +function generate_id () { + return ++id; +} + +function traverse_tree(root, f, arg1, arg2, arg3) { + f(root, arg1, arg2, arg3); + if (!root.expanded) return; + for (var i = 0; i < root.children.length; i++) { + traverse_tree(root.children[i], f, arg1, arg2, arg3); + } +} + +function find_path_in_tree(root, path) { + var i, + l = root.path.length; + if (l === path.length) { + return (root.path[l-1] === path[l - 1]) ? root : null; + } + for (i = 0; i < root.children.length; i++) { + if (root.children[i].path[l] === path[l]) { + return find_path_in_tree(root.children[i], path); + } + } + return null; +} })(); - diff --git a/addons/web/static/src/js/views.js b/addons/web/static/src/js/views.js index bcdd81ac1a5..622826996ab 100644 --- a/addons/web/static/src/js/views.js +++ b/addons/web/static/src/js/views.js @@ -337,6 +337,7 @@ instance.web.ActionManager = instance.web.Widget.extend({ sidebar : !popup && !inline, pager : (!popup || !form) && !inline, display_title : !popup, + headless: (popup || inline) && form, search_disable_custom_filters: action.context && action.context.search_disable_custom_filters }); action.menu_id = options.action_menu_id; @@ -797,13 +798,15 @@ instance.web.ViewManager = instance.web.Widget.extend({ search: function(domains, contexts, groupbys) { var self = this, controller = this.active_view.controller, - action_context = this.action.context || {}; + action_context = this.action.context || {}, + view_context = controller.get_context(); instance.web.pyeval.eval_domains_and_contexts({ domains: [this.action.domain || []].concat(domains || []), - contexts: [action_context].concat(contexts || []), + contexts: [action_context, view_context].concat(contexts || []), group_by_seq: groupbys || [] }).done(function (results) { if (results.error) { + self.active_search.resolve(); throw new Error( _.str.sprintf(_t("Failed to evaluate search criterions")+": \n%s", JSON.stringify(results.error))); @@ -1408,6 +1411,9 @@ instance.web.View = instance.web.Widget.extend({ var attrs = this.fields_view.arch.attrs; return (action in attrs) ? JSON.parse(attrs[action]) : true; }, + get_context: function () { + return {} + }, }); /** diff --git a/addons/web/static/src/xml/base.xml b/addons/web/static/src/xml/base.xml index d37535cc8dc..e5b8286bdb9 100644 --- a/addons/web/static/src/xml/base.xml +++ b/addons/web/static/src/xml/base.xml @@ -508,7 +508,7 @@
-
+
@@ -913,26 +913,82 @@
-
+ +
+ + + +
+
+ + +
+
+ +
+
+

+

+
+
+ + +
+
+
+
- - - + +
+ + + +

No data to display.

@@ -1672,7 +1728,7 @@ Use by default
  • - Share with all users + Share with all users
  • diff --git a/addons/web/views/webclient_templates.xml b/addons/web/views/webclient_templates.xml index 08b0f73118f..b7f383d61a0 100644 --- a/addons/web/views/webclient_templates.xml +++ b/addons/web/views/webclient_templates.xml @@ -73,6 +73,10 @@ + + + + @@ -100,6 +104,7 @@ + diff --git a/addons/web_graph/__init__.py b/addons/web_graph/__init__.py deleted file mode 100644 index ee5959455ad..00000000000 --- a/addons/web_graph/__init__.py +++ /dev/null @@ -1 +0,0 @@ -import controllers diff --git a/addons/web_graph/__openerp__.py b/addons/web_graph/__openerp__.py deleted file mode 100644 index 85c1283dfad..00000000000 --- a/addons/web_graph/__openerp__.py +++ /dev/null @@ -1,24 +0,0 @@ -{ - 'name': 'Graph Views', - 'category': 'Hidden', - 'description': """ -Graph Views for Web Client. -=========================== - - * Parse a view but allows changing dynamically the presentation - * Graph Types: pie, lines, areas, bars, radar - * Stacked/Not Stacked for areas and bars - * Legends: top, inside (top/left), hidden - * Features: download as PNG or CSV, browse data grid, switch orientation - * Unlimited "Group By" levels (not stacked), two cross level analysis (stacked) -""", - 'version': '3.0', - 'depends': ['web'], - 'data' : [ - 'views/web_graph.xml', - ], - 'qweb' : [ - 'static/src/xml/*.xml', - ], - 'auto_install': True -} diff --git a/addons/web_graph/controllers/__init__.py b/addons/web_graph/controllers/__init__.py deleted file mode 100644 index 039d9715fab..00000000000 --- a/addons/web_graph/controllers/__init__.py +++ /dev/null @@ -1 +0,0 @@ -import main \ No newline at end of file diff --git a/addons/web_graph/doc/index.rst b/addons/web_graph/doc/index.rst deleted file mode 100644 index 8305dddfc44..00000000000 --- a/addons/web_graph/doc/index.rst +++ /dev/null @@ -1,183 +0,0 @@ - -======================================== -OpenERP BI View (a.k.a. Graph View) -======================================== - -Outline -''''''' - -* BI in Odoo -* Adding a Graph view -* Graph view parameters -* Fields: measures and dimensions -* Graph view architecture - -BI in Odoo -'''''''''' - -The graph view gives a way to look at your data and to visualize it in various ways. Currently, it supports four main modes: - -* **pivot**: it is probably the most important mode. It is a multidimensional table that you can configure to display any possible cube for your data. -* **bar**: displays a bar chart -* **pie**: displays a pie chart -* **line**: displays a line chart - -The basic idea is that you can work in pivot table mode to select the desired dimensions, use the search bar to select appropriate filters, and switch to various chart modes when your data is ready. - -**Note**: the technical name for the graph view is *web_graph*. - -Fields: measures and dimensions -''''''''''''''''''''''''''''''' - -To do its work, the graph view understands two kind of fields: - -* **measure**: a measure is a field that can be aggregated (right now, the only aggregation method is the sum). Every field of type *integer* or *float* (except the *id* field) can be used as a measure. -* **dimension**: A dimension is a field that can be grouped. That means pretty much every non numeric fields. - - -When loading, the graph view reads the list of fields from the model. The measures are then obtained from that list. The dimensions are right now obtained from the *Group By* filters category defined in the search bar, but in a later release, the dimensions will be every groupable fields in the model. - - -**Note**: it is important to note that the fields value are obtained with the *read_group* method in the ORM. It means that it directly reads from the database, and can not evaluate non-stored functional fields. If you want to use functional fields as measure or dimension, make sure to store them in the database (with the *stored=true* attribute) - - -Adding a Graph View -''''''''''''''''''' - -In general, the process to add a graph view is: - -1. register a graph view in a xml file. For example, this code registers a graph view for the model *project.task*. The *graph* tag is where the graph view default parameters are defined. These parameters will be explained in the next section. - -.. code-block:: xml - - - project.task.graph - project.task - - - - - - - - - -2. Add the graph view to an action (of course, if there is no action yet, an action has to be created as well). In this example, the *graph* value in the view_mode field is where the web client will see that a graph view as to be created when the action *action_view_task* is triggered. - -.. code-block:: xml - - - ... - kanban,tree,form,calendar,gantt,graph - ... - -3. If necessary, force the correct view with its id. The way the client operates is quite simple: it will pick the lowest priority available view for a given model. If this behaviour is not what you need, you can force it with the *view_id* field: - -.. code-block:: xml - - - - -Graph view parameters -'''''''''''''''''''''' - -In *graph* tag: ---------------- - -* string: title of the graph -* stacked: if bar chart is stacked/not stacked (default=false) -* type: mode (pivot, bar, pie, line) (default=bar). This parameter determines the mode in which the graph view will be when it loads. - -The *type* attribute: ---------------------- - -The *graph* tag can contain a number of *field* subtags. These fields should have a name attribute (corresponding to the name of a field in the corresponding model). The other main attribute is *type*. Here are its possible values: - -* row : the field will be grouped by rows (dimension) -* col : the field will be grouped by cols (dimension) -* measure : the field will be aggregated -* if no type, measure by default - -The order is important: for example if two fields are grouped by row, then the first one that appears in the xml description will be the first one used to group, and the second will be used as a way to define sub groups. - -Date/datetime -------------- - -Dates and datetimes are always a little tricky. There is a special syntax for grouping them by intervals. Most of the time, the interval can be specified as a suffix: - -* field_date:day, -* field_date:week, -* field_date:month (default) -* field_date:quarter, -* field_date:year - -For example, - -.. code-block:: xml - - - -But to describe a graph view in xml, this would fail the xml validation ("date_followup:week" is not a valid field). In that case, the graph view can be described with an "interval" attribute. For example, - -.. code-block:: xml - - - - - - - -Example: --------- -Here is an example of a graph view defined for the model *crm.lead.report*. It will open in pivot table mode. If it is switched to bar chart mode, the bars will be stacked. The data will be grouped according to the date_deadline field in rows, and the columns will be the various stages of an opportunity. Also, the *planned_revenue* field will be used as a measure. - -.. code-block:: xml - - - crm.opportunity.report.graph - crm.lead.report - - - - - - - - - -**Note**: the old graph view syntax still works (for example, operator="+"), but it is a good idea to use the new syntax whenever possible. - - - -Graph view architecture -''''''''''''''''''''''' - -Overview --------- - -The general design of the graph view is quite simple. It is basically a javascript addon, so it lives in the client. When it needs data from the model, it makes an async request to the server (only read_group calls), and displays the result as soon as it gets it. - -So, it means that the aggregation is done by the database (hence the constraint that functional fields need to be stored). - -Also, note that it is basically *lazy*: it only request the data that it needs. For example, if you drill down in a pivot table, it will only request the data corresponding to the subgroups. - - -Graph view ----------- - -The graph view (addon *web_graph*) is actually made out of three parts: - -* **pivot table**: this is the part that keeps the data in memory and takes care of calling the ORM with ajax calls. -* **graph widget**: this is a normal Odoo widget that takes care of displaying the data (the graph view is actually managed by a large widget) and interacting with the user -* **graph view**: its task is to interact with the web client. So, basically, it only needs to instantiate a graph widget, and communicating both ways with the search view and the widget. - -Because of that design, it is possible (for example, in a client action) to display only a widget without the graph view. The widget has the full power of a normal graph view. - -Cross-model BI --------------- - -Due to its design, it is not possible to display a graph view for more than one model at a time. A graph view is tied to one and only one model. - -However, a workaround is to create a new model that contains all the necessary data. That model can fetch its data from a postgres view (so, it can view, but not edit the data). It means that you can define any desired field from any table. However, be careful because doing so bypass the security checks from the ORM. - -Right now, most reporting views work that way, by defining custom views. \ No newline at end of file diff --git a/addons/web_graph/i18n/ar.po b/addons/web_graph/i18n/ar.po deleted file mode 100644 index 6d8cf257d24..00000000000 --- a/addons/web_graph/i18n/ar.po +++ /dev/null @@ -1,195 +0,0 @@ -# Arabic translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Arabic \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "الرسم البياني" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/bg.po b/addons/web_graph/i18n/bg.po deleted file mode 100644 index f7eb327999f..00000000000 --- a/addons/web_graph/i18n/bg.po +++ /dev/null @@ -1,195 +0,0 @@ -# Bulgarian translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Bulgarian \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Диаграма" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/bn.po b/addons/web_graph/i18n/bn.po deleted file mode 100644 index 95cd96f80ee..00000000000 --- a/addons/web_graph/i18n/bn.po +++ /dev/null @@ -1,195 +0,0 @@ -# Bengali translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Bengali \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "লেখচিত্র" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/bs.po b/addons/web_graph/i18n/bs.po deleted file mode 100644 index 0761ba893dd..00000000000 --- a/addons/web_graph/i18n/bs.po +++ /dev/null @@ -1,195 +0,0 @@ -# Bosnian translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Bosnian \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Graf" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/ca.po b/addons/web_graph/i18n/ca.po deleted file mode 100644 index 5fffa30a2d3..00000000000 --- a/addons/web_graph/i18n/ca.po +++ /dev/null @@ -1,195 +0,0 @@ -# Catalan translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Catalan \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/cs.po b/addons/web_graph/i18n/cs.po deleted file mode 100644 index 7f450fa286f..00000000000 --- a/addons/web_graph/i18n/cs.po +++ /dev/null @@ -1,195 +0,0 @@ -# Czech translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \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: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Graf" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/da.po b/addons/web_graph/i18n/da.po deleted file mode 100644 index ef697efccd7..00000000000 --- a/addons/web_graph/i18n/da.po +++ /dev/null @@ -1,195 +0,0 @@ -# Danish translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Danish \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Graf" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/de.po b/addons/web_graph/i18n/de.po deleted file mode 100644 index e8ababf9b9e..00000000000 --- a/addons/web_graph/i18n/de.po +++ /dev/null @@ -1,199 +0,0 @@ -# German translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-21 07:12+0000\n" -"Last-Translator: Ferdinand \n" -"Language-Team: German \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "Balkendiagramm" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "Tag" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "Alle aufklappen" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "Daten exportieren" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Diagramm" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "Heat Map" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "Heat Map (Spalten)" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "Heat Map (Zeilen)" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "Liniendiagramm" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "Werte" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "Monat" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" -"Keine Daten für diese Graphik vorhanden. Fügen Sie einige Datensätze hinzu, " -"oder \n" -" definieren Sie zumindest eine Masseinheit und löschen " -"Sie alle Filter inder Suchzeile." - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "Es liegen keine Daten zur Anzeige vor" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "Tortendiagramm" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "Anzahl" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "Quartal" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "Daten erneut laden" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "Achsen vertauschen" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "Tabellenmodus" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "Gesamt" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "Undefiniert" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "Woche" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "Jahr" diff --git a/addons/web_graph/i18n/el.po b/addons/web_graph/i18n/el.po deleted file mode 100644 index 57877afa2d8..00000000000 --- a/addons/web_graph/i18n/el.po +++ /dev/null @@ -1,195 +0,0 @@ -# Greek translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Greek \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Γράφημα" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/en_AU.po b/addons/web_graph/i18n/en_AU.po deleted file mode 100644 index e0920d42383..00000000000 --- a/addons/web_graph/i18n/en_AU.po +++ /dev/null @@ -1,195 +0,0 @@ -# English (Australia) translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: English (Australia) \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Graph" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/en_GB.po b/addons/web_graph/i18n/en_GB.po deleted file mode 100644 index 2eeb130a5e7..00000000000 --- a/addons/web_graph/i18n/en_GB.po +++ /dev/null @@ -1,198 +0,0 @@ -# English (United Kingdom) translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-09-02 15:09+0000\n" -"Last-Translator: Anthony Harrington \n" -"Language-Team: English (United Kingdom) \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "Bar Chart" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "Day" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "Expand All" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "Export Data" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Graph" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "Heat Map" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "Heat Map (columns)" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "Heat Map (rows)" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "Line Chart" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "Measures" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "Month" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "No data to display." - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "Pie Chart" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "Quantity" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "Quarter" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "Reload Data" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "Swap Axis" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "Table Mode" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "Total" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "Undefined" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "Week" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "Year" diff --git a/addons/web_graph/i18n/es.po b/addons/web_graph/i18n/es.po deleted file mode 100644 index bb01ef6d32a..00000000000 --- a/addons/web_graph/i18n/es.po +++ /dev/null @@ -1,200 +0,0 @@ -# Spanish translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-15 07:26+0000\n" -"Last-Translator: Pedro Manuel Baeza \n" -"Language-Team: Spanish \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "Gráfico de barras" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "Día" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "Expandir todo" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "Exportar datos" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Gráfico" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "Mapa crítico" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "Mapa crítico (columnas)" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "Mapa crítico (filas)" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "Gráfico de líneas" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "Medidas" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "Mes" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" -"No hay datos disponibles para este gráfico. Pruebe a añadir algunos " -"registros\n" -"o asegúrese que hay al menos una medida y no hay filtros activos en la " -"barra\n" -"de búsqueda." - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "Sin datos que mostrar." - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "Gráfico de tarta" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "Cantidad" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "Trimestre" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "Recargar datos" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "Intercambiar ejes" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "Modo de tabla" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "Total" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "Indefinido" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "Semana" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "Año" diff --git a/addons/web_graph/i18n/es_AR.po b/addons/web_graph/i18n/es_AR.po deleted file mode 100644 index 135d6c334a4..00000000000 --- a/addons/web_graph/i18n/es_AR.po +++ /dev/null @@ -1,195 +0,0 @@ -# Spanish (Argentina) translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Spanish (Argentina) \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Gráfico" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/es_CL.po b/addons/web_graph/i18n/es_CL.po deleted file mode 100644 index ec2bc4dc277..00000000000 --- a/addons/web_graph/i18n/es_CL.po +++ /dev/null @@ -1,195 +0,0 @@ -# Spanish (Chile) translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Spanish (Chile) \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Gráfico" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/es_CR.po b/addons/web_graph/i18n/es_CR.po deleted file mode 100644 index 053bbb903d4..00000000000 --- a/addons/web_graph/i18n/es_CR.po +++ /dev/null @@ -1,195 +0,0 @@ -# Spanish (Costa Rica) translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Spanish (Costa Rica) \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Gráfico" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/es_DO.po b/addons/web_graph/i18n/es_DO.po deleted file mode 100644 index d38dc3a8745..00000000000 --- a/addons/web_graph/i18n/es_DO.po +++ /dev/null @@ -1,195 +0,0 @@ -# Spanish (Dominican Republic) translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Spanish (Dominican Republic) \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Gráfico" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/es_EC.po b/addons/web_graph/i18n/es_EC.po deleted file mode 100644 index 4ff4e14a66a..00000000000 --- a/addons/web_graph/i18n/es_EC.po +++ /dev/null @@ -1,195 +0,0 @@ -# Spanish (Ecuador) translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Spanish (Ecuador) \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Gráfico" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/es_MX.po b/addons/web_graph/i18n/es_MX.po deleted file mode 100644 index b8974fb0863..00000000000 --- a/addons/web_graph/i18n/es_MX.po +++ /dev/null @@ -1,195 +0,0 @@ -# Spanish (Mexico) translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Spanish (Mexico) \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Gráfico" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/et.po b/addons/web_graph/i18n/et.po deleted file mode 100644 index b474ae82465..00000000000 --- a/addons/web_graph/i18n/et.po +++ /dev/null @@ -1,195 +0,0 @@ -# Estonian translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Estonian \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Graafik" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/fa.po b/addons/web_graph/i18n/fa.po deleted file mode 100644 index 4bbec0cc876..00000000000 --- a/addons/web_graph/i18n/fa.po +++ /dev/null @@ -1,195 +0,0 @@ -# Persian translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Persian \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "گراف" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/fi.po b/addons/web_graph/i18n/fi.po deleted file mode 100644 index ed7fc55032d..00000000000 --- a/addons/web_graph/i18n/fi.po +++ /dev/null @@ -1,195 +0,0 @@ -# Finnish translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Finnish \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Kuvaaja" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/fr.po b/addons/web_graph/i18n/fr.po deleted file mode 100644 index 0c49fb7b974..00000000000 --- a/addons/web_graph/i18n/fr.po +++ /dev/null @@ -1,195 +0,0 @@ -# French translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: French \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Graphique" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/fr_CA.po b/addons/web_graph/i18n/fr_CA.po deleted file mode 100644 index b2eed2b7bc4..00000000000 --- a/addons/web_graph/i18n/fr_CA.po +++ /dev/null @@ -1,195 +0,0 @@ -# French (Canada) translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: French (Canada) \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/gl.po b/addons/web_graph/i18n/gl.po deleted file mode 100644 index db0523923b0..00000000000 --- a/addons/web_graph/i18n/gl.po +++ /dev/null @@ -1,195 +0,0 @@ -# Galician translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Galician \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Gráfico" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/gu.po b/addons/web_graph/i18n/gu.po deleted file mode 100644 index a65b3b2a1bd..00000000000 --- a/addons/web_graph/i18n/gu.po +++ /dev/null @@ -1,195 +0,0 @@ -# Gujarati translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Gujarati \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "આલેખ" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/he.po b/addons/web_graph/i18n/he.po deleted file mode 100644 index ace912b4d9d..00000000000 --- a/addons/web_graph/i18n/he.po +++ /dev/null @@ -1,195 +0,0 @@ -# Hebrew translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Hebrew \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/hr.po b/addons/web_graph/i18n/hr.po deleted file mode 100644 index 21897f63210..00000000000 --- a/addons/web_graph/i18n/hr.po +++ /dev/null @@ -1,195 +0,0 @@ -# Croatian translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Croatian \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Dijagram" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/hu.po b/addons/web_graph/i18n/hu.po deleted file mode 100644 index 845f0dc6377..00000000000 --- a/addons/web_graph/i18n/hu.po +++ /dev/null @@ -1,199 +0,0 @@ -# Hungarian translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-09-04 09:15+0000\n" -"Last-Translator: krnkris \n" -"Language-Team: Hungarian \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "Oszlopdiagram" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "Nap" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "Összes kibontása" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "Adatok exportálása" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Grafikon" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "Tűzvonal térkép" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "Tűzvonal térkép (oszlopok)" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "Tűzvonal térkép (sorok)" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "Vonaldiagram" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "Mérések" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "Hónap" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" -"Nincs adat ehhez a grafikonhoz. Próbáljon hozzáadna egy pár jegyzetet, vagy " -"győződjön\n" -" meg, hogy legalább egy méret van és nincs aktív szűrő a " -"keresés sávban." - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "Nincs megjeleníthatő adat." - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "Torta(szelet) diagram" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "Mennyiség" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "Negyed" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "Adat újratöltése" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "Tengely csere" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "Asztal mód" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "Összesen" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "Nincs meghatározva" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "Hét" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "Év" diff --git a/addons/web_graph/i18n/it.po b/addons/web_graph/i18n/it.po deleted file mode 100644 index 7192e91b58d..00000000000 --- a/addons/web_graph/i18n/it.po +++ /dev/null @@ -1,195 +0,0 @@ -# Italian translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Italian \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Grafico" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/ja.po b/addons/web_graph/i18n/ja.po deleted file mode 100644 index 23f75a58e02..00000000000 --- a/addons/web_graph/i18n/ja.po +++ /dev/null @@ -1,195 +0,0 @@ -# Japanese translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Japanese \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "グラフ" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/ka.po b/addons/web_graph/i18n/ka.po deleted file mode 100644 index 2af82fa7e63..00000000000 --- a/addons/web_graph/i18n/ka.po +++ /dev/null @@ -1,195 +0,0 @@ -# Georgian translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Georgian \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "გრაფიკი" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/ko.po b/addons/web_graph/i18n/ko.po deleted file mode 100644 index e42a8b7d35b..00000000000 --- a/addons/web_graph/i18n/ko.po +++ /dev/null @@ -1,195 +0,0 @@ -# Korean translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Korean \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "그래프" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/lt.po b/addons/web_graph/i18n/lt.po deleted file mode 100644 index 870af8589c7..00000000000 --- a/addons/web_graph/i18n/lt.po +++ /dev/null @@ -1,195 +0,0 @@ -# Lithuanian translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Lithuanian \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Diagrama" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/mk.po b/addons/web_graph/i18n/mk.po deleted file mode 100644 index bafb3be0720..00000000000 --- a/addons/web_graph/i18n/mk.po +++ /dev/null @@ -1,195 +0,0 @@ -# Macedonian translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Macedonian \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "График" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/mn.po b/addons/web_graph/i18n/mn.po deleted file mode 100644 index 60fd4db33dc..00000000000 --- a/addons/web_graph/i18n/mn.po +++ /dev/null @@ -1,195 +0,0 @@ -# Mongolian translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Mongolian \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "График" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/nb.po b/addons/web_graph/i18n/nb.po deleted file mode 100644 index 546264fc4d8..00000000000 --- a/addons/web_graph/i18n/nb.po +++ /dev/null @@ -1,195 +0,0 @@ -# Norwegian Bokmal translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Norwegian Bokmal \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Diagram" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/nl.po b/addons/web_graph/i18n/nl.po deleted file mode 100644 index a131d80da14..00000000000 --- a/addons/web_graph/i18n/nl.po +++ /dev/null @@ -1,199 +0,0 @@ -# Dutch translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-09-17 08:32+0000\n" -"Last-Translator: Erwin van der Ploeg (BAS Solutions) \n" -"Language-Team: Dutch \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "Staafdiagram" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "Dag" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "Alles uitvouwen" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "Gegevens exporteren" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Grafiek" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "Heat map" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "Heat map (kolommen)" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "Heat map (rijen)" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "Lijndiagram" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "Eenheden" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "Maand" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" -"Geen gegevens aanwezig voor deze grafiek. Probeer om wat records toe te " -"voegen, of controleer\n" -" dat er minstens een meting is en geen filter actief is " -"in de zoekbalk." - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "Geen gegevens om weer te geven." - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "Taartdiagram" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "Hoeveelheid" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "Kwartaal" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "Herlaad gegevens" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "Verwissel assen." - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "Tabel modus" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "Totaal" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "Niet gedefinieerd" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "Week" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "Jaar" diff --git a/addons/web_graph/i18n/nl_BE.po b/addons/web_graph/i18n/nl_BE.po deleted file mode 100644 index 69f7209d2b5..00000000000 --- a/addons/web_graph/i18n/nl_BE.po +++ /dev/null @@ -1,195 +0,0 @@ -# Dutch (Belgium) translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Dutch (Belgium) \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Grafiek" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/pl.po b/addons/web_graph/i18n/pl.po deleted file mode 100644 index c746078ab65..00000000000 --- a/addons/web_graph/i18n/pl.po +++ /dev/null @@ -1,195 +0,0 @@ -# Polish translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-19 11:43+0000\n" -"Last-Translator: Grzegorz Grzelak (OpenGLOBE.pl) \n" -"Language-Team: Polish \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "Wykres słupkowy" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "Dzień" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "Rozwiń wszystkie" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "Eksport danych" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Wykres" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "Wykres liniowy" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "Miary" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "Miesiąc" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "Brak danych do wyświetlenia." - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "Wykres kołowy" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "Ilość" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "Kwartał" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "Odśwież dane" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "Zamień osie" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "Tryb tabelowy" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "Suma" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "Niezdefiniowane" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "Tydzień" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "Rok" diff --git a/addons/web_graph/i18n/pt.po b/addons/web_graph/i18n/pt.po deleted file mode 100644 index 0e02d19ca54..00000000000 --- a/addons/web_graph/i18n/pt.po +++ /dev/null @@ -1,200 +0,0 @@ -# Portuguese translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-09-16 13:44+0000\n" -"Last-Translator: Ricardo Opencloud - Portugal " -"\n" -"Language-Team: Portuguese \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "Gráfico de Barras" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "Dia" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "Expandir Tudo" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "Exportar Dados" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Gráfico" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "Gráfico Termal" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "Gráfico Termal" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "Gráfico Termal" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "Gráfico de Linhas" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "Medidas" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "Mês" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" -"Não há dados disponíveis para este gráfico. Tente adicionar alguns " -"registros, ou certifique-se \n" -"                     que há pelo menos uma medida e sem filtro ativos na " -"barra de pesquisa." - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "Sem dados a mostrar" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "Gráfico Circular" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "Quantidade" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "Trimestre" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "Recarregar Dados" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "Trocar Eixos" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "Modo de Tabela" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "Total" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "Não definido" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "Semana" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "Ano" diff --git a/addons/web_graph/i18n/pt_BR.po b/addons/web_graph/i18n/pt_BR.po deleted file mode 100644 index 0aa72fb2463..00000000000 --- a/addons/web_graph/i18n/pt_BR.po +++ /dev/null @@ -1,199 +0,0 @@ -# Brazilian Portuguese translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-18 18:11+0000\n" -"Last-Translator: Fábio Martinelli - http://zupy.com.br " -"\n" -"Language-Team: Brazilian Portuguese \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "Gráfico de Barras" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "Dia" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "Expandir tudo" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "Exportar Dados" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Gráfico" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "Mapa de Calor" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "Mapa de Calor (colunas)" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "Mapa de Calor (linhas)" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "Gráfico de linha" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "Medidas" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "Mês" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" -"Não há dados disponíveis para este gráfico. Tente incluir alguns registros, " -"ou certifique-se que há pelo menos uma medida e não tenha filtro na barra de " -"pesquisa." - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "Nenhum dado para exibir." - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "Gráfico de Pizza" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "Quantidade" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "Trimestre" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "Recarregar dados" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "Trocar o eixo" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "Modo tabela" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "Total" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "Indefinido" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "Semana" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "Ano" diff --git a/addons/web_graph/i18n/ro.po b/addons/web_graph/i18n/ro.po deleted file mode 100644 index fa497a80739..00000000000 --- a/addons/web_graph/i18n/ro.po +++ /dev/null @@ -1,198 +0,0 @@ -# Romanian translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-10-13 16:32+0000\n" -"Last-Translator: Dorin \n" -"Language-Team: Romanian \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-10-15 20:33+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "Grafic bare" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "Zi" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "Extinde tot" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "Exportă datele" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Grafic" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "Harta fierbinte" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "Harta fierbinte (coloane)" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "Harta fierbinte (rânduri)" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "Grafic liniar" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "Indicatori" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "Luna" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" -"Nu sunt date disponibile pentru acest grafic. Încercați să adaugați câteva " -"înregistrări, sau asigurați-vă că există cel putin un indicativ și ca nu " -"sunt filtre active în bara de căutare." - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "Nu sunt date de afișat." - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "Grafic tip pie" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "Cantitate" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "Trimestru" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "Reîncărcare date" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "Schimbă axele" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "Modtabel" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "Total" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "Nedefinit(ă)" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "Săptămâna" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "Anul" diff --git a/addons/web_graph/i18n/ru.po b/addons/web_graph/i18n/ru.po deleted file mode 100644 index 624acbeb480..00000000000 --- a/addons/web_graph/i18n/ru.po +++ /dev/null @@ -1,195 +0,0 @@ -# Russian translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Russian \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "График" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/sl.po b/addons/web_graph/i18n/sl.po deleted file mode 100644 index f482e951e73..00000000000 --- a/addons/web_graph/i18n/sl.po +++ /dev/null @@ -1,195 +0,0 @@ -# Slovenian translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Slovenian \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Graf" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/sq.po b/addons/web_graph/i18n/sq.po deleted file mode 100644 index d2e3bf22387..00000000000 --- a/addons/web_graph/i18n/sq.po +++ /dev/null @@ -1,195 +0,0 @@ -# Albanian translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Albanian \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/sr@latin.po b/addons/web_graph/i18n/sr@latin.po deleted file mode 100644 index c4f8095ebb1..00000000000 --- a/addons/web_graph/i18n/sr@latin.po +++ /dev/null @@ -1,195 +0,0 @@ -# Serbian Latin translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Serbian Latin \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Grafikon" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/sv.po b/addons/web_graph/i18n/sv.po deleted file mode 100644 index 87b19689745..00000000000 --- a/addons/web_graph/i18n/sv.po +++ /dev/null @@ -1,195 +0,0 @@ -# Swedish translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Swedish \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Diagram" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/th.po b/addons/web_graph/i18n/th.po deleted file mode 100644 index 8a670408b04..00000000000 --- a/addons/web_graph/i18n/th.po +++ /dev/null @@ -1,195 +0,0 @@ -# Thai translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-14 16:14+0000\n" -"Last-Translator: FULL NAME \n" -"Language-Team: Thai \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "กราฟ" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" diff --git a/addons/web_graph/i18n/tr.po b/addons/web_graph/i18n/tr.po deleted file mode 100644 index 68963b9ef8a..00000000000 --- a/addons/web_graph/i18n/tr.po +++ /dev/null @@ -1,199 +0,0 @@ -# Turkish translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-10-03 17:15+0000\n" -"Last-Translator: Ayhan KIZILTAN \n" -"Language-Team: Turkish \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-10-04 06:51+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "Çubuk Grafiği" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "Gün" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "Tümünü Genişlet" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "Veri Dışaaktar" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "Grafik" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "Sıcaklık Haritası" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "sıcaklık Haritası (sütunlar)" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "Sıcaklık Haritası (satırlar)" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "Çizgi Grafik" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "Ölçüler" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "Ay" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "" -"Bu grafik için veri yok. Biraz kayıt eklemeye çalışın yada enazından bir " -"ölçü\n" -" olduğundan ve arama çubuğunda etkin bir süzgeç " -"olmadığından emin olun." - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "gösterilecek veri yok." - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "Pasta Grafiği" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "Miktar" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "Çeyrek" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "Veriyi Yeniden yükle" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "Eksenleri deüiştirin." - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "Tablo Modu" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "Toplam" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "Tanımlanmamış" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "Hafta" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "Yıl" diff --git a/addons/web_graph/i18n/web_graph.pot b/addons/web_graph/i18n/web_graph.pot deleted file mode 100644 index 805e6611846..00000000000 --- a/addons/web_graph/i18n/web_graph.pot +++ /dev/null @@ -1,192 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * web_graph -# -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 8.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-09-23 16:28+0000\n" -"Last-Translator: <>\n" -"Language-Team: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Plural-Forms: \n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter in the search bar." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "" - diff --git a/addons/web_graph/i18n/zh_CN.po b/addons/web_graph/i18n/zh_CN.po deleted file mode 100644 index 03e86d8b2c5..00000000000 --- a/addons/web_graph/i18n/zh_CN.po +++ /dev/null @@ -1,195 +0,0 @@ -# Chinese (Simplified) translation for openerp-web -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the openerp-web package. -# FIRST AUTHOR , 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: openerp-web\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2014-09-23 16:28+0000\n" -"PO-Revision-Date: 2014-08-20 02:35+0000\n" -"Last-Translator: Wei \"oldrev\" Li \n" -"Language-Team: Chinese (Simplified) \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-09-24 10:07+0000\n" -"X-Generator: Launchpad (build 17196)\n" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:11 -#, python-format -msgid "Bar Chart" -msgstr "柱状图" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:70 -#, python-format -msgid "Day" -msgstr "日" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:38 -#, python-format -msgid "Expand All" -msgstr "全部展开" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:44 -#, python-format -msgid "Export Data" -msgstr "导出数据" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_view.js:16 -#, python-format -msgid "Graph" -msgstr "图表" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:23 -#, python-format -msgid "Heat Map" -msgstr "热力图" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:29 -#, python-format -msgid "Heat Map (columns)" -msgstr "热力图(按列)" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:26 -#, python-format -msgid "Heat Map (rows)" -msgstr "热力图(按行)" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:14 -#, python-format -msgid "Line Chart" -msgstr "线状图" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:49 -#, python-format -msgid "Measures" -msgstr "测量" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:72 -#, python-format -msgid "Month" -msgstr "月" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:93 -#, python-format -msgid "" -"No data available for this graph. Try to add some records, or make sure\n" -" that there is at least one measure and no active filter " -"in the search bar." -msgstr "此图表无数据可供显示。请试着添加一些记录或者确保至少有一个计量值并且搜索栏里没有激活的过滤器。" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:92 -#, python-format -msgid "No data to display." -msgstr "无数据可供显示" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:17 -#, python-format -msgid "Pie Chart" -msgstr "饼图" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:59 -#: code:addons/web_graph/static/src/js/pivot_table.js:20 -#, python-format -msgid "Quantity" -msgstr "数量" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:73 -#, python-format -msgid "Quarter" -msgstr "季" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:41 -#, python-format -msgid "Reload Data" -msgstr "重载数据" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:35 -#, python-format -msgid "Swap Axis" -msgstr "交换轴线" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:8 -#, python-format -msgid "Table Mode" -msgstr "表格模式" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:474 -#: code:addons/web_graph/static/src/js/graph_widget.js:707 -#: code:addons/web_graph/static/src/js/graph_widget.js:708 -#: code:addons/web_graph/static/src/js/pivot_table.js:335 -#, python-format -msgid "Total" -msgstr "总计" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/js/graph_widget.js:615 -#: code:addons/web_graph/static/src/js/graph_widget.js:723 -#: code:addons/web_graph/static/src/js/graph_widget.js:732 -#: code:addons/web_graph/static/src/js/graph_widget.js:736 -#: code:addons/web_graph/static/src/js/graph_widget.js:741 -#: code:addons/web_graph/static/src/js/graph_widget.js:746 -#: code:addons/web_graph/static/src/js/graph_widget.js:749 -#: code:addons/web_graph/static/src/js/graph_widget.js:794 -#: code:addons/web_graph/static/src/js/graph_widget.js:823 -#: code:addons/web_graph/static/src/js/pivot_table.js:433 -#, python-format -msgid "Undefined" -msgstr "未定义" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:71 -#, python-format -msgid "Week" -msgstr "周" - -#. module: web_graph -#. openerp-web -#: code:addons/web_graph/static/src/xml/web_graph.xml:74 -#, python-format -msgid "Year" -msgstr "年" diff --git a/addons/web_graph/static/src/css/graph.css b/addons/web_graph/static/src/css/graph.css deleted file mode 100644 index fd6735961e1..00000000000 --- a/addons/web_graph/static/src/css/graph.css +++ /dev/null @@ -1,165 +0,0 @@ - /* - This is a hack for IE9 ... - Attrs : width and height are not take in consideration - */ -.openerp svg:not(:root) { - overflow: visible; -} - -.graph_pivot_mode { - position:initial; -} - -.graph_chart_mode { - position:relative; -} - -.graph_main_content td { - font-size: 12px; - margin: 45px; - border-collapse: collapse; - vertical-align: middle; - border-bottom: 1px solid #ccc; - padding: 6px 8px; - text-align: right; - color: black; -} - -.graph_main_content td:first-child { - background-color: rgb(240, 238, 238); -} - -.graph_main_content table { - margin-top: 10px; -} - -.graph_measure_selection .oe_selected { - padding-left: 0; -} - -.graph_measure_selection .oe_selected:before { - content: "\f00c"; - width: 20px; - display: inline-block; - font-family: FontAwesome; -} - -.graph_measure_selection li { - margin-left: 5px; -} - -.graph_main_content th { - font-size: 13px; - font-weight: normal; - padding: 10px 8px; - vertical-align: top; - color: black; -} - -.graph_main_content tbody td{ - border: 1px solid #b8b8b8; -} - -.graph_main_content tbody { - border-top: 1px solid black; -} - -.graph_main_content thead { - background-color: rgb(240, 238, 238); - border: 1px solid #b8b8b8; -} - -.graph_main_content thead th { - border-left: 1px solid #b8b8b8; -} - -div.graph_widget { - padding:10px; -} - -.oe_dashboard div.graph_widget { - padding:0; -} - -td.graph_border { - text-align: left; - white-space: nowrap; -} - -.graph_main_content table:not(.heatmap) tr:hover td:not(:first-child) -{ - background-color: rgb(245, 245, 245); -} - -span.field-selection { - display: none; - padding: 0; -} - -.web_graph_click:hover { - cursor: pointer; -} - -.graph_widget .dropdown-menu { - font-size: 13px; - padding: 4px 0; - background: #e8e8e8 !important; - border: 1px solid rgba(0, 0, 0, 0.15); - font-color: !important black; - text-shadow: none; - background-color: #e8e8e8; - -moz-border-radius: 3px; - -webkit-border-radius: 3px; - border-radius: 3px; -} - - -.graph_widget .dropdown-menu li a, .graph_widget .dropdown-menu li a:hover, .graph_widget .dropdown-menu li a:focus { - color: black; - text-decoration: none; -} - -th.measure_row { - color: black; - font-size: 12px; - padding:0px 5px 0px 5px ; - margin:0; -} - - -.graph-dropdown-submenu { - position: relative; -} - -.graph-dropdown-submenu>.dropdown-menu { - top: 0; - left: 100%; - margin-top: -6px; - margin-left: -1px; - -webkit-border-radius: 0 6px 6px 6px; - -moz-border-radius: 0 6px 6px; - border-radius: 0 6px 6px 6px; -} - -.graph-dropdown-submenu:hover>.dropdown-menu { - display: block; -} - -.graph-dropdown-submenu>a:after { - display: block; - content: " "; - float: right; - width: 0; - height: 0; - border-color: transparent; - border-style: solid; - border-width: 5px 0 5px 5px; - border-left-color: #ccc; - margin-top: 5px; - margin-right: -10px; -} - -.graph-dropdown-submenu:hover>a:after { - border-left-color: #fff; -} - diff --git a/addons/web_graph/static/src/js/graph_view.js b/addons/web_graph/static/src/js/graph_view.js deleted file mode 100644 index acd075dcc73..00000000000 --- a/addons/web_graph/static/src/js/graph_view.js +++ /dev/null @@ -1,297 +0,0 @@ -/*--------------------------------------------------------- - * OpenERP web_graph - *---------------------------------------------------------*/ - -/* jshint undef: false */ - -openerp.web_graph = function (instance) { -'use strict'; - -var _lt = instance.web._lt; -var _t = instance.web._t; - -instance.web.views.add('graph', 'instance.web_graph.GraphView'); - -instance.web_graph.GraphView = instance.web.View.extend({ - display_name: _lt('Graph'), - view_type: 'graph', - - // ---------------------------------------------------------------------- - // Init stuff - // ---------------------------------------------------------------------- - init: function(parent, dataset, view_id, options) { - var self = this; - this._super(parent, dataset, view_id, options); - this.dataset = dataset; - this.model = new instance.web.Model(dataset.model, {group_by_no_leaf: true}); - this.search_view = parent.searchview; - this.col_search_field = { - get_context: function() { return { col_group_by: self.graph_widget.get_col_groupbys(), - measures: self.graph_widget.get_current_measures()};}, - get_domain: function () {}, - get_groupby: function () {}, - }; - this.$buttons = options.$buttons; - this.view_loaded = $.Deferred(); - }, - - start: function() { - var $buttons = instance.web.qweb.render("graph-view-buttons"); - this.$buttons.html($buttons); - return this._super(); - }, - - view_loading: function (fields_view_get) { - var self = this, - arch = fields_view_get.arch; - - this.widget_config = { - title: arch.attrs.string, - stacked : (arch.attrs.stacked === 'True'), - mode: arch.attrs.type || 'bar', - measures: [], - row_groupby: [], - col_groupby: [], - graph_view: this, - $buttons: this.$buttons - }; - - _.each(arch.children, function (field) { - var field_name = field.attrs.name; - if (_.has(field.attrs, 'interval')) { - field_name = field.attrs.name + ':' + field.attrs.interval; - } - //noinspection FallThroughInSwitchStatementJS - switch (field.attrs.type) { - case 'measure': - self.widget_config.measures.push(field_name); - break; - case 'col': - self.widget_config.col_groupby.push(field_name); - break; - default: - if ('operator' in field.attrs) { - self.widget_config.measures.push(field_name); - break; - } - case 'row': - self.widget_config.row_groupby.push(field_name); - } - }); - if (self.widget_config.measures.length === 0) { - self.widget_config.measures.push('__count'); - } - this.view_loaded.resolve(); - }, - - do_search: function (domain, context, group_by) { - var self = this; - this.view_loaded.done(function () { - self._do_search(domain, context, group_by); - }); - }, - - _do_search: function (domain, context, group_by) { - if (this.ignore_do_search) { - this.ignore_do_search = false; - return; - } - var self = this, - groupbys = this.get_groupbys_from_searchview(), - col_group_by = groupbys.col_group_by, - measures = groupbys.measures; - - if (!this.graph_widget) { - this.widget_config.context = _.clone(context); - this.widget_config.context.group_by_no_leaf = true; - if (group_by.length) { - this.widget_config.row_groupby = group_by; - } - if (col_group_by.length) { - this.widget_config.col_groupby = col_group_by; - } - if (measures.length) { - this.widget_config.measures = measures; - } - this.graph_widget = new openerp.web_graph.Graph(this, this.model, domain, this.widget_config); - this.graph_widget.appendTo(this.$el).done(function () { - - }); - return; - } - - this.graph_widget.set(domain, group_by, col_group_by, measures); - }, - - get_groupbys_from_searchview: function () { - var result = { group_by: [], col_group_by: [], measures: []}, - searchdata = this.search_view.build_search_data(); - - _.each(searchdata.groupbys, function (data) { - data = (_.isString(data)) ? py.eval(data) : data; - result.group_by = result.group_by.concat(data.group_by); - if (data.col_group_by) { - result.col_group_by = result.col_group_by.concat(data.col_group_by); - } - if (data.measures) { - result.measures = result.measures.concat(data.measures); - } - }); - - if (result.col_group_by.length) { - return result; - } - _.each(searchdata.contexts, function (context) { - if (context.col_group_by) { - result.col_group_by = result.col_group_by.concat(context.col_group_by); - } - if (context.measures) { - result.measures = result.measures.concat(context.measures); - } - }); - return result; - }, - - do_show: function () { - this.do_push_state({}); - return this._super(); - }, - - // ---------------------------------------------------------------------- - // Search view integration - // ---------------------------------------------------------------------- - - // add groupby to the search view - register_groupby: function(row_groupby, col_groupby) { - var query = this.search_view.query, - groupbys = this.get_groupbys_from_searchview(), - search_row_groupby = groupbys.group_by, - search_col_groupby = groupbys.col_group_by, - search_measures = groupbys.measures, - row_gb_changed = !_.isEqual(_.pluck(row_groupby, 'field'), search_row_groupby), - col_gb_changed = !_.isEqual(_.pluck(col_groupby, 'field'), search_col_groupby), - measures_gb_changed = !_.isEqual(_.pluck(col_groupby, 'field'), search_col_groupby); - if (!_.has(this.search_view, '_s_groupby')) { return; } - - if (!row_gb_changed && !col_gb_changed) { - return; - } - - var custom_groups = this.get_custom_filter_groupbys(); - row_groupby = row_groupby.slice(custom_groups.groupby.length); - col_groupby = col_groupby.slice(custom_groups.col_groupby.length); - - if (row_gb_changed && col_gb_changed) { - // when two changes to the search view will be done, the method do_search - // will be called twice, once with the correct groupby and incorrect col_groupby, - // and once with correct informations. This flag is necessary to prevent the - // incorrect informations to propagate and trigger useless queries - this.ignore_do_search = true; - } - - if (row_gb_changed) { - // add row groupbys - var row_facet = this.make_row_groupby_facets(row_groupby), - row_search_facet = query.findWhere({category:'GroupBy'}); - - if (row_search_facet) { - row_search_facet.values.reset(row_facet.values, {focus_input:false}); - } else { - if (row_groupby.length) { - query.add(row_facet); - } - } - } - - if (col_gb_changed) { - // add col groupbys - var col_facet = this.make_col_groupby_facets(col_groupby), - col_search_facet = query.findWhere({category:'ColGroupBy'}); - - if (col_search_facet) { - col_search_facet.values.reset(col_facet.values, {focus_input:false}); - } else { - if (col_groupby.length) { - query.add(col_facet); - } - } - } - }, - - make_row_groupby_facets: function(groupbys) { - return { - category:'GroupBy', - values: this.make_groupby_values(groupbys, 'group_by'), - icon:'fa fa-bars', - field: this.search_view._s_groupby - }; - }, - - make_col_groupby_facets: function(groupbys) { - return { - category:'ColGroupBy', - values: this.make_groupby_values(groupbys, 'col_group_by'), - icon:'fa fa-level-down', - field: this.col_search_field - }; - }, - - make_groupby_values: function (groupbys, category) { - return _.map(groupbys, function (groupby) { - var context = {}; - context[category] = groupby.field; - var value; - if (category === 'group_by' && groupby.type !== 'date' && groupby.type !== 'datetime') { - value = groupby.filter || {attrs: {domain: [], context: context}}; - } else { - value = {attrs: {domain: [], context: context}}; - } - return { - label: groupby.string, - value: value - }; - }); - }, - - get_custom_filter_groupbys: function () { - var gb = [], - col_gb = []; - - var facet = this.search_view.query.at(0); - if (facet) { - if (facet.get('category') !== 'GroupBy' && facet.get('category') !== 'ColGroupBy') { - gb = get_groupby(facet); - col_gb = get_col_groupby(facet); - } - } - return { - groupby: gb, - col_groupby: col_gb, - } - } - -}); - -function get_groupby(facet) { - var field = facet.get('field'), - result = []; - if ('get_groupby' in field) { - result = instance.web.pyeval.sync_eval_domains_and_contexts({ - group_by_seq: field.get_groupby(facet) - }).group_by; - } - return result; -} -function get_col_groupby(facet) { - var field = facet.get('field'), - result = []; - if ('get_context' in field) { - result = instance.web.pyeval.sync_eval_domains_and_contexts({ - contexts: field.get_context(facet) - }).context.col_group_by || []; - } - return result; -} - - -}; diff --git a/addons/web_graph/static/src/js/graph_widget.js b/addons/web_graph/static/src/js/graph_widget.js deleted file mode 100644 index afb691e4790..00000000000 --- a/addons/web_graph/static/src/js/graph_widget.js +++ /dev/null @@ -1,875 +0,0 @@ - -/* jshint undef: false */ - -(function () { -'use strict'; -var QWeb = openerp.web.qweb; -var _lt = openerp.web._lt; -var _t = openerp.web._t; - -nv.dev = false; // sets nvd3 library in production mode - -openerp.web_graph.Graph = openerp.web.Widget.extend({ - template: 'GraphWidget', - - // ---------------------------------------------------------------------- - // Init stuff - // ---------------------------------------------------------------------- - init: function(parent, model, domain, options) { - this._super(parent); - this.model = model; - this.domain = domain; - this.mode = options.mode || 'pivot'; // pivot, bar, pie, line - this.visible_ui = options.visible_ui || true; - this.bar_ui = options.bar_ui || 'group'; - this.graph_view = options.graph_view || null; - this.pivot_options = options; - this.title = options.title || 'Data'; - this.$buttons = options.$buttons; - }, - - start: function() { - var self = this; - this.table = $(''); - this.$('.graph_main_content').append(this.table); - - this.$buttons.find('.oe-pivot-mode').click(function () { - self.set_mode.bind(self)('pivot'); - }); - this.$measure_list = this.$buttons.find('.oe-measure-list'); - - this.$buttons.find('.oe-bar-mode').click(function () { - self.set_mode.bind(self)('bar'); - }); - this.$buttons.find('.oe-line-mode').click(function () { - self.set_mode.bind(self)('line'); - }); - this.$buttons.find('.oe-pie-mode').click(function () { - self.set_mode.bind(self)('pie'); - }); - this.$buttons.find('.fa-expand').click(this.swap_axis.bind(this)); - this.$buttons.find('.fa-arrows-alt').click(function () { - self.pivot.expand_all().then(self.proxy('display_data')); - }); - this.$buttons.find('.fa-download').click(this.export_xls.bind(this)); - - var indexes = {'pivot': 0, 'bar': 1, 'line': 2, 'chart': 3}; - this.$('.graph_mode_selection label').eq(indexes[this.mode]).addClass('selected'); - - if (this.mode !== 'pivot') { - this.$('.graph_heatmap label').addClass('disabled'); - this.$('.graph_main_content').addClass('graph_chart_mode'); - } else { - this.$('.graph_main_content').addClass('graph_pivot_mode'); - } - // get search view - var parent = this.getParent(); - while (!(parent instanceof openerp.web.ViewManager)) { - parent = parent.getParent(); - } - this.search_view = parent.searchview; - - openerp.session.rpc('/web_graph/check_xlwt').then(function (result) { - self.$('.graph_options_selection label').last().toggle(result); - }); - - this.$buttons.find('button').tooltip(); - - return this.model.call('fields_get', { - context: this.graph_view.dataset.context - }).then(function (f) { - self.fields = f; - self.fields.__count = {field:'__count', type: 'integer', string:_t('Count')}; - self.groupby_fields = self.get_groupby_fields(); - self.measure_list = self.get_measures(); - self.add_measures_to_options(); - self.pivot_options.row_groupby = self.create_field_values(self.pivot_options.row_groupby || []); - self.pivot_options.col_groupby = self.create_field_values(self.pivot_options.col_groupby || []); - self.pivot_options.measures = self.create_field_values(self.pivot_options.measures || [{field:'__count', type: 'integer', string:'Count'}]); - self.pivot = new openerp.web_graph.PivotTable(self.model, self.domain, self.fields, self.pivot_options); - self.pivot.update_data().then(function () { - self.display_data(); - if (self.graph_view) { - self.graph_view.register_groupby(self.pivot.rows.groupby, self.pivot.cols.groupby); - } - }); - openerp.web.bus.on('click', self, function (event) { - if (self.dropdown) { - self.$row_clicked = $(event.target).closest('tr'); - self.dropdown.remove(); - self.dropdown = null; - } - }); - self.put_measure_checkmarks(); - }); - }, - - get_groupby_fields: function () { - var search_fields = this.get_search_fields(), - search_field_names = _.pluck(search_fields, 'field'), - other_fields = [], - groupable_types = ['many2one', 'char', 'boolean', 'selection', 'date', 'datetime']; - - _.each(this.fields, function (val, key) { - if (!_.contains(search_field_names, key) && - _.contains(groupable_types, val.type) && - val.store === true) { - other_fields.push({ - field: key, - string: val.string, - }); - } - }); - return search_fields.concat(other_fields); - }, - - // this method gets the fields that appear in the search view, under the - // 'Groupby' heading - get_search_fields: function () { - // this method is disabled for now. This requires extensive changes because the - // search view works quite differently: But the graph view is going to be split - // soon in pivot view and graph view. The pivot view will then properly handle - // groupbys. - return []; - var self = this; - - var groupbygroups = _(this.search_view.drawer.inputs).select(function (g) { - return g instanceof openerp.web.search.GroupbyGroup; - }); - - var filters = _.flatten(_.pluck(groupbygroups, 'filters'), true), - groupbys = _.flatten(_.map(filters, function (filter) { - var groupby = py.eval(filter.attrs.context).group_by; - if (!(groupby instanceof Array)) { groupby = [groupby]; } - return _.map(groupby, function(g) { - return {field: g, filter: filter}; - }); - })); - - return _.uniq(_.map(groupbys, function (groupby) { - var field = groupby.field, - filter = groupby.filter, - raw_field = field.split(':')[0], - string = (field === raw_field) ? filter.attrs.string : self.fields[raw_field].string; - - filter = (field === raw_field) ? filter : undefined; - - return { field: raw_field, string: string, filter: filter }; - }), false, function (filter) {return filter.field;}); - }, - - // Extracts the integer/float fields which are not 'id' - get_measures: function() { - return _.compact(_.map(this.fields, function (f, id) { - if (((f.type === 'integer') || (f.type === 'float')) && - (id !== 'id') && - (f.store !== false)) { - return {field:id, type: f.type, string: f.string}; - } - })); - }, - - add_measures_to_options: function() { - this.$measure_list.append( - _.map(this.measure_list, function (measure) { - return $('
  • ').append($('').attr('data-choice', measure.field) - .attr('href', '#') - .text(measure.string)); - })); - this.$measure_list.find('li').click(this.measure_selection.bind(this)); - }, - - // ---------------------------------------------------------------------- - // Configuration methods - // ---------------------------------------------------------------------- - set: function (domain, row_groupby, col_groupby, measures_groupby) { - if (!this.pivot) { - this.pivot_options.domain = domain; - this.pivot_options.row_groupby = row_groupby; - this.pivot_options.col_groupby = col_groupby; - this.pivot_options.measures_groupby = measures_groupby; - return; - } - var row_gbs = this.create_field_values(row_groupby), - col_gbs = this.create_field_values(col_groupby), - measures_gbs = this.create_field_values(measures_groupby), - dom_changed = !_.isEqual(this.pivot.domain, domain), - row_gb_changed = !_.isEqual(row_gbs, this.pivot.rows.groupby), - col_gb_changed = !_.isEqual(col_gbs, this.pivot.cols.groupby), - measures_gb_changed = !_.isEqual(measures_gbs, this.pivot.measures), - row_reduced = is_strict_beginning_of(row_gbs, this.pivot.rows.groupby), - col_reduced = is_strict_beginning_of(col_gbs, this.pivot.cols.groupby), - measures_reduced = is_strict_beginning_of(measures_gbs, this.pivot.measures); - - if (!dom_changed && row_reduced && !col_gb_changed && !measures_gb_changed) { - this.pivot.fold_with_depth(this.pivot.rows, row_gbs.length); - this.display_data(); - return; - } - if (!dom_changed && col_reduced && !row_gb_changed && !measures_gb_changed) { - this.pivot.fold_with_depth(this.pivot.cols, col_gbs.length); - this.display_data(); - return; - } - - if (!dom_changed && col_reduced && row_reduced && !measures_gb_changed) { - this.pivot.fold_with_depth(this.pivot.rows, row_gbs.length); - this.pivot.fold_with_depth(this.pivot.cols, col_gbs.length); - this.display_data(); - return; - } - - if (dom_changed || row_gb_changed || col_gb_changed || measures_gb_changed) { - this.pivot.set(domain, row_gbs, col_gbs, measures_gbs).then(this.proxy('display_data')); - } - - if (measures_gb_changed) { - this.put_measure_checkmarks(); - } - }, - - set_mode: function (mode) { - this.mode = mode; - - if (mode === 'pivot') { - this.$('.graph_heatmap label').removeClass('disabled'); - this.$('.graph_main_content').removeClass('graph_chart_mode').addClass('graph_pivot_mode'); - } else { - this.$('.graph_heatmap label').addClass('disabled'); - this.$('.graph_main_content').removeClass('graph_pivot_mode').addClass('graph_chart_mode'); - } - this.display_data(); - }, - - create_field_value: function (f) { - var field = (_.contains(f, ':')) ? f.split(':')[0] : f, - groupby_field = _.findWhere(this.groupby_fields, {field:field}), - string = groupby_field ? groupby_field.string : this.fields[field].string, - result = {field: f, string: string, type: this.fields[field].type }; - - if (groupby_field) { - result.filter = groupby_field.filter; - } - - return result; - }, - - create_field_values: function (field_ids) { - return _.map(field_ids, this.proxy('create_field_value')); - }, - - - get_col_groupbys: function () { - return _.pluck(this.pivot.cols.groupby, 'field'); - }, - - get_current_measures: function () { - return _.pluck(this.pivot.measures, 'field'); - }, - - // ---------------------------------------------------------------------- - // UI code - // ---------------------------------------------------------------------- - events: { - 'click .graph_mode_selection label' : 'mode_selection', - 'click .graph_measure_selection li' : 'measure_selection', - 'click .graph_options_selection label' : 'option_selection', - 'click .graph_heatmap label' : 'heatmap_mode_selection', - 'click .web_graph_click' : 'header_cell_clicked', - 'click a.field-selection' : 'field_selection', - }, - - mode_selection: function (event) { - event.preventDefault(); - var mode = event.currentTarget.getAttribute('data-mode'); - this.set_mode(mode); - }, - - measure_selection: function (event) { - event.preventDefault(); - event.stopPropagation(); - var measure_field = event.target.getAttribute('data-choice'); - var measure = { - field: measure_field, - type: this.fields[measure_field].type, - string: this.fields[measure_field].string - }; - - this.pivot.toggle_measure(measure).then(this.proxy('display_data')); - this.put_measure_checkmarks(); - }, - - put_measure_checkmarks: function () { - var self = this, - measures_li = this.$measure_list.find('li'); - measures_li.removeClass('selected'); - _.each(this.measure_list, function (measure, index) { - if (_.findWhere(self.pivot.measures, measure)) { - measures_li.eq(index).addClass('selected'); - } - }); - - }, - - option_selection: function (event) { - event.preventDefault(); - switch (event.currentTarget.getAttribute('data-choice')) { - case 'swap_axis': - this.swap_axis(); - break; - case 'expand_all': - this.pivot.expand_all().then(this.proxy('display_data')); - break; - case 'update_values': - this.pivot.update_data().then(this.proxy('display_data')); - break; - case 'export_data': - this.export_xls(); - break; - } - }, - - header_cell_clicked: function (event) { - event.preventDefault(); - event.stopPropagation(); - var id = event.target.getAttribute('data-id'), - header = this.pivot.get_header(id), - self = this; - - if (header.expanded) { - if (header.root === this.pivot.rows) { - this.fold_row(header, event); - } else { - this.fold_col(header); - } - return; - } - if (header.path.length < header.root.groupby.length) { - this.$row_clicked = $(event.target).closest('tr'); - this.expand(id); - return; - } - if (!this.groupby_fields.length) { - return; - } - - var fields = _.map(this.groupby_fields, function (field) { - return {id: field.field, value: field.string, type:self.fields[field.field.split(':')[0]].type}; - }); - if (this.dropdown) { - this.dropdown.remove(); - } - this.dropdown = $(QWeb.render('field_selection', {fields:fields, header_id:id})); - $(event.target).after(this.dropdown); - this.dropdown.css({ - position:'absolute', - left:event.originalEvent.layerX, - }); - this.$('.field-selection').next('.dropdown-menu').first().toggle(); - }, - - field_selection: function (event) { - var id = event.target.getAttribute('data-id'), - field_id = event.target.getAttribute('data-field-id'), - interval, - groupby = this.create_field_value(field_id); - event.preventDefault(); - if (this.fields[field_id].type === 'date' || this.fields[field_id].type === 'datetime') { - interval = event.target.getAttribute('data-interval'); - groupby.field = groupby.field + ':' + interval; - } - this.expand(id, groupby); - }, - - // ---------------------------------------------------------------------- - // Pivot Table integration - // ---------------------------------------------------------------------- - expand: function (header_id, groupby) { - var self = this, - header = this.pivot.get_header(header_id), - update_groupby = !!groupby; - - groupby = groupby || header.root.groupby[header.path.length]; - - this.pivot.expand(header_id, groupby).then(function () { - if (header.root === self.pivot.rows) { - // expanding rows can be done by only inserting in the dom - // console.log(event.target); - var rows = self.build_rows(header.children); - var doc_fragment = $(document.createDocumentFragment()); - rows.map(function (row) { - doc_fragment.append(self.draw_row(row, 0)); - }); - self.$row_clicked.after(doc_fragment); - } else { - // expanding cols will redraw the full table - self.display_data(); - } - if (update_groupby && self.graph_view) { - self.graph_view.register_groupby(self.pivot.rows.groupby, self.pivot.cols.groupby); - } - }); - - }, - - fold_row: function (header, event) { - var rows_before = this.pivot.rows.headers.length, - update_groupby = this.pivot.fold(header), - rows_after = this.pivot.rows.headers.length, - rows_removed = rows_before - rows_after; - - if (rows_after === 1) { - // probably faster to redraw the unique row instead of removing everything - this.display_data(); - } else { - var $row = $(event.target).parent().parent(); - $row.nextAll().slice(0,rows_removed).remove(); - } - if (update_groupby && this.graph_view) { - this.graph_view.register_groupby(this.pivot.rows.groupby, this.pivot.cols.groupby); - } - }, - - fold_col: function (header) { - var update_groupby = this.pivot.fold(header); - - this.display_data(); - if (update_groupby && this.graph_view) { - this.graph_view.register_groupby(this.pivot.rows.groupby, this.pivot.cols.groupby); - } - }, - - swap_axis: function () { - this.pivot.swap_axis(); - this.display_data(); - this.graph_view.register_groupby(this.pivot.rows.groupby, this.pivot.cols.groupby); - }, - - // ---------------------------------------------------------------------- - // Convert Pivot data structure into table structure : - // compute rows, cols, colors, cell width, cell height, ... - // ---------------------------------------------------------------------- - build_table: function(raw) { - return { - headers: this.build_headers(), - measure_row: this.build_measure_row(), - rows: this.build_rows(this.pivot.rows.headers,raw), - nbr_measures: this.pivot.measures.length, - title: this.title, - }; - }, - - build_headers: function () { - var pivot = this.pivot, - nbr_measures = pivot.measures.length, - height = _.max(_.map(pivot.cols.headers, function(g) {return g.path.length;})) + 1, - rows = []; - - _.each(pivot.cols.headers, function (col) { - var cell_width = nbr_measures * (col.expanded ? pivot.get_ancestor_leaves(col).length : 1), - cell_height = col.expanded ? 1 : height - col.path.length, - cell = {width: cell_width, height: cell_height, title: col.title, id: col.id, expanded: col.expanded}; - if (rows[col.path.length]) { - rows[col.path.length].push(cell); - } else { - rows[col.path.length] = [cell]; - } - }); - - if (pivot.get_cols_leaves().length > 1) { - rows[0].push({width: nbr_measures, height: height, title: ' ', id: pivot.main_col().id }); - } - if (pivot.cols.headers.length === 1) { - rows = [[{width: nbr_measures, height: 1, title: _t('Total'), id: pivot.main_col().id, expanded: false}]]; - } - return rows; - }, - - build_measure_row: function () { - var nbr_leaves = this.pivot.get_cols_leaves().length, - nbr_cols = nbr_leaves + ((nbr_leaves > 1) ? 1 : 0), - result = [], - add_total = this.pivot.get_cols_leaves().length > 1, - i, m; - for (i = 0; i < nbr_cols; i++) { - for (m = 0; m < this.pivot.measures.length; m++) { - result.push({ - text:this.pivot.measures[m].string, - is_bold: add_total && (i === nbr_cols - 1) - }); - } - } - return result; - }, - - make_cell: function (row, col, value, index, raw) { - var formatted_value = raw && !_.isUndefined(value) ? value : openerp.web.format_value(value, {type:this.pivot.measures[index].type}), - cell = {value:formatted_value}; - - return cell; - }, - - build_rows: function (headers, raw) { - var self = this, - pivot = this.pivot, - m, i, j, k, cell, row; - - var rows = []; - var cells, pivot_cells, values; - - var nbr_of_rows = headers.length; - var col_headers = pivot.get_cols_leaves(); - - for (i = 0; i < nbr_of_rows; i++) { - row = headers[i]; - cells = []; - pivot_cells = []; - for (j = 0; j < pivot.cells.length; j++) { - if (pivot.cells[j].x == row.id || pivot.cells[j].y == row.id) { - pivot_cells.push(pivot.cells[j]); - } - } - - for (j = 0; j < col_headers.length; j++) { - values = undefined; - for (k = 0; k < pivot_cells.length; k++) { - if (pivot_cells[k].x == col_headers[j].id || pivot_cells[k].y == col_headers[j].id) { - values = pivot_cells[k].values; - break; - } - } - if (!values) { values = new Array(pivot.measures.length);} - for (m = 0; m < pivot.measures.length; m++) { - cells.push(self.make_cell(row,col_headers[j],values[m], m, raw)); - } - } - if (col_headers.length > 1) { - var totals = pivot.get_total(row); - for (m = 0; m < pivot.measures.length; m++) { - cell = self.make_cell(row, pivot.cols.headers[0], totals[m], m, raw); - cell.is_bold = 'true'; - cells.push(cell); - } - } - rows.push({ - id: row.id, - indent: row.path.length, - title: row.title, - expanded: row.expanded, - cells: cells, - }); - } - - return rows; - }, - - // ---------------------------------------------------------------------- - // Main display method - // ---------------------------------------------------------------------- - display_data: function () { - var scroll = $(window).scrollTop(); - this.$('.graph_main_content svg').remove(); - this.$('.graph_main_content div').remove(); - this.table.empty(); - this.$('.graph_options_selection label').last().toggleClass('disabled', this.pivot.no_data); - this.width = this.$el.width(); - this.height = Math.min(Math.max(document.documentElement.clientHeight - 116 - 60, 250), Math.round(0.8*this.$el.width())); - - this.$('.graph_header').toggle(this.visible_ui); - if (this.pivot.no_data) { - this.$('.graph_main_content').append($(QWeb.render('graph_no_data'))); - } else { - if (this.mode === 'pivot') { - this.draw_table(); - $(window).scrollTop(scroll); - } else { - this.$('.graph_main_content').append($('
    ')); - this.svg = this.$('.graph_main_content svg')[0]; - this[this.mode](); - } - } - }, - - // ---------------------------------------------------------------------- - // Drawing the table - // ---------------------------------------------------------------------- - draw_table: function () { - var custom_gbs = this.graph_view.get_custom_filter_groupbys(), - frozen_rows = custom_gbs.groupby.length, - frozen_cols = custom_gbs.col_groupby.length; - - var table = this.build_table(); - var doc_fragment = $(document.createDocumentFragment()); - this.draw_headers(table.headers, doc_fragment, frozen_cols); - this.draw_measure_row(table.measure_row, doc_fragment); - this.draw_rows(table.rows, doc_fragment, frozen_rows); - this.table.append(doc_fragment); - }, - - make_header_cell: function (header, frozen) { - var cell = (_.has(header, 'cells') ? $('') : $('')) - .addClass('graph_border') - .attr('rowspan', header.height) - .attr('colspan', header.width); - var $content = $('').attr('href','#') - .text(' ' + (header.title || _t('Undefined'))) - .css('margin-left', header.indent*30 + 'px') - .attr('data-id', header.id); - if (_.has(header, 'expanded')) { - if (('indent' in header) && header.indent >= frozen) { - $content.addClass(header.expanded ? 'fa fa-minus-square' : 'fa fa-plus-square'); - $content.addClass('web_graph_click'); - } - if (!('indent' in header) && header.lvl >= frozen) { - $content.addClass(header.expanded ? 'fa fa-minus-square' : 'fa fa-plus-square'); - $content.addClass('web_graph_click'); - } - } else { - $content.css('font-weight', 'bold'); - } - return cell.append($content); - }, - - draw_headers: function (headers, doc_fragment, frozen_cols) { - var make_cell = this.make_header_cell, - $empty_cell = $('
  • '); - - _.each(headers, function (row, lvl) { - var $row = $(''); - _.each(row, function (header) { - header.lvl = lvl; - $row.append(make_cell(header, frozen_cols)); - }); - $thead.append($row); - }); - $thead.children(':first').prepend($empty_cell); - doc_fragment.append($thead); - this.$thead = $thead; - }, - - draw_measure_row: function (measure_row) { - var $row = $('').append('') - .attr('data-indent', row.indent) - .append(this.make_header_cell(row, frozen_rows)); - - var cells_length = row.cells.length; - var cells_list = []; - var cell, hcell; - - for (var j = 0; j < cells_length; j++) { - cell = row.cells[j]; - hcell = ''; - cells_list[j] = hcell; - } - return $row.append(cells_list.join('')); - }, - - draw_rows: function (rows, doc_fragment, frozen_rows) { - var rows_length = rows.length, - $tbody = $(''); - - doc_fragment.append($tbody); - for (var i = 0; i < rows_length; i++) { - $tbody.append(this.draw_row(rows[i], frozen_rows)); - } - }, - - // ---------------------------------------------------------------------- - // Drawing charts code - // ---------------------------------------------------------------------- - bar: function () { - var self = this, - dim_x = this.pivot.rows.groupby.length, - dim_y = this.pivot.cols.groupby.length, - show_controls = (this.width > 400 && this.height > 300 && dim_x + dim_y >=2), - data; - - // No groupby - if ((dim_x === 0) && (dim_y === 0)) { - data = [{key: _t('Total'), values:[{ - x: _t('Total'), - y: this.pivot.get_total()[0], - }]}]; - // Only column groupbys - } else if ((dim_x === 0) && (dim_y >= 1)){ - data = _.map(this.pivot.get_cols_with_depth(1), function (header) { - return { - key: header.title, - values: [{x:header.title, y: self.pivot.get_total(header)[0]}] - }; - }); - // Just 1 row groupby - } else if ((dim_x === 1) && (dim_y === 0)) { - data = _.map(this.pivot.main_row().children, function (pt) { - var value = self.pivot.get_total(pt)[0], - title = (pt.title !== undefined) ? pt.title : _t('Undefined'); - return {x: title, y: value}; - }); - data = [{key: self.pivot.measures[0].string, values:data}]; - // 1 row groupby and some col groupbys - } else if ((dim_x === 1) && (dim_y >= 1)) { - data = _.map(this.pivot.get_cols_with_depth(1), function (colhdr) { - var values = _.map(self.pivot.get_rows_with_depth(1), function (header) { - return { - x: header.title || _t('Undefined'), - y: self.pivot.get_values(header.id, colhdr.id)[0] || 0 - }; - }); - return {key: colhdr.title || _t('Undefined'), values: values}; - }); - // At least two row groupby - } else { - var keys = _.uniq(_.map(this.pivot.get_rows_with_depth(2), function (hdr) { - return hdr.title || _t('Undefined'); - })); - data = _.map(keys, function (key) { - var values = _.map(self.pivot.get_rows_with_depth(1), function (hdr) { - var subhdr = _.find(hdr.children, function (child) { - return ((child.title === key) || ((child.title === undefined) && (key === _t('Undefined')))); - }); - return { - x: hdr.title || _t('Undefined'), - y: (subhdr) ? self.pivot.get_total(subhdr)[0] : 0 - }; - }); - return {key:key, values: values}; - }); - } - - nv.addGraph(function () { - var chart = nv.models.multiBarChart() - .reduceXTicks(false) - .stacked(self.bar_ui === 'stack') - .showControls(show_controls); - - if (self.width / data[0].values.length < 80) { - chart.rotateLabels(-15); - chart.reduceXTicks(true); - chart.margin({bottom:40}); - } - - d3.select(self.svg) - .datum(data) - .attr('width', self.width) - .attr('height', self.height) - .call(chart); - - nv.utils.windowResize(chart.update); - return chart; - }); - - }, - - line: function () { - var self = this, - dim_x = this.pivot.rows.groupby.length, - dim_y = this.pivot.cols.groupby.length; - - var rows = this.pivot.get_rows_with_depth(dim_x), - labels = _.pluck(rows, 'title'); - - var data = _.map(this.pivot.get_cols_leaves(), function (col) { - var values = _.map(rows, function (row, index) { - return {x: index, y: self.pivot.get_values(row.id,col.id)[0] || 0}; - }); - var title = _.map(col.path, function (p) { - return p || _t('Undefined'); - }).join('/'); - if (dim_y === 0) { - title = self.pivot.measures[0].string; - } - return {values: values, key: title}; - }); - - nv.addGraph(function () { - var chart = nv.models.lineChart() - .x(function (d,u) { return u; }); - - chart.xAxis.tickFormat(function (d,u) {return labels[d];}); - - d3.select(self.svg) - .attr('width', self.width) - .attr('height', self.height) - .datum(data) - .call(chart); - - return chart; - }); - }, - - pie: function () { - var self = this, - dim_x = this.pivot.rows.groupby.length; - var data = _.map(this.pivot.get_rows_leaves(), function (row) { - var title = _.map(row.path, function (p) { - return p || _t('Undefined'); - }).join('/'); - if (dim_x === 0) { - title = self.measure_label; - } - return {x: title, y: self.pivot.get_total(row)[0]}; - }); - - nv.addGraph(function () { - var chart = nv.models.pieChart() - .width(self.width) - .height(self.height) - .color(d3.scale.category10().range()); - - d3.select(self.svg) - .datum(data) - .transition().duration(1200) - .attr('width', self.width) - .attr('height', self.height) - .call(chart); - - nv.utils.windowResize(chart.update); - return chart; - }); - }, - - // ---------------------------------------------------------------------- - // Controller stuff... - // ---------------------------------------------------------------------- - export_xls: function() { - var c = openerp.webclient.crashmanager; - openerp.web.blockUI(); - this.session.get_file({ - url: '/web_graph/export_xls', - data: {data: JSON.stringify(this.build_table(true))}, - complete: openerp.web.unblockUI, - error: c.rpc_error.bind(c) - }); - }, - -}); - -// Utility function: returns true if the beginning of array2 is array1 and -// if array1 is not array2 -function is_strict_beginning_of (array1, array2) { - if (array1.length >= array2.length) { return false; } - var result = true; - for (var i = 0; i < array1.length; i++) { - if (!_.isEqual(array1[i], array2[i])) { return false;} - } - return result; -} -})(); diff --git a/addons/web_graph/static/src/js/pivot_table.js b/addons/web_graph/static/src/js/pivot_table.js deleted file mode 100644 index a99bae1756f..00000000000 --- a/addons/web_graph/static/src/js/pivot_table.js +++ /dev/null @@ -1,468 +0,0 @@ - -/* jshint undef: false */ - -(function () { -'use strict'; - -var _lt = openerp.web._lt; -var _t = openerp.web._t; - -// PivotTable requires a call to update_data after initialization -openerp.web_graph.PivotTable = openerp.web.Class.extend({ - - init: function (model, domain, fields, options) { - this.cells = []; - this.domain = domain; - this.context = options.context; - this.no_data = true; - this.updating = false; - this.model = model; - this.fields = fields; - this.fields.__count = {type: 'integer', string:_t('Count')}; - this.measures = options.measures || []; - this.rows = { groupby: options.row_groupby, headers: null }; - this.cols = { groupby: options.col_groupby, headers: null }; - }, - - // ---------------------------------------------------------------------- - // Configuration methods - // ---------------------------------------------------------------------- - // this.measures: list of measure [measure], measure = {field: _, string: _, type: _} - // this.rows.groupby, this.cols.groupby : list of groupbys used for describing rows (...), - // a groupby is also {field:_, string:_, type:_} - // If its type is date/datetime, field can have the corresponding interval in its description, - // for example 'create_date:week'. - set_measures: function (measures) { - this.measures = measures; - return this.update_data(); - }, - - toggle_measure: function (measure) { - var current_measure = _.findWhere(this.measures, measure); - if (current_measure) { // remove current_measure - var index = this.measures.indexOf(current_measure); - this.measures = _.without(this.measures, current_measure); - if (this.measures.length === 0) { - this.no_data = true; - } else { - _.each(this.cells, function (cell) { - cell.values.splice(index, 1); - }); - } - return $.Deferred().resolve(); - } else { // add a new measure - this.measures.push(measure); - return this.update_data(); - } - }, - - set: function (domain, row_groupby, col_groupby, measures_groupby) { - var self = this; - if (this.updating) { - return this.updating.then(function () { - self.updating = false; - return self.set(domain, row_groupby, col_groupby, measures_groupby); - }); - } - var row_gb_changed = !_.isEqual(row_groupby, this.rows.groupby), - col_gb_changed = !_.isEqual(col_groupby, this.cols.groupby), - measures_gb_changed = !_.isEqual(measures_groupby, this.measures); - - this.domain = domain; - this.rows.groupby = row_groupby; - this.cols.groupby = col_groupby; - - if (measures_groupby.length) { this.measures = measures_groupby; } - - if (row_gb_changed) { this.rows.headers = null; } - if (col_gb_changed) { this.cols.headers = null; } - if (measures_gb_changed && measures_groupby.length) { this.set_measures(measures_groupby); } - - return this.update_data(); - }, - - // ---------------------------------------------------------------------- - // Cells manipulation methods - // ---------------------------------------------------------------------- - // cells are objects {x:_, y:_, values:_} where x < y and values is an array - // of values (one for each measure). The condition x < y might look - // unnecessary, but it makes the rest of the code simpler: headers - // don't krow if they are rows or cols, they just know their id, so - // it is useful that a call get_values(id1, id2) is the same as get_values(id2, id1) - add_cell : function (id1, id2, values) { - this.cells.push({x: Math.min(id1, id2), y: Math.max(id1, id2), values: values}); - }, - - get_values: function (id1, id2, default_values) { - var cells = this.cells, - x = Math.min(id1, id2), - y = Math.max(id1, id2); - for (var i = 0; i < cells.length; i++) { - if (cells[i].x == x && cells[i].y == y) { - return cells[i].values; - } - } - return (default_values || new Array(this.measures.length)); - }, - - // ---------------------------------------------------------------------- - // Headers/Rows/Cols manipulation methods - // ---------------------------------------------------------------------- - // this.rows.headers, this.cols.headers = [header] describe the tree structure - // of rows/cols. Headers are objects - // { - // id:_, (unique id obviously) - // path: [...], (array of all parents title, with its own title at the end) - // title:_, (name of the row/col) - // children:[_], (subrows or sub cols of this row/col) - // domain:_, (domain of data in this row/col) - // root:_ (ref to this.rows or this.cols corresponding to the header) - // expanded:_ (boolean, true if it has been expanded) - // } - is_row: function (id) { - return !!_.findWhere(this.rows.headers, {id:id}); - }, - - is_col: function (id) { - return !!_.findWhere(this.cols.headers, {id:id}); - }, - - get_header: function (id) { - return _.findWhere(this.rows.headers.concat(this.cols.headers), {id:id}); - }, - - _get_headers_with_depth: function (headers, depth) { - return _.filter(headers, function (header) { - return header.path.length === depth; - }); - }, - - // return all columns with a path length of 'depth' - get_cols_with_depth: function (depth) { - return this._get_headers_with_depth(this.cols.headers, depth); - }, - - // return all rows with a path length of 'depth' - get_rows_with_depth: function (depth) { - return this._get_headers_with_depth(this.rows.headers, depth); - }, - - get_ancestor_leaves: function (header) { - return _.where(this.get_ancestors_and_self(header), {expanded:false}); - }, - - // return all non expanded rows - get_rows_leaves: function () { - return _.where(this.rows.headers, {expanded:false}); - }, - - // return all non expanded cols - get_cols_leaves: function () { - return _.where(this.cols.headers, {expanded:false}); - }, - - get_ancestors: function (header) { - var self = this; - if (!header.children) return []; - return [].concat.apply([], _.map(header.children, function (c) { - return self.get_ancestors_and_self(c); - })); - }, - - get_ancestors_and_self: function (header) { - var self = this; - return [].concat.apply([header], _.map(header.children, function (c) { - return self.get_ancestors_and_self(c); - })); - }, - - get_total: function (header) { - return (header) ? this.get_values(header.id, this.get_other_root(header).headers[0].id) - : this.get_values(this.rows.headers[0].id, this.cols.headers[0].id); - }, - - get_other_root: function (header) { - return (header.root === this.rows) ? this.cols : this.rows; - }, - - main_row: function () { return this.rows.headers[0]; }, - - main_col: function () { return this.cols.headers[0]; }, - - // ---------------------------------------------------------------------- - // Table manipulation methods : fold/expand/swap - // ---------------------------------------------------------------------- - // return true if the folding changed the groupbys, false if not - fold: function (header) { - var ancestors = this.get_ancestors(header), - removed_ids = _.pluck(ancestors, 'id'); - - header.root.headers = _.difference(header.root.headers, ancestors); - header.children = []; - header.expanded = false; - - this.cells = _.reject(this.cells, function (cell) { - return (_.contains(removed_ids, cell.x) || _.contains(removed_ids, cell.y)); - }); - - var new_groupby_length = _.max(_.pluck(_.pluck(header.root.headers, 'path'), 'length')); - if (new_groupby_length < header.root.groupby.length) { - header.root.groupby.splice(new_groupby_length); - return true; - } - return false; - }, - - fold_with_depth: function (root, depth) { - var self = this; - _.each(this._get_headers_with_depth(root.headers, depth), function (header) { - self.fold(header); - }); - }, - - expand_all: function () { - this.rows.headers = null; - this.cols.headers = null; - return this.update_data(); - }, - - expand: function (header_id, groupby) { - var self = this, - header = this.get_header(header_id), - other_root = this.get_other_root(header), - this_gb = [groupby.field], - other_gbs = _.pluck(other_root.groupby, 'field'); - - if (header.path.length === header.root.groupby.length) { - header.root.groupby.push(groupby); - } - return this.perform_requests(this_gb, other_gbs, header.domain).then(function () { - var data = Array.prototype.slice.call(arguments).slice(other_gbs.length + 1); - _.each(data, function (data_pt) { - self.make_headers_and_cell( - data_pt, header.root.headers, other_root.headers, 1, header.path, true); - }); - header.expanded = true; - header.children.forEach(function (child) { - child.expanded = false; - child.root = header.root; - }); - }); - }, - - swap_axis: function () { - var temp = this.rows; - this.rows = this.cols; - this.cols = temp; - }, - - // ---------------------------------------------------------------------- - // Data updating methods - // ---------------------------------------------------------------------- - // update_data will try to preserve the expand/not expanded status of each - // column/row. If you want to expand all, then set this.cols.headers/this.rows.headers - // to null before calling update_data. - update_data: function () { - var self = this; - this.updating = this.perform_requests().then (function () { - var data = Array.prototype.slice.call(arguments); - self.no_data = !data[0].length; - if (self.no_data) { - return; - } - var row_headers = [], - col_headers = []; - self.cells = []; - - var dim_col = self.cols.groupby.length, - i, j, index; - - for (i = 0; i < self.rows.groupby.length + 1; i++) { - for (j = 0; j < dim_col + 1; j++) { - index = i*(dim_col + 1) + j; - self.make_headers_and_cell(data[index], row_headers, col_headers, i); - } - } - self.set_headers(row_headers, self.rows); - self.set_headers(col_headers, self.cols); - }); - return this.updating; - }, - - make_headers_and_cell: function (data_pts, row_headers, col_headers, index, prefix, expand) { - var self = this; - data_pts.forEach(function (data_pt) { - var row_value = (prefix || []).concat(data_pt.attributes.value.slice(0,index)); - var col_value = data_pt.attributes.value.slice(index); - - if (expand && !_.find(col_headers, function (hdr) {return self.isEqual(col_value, hdr.path);})) { - return; - } - var row = self.find_or_create_header(row_headers, row_value, data_pt); - var col = self.find_or_create_header(col_headers, col_value, data_pt); - - var cell_value = _.map(self.measures, function (m) { - return data_pt.attributes.aggregates[m.field]; - }); - self.cells.push({ - x: Math.min(row.id, col.id), - y: Math.max(row.id, col.id), - values: cell_value - }); - }); - }, - - make_header: function (values) { - return _.extend({ - children: [], - domain: this.domain, - expanded: undefined, - id: _.uniqueId(), - path: [], - root: undefined, - title: undefined - }, values || {}); - }, - - find_or_create_header: function (headers, path, data_pt) { - var self = this; - var hdr = _.find(headers, function (header) { - return self.isEqual(path, header.path); - }); - if (hdr) { - return hdr; - } - if (!path.length) { - hdr = this.make_header({title: _t('Total')}); - headers.push(hdr); - return hdr; - } - hdr = this.make_header({ - path:path, - domain:data_pt.model._domain, - title: _t(_.last(path)) - }); - var parent = _.find(headers, function (header) { - return self.isEqual(header.path, _.initial(path, 1)); - }); - - var previous = parent.children.length ? _.last(parent.children) : parent; - headers.splice(headers.indexOf(previous) + 1, 0, hdr); - parent.children.push(hdr); - return hdr; - }, - - perform_requests: function (group1, group2, domain) { - var self = this, - requests = [], - row_gbs = _.pluck(this.rows.groupby, 'field'), - col_gbs = _.pluck(this.cols.groupby, 'field'), - field_list = row_gbs.concat(col_gbs, _.pluck(this.measures, 'field')), - fields = field_list.map(function (f) { return self.raw_field(f); }); - - group1 = group1 || row_gbs; - group2 = group2 || col_gbs; - - var i,j, groupbys; - for (i = 0; i < group1.length + 1; i++) { - for (j = 0; j < group2.length + 1; j++) { - groupbys = group1.slice(0,i).concat(group2.slice(0,j)); - requests.push(self.get_groups(groupbys, fields, domain || self.domain)); - } - } - return $.when.apply(null, requests); - }, - - // set the 'expanded' status of new_headers more or less like root.headers, with root as root - set_headers: function(new_headers, root) { - var self = this; - if (root.headers) { - _.each(root.headers, function (header) { - var corresponding_header = _.find(new_headers, function (h) { - return self.isEqual(h.path, header.path); - }); - if (corresponding_header && header.expanded) { - corresponding_header.expanded = true; - _.each(corresponding_header.children, function (c) { - c.expanded = false; - }); - } - if (corresponding_header && (!header.expanded)) { - corresponding_header.expanded = false; - corresponding_header.children = []; - } - }); - var updated_headers = _.filter(new_headers, function (header) { - return (header.expanded !== undefined); - }); - _.each(updated_headers, function (header) { - header.root = root; - }); - root.headers = updated_headers; - } else { - root.headers = new_headers; - _.each(root.headers, function (header) { - header.root = root; - header.expanded = (header.children.length > 0); - }); - } - return new_headers; - }, - - get_groups: function (groupbys, fields, domain) { - var self = this; - return this.model.query(_.without(fields, '__count')) - .filter(domain) - .context(this.context) - .lazy(false) - .group_by(groupbys) - .then(function (groups) { - return groups.filter(function (group) { - return group.attributes.length > 0; - }).map(function (group) { - var attrs = group.attributes, - grouped_on = attrs.grouped_on instanceof Array ? attrs.grouped_on : [attrs.grouped_on], - raw_grouped_on = grouped_on.map(function (f) { - return self.raw_field(f); - }); - if (grouped_on.length === 1) { - attrs.value = [attrs.value]; - } - attrs.value = _.range(grouped_on.length).map(function (i) { - var grp = grouped_on[i], - field = self.fields[grp]; - if (attrs.value[i] === false) { - return _t('Undefined'); - } else if (attrs.value[i] instanceof Array) { - return attrs.value[i][1]; - } else if (field && field.type === 'selection') { - var selected = _.where(field.selection, {0: attrs.value[i]})[0]; - return selected ? selected[1] : attrs.value[i]; - } - return attrs.value[i]; - }); - attrs.aggregates.__count = group.attributes.length; - attrs.grouped_on = raw_grouped_on; - return group; - }); - }); - }, - - // if field is a fieldname, returns field, if field is field_id:interval, retuns field_id - raw_field: function (field) { - return field.split(':')[0]; - }, - - isEqual: function (path1, path2) { - if (path1.length !== path2.length) { return false; } - for (var i = 0; i < path1.length; i++) { - if (path1[i] !== path2[i]) { - return false; - } - } - return true; - }, - -}); - -})(); diff --git a/addons/web_graph/static/src/xml/web_graph.xml b/addons/web_graph/static/src/xml/web_graph.xml deleted file mode 100644 index 70bcf328d68..00000000000 --- a/addons/web_graph/static/src/xml/web_graph.xml +++ /dev/null @@ -1,65 +0,0 @@ - - - -
    - - - - -
    -
    - - - -
    -
    - -
    -
    -
    -
    -
    - -
    - -
    -
    -

    No data to display.

    -

    - No data available for this graph. Try to add some records, or make sure - that there is at least one measure and no active filter in the search bar. -

    -
    -
    - diff --git a/addons/web_graph/views/web_graph.xml b/addons/web_graph/views/web_graph.xml deleted file mode 100644 index e7e595dffd7..00000000000 --- a/addons/web_graph/views/web_graph.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - diff --git a/openerp/addons/base/ir/ir_actions.py b/openerp/addons/base/ir/ir_actions.py index 9fe609325e2..687ff7d40ca 100644 --- a/openerp/addons/base/ir/ir_actions.py +++ b/openerp/addons/base/ir/ir_actions.py @@ -367,6 +367,7 @@ VIEW_TYPES = [ ('tree', 'Tree'), ('form', 'Form'), ('graph', 'Graph'), + ('pivot', 'Pivot'), ('calendar', 'Calendar'), ('gantt', 'Gantt'), ('kanban', 'Kanban')] diff --git a/openerp/addons/base/rng/view.rng b/openerp/addons/base/rng/view.rng index 61f13d405fc..998631439dc 100644 --- a/openerp/addons/base/rng/view.rng +++ b/openerp/addons/base/rng/view.rng @@ -674,6 +674,12 @@ + + False + + + False + diff --git a/openerp/models.py b/openerp/models.py index ac935c5c924..a9e2a6f5c49 100644 --- a/openerp/models.py +++ b/openerp/models.py @@ -1426,6 +1426,10 @@ class BaseModel(object): etree.SubElement(view, 'field', name=self._rec_name_fallback(cr, user, context)) return view + def _get_default_pivot_view(self, cr, user, context=None): + view = etree.Element('pivot', string=self._description) + return view + def _get_default_calendar_view(self, cr, user, context=None): """ Generates a default calendar view by trying to infer calendar fields from a number of pre-set attribute names From 67a629e75e5d0c75c00ca61af892021685d742df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=A9ry=20Debongnie?= Date: Fri, 19 Dec 2014 13:40:51 +0100 Subject: [PATCH 2/9] [IMP] account: add pivot views next to graph views The graph view has been splitted into pivot/graph view. This commit add a pivot view whenever a graph view was defined. --- addons/account/account_invoice_view.xml | 23 ++++++++++++++----- addons/account/account_view.xml | 15 ++++++++++-- .../account_analytic_entries_report_view.xml | 21 +++++++++++++---- .../report/account_entries_report_view.xml | 20 ++++++++++++---- .../report/account_invoice_report_view.xml | 21 +++++++++++++---- .../report/account_treasury_report_view.xml | 20 +++++++++++----- .../report/account_asset_report_view.xml | 18 +++++++++++---- .../report/account_followup_report.xml | 19 +++++++++++---- .../account_voucher_sales_receipt_view.xml | 22 ++++++++++++++---- 9 files changed, 137 insertions(+), 42 deletions(-) diff --git a/addons/account/account_invoice_view.xml b/addons/account/account_invoice_view.xml index 3dd61178880..be32ddb97f4 100644 --- a/addons/account/account_invoice_view.xml +++ b/addons/account/account_invoice_view.xml @@ -14,13 +14,24 @@ + + account.invoice.pivot + account.invoice + + + + + + + + account.invoice.graph account.invoice - + - + @@ -521,7 +532,7 @@ Customer Invoices account.invoice form - tree,form,calendar,graph + tree,form,calendar,pivot,graph [('type','=','out_invoice')] {'default_type':'out_invoice', 'type':'out_invoice', 'journal_type': 'sale'} @@ -561,7 +572,7 @@ Supplier Invoices account.invoice form - tree,form,calendar,graph + tree,form,calendar,pivot,graph [('type','=','in_invoice')] {'default_type': 'in_invoice', 'type': 'in_invoice', 'journal_type': 'purchase'} @@ -582,7 +593,7 @@ Customer Refunds account.invoice form - tree,form,calendar,graph + tree,form,calendar,pivot,graph [('type','=','out_refund')] {'default_type':'out_refund', 'type':'out_refund', 'journal_type': 'sale_refund'} @@ -618,7 +629,7 @@ Supplier Refunds account.invoice form - tree,form,calendar,graph + tree,form,calendar,pivot,graph [('type','=','in_refund')] {'default_type': 'in_refund', 'type': 'in_refund', 'journal_type': 'purchase_refund'} diff --git a/addons/account/account_view.xml b/addons/account/account_view.xml index e4d0e9cf22c..2e434fde466 100644 --- a/addons/account/account_view.xml +++ b/addons/account/account_view.xml @@ -637,7 +637,7 @@ Bank Statements account.bank.statement form - tree,form,graph + tree,form,pivot,graph [('journal_id.type', '=', 'bank')] {'journal_type':'bank'} @@ -2456,6 +2456,17 @@ + + account.bank.statement.pivot + account.bank.statement + + + + + + + + account.bank.statement.graph account.bank.statement @@ -2472,7 +2483,7 @@ ir.actions.act_window account.bank.statement form - tree,form,graph + tree,form,pivot,graph [('journal_id.type', '=', 'cash')] diff --git a/addons/account/report/account_analytic_entries_report_view.xml b/addons/account/report/account_analytic_entries_report_view.xml index ce1abf8c1eb..f4128df1d39 100644 --- a/addons/account/report/account_analytic_entries_report_view.xml +++ b/addons/account/report/account_analytic_entries_report_view.xml @@ -23,16 +23,27 @@ - - account.analytic.entries.graph + + account.analytic.entries.pivot analytic.entries.report - + + + + + + account.analytic.entries.graph + analytic.entries.report + + + + + @@ -40,9 +51,9 @@ Analytic Entries Analysis analytic.entries.report form - graph + pivot,graph - {'group_by_no_leaf':1, 'search_default_Account':1, 'group_by':[]} + {'search_default_Account':1} From this view, have an analysis of your different analytic entries following the analytic account you defined matching your business need. Use the tool search to analyse information about analytic entries generated in the system. diff --git a/addons/account/report/account_entries_report_view.xml b/addons/account/report/account_entries_report_view.xml index dbd6b324a95..e6a37ee7854 100644 --- a/addons/account/report/account_entries_report_view.xml +++ b/addons/account/report/account_entries_report_view.xml @@ -31,16 +31,27 @@ - - account.entries.report.graph + + account.entries.report.pivot account.entries.report - + + + + + + account.entries.report.graph + account.entries.report + + + + + @@ -97,9 +108,8 @@ Entries Analysis account.entries.report form - graph + pivot,graph - {'group_by':[], 'search_default_usertype':1, 'search_default_thisyear':1, 'group_by_no_leaf':1} From this view, have an analysis of your different financial accounts. The document shows your debit and credit taking in consideration some criteria you can choose by using the search tool. diff --git a/addons/account/report/account_invoice_report_view.xml b/addons/account/report/account_invoice_report_view.xml index 06c9628c4fa..087ca8b756b 100644 --- a/addons/account/report/account_invoice_report_view.xml +++ b/addons/account/report/account_invoice_report_view.xml @@ -1,13 +1,25 @@ + + account.invoice.report.pivot + account.invoice.report + + + + + + + + + account.invoice.report.graph account.invoice.report - - - + + + @@ -89,11 +101,10 @@ Invoices Analysis account.invoice.report form - graph + pivot,graph {'search_default_current':1, 'search_default_customer':1, 'group_by':[], 'group_by_no_leaf':1, 'search_default_year': 1} From this report, you can have an overview of the amount invoiced to your customer. The tool search can also be used to personalise your Invoices reports and so, match this analysis to your needs. - diff --git a/addons/account/report/account_treasury_report_view.xml b/addons/account/report/account_treasury_report_view.xml index 91357c01b8b..8f27e61dd0a 100644 --- a/addons/account/report/account_treasury_report_view.xml +++ b/addons/account/report/account_treasury_report_view.xml @@ -18,14 +18,24 @@ + + account.treasury.report.pivot + account.treasury.report + + + + + + + + + account.treasury.report.graph account.treasury.report - + - - @@ -48,10 +58,8 @@ Treasury Analysis account.treasury.report form - graph + pivot,graph - - {'group_by':[], 'group_by_no_leaf':0} From this view, have an analysis of your treasury. It sums the balance of every accounting entries made on liquidity accounts per period. + + asset.asset.report.pivot + asset.asset.report + + + + + + + + + + asset.asset.report.graph asset.asset.report @@ -9,9 +22,7 @@ - - @@ -51,9 +62,8 @@ Assets Analysis asset.asset.report form - graph + pivot,graph - {'group_by':[], 'group_by_no_leaf':1}

    From this report, you can have an overview on all depreciation. The diff --git a/addons/account_followup/report/account_followup_report.xml b/addons/account_followup/report/account_followup_report.xml index 3c7284f7775..886c570f154 100644 --- a/addons/account_followup/report/account_followup_report.xml +++ b/addons/account_followup/report/account_followup_report.xml @@ -2,13 +2,24 @@ + + account_followup.stat.pivot + account_followup.stat + + + + + + + + account_followup.stat.graph account_followup.stat - - - + + + @@ -42,7 +53,7 @@ Follow-ups Sent account_followup.stat form - graph + pivot,graph {'search_default_followup_level':1} diff --git a/addons/account_voucher/report/account_voucher_sales_receipt_view.xml b/addons/account_voucher/report/account_voucher_sales_receipt_view.xml index 69473dc27f1..cc0d796e91a 100644 --- a/addons/account_voucher/report/account_voucher_sales_receipt_view.xml +++ b/addons/account_voucher/report/account_voucher_sales_receipt_view.xml @@ -1,13 +1,25 @@ + + sale.receipt.report.pivot + sale.receipt.report + + + + + + + + + sale.receipt.report.graph sale.receipt.report - - - + + + @@ -46,8 +58,8 @@ Sales Receipts Analysis sale.receipt.report form - graph - {'search_default_year':1,'search_default_month':1,'search_default_partner':1, 'search_default_customer':1, 'group_by':[], 'group_by_no_leaf':1,} + pivot,graph + {'search_default_year':1,'search_default_month':1,'search_default_partner':1, 'search_default_customer':1}

    From 21231eb120c6e99494cce3171ce804ecdafa35c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=A9ry=20Debongnie?= Date: Fri, 19 Dec 2014 13:41:59 +0100 Subject: [PATCH 3/9] [FIX] board: add to dashboard now uses correct context --- addons/board/static/src/js/dashboard.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/addons/board/static/src/js/dashboard.js b/addons/board/static/src/js/dashboard.js index e5aabb721b9..a15fb8d109b 100644 --- a/addons/board/static/src/js/dashboard.js +++ b/addons/board/static/src/js/dashboard.js @@ -26,6 +26,7 @@ instance.web.form.DashBoard = instance.web.form.FormWidget.extend({ start: function() { var self = this; this._super.apply(this, arguments); + this.$el.addClass('o-dashboard'); this.$('.oe_dashboard_column').sortable({ connectWith: '.oe_dashboard_column', @@ -370,6 +371,7 @@ instance.web.search.FavoriteMenu.include({ context.add({ group_by: instance.web.pyeval.eval('groupbys', data.groupbys || []) }); + context.add(view_manager.active_view.controller.get_context()); var c = instance.web.pyeval.eval('context', context); for(var k in c) { if (c.hasOwnProperty(k) && /^search_default_/.test(k)) { From f27dee8d1e652b0e1f0ad902667f0e8bf6c266a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=A9ry=20Debongnie?= Date: Fri, 19 Dec 2014 13:42:32 +0100 Subject: [PATCH 4/9] [IMP] crm: add pivot views next to graph views The graph view has been splitted into pivot/graph view. This commit add a pivot view whenever a graph view was defined. --- addons/crm/crm_lead_menu.xml | 3 +- addons/crm/crm_lead_view.xml | 12 +++++++ addons/crm/report/crm_lead_report_view.xml | 22 +++++++++++-- .../report/crm_opportunity_report_view.xml | 27 +++++++++++++--- .../crm/report/crm_phonecall_report_view.xml | 31 +++++++++++++++---- .../report/crm_claim_report_view.xml | 30 +++++++++++------- .../report/crm_helpdesk_report_view.xml | 30 +++++++++++------- .../report/crm_lead_report_view.xml | 31 ++++++++++++------- 8 files changed, 136 insertions(+), 50 deletions(-) diff --git a/addons/crm/crm_lead_menu.xml b/addons/crm/crm_lead_menu.xml index 7aee5dcc1bf..dac2d005690 100644 --- a/addons/crm/crm_lead_menu.xml +++ b/addons/crm/crm_lead_menu.xml @@ -33,7 +33,7 @@ Opportunities crm.lead - kanban,tree,graph,form,calendar + kanban,tree,graph,pivot,form,calendar [('type','=','opportunity')] { 'stage_type': 'opportunity', @@ -41,7 +41,6 @@ 'default_user_id': uid } -

    diff --git a/addons/crm/crm_lead_view.xml b/addons/crm/crm_lead_view.xml index 99e8ab17cb9..bd8659adb92 100644 --- a/addons/crm/crm_lead_view.xml +++ b/addons/crm/crm_lead_view.xml @@ -216,6 +216,18 @@ + + + Opportunities + crm.lead + + + + + + + + Opportunities diff --git a/addons/crm/report/crm_lead_report_view.xml b/addons/crm/report/crm_lead_report_view.xml index 15d1e976db3..93c1321103b 100644 --- a/addons/crm/report/crm_lead_report_view.xml +++ b/addons/crm/report/crm_lead_report_view.xml @@ -10,7 +10,6 @@ - @@ -27,6 +26,19 @@ + + crm.lead.report.pivot + crm.lead.report + + + + + + + + + + Long Term Revenue @@ -112,11 +124,17 @@ Leads Analysis crm.lead.report form - graph + pivot,graph {} [] Leads Analysis allows you to check different CRM related information like the treatment delays or number of leads per state. You can sort out your leads analysis by different groups to get accurate grained analysis. + + + pivot + + + graph diff --git a/addons/crm/report/crm_opportunity_report_view.xml b/addons/crm/report/crm_opportunity_report_view.xml index 936ac8c245d..40147ea8fc2 100644 --- a/addons/crm/report/crm_opportunity_report_view.xml +++ b/addons/crm/report/crm_opportunity_report_view.xml @@ -2,15 +2,28 @@ + + + crm.opportunity.report.pivot + crm.opportunity.report + + + + + + + + + + crm.opportunity.report.graph crm.opportunity.report - - + - + @@ -105,7 +118,7 @@ Opportunities Analysis crm.opportunity.report form - graph + pivot,graph {'search_default_opportunity': 1} Opportunities Analysis gives you an instant access to your opportunities with information such as the expected revenue, planned cost, missed deadlines or the number of interactions per opportunity. This report is mainly used by the sales manager in order to do the periodic review with the teams of the sales pipeline. @@ -115,6 +128,12 @@ + + + pivot + + + diff --git a/addons/crm/report/crm_phonecall_report_view.xml b/addons/crm/report/crm_phonecall_report_view.xml index b6461714542..33d8c8dfbdd 100644 --- a/addons/crm/report/crm_phonecall_report_view.xml +++ b/addons/crm/report/crm_phonecall_report_view.xml @@ -2,17 +2,30 @@ - + - - crm.phonecall.report.graph + + crm.phonecall.report.pivot crm.phonecall.report - + + + + + + + + crm.phonecall.report.graph + crm.phonecall.report + + + + + @@ -83,9 +96,8 @@ Phone Calls Analysis crm.phonecall.report form - graph + pivot,graph {'group_by_no_leaf':1,'group_by':[]} - From this report, you can analyse the performance of your sales team, based on their phone calls. You can group or filter the information according to several criteria and drill down the information, by adding more groups in the report. @@ -97,6 +109,13 @@ + + + pivot + + + + + + + + crm.claim.report.pivot + crm.claim.report + + + + + + + + + crm.claim.report.graph crm.claim.report - - - + + + @@ -68,20 +82,12 @@ Claims Analysis crm.claim.report form - graph + pivot,graph {"search_default_year":1,"search_default_User":1,"search_default_This Month":1,'group_by_no_leaf':1,'group_by':[]} - Have a general overview of all claims processed in the system by sorting them with specific criteria. - - - graph - - - - diff --git a/addons/crm_helpdesk/report/crm_helpdesk_report_view.xml b/addons/crm_helpdesk/report/crm_helpdesk_report_view.xml index 8fa29e5d9f3..09fbd12962f 100644 --- a/addons/crm_helpdesk/report/crm_helpdesk_report_view.xml +++ b/addons/crm_helpdesk/report/crm_helpdesk_report_view.xml @@ -2,16 +2,30 @@ + + + + crm.helpdesk.report.pivot + crm.helpdesk.report + + + + + + + + + + crm.helpdesk.report.graph crm.helpdesk.report - - - + + @@ -60,20 +74,12 @@ Helpdesk Analysis crm.helpdesk.report form - graph + pivot,graph {"search_default_year":1,"search_default_User":1,"search_default_this_month":1,'group_by_no_leaf':1,'group_by':[]} - Have a general overview of all support requests by sorting them with specific criteria such as the processing time, number of requests answered, emails sent and costs. - - - graph - - - - diff --git a/addons/crm_partner_assign/report/crm_lead_report_view.xml b/addons/crm_partner_assign/report/crm_lead_report_view.xml index 23c01ec68c6..2ead1beb06f 100644 --- a/addons/crm_partner_assign/report/crm_lead_report_view.xml +++ b/addons/crm_partner_assign/report/crm_lead_report_view.xml @@ -36,17 +36,31 @@ + + + + crm.lead.assign.pivot + crm.lead.report.assign + + + + + + + + + + crm.lead.assign.graph crm.lead.report.assign - - - + + + - @@ -58,17 +72,10 @@ crm.lead.report.assign form {'default_type': 'opportunity', 'group_by_no_leaf':1,'group_by':[]} - graph + pivot,graph [('type', '=', 'opportunity')] - - - graph - - - - From 928ebb5fe1f3921460b1ddfddc8a9a1876cd9106 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=A9ry=20Debongnie?= Date: Fri, 19 Dec 2014 13:42:46 +0100 Subject: [PATCH 5/9] [IMP] event: add pivot views next to graph views The graph view has been splitted into pivot/graph view. This commit add a pivot view whenever a graph view was defined. --- addons/event/event_view.xml | 16 +++++++++-- .../report/report_event_registration_view.xml | 28 +++++++++++-------- 2 files changed, 29 insertions(+), 15 deletions(-) diff --git a/addons/event/event_view.xml b/addons/event/event_view.xml index 5cecfb3a6bc..b7ca6167362 100644 --- a/addons/event/event_view.xml +++ b/addons/event/event_view.xml @@ -338,12 +338,22 @@ + + event.registration.pivot + event.registration + + + + + + + event.registration.graph event.registration - - + + @@ -376,7 +386,7 @@ event.registration form - tree,form,calendar,graph + tree,form,calendar,pivot,graph {} diff --git a/addons/event/report/report_event_registration_view.xml b/addons/event/report/report_event_registration_view.xml index 6fff896edec..16e9fbef562 100644 --- a/addons/event/report/report_event_registration_view.xml +++ b/addons/event/report/report_event_registration_view.xml @@ -2,13 +2,25 @@ + + report.event.registration.pivot + report.event.registration + + + + + + + + + report.event.registration.graph report.event.registration - - - + + + @@ -47,16 +59,8 @@ Events Analysis report.event.registration form - graph + pivot,graph - {"group_by_no_leaf":1, "group_by":[]} - - - - - graph - - From cd8f2123fca0c9a3940c79348045a2b5e80500a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=A9ry=20Debongnie?= Date: Fri, 19 Dec 2014 13:42:57 +0100 Subject: [PATCH 6/9] [IMP] fleet: add pivot views next to graph views The graph view has been splitted into pivot/graph view. This commit add a pivot view whenever a graph view was defined. --- addons/fleet/fleet_board_view.xml | 31 ++++++++++++++++++++++++++---- addons/fleet/fleet_view.xml | 32 +++++++++++++++++++++++++++---- 2 files changed, 55 insertions(+), 8 deletions(-) diff --git a/addons/fleet/fleet_board_view.xml b/addons/fleet/fleet_board_view.xml index e28b85bc15d..5d5859c17ac 100644 --- a/addons/fleet/fleet_board_view.xml +++ b/addons/fleet/fleet_board_view.xml @@ -4,9 +4,8 @@ Costs Analysis fleet.vehicle.cost - form - graph + pivot,graph {"search_default_parent_false" : True,}

    @@ -19,13 +18,24 @@

    + + + pivot + + + + + + graph + + + Indicative Costs Analysis fleet.vehicle.cost - form - graph + pivot,graph {"search_default_parent_true" : True,}

    @@ -38,6 +48,19 @@

    + + + pivot + + + + + + + graph + + + diff --git a/addons/fleet/fleet_view.xml b/addons/fleet/fleet_view.xml index 04cdb3f5491..350d168294f 100644 --- a/addons/fleet/fleet_view.xml +++ b/addons/fleet/fleet_view.xml @@ -891,24 +891,48 @@
    - - fleet.vehicle.cost.graph + + fleet.vehicle.cost.pivot fleet.vehicle.cost - + + + + + + + fleet.vehicle.cost.graph + fleet.vehicle.cost + + + + + + + fleet.vehicle.cost.pivot + fleet.vehicle.cost + + + + + + + + + fleet.vehicle.cost.graph fleet.vehicle.cost - + From c65bd93649381733f1b82840601e315ee42dd796 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=A9ry=20Debongnie?= Date: Fri, 19 Dec 2014 13:43:10 +0100 Subject: [PATCH 7/9] [IMP] hr: add pivot views next to graph views The graph view has been splitted into pivot/graph view. This commit add a pivot view whenever a graph view was defined. --- addons/hr_attendance/hr_attendance_view.xml | 21 ++++++++--- .../report/hr_evaluation_report_view.xml | 32 ++++++++++++++-- .../report/hr_expense_report_view.xml | 20 ++++++++-- .../report/available_holidays_view.xml | 37 ++++++++++++++++--- addons/hr_recruitment/hr_recruitment_menu.xml | 2 +- addons/hr_recruitment/hr_recruitment_view.xml | 18 +++++++-- .../report/hr_recruitment_report_view.xml | 16 ++++++-- .../report/hr_timesheet_report_view.xml | 21 ++++++++--- 8 files changed, 137 insertions(+), 30 deletions(-) diff --git a/addons/hr_attendance/hr_attendance_view.xml b/addons/hr_attendance/hr_attendance_view.xml index 66e4caab61a..6ae54ddd373 100644 --- a/addons/hr_attendance/hr_attendance_view.xml +++ b/addons/hr_attendance/hr_attendance_view.xml @@ -65,13 +65,25 @@ + + hr.attendance.pivot + hr.attendance + + + + + + + + + hr.attendance.graph hr.attendance - - - + + + @@ -91,8 +103,7 @@ Attendance Analysis hr.attendance form - graph - + pivot,graph diff --git a/addons/hr_evaluation/report/hr_evaluation_report_view.xml b/addons/hr_evaluation/report/hr_evaluation_report_view.xml index a93853be41c..60eb0126612 100644 --- a/addons/hr_evaluation/report/hr_evaluation_report_view.xml +++ b/addons/hr_evaluation/report/hr_evaluation_report_view.xml @@ -2,11 +2,23 @@ + + hr.evaluation.report.pivot + hr.evaluation.report + + + + + + + + + hr.evaluation.report.graph hr.evaluation.report - + @@ -46,11 +58,25 @@ Appraisal Analysis hr.evaluation.report form - graph - {'search_default_year':1,'search_default_month':1,'search_default_employee':1,'group_by_no_leaf':1,'group_by':[]} + pivot,graph + {'search_default_year':1,'search_default_month':1,'search_default_employee':1} + + + pivot + + + + + + graph + + + + + diff --git a/addons/hr_expense/report/hr_expense_report_view.xml b/addons/hr_expense/report/hr_expense_report_view.xml index aaade0fa274..14408d8c6ee 100644 --- a/addons/hr_expense/report/hr_expense_report_view.xml +++ b/addons/hr_expense/report/hr_expense_report_view.xml @@ -2,15 +2,27 @@ + + hr.expense.report.pivot + hr.expense.report + + + + + + + + + + hr.expense.report.graph hr.expense.report - + - @@ -50,8 +62,8 @@ Expenses Analysis hr.expense.report form - graph - {'search_default_year':1,'search_default_month':1,'search_default_employee':1,'group_by_no_leaf':1,'group_by':[]} + pivot,graph + {'search_default_year':1,'search_default_month':1,'search_default_employee':1} diff --git a/addons/hr_holidays/report/available_holidays_view.xml b/addons/hr_holidays/report/available_holidays_view.xml index b288db30572..1be1be3fb5d 100644 --- a/addons/hr_holidays/report/available_holidays_view.xml +++ b/addons/hr_holidays/report/available_holidays_view.xml @@ -2,15 +2,28 @@ + + hr.holidays.report_pivot + hr.holidays + 20 + + + + + + + + + + hr.holidays.report_graph hr.holidays 20 - - - - + + + @@ -20,12 +33,24 @@ Leaves Analysis hr.holidays form - graph - + pivot,graph [('holiday_type','=','employee')] + + + pivot + + + + + + graph + + + + Applications hr.applicant - kanban,tree,form,graph,calendar + kanban,tree,form,pivot,graph,calendar {'empty_list_help_model': 'hr.job'} diff --git a/addons/hr_recruitment/hr_recruitment_view.xml b/addons/hr_recruitment/hr_recruitment_view.xml index 71cf48df2e6..94716411113 100644 --- a/addons/hr_recruitment/hr_recruitment_view.xml +++ b/addons/hr_recruitment/hr_recruitment_view.xml @@ -176,13 +176,25 @@ + + Jobs - Recruitment + hr.applicant + + + + + + + + + Jobs - Recruitment Graph hr.applicant - - - + + + diff --git a/addons/hr_recruitment/report/hr_recruitment_report_view.xml b/addons/hr_recruitment/report/hr_recruitment_report_view.xml index 62d23dae087..8ddc80126ea 100644 --- a/addons/hr_recruitment/report/hr_recruitment_report_view.xml +++ b/addons/hr_recruitment/report/hr_recruitment_report_view.xml @@ -1,11 +1,22 @@ + + hr.recruitment.report.pivot + hr.recruitment.report + + + + + + + + hr.recruitment.report.graph hr.recruitment.report - + @@ -70,8 +81,7 @@ Recruitment Analysis hr.recruitment.report form - graph - {'group_by_no_leaf':1,'group_by':[]} + pivot,graph diff --git a/addons/hr_timesheet/report/hr_timesheet_report_view.xml b/addons/hr_timesheet/report/hr_timesheet_report_view.xml index bfcd467fb44..6fa8894ac27 100644 --- a/addons/hr_timesheet/report/hr_timesheet_report_view.xml +++ b/addons/hr_timesheet/report/hr_timesheet_report_view.xml @@ -1,13 +1,25 @@ + + hr.timesheet.report.pivot + hr.timesheet.report + + + + + + + + + hr.timesheet.report.graph hr.timesheet.report - - - + + + @@ -43,8 +55,7 @@ Timesheet Analysis hr.timesheet.report form - graph - {'group_by_no_leaf':1,'group_by':[]} + pivot,graph Date: Fri, 19 Dec 2014 13:43:28 +0100 Subject: [PATCH 8/9] [IMP] project: add pivot views next to graph views The graph view has been splitted into pivot/graph view. This commit add a pivot view whenever a graph view was defined. --- addons/project/project_view.xml | 21 +++++++++++---- addons/project/report/project_cumulative.xml | 26 +++++++++++++------ addons/project/report/project_report_view.xml | 12 ++++++++- addons/project_issue/project_issue_menu.xml | 2 +- addons/project_issue/project_issue_view.xml | 11 ++++++++ .../report/project_issue_report_view.xml | 23 +++++++++------- 6 files changed, 71 insertions(+), 24 deletions(-) diff --git a/addons/project/project_view.xml b/addons/project/project_view.xml index 582dd21ddeb..a3c942b7f4f 100644 --- a/addons/project/project_view.xml +++ b/addons/project/project_view.xml @@ -53,7 +53,7 @@ Tasks project.task - kanban,tree,form,calendar,gantt,graph + kanban,tree,form,calendar,gantt,pivot,graph { 'search_default_project_id': [active_id], 'default_project_id': active_id, @@ -612,13 +612,24 @@ + + project.task.pivot + project.task + + + + + + + + project.task.graph project.task - - - + + + @@ -639,7 +650,7 @@ Tasks project.task - kanban,tree,form,calendar,gantt,graph + kanban,tree,form,calendar,gantt,pivot,graph

    diff --git a/addons/project/report/project_cumulative.xml b/addons/project/report/project_cumulative.xml index c9d77deee92..c40379461a7 100644 --- a/addons/project/report/project_cumulative.xml +++ b/addons/project/report/project_cumulative.xml @@ -2,17 +2,28 @@ + + project.task.history.cumulative.pivot + project.task.history.cumulative + + + + + + + + + + + project.task.history.cumulative.graph project.task.history.cumulative - - - - + + + - - @@ -51,8 +62,7 @@ Cumulative Flow project.task.history.cumulative form - graph - + pivot,graph {"search_default_open":1, "search_default_this_month": 1} diff --git a/addons/project/report/project_report_view.xml b/addons/project/report/project_report_view.xml index 80098bce6ee..e51a1ca6595 100644 --- a/addons/project/report/project_report_view.xml +++ b/addons/project/report/project_report_view.xml @@ -6,6 +6,16 @@ groups="project.group_project_manager" parent="base.menu_reporting" sequence="5"/> + + report.project.task.user.pivot + report.project.task.user + + + + + + + report.project.task.user.graph report.project.task.user @@ -74,7 +84,7 @@ Tasks Analysis report.project.task.user form - graph + pivot,graph {'group_by_no_leaf':1,'group_by':[]} This report allows you to analyse the performance of your projects and users. You can analyse the quantities of tasks, the hours spent compared to the planned hours, the average number of days to open or close a task, etc. diff --git a/addons/project_issue/project_issue_menu.xml b/addons/project_issue/project_issue_menu.xml index 0632eb9c843..389d33cc1ff 100644 --- a/addons/project_issue/project_issue_menu.xml +++ b/addons/project_issue/project_issue_menu.xml @@ -9,7 +9,7 @@ Issues project.issue form - kanban,tree,calendar,form,graph + kanban,tree,calendar,form,pivot,graph diff --git a/addons/project_issue/project_issue_view.xml b/addons/project_issue/project_issue_view.xml index 95b401a1629..ea943d90357 100644 --- a/addons/project_issue/project_issue_view.xml +++ b/addons/project_issue/project_issue_view.xml @@ -245,6 +245,17 @@ + + Project Issue Tracker Pivot + project.issue + + + + + + + + Project Issue Tracker Graph project.issue diff --git a/addons/project_issue/report/project_issue_report_view.xml b/addons/project_issue/report/project_issue_report_view.xml index d6be22bd2f7..e22bcdb4506 100644 --- a/addons/project_issue/report/project_issue_report_view.xml +++ b/addons/project_issue/report/project_issue_report_view.xml @@ -1,11 +1,23 @@ + + project.issue.report.pivot + project.issue.report + + + + + + + + + project.issue.report.graph project.issue.report - + @@ -57,19 +69,12 @@ Issues Analysis project.issue.report form - graph + pivot,graph {'search_default_year':1,'search_default_This Month':1,'search_default_project':1,'group_by_no_leaf':1,'group_by':[]} - This report on the project issues allows you to analyse the quality of your support or after-sales services. You can track the issues per age. You can analyse the time required to open or close an issue, the number of email to exchange and the time spent on average by issues. - - - graph - - - From 240d71f9faf3778cedaea017fe274cd5c63d21cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=A9ry=20Debongnie?= Date: Fri, 19 Dec 2014 13:44:35 +0100 Subject: [PATCH 9/9] [IMP] various addons: add pivot views next to graph views The graph view has been splitted into pivot/graph view. This commit add a pivot view whenever a graph view was defined. --- addons/google_drive/static/src/js/gdrive.js | 2 +- .../im_livechat/report/im_livechat_report.xml | 22 ++++++++++---- .../report/campaign_analysis_view.xml | 19 +++++++++--- .../views/mass_mailing_report.xml | 24 +++++++++------ .../report/report_membership_view.xml | 20 ++++++++++--- addons/mrp/mrp_view.xml | 22 ++++++++++---- .../report/mrp_workorder_analysis_view.xml | 30 +++++++++++-------- .../report/pos_order_report_view.xml | 19 +++++++++--- addons/purchase/purchase_view.xml | 20 +++++++++---- .../purchase/report/purchase_report_view.xml | 22 ++++++++++---- addons/sale/report/sale_report_view.xml | 18 ++++++++--- addons/sale/sale_view.xml | 18 ++++++++--- addons/stock/stock_view.xml | 25 ++++++++++++++-- .../wizard/stock_valuation_history_view.xml | 22 ++++++++++---- addons/survey/views/survey_result.xml | 6 ++-- 15 files changed, 212 insertions(+), 77 deletions(-) diff --git a/addons/google_drive/static/src/js/gdrive.js b/addons/google_drive/static/src/js/gdrive.js index dbbe50d0794..98324c1c288 100644 --- a/addons/google_drive/static/src/js/gdrive.js +++ b/addons/google_drive/static/src/js/gdrive.js @@ -9,7 +9,7 @@ openerp.google_drive = function (instance, m) { this._super.apply(this, arguments); var view = self.getParent(); var result; - if (view.fields_view.type == "form") { + if (view.fields_view && view.fields_view.type == "form") { ids = [] view.on("load_record", self, function (r) { ids = [r.id] diff --git a/addons/im_livechat/report/im_livechat_report.xml b/addons/im_livechat/report/im_livechat_report.xml index bc8d8df8694..dcf820405f5 100644 --- a/addons/im_livechat/report/im_livechat_report.xml +++ b/addons/im_livechat/report/im_livechat_report.xml @@ -2,15 +2,26 @@ + + im_livechat.report.pivot + im_livechat.report + + + + + + + + + + im_livechat.report.graph im_livechat.report - - - + + - @@ -42,8 +53,7 @@ Livechat Support Report im_livechat.report form - graph - + pivot,graph Livechat Support Analysis allows you to easily check and analyse your company livechat session performance. Extract informations about the missed sessions, the audiance, the duration of a session, etc. diff --git a/addons/marketing_campaign/report/campaign_analysis_view.xml b/addons/marketing_campaign/report/campaign_analysis_view.xml index 43a43c7e7ce..47b0e26e31b 100644 --- a/addons/marketing_campaign/report/campaign_analysis_view.xml +++ b/addons/marketing_campaign/report/campaign_analysis_view.xml @@ -2,13 +2,24 @@ + + campaign.analysis.pivot + campaign.analysis + + + + + + + + campaign.analysis.graph campaign.analysis - - - + + + @@ -66,7 +77,7 @@ Campaign Analysis campaign.analysis form - graph,tree + pivot,graph,tree {'group_by': [], 'group_by_no_leaf':1} diff --git a/addons/mass_mailing/views/mass_mailing_report.xml b/addons/mass_mailing/views/mass_mailing_report.xml index e52a6f7e0a2..ba243273a20 100644 --- a/addons/mass_mailing/views/mass_mailing_report.xml +++ b/addons/mass_mailing/views/mass_mailing_report.xml @@ -2,17 +2,28 @@ - - mail.statistics.report.graph + + mail.statistics.report.pivot mail.statistics.report - + + + + + + + mail.statistics.report.graph + mail.statistics.report + + + + @@ -45,14 +56,9 @@ Mass Mailing Analysis mail.statistics.report form - graph + pivot,graph Mass Mailing Statistics allows you to check different mailing related information like number of bounced mails, opened mails, replied mails. You can sort out your analysis by different groups to get accurate grained analysis. - - graph - - - diff --git a/addons/membership/report/report_membership_view.xml b/addons/membership/report/report_membership_view.xml index ca4f786e11c..b2b41c434fb 100644 --- a/addons/membership/report/report_membership_view.xml +++ b/addons/membership/report/report_membership_view.xml @@ -30,17 +30,29 @@ - - report.membership.graph1 + + report.membership.pivot report.membership - + + + + + + + report.membership.graph1 + report.membership + + + + + @@ -49,7 +61,7 @@ Members Analysis report.membership form - graph + pivot,graph {"search_default_start_date":1,"search_default_member":1, 'search_default_Revenue':1, 'search_default_this_month':1, 'search_default_salesman':1,'group_by_no_leaf':1} diff --git a/addons/mrp/mrp_view.xml b/addons/mrp/mrp_view.xml index 79ac6eb1321..3f01be4cbd0 100644 --- a/addons/mrp/mrp_view.xml +++ b/addons/mrp/mrp_view.xml @@ -641,14 +641,26 @@ + + mrp.production.pivot + mrp.production + + + + + + + + + mrp.production.graph mrp.production - + - - + + @@ -858,7 +870,7 @@ ir.actions.act_window mrp.production form - tree,form,calendar,graph,gantt + tree,form,calendar,pivot,graph,gantt {} @@ -883,7 +895,7 @@ ir.actions.act_window mrp.production form - calendar,tree,form,graph + calendar,tree,form,pivot,graph [('state','in',('ready','confirmed','in_production'))]

    diff --git a/addons/mrp_operations/report/mrp_workorder_analysis_view.xml b/addons/mrp_operations/report/mrp_workorder_analysis_view.xml index da41d9e2b18..6d86a544c06 100644 --- a/addons/mrp_operations/report/mrp_workorder_analysis_view.xml +++ b/addons/mrp_operations/report/mrp_workorder_analysis_view.xml @@ -4,16 +4,28 @@ - - mrp.workorder.graph + + mrp.workorder.pivot mrp.workorder - + + + + + + + mrp.workorder.graph + mrp.workorder + + + + + @@ -66,17 +78,9 @@ Work Order mrp.workorder form - graph - + pivot,graph - {'search_default_Workcenter': 1,'group_by_no_leaf':1,'group_by':[]} - - - - - graph - - + {'search_default_Workcenter': 1} diff --git a/addons/point_of_sale/report/pos_order_report_view.xml b/addons/point_of_sale/report/pos_order_report_view.xml index d2b4774c138..21eaafb28c6 100644 --- a/addons/point_of_sale/report/pos_order_report_view.xml +++ b/addons/point_of_sale/report/pos_order_report_view.xml @@ -1,14 +1,25 @@ + + report.pos.order.pivot + report.pos.order + + + + + + + + + + report.pos.order.graph report.pos.order - + - - @@ -45,7 +56,7 @@ Orders Analysis report.pos.order form - graph + pivot,graph {'group_by_no_leaf':1,'group_by':[]} diff --git a/addons/purchase/purchase_view.xml b/addons/purchase/purchase_view.xml index 8ff9e63453d..6e391bd6a00 100644 --- a/addons/purchase/purchase_view.xml +++ b/addons/purchase/purchase_view.xml @@ -90,7 +90,7 @@ On Draft Invoices account.invoice form - tree,form,calendar,graph + tree,form,calendar,pivot,graph [('type','=','in_invoice')] {'default_type':'in_invoice', 'type':'in_invoice', 'journal_type': 'purchase', 'search_default_draft': 1} @@ -163,13 +163,23 @@ + + purchase.order.pivot + purchase.order + + + + + + + purchase.order.graph purchase.order - + - + @@ -363,7 +373,7 @@ purchase.order {} [('state','in',('draft','sent','bid','cancel', 'confirmed'))] - tree,form,graph,calendar + tree,form,pivot,graph,calendar

    @@ -386,7 +396,7 @@ Purchase Orders ir.actions.act_window purchase.order - tree,form,graph,calendar + tree,form,pivot,graph,calendar {} [('state','not in',('draft','sent','bid', 'confirmed'))] diff --git a/addons/purchase/report/purchase_report_view.xml b/addons/purchase/report/purchase_report_view.xml index c60e3d62d2a..81444eca865 100644 --- a/addons/purchase/report/purchase_report_view.xml +++ b/addons/purchase/report/purchase_report_view.xml @@ -1,16 +1,27 @@ - - product.month.graph + + product.month.pivot purchase.report - + + + + + + product.month.graph + purchase.report + + + + + @@ -77,9 +88,8 @@ Purchase Analysis purchase.report form - graph - - {'search_default_orders': 1, 'group_by_no_leaf':1,'group_by':[]} + pivot,graph + {'search_default_orders': 1} Purchase Analysis allows you to easily check and analyse your company purchase history and performance. From this menu you can track your negotiation performance, the delivery performance of your suppliers, etc. diff --git a/addons/sale/report/sale_report_view.xml b/addons/sale/report/sale_report_view.xml index 92e8aaa8caf..708a4d32ff3 100644 --- a/addons/sale/report/sale_report_view.xml +++ b/addons/sale/report/sale_report_view.xml @@ -2,13 +2,24 @@ + + sale.report.pivot + sale.report + + + + + + + + + sale.report.graph sale.report - + - @@ -78,9 +89,8 @@ Sales Analysis sale.report form - graph + pivot,graph - {'search_default_Sales':1, 'group_by_no_leaf':1,'group_by':[]} This report performs analysis on your quotations and sales orders. Analysis check your sales revenues and sort it by different group criteria (salesman, partner, product, etc.) Use this report to perform analysis on sales not having invoiced yet. If you want to analyse your turnover, you should use the Invoice Analysis report in the Accounting application. diff --git a/addons/sale/sale_view.xml b/addons/sale/sale_view.xml index f48e56c53a1..47545de715c 100644 --- a/addons/sale/sale_view.xml +++ b/addons/sale/sale_view.xml @@ -34,12 +34,22 @@ sale.order.graph sale.order - - + + + + sale.order.pivot + sale.order + + + + + + + sale.order.tree @@ -281,7 +291,7 @@ ir.actions.act_window sale.order form - tree,form,calendar,graph + tree,form,calendar,pivot,graph {} [('state', 'not in', ('draft', 'sent', 'cancel'))] @@ -326,7 +336,7 @@ sale.order form - tree,form,calendar,graph + tree,form,calendar,pivot,graph {} [('state','in',('draft','sent','cancel'))] diff --git a/addons/stock/stock_view.xml b/addons/stock/stock_view.xml index 33f9c57873f..9447f35e613 100644 --- a/addons/stock/stock_view.xml +++ b/addons/stock/stock_view.xml @@ -911,12 +911,24 @@ + + stock.move.pivot + stock.move + + + + + + + + + stock.move.graph stock.move - - + + @@ -1170,11 +1182,18 @@ + + + pivot + + + + graph - + diff --git a/addons/stock_account/wizard/stock_valuation_history_view.xml b/addons/stock_account/wizard/stock_valuation_history_view.xml index f01d1d5035e..5ca5fa4dc5d 100644 --- a/addons/stock_account/wizard/stock_valuation_history_view.xml +++ b/addons/stock_account/wizard/stock_valuation_history_view.xml @@ -32,7 +32,7 @@ Stock Valuation wizard.valuation.history form - tree,form + form new @@ -54,15 +54,25 @@ + + stock.history.value.pivot + stock.history + + + + + + + + stock.history.value.graph stock.history - - - + + + - @@ -91,7 +101,7 @@ ir.actions.act_window [('date','<=',time.strftime('%Y-%m-%d %H:%M:%S'))] form - tree,graph + tree,pivot,graph

    ').attr('rowspan', headers.length), - $thead = $('
    '); - _.each(measure_row, function (cell) { - var $cell = $('').addClass('measure_row').text(cell.text); - if (cell.is_bold) {$cell.css('font-weight', 'bold');} - $row.append($cell); - }); - this.$thead.append($row); - }, - - draw_row: function (row, frozen_rows) { - var $row = $('