Files
HowBadIsMyBatch/docs/BatchCodeSelectInitializer.js
2024-04-24 14:21:23 +02:00

29 lines
1.2 KiB
JavaScript

class BatchCodeSelectInitializer {
static initialize({ batchCodeSelectElement, batchCodeDetailsElement, batchCodeHeadingElement }) {
const batchCodeDetailsView = new BatchCodeDetailsView(batchCodeDetailsElement);
batchCodeSelectElement.select2({ minimumInputLength: 4 });
batchCodeSelectElement.on(
'select2:select',
function (event) {
BatchCodeSelectInitializer.#onBatchCodeSelected(
{
batchcode: event.params.data.id,
batchCodeHeadingElement: batchCodeHeadingElement,
batchCodeDetailsView: batchCodeDetailsView
});
});
batchCodeSelectElement.select2('open');
}
static #onBatchCodeSelected({ batchcode, batchCodeHeadingElement, batchCodeDetailsView }) {
CompanyByBatchcodeProvider
.getCompany(batchcode)
.then(company => {
batchCodeHeadingElement.innerText = `Batch ${batchcode} (${company})`;
batchCodeDetailsView.displayBatchCodeDetails(batchcode);
GoogleAnalytics.click_batchcode(batchcode);
});
}
}