Skip to content
Code-Schnipsel Gruppen Projekte
Commit 1d3c54ac erstellt von Henning Leutz's avatar Henning Leutz :martial_arts_uniform:
Dateien durchsuchen

währungseinstellungen

Übergeordneter ce13d369
Keine zugehörigen Branchen gefunden
Keine zugehörigen Tags gefunden
Keine zugehörigen Merge Requests gefunden
<?php
/**
* This file contains package_quiqqer_currency_getCurrencies
*/
/**
* Returns all available currencies
*
* @return array
*/
QUI::$Ajax->registerFunction('package_quiqqer_currency_ajax_getCurrencies', function () {
return QUI\ERP\Currency\Handler::getCurrencies();
});
.quiqqer-currency-allowed {
float: left;
margin-top: 20px;
padding: 0 20px;
width: 100%;
}
.quiqqer-currency-allowed-currency {
border-bottom: 1px solid rgba(0, 0, 0, 0.1);
clear: both;
float: left;
margin-bottom: 10px;
padding-bottom: 10px;
width: 100%;
}
.quiqqer-currency-allowed-currency:last-child {
border-bottom: none;
}
.quiqqer-currency-allowed-currency-text {
cursor: pointer;
float: left;
padding-left: 10px;
width: calc(100% - 60px);
}
.quiqqer-currency-allowed-currency-text:hover {
}
\ No newline at end of file
/**
* Allowed currencies
* Control for currency administration
*
* @module package/quiqqer/currency/bin/settings/AllowedCurrencies
* @author www.pcsg.de (Henning Leutz)
*
* @require qui/QUI
* @require qui/controls/Control
* @require qui/controls/buttons/Switch
* @require Ajax
* @require css!package/quiqqer/currency/bin/settings/AllowedCurrencies.css
*/
define('package/quiqqer/currency/bin/settings/AllowedCurrencies', [
'qui/QUI',
'qui/controls/Control',
'qui/controls/buttons/Switch',
'Ajax',
'css!package/quiqqer/currency/bin/settings/AllowedCurrencies.css'
], function (QUI, QUIControl, QUISwitch, QUIAjax) {
"use strict";
return new Class({
Type : 'package/quiqqer/currency/bin/settings/AllowedCurrencies',
Extends: QUIControl,
Binds: [
'$onImport',
'$onCurrencyStatusChange',
'$switchCurrencyStatus'
],
options: {
values: {}
},
initialize: function (options) {
this.parent(options);
this.$Input = null;
this.$Elm = null;
this.$Container = null;
this.addEvents({
onImport: this.$onImport
});
},
/**
* event : on import
*/
$onImport: function () {
this.$Input = this.getElm();
this.$Input.type = 'hidden';
if (this.$Input.value !== '') {
var values = {};
var value = this.$Input.value.split(',');
for (var i = 0, len = value.length; i < len; i++) {
values[value[i]] = 1;
}
this.setAttribute('values', values);
}
this.$Elm = new Element('div', {
'class': 'quiqqer-currency-allowed',
html : '<div class="quiqqer-currency-allowed-container">' +
'<span class="icon-spinner icon-spin fa fa-spinner fa-spin"></span>' +
'</div>'
}).wraps(this.$Input);
this.$Container = this.$Elm.getElement(
'.quiqqer-currency-allowed-container'
);
this.getCurrencies().then(function (list) {
var i, Container, CurrencySwitch;
var values = this.getAttribute('values');
this.$Container.set('html', '');
for (i in list) {
if (!list.hasOwnProperty(i)) {
continue;
}
Container = new Element('div', {
'class': 'quiqqer-currency-allowed-currency'
}).inject(this.$Container);
CurrencySwitch = new QUISwitch({
title : list[i].text,
currency: i,
events : {
onChange: this.$onCurrencyStatusChange
}
}).inject(Container);
new Element('span', {
'class': 'quiqqer-currency-allowed-currency-text',
html : list[i].text + ' ' + list[i].sign,
events : {
click: this.$switchCurrencyStatus
}
}).inject(Container);
if (!values.hasOwnProperty(i)) {
values[i] = 0;
}
if (values[i] === 1) {
CurrencySwitch.on();
} else {
CurrencySwitch.off();
}
}
this.setAttribute('values', values);
}.bind(this));
},
/**
* update values to the input field
*/
update: function () {
var allowed = [],
values = this.getAttribute('values');
if (typeOf(values) === 'object') {
for (var i in values) {
if (!values.hasOwnProperty(i)) {
continue;
}
if (values[i]) {
allowed.push(i);
}
}
}
this.$Input.value = allowed.join(',');
},
/**
* Return all available currencies
* @returns {Promise}
*/
getCurrencies: function () {
return new Promise(function (resolve, reject) {
QUIAjax.get('package_quiqqer_currency_ajax_getCurrencies', resolve, {
'package': 'quiqqer/currency',
onError : reject
});
});
},
/**
* event : on currency status change
* @param Switch
*/
$onCurrencyStatusChange: function (Switch) {
var currency = Switch.getAttribute('currency');
var values = this.getAttribute('values');
values[currency] = Switch.getStatus() ? 1 : 0;
this.setAttribute('values', values);
this.update();
},
/**
* event : click on span -> currency status change
*
* @param {Event} event
*/
$switchCurrencyStatus: function (event) {
var Target = event.target;
var SwitchContainer = Target.getParent().getElement('.qui-switch');
var Switch = QUI.Controls.getById(
SwitchContainer.get('data-quiid')
);
Switch.toggle();
}
});
});
/**
*
*
* @module package/quiqqer/currency/bin/CurrencyList
* @author www.pcsg.de (Henning Leutz)
*/
define('package/quiqqer/currency/bin/settings/CurrencyList', [
'qui/QUI',
'qui/controls/Control',
'qui/controls/buttons/Select',
'Ajax'
], function (QUI, QUIControl, QUISelect, QUIAjax) {
"use strict";
return new Class({
Type : 'package/quiqqer/currency/bin/settings/CurrencyList',
Extends: QUIControl,
Binds: [
'$onImport',
'$onSelectChange'
],
initialize: function (options) {
this.parent(options);
this.$Input = null;
this.$Select = null;
this.addEvents({
onImport: this.$onImport
});
},
/**
* event : on import
*/
$onImport: function () {
this.$Input = this.getElm();
this.$Input.type = 'hidden';
this.$Elm = new Element('div', {
'class': 'quiqqer-currency-list'
}).wraps(this.$Input);
this.$Select = new QUISelect({
showIcons: false,
events : {
onChange : this.$onSelectChange
}
}).inject(this.$Elm);
this.getCurrencies().then(function (result) {
for (var i in result) {
if (!result.hasOwnProperty(i)) {
continue;
}
this.$Select.appendChild(
result[i].text,
i
);
}
if (this.$Input.value !== '') {
this.$Select.setValue(this.$Input.value);
}
}.bind(this));
},
/**
* Return all available currencies
* @returns {Promise}
*/
getCurrencies: function () {
return new Promise(function (resolve, reject) {
QUIAjax.get('package_quiqqer_currency_ajax_getCurrencies', resolve, {
'package': 'quiqqer/currency',
onError : reject
});
});
},
/**
* event : on select change
*
* @param {String} value
* @param {Object} Select - qui/controls/buttons/Select
*/
$onSelectChange : function(value, Select) {
this.$Input.value = value;
}
});
});
......@@ -10,9 +10,18 @@
<de><![CDATA[Währungen]]></de>
<en><![CDATA[Currencies]]></en>
</locale>
<locale name="window.erp.title">
<de><![CDATA[Enterprise-Resource-Planning]]></de>
<en><![CDATA[Enterprise-Resource-Planning]]></en>
<locale name="currency.settings.title">
<de><![CDATA[Währungs-Einstellungen]]></de>
<en><![CDATA[Currency settings]]></en>
</locale>
<locale name="currency.settings.defaultCurrency.text">
<de><![CDATA[Standard Währung]]></de>
<en><![CDATA[Default currency]]></en>
</locale>
<locale name="currency.settings.allowedCurrency.text">
<de><![CDATA[Erlaubte Währungen]]></de>
<en><![CDATA[Allowed currencies]]></en>
</locale>
......@@ -85,8 +94,8 @@
<en><![CDATA[Hungarian forint]]></en>
</locale>
<locale name="currency.HUF.sign">
<de><![CDATA[]]></de>
<en><![CDATA[]]></en>
<de><![CDATA[&nbsp;]]></de>
<en><![CDATA[&nbsp;]]></en>
</locale>
<locale name="currency.LTL.text">
......@@ -139,8 +148,8 @@
<en><![CDATA[Swiss franc]]></en>
</locale>
<locale name="currency.CHF.sign">
<de><![CDATA[]]></de>
<en><![CDATA[]]></en>
<de><![CDATA[&nbsp;]]></de>
<en><![CDATA[&nbsp;]]></en>
</locale>
<locale name="currency.NOK.text">
......@@ -148,8 +157,8 @@
<en><![CDATA[Norwegian krone]]></en>
</locale>
<locale name="currency.NOK.sign">
<de><![CDATA[]]></de>
<en><![CDATA[]]></en>
<de><![CDATA[&nbsp;]]></de>
<en><![CDATA[&nbsp;]]></en>
</locale>
<locale name="currency.HRK.text">
......@@ -193,8 +202,8 @@
<en><![CDATA[Brasilian real]]></en>
</locale>
<locale name="currency.BRL.sign">
<de><![CDATA[]]></de>
<en><![CDATA[]]></en>
<de><![CDATA[&nbsp;]]></de>
<en><![CDATA[&nbsp;]]></en>
</locale>
<locale name="currency.CAD.text">
......@@ -211,8 +220,8 @@
<en><![CDATA[Chinese yuan renminbi]]></en>
</locale>
<locale name="currency.CNY.sign">
<de><![CDATA[]]></de>
<en><![CDATA[]]></en>
<de><![CDATA[&nbsp;]]></de>
<en><![CDATA[&nbsp;]]></en>
</locale>
<locale name="currency.HKD.text">
......@@ -229,8 +238,8 @@
<en><![CDATA[Indonesian rupiah]]></en>
</locale>
<locale name="currency.IDR.sign">
<de><![CDATA[]]></de>
<en><![CDATA[]]></en>
<de><![CDATA[&nbsp;]]></de>
<en><![CDATA[&nbsp;]]></en>
</locale>
<locale name="currency.ILS.text">
......@@ -238,8 +247,8 @@
<en><![CDATA[Israeli shekel]]></en>
</locale>
<locale name="currency.ILS.sign">
<de><![CDATA[]]></de>
<en><![CDATA[]]></en>
<de><![CDATA[&nbsp;]]></de>
<en><![CDATA[&nbsp;]]></en>
</locale>
<locale name="currency.INR.text">
......@@ -247,8 +256,8 @@
<en><![CDATA[Indian rupee]]></en>
</locale>
<locale name="currency.INR.sign">
<de><![CDATA[]]></de>
<en><![CDATA[]]></en>
<de><![CDATA[&nbsp;]]></de>
<en><![CDATA[&nbsp;]]></en>
</locale>
<locale name="currency.KRW.text">
......@@ -256,8 +265,8 @@
<en><![CDATA[South Korean won]]></en>
</locale>
<locale name="currency.KRW.sign">
<de><![CDATA[]]></de>
<en><![CDATA[]]></en>
<de><![CDATA[&nbsp;]]></de>
<en><![CDATA[&nbsp;]]></en>
</locale>
<locale name="currency.MXN.text">
......@@ -265,8 +274,8 @@
<en><![CDATA[Mexican peso]]></en>
</locale>
<locale name="currency.MXN.sign">
<de><![CDATA[]]></de>
<en><![CDATA[]]></en>
<de><![CDATA[&nbsp;]]></de>
<en><![CDATA[&nbsp;]]></en>
</locale>
<locale name="currency.MYR.text">
......@@ -274,8 +283,8 @@
<en><![CDATA[Malaysian ringgit]]></en>
</locale>
<locale name="currency.MYR.sign">
<de><![CDATA[]]></de>
<en><![CDATA[]]></en>
<de><![CDATA[&nbsp;]]></de>
<en><![CDATA[&nbsp;]]></en>
</locale>
<locale name="currency.NZD.text">
......@@ -292,8 +301,8 @@
<en><![CDATA[Philippine peso]]></en>
</locale>
<locale name="currency.PHP.sign">
<de><![CDATA[]]></de>
<en><![CDATA[]]></en>
<de><![CDATA[&nbsp;]]></de>
<en><![CDATA[&nbsp;]]></en>
</locale>
<locale name="currency.SGD.text">
......@@ -310,8 +319,8 @@
<en><![CDATA[Thai baht]]></en>
</locale>
<locale name="currency.THB.sign">
<de><![CDATA[]]></de>
<en><![CDATA[]]></en>
<de><![CDATA[&nbsp;]]></de>
<en><![CDATA[&nbsp;]]></en>
</locale>
<locale name="currency.ZAR.text">
......@@ -319,8 +328,8 @@
<en><![CDATA[South African rand]]></en>
</locale>
<locale name="currency.ZAR.sign">
<de><![CDATA[]]></de>
<en><![CDATA[]]></en>
<de><![CDATA[&nbsp;]]></de>
<en><![CDATA[&nbsp;]]></en>
</locale>
<locale name="currency.ISK.sign">
......@@ -328,8 +337,8 @@
<en><![CDATA[Icelandic krona]]></en>
</locale>
<locale name="currency.ISK.sign">
<de><![CDATA[]]></de>
<en><![CDATA[]]></en>
<de><![CDATA[&nbsp;]]></de>
<en><![CDATA[&nbsp;]]></en>
</locale>
</groups>
</locales>
\ No newline at end of file
......@@ -11,6 +11,7 @@
</conf>
<conf name="allowedCurrencies">
<type><![CDATA[string]]></type>
<defaultvalue>EUR,USD,GBP,CHF</defaultvalue>
</conf>
</section>
</config>
......@@ -26,12 +27,36 @@
<categories>
<category name="currencies">
<text>
<locale group="quiqqer/currency" var="currency.title"/>
</text>
<icon>icon-money</icon>
<settings title="currencies" name="currencies">
<title>
<locale group="quiqqer/currency" var="currency.settings.title"/>
</title>
<input conf="currency.defaultCurrency"
data-qui="package/quiqqer/currency/bin/settings/CurrencyList"
>
<text>
<locale group="quiqqer/currency" var="currency.settings.defaultCurrency.text"/>
</text>
</input>
<input conf="currency.allowedCurrencies"
data-qui="package/quiqqer/currency/bin/settings/AllowedCurrencies"
>
<text>
<locale group="quiqqer/currency" var="currency.settings.allowedCurrency.text"/>
</text>
</input>
</settings>
</category>
</categories>
</window>
......
0% Lade oder .
You are about to add 0 people to the discussion. Proceed with caution.
Bearbeitung dieser Nachricht zuerst beenden!
Bitte registrieren oder zum Kommentieren