Browse Source

publish muk_web_utils - 12.0

pull/48/head
MuK IT GmbH 5 years ago
parent
commit
7f30286b4d
  1. 2
      muk_web_utils/__manifest__.py
  2. 22
      muk_web_utils/static/src/js/fields/binary.js
  3. 52
      muk_web_utils/static/src/js/fields/utils.js
  4. 1
      muk_web_utils/template/assets.xml

2
muk_web_utils/__manifest__.py

@ -20,7 +20,7 @@
{
"name": "MuK Web Utils",
"summary": """Utility Features""",
"version": "12.0.2.8.3",
"version": "12.0.2.8.4",
"category": "Extra Tools",
"license": "AGPL-3",
"author": "MuK IT",

22
muk_web_utils/static/src/js/fields/binary.js

@ -54,21 +54,17 @@ fields.FieldBinaryImage.include({
var FieldBinarySize = fields.FieldFloat.extend({
init: function(parent, name, record) {
this._super.apply(this, arguments);
this.units = this.nodeOptions.si ?
['KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'] :
['KiB', 'MiB', 'GiB', 'TiB', 'PiB', 'EiB', 'ZiB', 'YiB'];
this.thresh = this.nodeOptions.si ? 1000 : 1024;
this.nodeOptions = _.defaults(this.nodeOptions, {
si: true,
});
},
_formatValue: function (value) {
if(Math.abs(value) < this.thresh) {
return this._super.call(this, value) + ' B';
}
var unit = -1;
do {
value /= this.thresh;
++unit;
} while(Math.abs(value) >= this.thresh && unit < this.units.length - 1);
return this._super.call(this, value) + ' ' + this.units[unit];
var options = _.extend({},
this.nodeOptions,
{ data: this.recordData },
this.formatOptions,
);
return utils.format['binary_size'](value, this.field, options)
},
});

52
muk_web_utils/static/src/js/fields/utils.js

@ -0,0 +1,52 @@
/**********************************************************************************
*
* Copyright (C) 2017 MuK IT GmbH
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
**********************************************************************************/
odoo.define('muk_web_utils.field_utils', function(require) {
"use strict";
var core = require('web.core');
var session = require('web.session');
var utils = require('web.field_utils');
var _t = core._t;
var QWeb = core.qweb;
function formatBinarySize(value, field, options) {
options = _.defaults(options || {}, {
si: true,
});
console.log(options)
var thresh = options.si ? 1000 : 1024;
if(Math.abs(value) < thresh) {
return utils.format['float'](value, field, options) + ' B';
}
var units = options.si
? ['KB','MB','GB','TB','PB','EB','ZB','YB']
: ['KiB','MiB','GiB','TiB','PiB','EiB','ZiB','YiB'];
var unit = -1;
do {
value /= thresh;
++unit;
} while(Math.abs(value) >= thresh && unit < units.length - 1);
return utils.format['float'](value, field, options) + ' ' + units[unit];
}
utils.format.binary_size = formatBinarySize;
});

1
muk_web_utils/template/assets.xml

@ -39,6 +39,7 @@
<script type="text/javascript" src="/muk_web_utils/static/src/js/core/dialog.js" />
<script type="text/javascript" src="/muk_web_utils/static/src/js/services/notification_service.js" />
<script type="text/javascript" src="/muk_web_utils/static/src/js/widgets/notification.js" />
<script type="text/javascript" src="/muk_web_utils/static/src/js/fields/utils.js" />
<script type="text/javascript" src="/muk_web_utils/static/src/js/fields/color.js" />
<script type="text/javascript" src="/muk_web_utils/static/src/js/fields/image.js" />
<script type="text/javascript" src="/muk_web_utils/static/src/js/fields/copy.js" />

Loading…
Cancel
Save