Work on badge printing and the actual badge layout.

This commit is contained in:
Scott Idem
2025-10-09 19:26:35 -04:00
parent 0f05fd708f
commit 74cc5c5d0d
7 changed files with 811 additions and 79 deletions

View File

@@ -18,14 +18,55 @@ export const properties_to_save = [
'name',
'description',
'template_code',
'template_type',
'template_json',
'template_svg',
'template_css',
'template_html',
// 'template_code',
// 'template_type',
// 'template_json',
// 'template_svg',
// 'template_css',
// 'template_html',
'default',
'logo_filename',
'logo_path',
'header_path',
'secondary_header_path',
'footer_path',
'header_row_1',
'header_row_2',
// 'footer_title',
// 'footer_left',
// 'footer_right',
// 'header_background',
// 'footer_background',
'badge_type_list',
'ticket_list',
'ticket_1_text',
'ticket_2_text',
'ticket_3_text',
'ticket_4_text',
'ticket_5_text',
'ticket_6_text',
'ticket_7_text',
'ticket_8_text',
// 'ticket_9_text',
// 'ticket_10_text',
'wireless_ssid',
'wireless_password',
'show_qr_front',
'show_qr_back',
'layout',
'style_filename',
// 'style_href',
// 'default',
'enable',
'hide',
'priority',
@@ -70,14 +111,38 @@ export async function process_ae_obj__event_badge_template_props({
name: obj.name,
description: obj.description,
template_code: obj.template_code,
template_type: obj.template_type,
template_json: obj.template_json,
template_svg: obj.template_svg,
template_css: obj.template_css,
template_html: obj.template_html,
logo_filename: obj.logo_filename,
logo_path: obj.logo_path,
default: obj.default,
header_path: obj.header_path,
secondary_header_path: obj.secondary_header_path,
footer_path: obj.footer_path,
header_row_1: obj.header_row_1,
header_row_2: obj.header_row_2,
badge_type_list: obj.badge_type_list,
ticket_list: obj.ticket_list,
ticket_1_text: obj.ticket_1_text,
ticket_2_text: obj.ticket_2_text,
ticket_3_text: obj.ticket_3_text,
ticket_4_text: obj.ticket_4_text,
ticket_5_text: obj.ticket_5_text,
ticket_6_text: obj.ticket_6_text,
ticket_7_text: obj.ticket_7_text,
ticket_8_text: obj.ticket_8_text,
wireless_ssid: obj.wireless_ssid,
wireless_password: obj.wireless_password,
show_qr_front: obj.show_qr_front,
show_qr_back: obj.show_qr_back,
layout: obj.layout,
style_filename: obj.style_filename,
// default: obj.default,
enable: obj.enable,
hide: obj.hide,
priority: obj.priority,

View File

@@ -198,7 +198,55 @@ export interface Badge_template {
event_id: string;
event_id_random: string;
name: string;
description?: null|string;
logo_filename?: null|string;
logo_path?: null|string;
header_path?: null|string;
secondary_header_path?: null|string;
footer_path?: null|string;
header_row_1?: null|string;
header_row_2?: null|string;
badge_type_list?: any; // This is an array of objects with code and name
badge_type_info_kv?: any; // This is a key value list with code as the key and name as the value. Use this for exhibitor, presenter, attendee, staff, vip, etc.
other_info_kv?: any; // This is a key value list with code as the key and name as the value. Use this for other custom fields.
ticket_list?: any; // This is an array of objects with num, code, and name
ticket_1_text?: null|string;
ticket_2_text?: null|string;
ticket_3_text?: null|string;
ticket_4_text?: null|string;
ticket_5_text?: null|string;
ticket_6_text?: null|string;
ticket_7_text?: null|string;
ticket_8_text?: null|string;
wireless_ssid?: null|string;
wireless_password?: null|string;
show_qr_front: boolean;
show_qr_back: boolean;
layout?: null|string;
style_filename?: null|string;
enable: null|boolean;
hide?: null|boolean;
priority?: null|boolean
sort?: null|number;
group?: null|string;
notes?: null|string;
created_on: Date;
updated_on?: null|Date;
// Generated fields for sorting locally only
// Additional fields for convenience (database views)
}
// Updated 2024-10-16