mirror of
https://github.com/EDCD/coriolis.git
synced 2025-12-08 22:33:24 +00:00
Support new discounts import
This commit is contained in:
@@ -99,7 +99,8 @@ export default class ModalImport extends TranslatedComponent {
|
|||||||
builds: props.builds,
|
builds: props.builds,
|
||||||
canEdit: !props.builds,
|
canEdit: !props.builds,
|
||||||
comparisons: null,
|
comparisons: null,
|
||||||
discounts: null,
|
shipDiscount: null,
|
||||||
|
moduleDiscount: null,
|
||||||
errorMsg: null,
|
errorMsg: null,
|
||||||
importString: null,
|
importString: null,
|
||||||
importValid: false,
|
importValid: false,
|
||||||
@@ -142,9 +143,19 @@ export default class ModalImport extends TranslatedComponent {
|
|||||||
}
|
}
|
||||||
this.setState({ comparisons: importData.comparisons });
|
this.setState({ comparisons: importData.comparisons });
|
||||||
}
|
}
|
||||||
|
// Check for old/deprecated discounts
|
||||||
if (importData.discounts instanceof Array && importData.discounts.length == 2) {
|
if (importData.discounts instanceof Array && importData.discounts.length == 2) {
|
||||||
this.setState({ discounts: importData.discounts });
|
this.setState({ shipDiscount: importData.discounts[0], moduleDiscount: importData.discounts[1] });
|
||||||
}
|
}
|
||||||
|
// Check for ship discount
|
||||||
|
if (!isNaN(importData.shipDiscount)) {
|
||||||
|
this.setState({ shipDiscount: importData.shipDiscount * 1 });
|
||||||
|
}
|
||||||
|
// Check for module discount
|
||||||
|
if (!isNaN(importData.moduleDiscount)) {
|
||||||
|
this.setState({ shipDiscount: importData.moduleDiscount * 1 });
|
||||||
|
}
|
||||||
|
|
||||||
if (typeof importData.insurance == 'string') {
|
if (typeof importData.insurance == 'string') {
|
||||||
let insurance = importData.insurance.toLowerCase();
|
let insurance = importData.insurance.toLowerCase();
|
||||||
|
|
||||||
@@ -281,7 +292,8 @@ export default class ModalImport extends TranslatedComponent {
|
|||||||
this.setState({
|
this.setState({
|
||||||
builds: null,
|
builds: null,
|
||||||
comparisons: null,
|
comparisons: null,
|
||||||
discounts: null,
|
shipDiscount: null,
|
||||||
|
moduleDiscount: null,
|
||||||
errorMsg: null,
|
errorMsg: null,
|
||||||
importValid: false,
|
importValid: false,
|
||||||
insurance: null,
|
insurance: null,
|
||||||
@@ -364,8 +376,9 @@ export default class ModalImport extends TranslatedComponent {
|
|||||||
* Import parsed, processed data and save
|
* Import parsed, processed data and save
|
||||||
*/
|
*/
|
||||||
_import() {
|
_import() {
|
||||||
if (this.state.builds) {
|
let state = this.state;
|
||||||
let builds = this.state.builds;
|
if (state.builds) {
|
||||||
|
let builds = state.builds;
|
||||||
for (let shipId in builds) {
|
for (let shipId in builds) {
|
||||||
for (let buildName in builds[shipId]) {
|
for (let buildName in builds[shipId]) {
|
||||||
let build = builds[shipId][buildName];
|
let build = builds[shipId][buildName];
|
||||||
@@ -377,8 +390,8 @@ export default class ModalImport extends TranslatedComponent {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this.state.comparisons) {
|
if (state.comparisons) {
|
||||||
let comparisons = this.state.comparisons;
|
let comparisons = state.comparisons;
|
||||||
for (let comp in comparisons) {
|
for (let comp in comparisons) {
|
||||||
let comparison = comparisons[comp];
|
let comparison = comparisons[comp];
|
||||||
let useName = comparison.useName.trim();
|
let useName = comparison.useName.trim();
|
||||||
@@ -388,13 +401,15 @@ export default class ModalImport extends TranslatedComponent {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this.state.discounts && this.state.discounts.length == 2) {
|
if (state.shipDiscount !== undefined) {
|
||||||
Persist.setShipDiscount(this.state.discounts[0]);
|
Persist.setShipDiscount(state.shipDiscount);
|
||||||
Persist.setModuleDiscount(this.state.discounts[1]);
|
}
|
||||||
|
if (state.moduleDiscount !== undefined) {
|
||||||
|
Persist.setModuleDiscount(state.moduleDiscount);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this.state.insurance) {
|
if (state.insurance) {
|
||||||
Persist.setInsurance(this.state.insurance);
|
Persist.setInsurance(state.insurance);
|
||||||
}
|
}
|
||||||
|
|
||||||
this.context.hideModal();
|
this.context.hideModal();
|
||||||
|
|||||||
Reference in New Issue
Block a user