tmc-v2/public/js/presets.js

304 lines
16 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// // Simple JSON preset system
// const jsonPresets = {
// default: {
// type: "configuration",
// navItems: [
// {
// navPage: "NAV_HOME",
// navName: "Оплата",
// icon: { type: "resource", value: "home" },
// position: 0,
// enabled: true
// },
// {
// navPage: "NAV_SCAN",
// navName: "Сканнер",
// icon: { type: "resource", value: "scan" },
// position: 1,
// enabled: true
// },
// {
// navPage: "NAV_PRINTER",
// navName: "Принтер",
// icon: { type: "resource", value: "printer" },
// position: 2,
// enabled: true
// },
// {
// navPage: "NAV_SETTINGS",
// navName: "Настройки",
// icon: { type: "resource", value: "settings" },
// position: 3,
// enabled: true
// }
// ],
// mainLogo: { type: "resource", value: "mulberry" },
// footerLogo: { type: "resource", value: "mulberry" },
// printLogo: { type: "resource", value: "mulberry" },
// printURL: "www.mulberrypos.ru",
// footerLogoVisibility: true,
// bankMode: false,
// footerGreetingText: "Hello!",
// footerText: "©Mulberry 2025",
// primaryColor: "#bb2aa1",
// SecondaryColor: "#4aa6d3"
// },
// D30_bankmode_false: {
// type: "configuration",
// navItems: [
// {
// navPage: "NAV_HOME",
// navName: "Оплата",
// icon: { type: "resource", value: "scan" },
// position: 0,
// enabled: true
// },
// {
// navPage: "NAV_SCAN",
// navName: "Сканнер",
// icon: { type: "resource", value: "scan" },
// position: 1,
// enabled: true
// },
// {
// navPage: "NAV_CASHIER",
// navName: "Касса",
// icon: { type: "resource", value: "cashier" },
// position: 2,
// enabled: true
// },
// {
// navPage: "NAV_SETTINGS",
// navName: "Настройки",
// icon: { type: "resource", value: "settings" },
// position: 3,
// enabled: true
// }
// ],
// mainLogo: { type: "resource", value: "mulberry" },
// footerLogo: { type: "resource", value: "mulberry" },
// printLogo: { type: "resource", value: "mulberry" },
// printURL: "www.mulberrypos.ru",
// footerLogoVisibility: true,
// bankMode: false,
// footerGreetingText: "Hello!",
// footerText: "©Mulberry 2025",
// primaryColor: "#bb2aa1",
// SecondaryColor: "#4aa6d3"
// },
// D30_bankmode_true: {
// type: "configuration",
// navItems: [
// {
// navPage: "NAV_HOME",
// navName: "Оплата",
// icon: { type: "resource", value: "home" },
// position: 0,
// enabled: true
// },
// {
// navPage: "NAV_SCAN",
// navName: "Сканнер",
// icon: { type: "resource", value: "scan" },
// position: 1,
// enabled: true
// },
// {
// navPage: "NAV_CASHIER",
// navName: "Касса",
// icon: { type: "resource", value: "cashier" },
// position: 2,
// enabled: true
// },
// {
// navPage: "NAV_SETTINGS",
// navName: "Настройки",
// icon: { type: "resource", value: "settings" },
// position: 3,
// enabled: true
// }
// ],
// mainLogo: { type: "resource", value: "mulberry" },
// footerLogo: { type: "resource", value: "mulberry" },
// printLogo: { type: "resource", value: "mulberry" },
// printURL: "www.mulberrypos.ru",
// footerLogoVisibility: true,
// bankMode: true,
// footerGreetingText: "Hello!",
// footerText: "©Mulberry 2025",
// primaryColor: "#000000ff",
// SecondaryColor: "#6a6a6aff"
// },
// bank: {
// type: "configuration",
// navItems: [
// {
// navPage: "NAV_HOME",
// navName: "Счета",
// icon: { type: "resource", value: "home" },
// position: 0,
// enabled: true
// },
// {
// navPage: "NAV_SCAN",
// navName: "Депозит",
// icon: { type: "resource", value: "scan" },
// position: 1,
// enabled: true
// },
// {
// navPage: "NAV_PRINTER",
// navName: "Чеки",
// icon: { type: "resource", value: "printer" },
// position: 2,
// enabled: true
// },
// {
// navPage: "NAV_SETTINGS",
// navName: "Безопасность",
// icon: { type: "resource", value: "settings" },
// position: 3,
// enabled: true
// }
// ],
// mainLogo: { type: "resource", value: "citibank" },
// footerLogo: { type: "resource", value: "citibank" },
// printLogo: { type: "resource", value: "citibank" },
// printURL: "www.bank.com",
// footerLogoVisibility: true,
// bankMode: true,
// footerGreetingText: "Добро пожаловать",
// footerText: "Банковский режим ©2025",
// primaryColor: "#0047AB",
// SecondaryColor: "#FFFFFF"
// },
// minimal: {
// type: "configuration",
// navItems: [
// {
// navPage: "NAV_HOME",
// navName: "Оплата",
// icon: { type: "resource", value: "home" },
// position: 0,
// enabled: true
// },
// {
// navPage: "NAV_SCAN",
// navName: "Сканнер",
// icon: { type: "resource", value: "scan" },
// position: 1,
// enabled: true
// },
// {
// enabled: false
// },
// {
// enabled: false
// }
// ],
// mainLogo: {
// type: "base64",
// value: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAApgAAAKYB3X3/OAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAADTSURBVDiNpZOxCsIwEEWfiaCToKODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg极简主义"
// },
// footerLogo: { type: "resource", value: "mulberry" },
// printLogo: { type: "resource", value: "mulberry" },
// printURL: "",
// footerLogoVisibility: false,
// bankMode: false,
// footerGreetingText: "",
// footerText: "",
// primaryColor: "#333333",
// SecondaryColor: "#CCCCCC"
// }
// };
// // Function to apply JSON preset
// function applyJsonPreset(presetName) {
// if (!jsonPresets[presetName]) return;
// const preset = jsonPresets[presetName];
// const displayConfig = {
// ...preset,
// mainLogo: {
// type: preset.mainLogo.type,
// value: preset.mainLogo.value
// },
// footerLogo: {
// type: preset.footerLogo.type,
// value: preset.footerLogo.value
// },
// printLogo: {
// type: preset.printLogo.type,
// value: preset.printLogo.value
// }
// };
// document.getElementById('configLog').value = JSON.stringify(displayConfig, null, 2);
// }
// // Function to send preset to device
// function sendPresetToDevice() {
// const presetSelector = document.getElementById('presetSelector');
// const selectedPreset = presetSelector.value;
// if (!selectedPreset) {
// console.log('Please select a preset first!');
// return;
// }
// const presetConfig = jsonPresets[selectedPreset];
// const topicSelect = document.querySelector('select[name="topic"]');
// const selectedTopic = topicSelect.value;
// if (!selectedTopic) {
// console.log('Please select a preset first!');
// return;
// }
// console.log('[DEBUG] Sending preset to device:', presetConfig);
// fetch('/sendToDevice', {
// method: 'POST',
// headers: { 'Content-Type': 'application/json' },
// body: JSON.stringify({
// config: presetConfig,
// topic: selectedTopic
// })
// })
// .then(response => {
// if (!response.ok) {
// throw new Error('Network response was not ok');
// }
// return response.json();
// })
// .then(data => {
// console.log('[DEBUG] Configuration published successfully');
// })
// .catch(err => {
// console.error('[ERROR] Publish failed:', err);
// });
// }
// // Add event listeners when DOM is loaded
// document.addEventListener('DOMContentLoaded', function() {
// const presetSelector = document.getElementById('presetSelector');
// const sendPresetBtn = document.getElementById('sendPresetBtn');
// if (presetSelector) {
// presetSelector.addEventListener('change', function() {
// if (this.value) {
// applyJsonPreset(this.value);
// }
// });
// }
// if (sendPresetBtn) {
// sendPresetBtn.addEventListener('click', sendPresetToDevice);
// }
// });