| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| |
|
| | function saveTableData(identifier) { |
| | const table = document.querySelector( |
| | `#style-editor table[data-id='${identifier}']` |
| | ) |
| |
|
| | let currentData = [] |
| | const rows = table.querySelectorAll('tr') |
| | const filename = table.getAttribute('data-id') |
| |
|
| | rows.forEach((row, rowIndex) => { |
| | const rowData = [] |
| | const cells = |
| | rowIndex === 0 |
| | ? row.querySelectorAll('th') |
| | : row.querySelectorAll('td input, td textarea') |
| |
|
| | cells.forEach((cell) => { |
| | rowData.push(rowIndex === 0 ? cell.textContent : cell.value) |
| | }) |
| |
|
| | currentData.push(rowData) |
| | }) |
| |
|
| | let tablesData = {} |
| | tablesData[filename] = currentData |
| |
|
| | console.debug('Sending styles to manage endpoint:', tablesData) |
| | fetch('/mtb/actions', { |
| | method: 'POST', |
| | headers: { |
| | 'Content-Type': 'application/json', |
| | }, |
| | body: JSON.stringify({ |
| | name: 'saveStyle', |
| | args: tablesData, |
| | }), |
| | }) |
| | .then((response) => response.json()) |
| | .then((data) => { |
| | console.debug('Success:', data) |
| | }) |
| | .catch((error) => { |
| | console.error('Error:', error) |
| | }) |
| | } |
| |
|