239 lines
14 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<odoo>
<template id="settings_page_template" name="Dine360 Settings Page">
<t t-call="dine360_dashboard.dashboard_layout">
<t t-set="active_page" t-value="'settings'"/>
<!-- Page Title & Header -->
<section class="o_page_header">
<div>
<h1 class="o_heading_title">Settings</h1>
<p class="o_heading_subtitle">Configure platform branding, operational rules, notifications, and delivery integrations</p>
</div>
<div class="o_header_controls">
<div class="o_status_tag">
<span class="o_green_dot"/>
<span>Configuration Active</span>
</div>
<a href="/web#action=base.res_config_setting_act_window" class="o_btn_white_small py-2 px-3">
<i class="fa fa-sliders me-1"/> Odoo ERP Settings
</a>
</div>
</section>
<!-- Settings Form -->
<form id="formSaveSettings" class="mb-5">
<div class="o_settings_grid">
<!-- Category 1: Platform & Branding -->
<div class="o_settings_card">
<div class="o_settings_card_top">
<div class="o_settings_icon">
<i class="fa fa-paint-brush"/>
</div>
<div>
<h4 class="o_settings_title">Platform &amp; Branding</h4>
<p class="o_settings_desc">Global platform identity and brand assets</p>
</div>
</div>
<div class="o_form_group">
<label class="o_form_label">Platform Title</label>
<input type="text" name="platform_title" value="Dine360 Restaurant Platform" class="o_form_control"/>
</div>
<div class="row">
<div class="col-md-6 o_form_group">
<label class="o_form_label">Subdomain Suffix</label>
<input type="text" name="subdomain_suffix" value=".dine360.com" class="o_form_control font-monospace"/>
</div>
<div class="col-md-6 o_form_group">
<label class="o_form_label">Currency Symbol</label>
<input type="text" name="currency_symbol" value="₹" class="o_form_control"/>
</div>
</div>
<div class="o_form_group">
<label class="o_form_label">Support &amp; Admin Email</label>
<input type="email" name="support_email" value="admin@dine360.com" class="o_form_control"/>
</div>
</div>
<!-- Category 2: Reservation Rules -->
<div class="o_settings_card">
<div class="o_settings_card_top">
<div class="o_settings_icon" style="background:#dbeafe; color:#2563eb;">
<i class="fa fa-calendar-check-o"/>
</div>
<div>
<h4 class="o_settings_title">Reservation Operations</h4>
<p class="o_settings_desc">Booking windows, seating durations, and rules</p>
</div>
</div>
<div class="row">
<div class="col-md-6 o_form_group">
<label class="o_form_label">Default Dining Duration (Mins)</label>
<input type="number" name="default_duration" value="90" class="o_form_control"/>
</div>
<div class="col-md-6 o_form_group">
<label class="o_form_label">Max Online Party Size</label>
<input type="number" name="max_party_size" value="12" class="o_form_control"/>
</div>
</div>
<div class="o_form_group mt-3">
<div class="form-check form-switch d-flex align-items-center gap-2">
<input class="form-check-input" type="checkbox" id="autoConfirmRes" name="auto_confirm_reservation" checked="checked" style="width:2.4em; height:1.2em;"/>
<label class="form-check-label fw-bold text-dark small" for="autoConfirmRes">
Auto-confirm guest reservations if table is available
</label>
</div>
<small class="text-muted d-block mt-1">If unchecked, reservations arrive as Draft requiring manager approval.</small>
</div>
</div>
<!-- Category 3: WhatsApp Notifications -->
<div class="o_settings_card">
<div class="o_settings_card_top">
<div class="o_settings_icon" style="background:#dcfce7; color:#16a34a;">
<i class="fa fa-whatsapp"/>
</div>
<div>
<h4 class="o_settings_title">WhatsApp Notification Gateway</h4>
<p class="o_settings_desc">Automated guest SMS &amp; WhatsApp confirmations</p>
</div>
</div>
<div class="o_form_group">
<div class="form-check form-switch d-flex align-items-center gap-2 mb-3">
<input class="form-check-input" type="checkbox" id="enableWhatsapp" name="enable_whatsapp" checked="checked" style="width:2.4em; height:1.2em;"/>
<label class="form-check-label fw-bold text-dark small" for="enableWhatsapp">
Enable WhatsApp Booking Confirmations
</label>
</div>
</div>
<div class="o_form_group">
<label class="o_form_label">Guest Confirmation Message Template</label>
<textarea name="whatsapp_template" rows="3" class="o_form_control">Hello {customer_name}, your table reservation at {restaurant_name} for {time} is confirmed! Reference: {booking_ref}. We look forward to serving you!</textarea>
<small class="text-muted">Placeholders: {customer_name}, {restaurant_name}, {time}, {booking_ref}</small>
</div>
</div>
<!-- Category 4: Uber Direct Delivery -->
<div class="o_settings_card">
<div class="o_settings_card_top">
<div class="o_settings_icon" style="background:#f1f5f9; color:#0f172a;">
<i class="fa fa-motorcycle"/>
</div>
<div>
<h4 class="o_settings_title">Uber Direct &amp; Delivery</h4>
<p class="o_settings_desc">On-demand courier dispatch parameters</p>
</div>
</div>
<div class="row">
<div class="col-md-6 o_form_group">
<label class="o_form_label">Uber Environment</label>
<select name="uber_mode" class="o_form_control">
<option value="sandbox">Sandbox (Testing Mode)</option>
<option value="production">Production (Live Couriers)</option>
</select>
</div>
<div class="col-md-6 o_form_group">
<label class="o_form_label">Max Delivery Radius (km)</label>
<input type="number" name="max_delivery_radius" value="10" class="o_form_control"/>
</div>
</div>
<div class="o_form_group">
<div class="form-check form-switch d-flex align-items-center gap-2 mt-2">
<input class="form-check-input" type="checkbox" id="autoDispatchUber" name="auto_dispatch_uber" checked="checked" style="width:2.4em; height:1.2em;"/>
<label class="form-check-label fw-bold text-dark small" for="autoDispatchUber">
Auto-dispatch Uber courier when kitchen marks order Ready
</label>
</div>
</div>
</div>
<!-- Category 5: Automated Backups -->
<div class="o_settings_card">
<div class="o_settings_card_top">
<div class="o_settings_icon" style="background:#fef3c7; color:#d97706;">
<i class="fa fa-database"/>
</div>
<div>
<h4 class="o_settings_title">Database Backups &amp; Maintenance</h4>
<p class="o_settings_desc">Automated snapshots and retention policy</p>
</div>
</div>
<div class="row">
<div class="col-md-6 o_form_group">
<label class="o_form_label">Daily Scheduled Time</label>
<input type="time" name="backup_time" value="03:00" class="o_form_control"/>
</div>
<div class="col-md-6 o_form_group">
<label class="o_form_label">Retention (Days)</label>
<input type="number" name="backup_retention" value="7" class="o_form_control"/>
</div>
</div>
<div class="o_form_group">
<label class="o_form_label">Backup Storage Directory</label>
<input type="text" name="backup_dir" value="/var/lib/odoo/backups" readonly="readonly" class="o_form_control font-monospace bg-light"/>
</div>
</div>
<!-- Category 6: KOT & Printers -->
<div class="o_settings_card">
<div class="o_settings_card_top">
<div class="o_settings_icon" style="background:#f3e8ff; color:#9333ea;">
<i class="fa fa-print"/>
</div>
<div>
<h4 class="o_settings_title">Receipt &amp; KOT Printing</h4>
<p class="o_settings_desc">Thermal hardware printer integration</p>
</div>
</div>
<div class="row">
<div class="col-md-6 o_form_group">
<label class="o_form_label">Thermal Paper Width</label>
<select name="paper_width" class="o_form_control">
<option value="80">80mm (Standard POS)</option>
<option value="58">58mm (Compact Receipt)</option>
</select>
</div>
<div class="col-md-6 o_form_group">
<label class="o_form_label">Printer Driver</label>
<select name="printer_driver" class="o_form_control">
<option value="qz">QZ Tray Network Service</option>
<option value="epson">Epson ESC/POS Direct</option>
</select>
</div>
</div>
<div class="o_form_group">
<div class="form-check form-switch d-flex align-items-center gap-2 mt-2">
<input class="form-check-input" type="checkbox" id="autoPrintKot" name="auto_print_kot" checked="checked" style="width:2.4em; height:1.2em;"/>
<label class="form-check-label fw-bold text-dark small" for="autoPrintKot">
Auto-print KOT slip upon kitchen order send
</label>
</div>
</div>
</div>
</div>
<!-- Sticky Save Bar -->
<div class="d-flex align-items-center justify-content-end gap-3 p-3 bg-white border rounded-3 shadow-sm">
<button type="reset" class="btn btn-light px-4">Discard Changes</button>
<button type="submit" class="o_btn_red_action px-4 py-2">
<i class="fa fa-save me-1"/> Save Settings
</button>
</div>
</form>
</t>
</template>
</odoo>