using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;

namespace PowderCoating.Web.Controllers
{
    [Authorize]
    public class HelpController : Controller
    {
        /// <summary>
        /// Renders the Help Center landing page (article index). All help articles are static Razor views stored under Views/Help/ — no database queries are needed.
        /// </summary>
        public IActionResult Index()
        {
            return View();
        }

        /// <summary>
        /// Serves the Getting Started help article covering initial onboarding steps and the Setup Wizard.
        /// </summary>
        public IActionResult GettingStarted()
        {
            return View();
        }

        /// <summary>
        /// Serves the Customers help article explaining commercial vs non-commercial types, pricing tiers, and credit limits.
        /// </summary>
        public IActionResult Customers()
        {
            return View();
        }

        /// <summary>
        /// Serves the Vendors help article covering supplier management and payment terms.
        /// </summary>
        public IActionResult Vendors()
        {
            return View();
        }

        /// <summary>
        /// Serves the Equipment help article explaining the equipment status lifecycle and maintenance scheduling.
        /// </summary>
        public IActionResult Equipment()
        {
            return View();
        }

        /// <summary>
        /// Serves the User Profile help article covering photo upload, appearance preferences, and password/email changes.
        /// </summary>
        public IActionResult UserProfile()
        {
            return View();
        }

        /// <summary>
        /// Serves the Jobs help article explaining the 16-status job lifecycle, priorities, worker assignment, and time entries.
        /// </summary>
        public IActionResult Jobs()
        {
            return View();
        }

        /// <summary>
        /// Serves the Quotes help article covering the multi-item wizard, AI Photo Quoting, and quote-to-job conversion.
        /// </summary>
        public IActionResult Quotes()
        {
            return View();
        }

        /// <summary>
        /// Serves the Invoices help article covering invoice creation from a job, partial payments, voids, and PDF download.
        /// </summary>
        public IActionResult Invoices()
        {
            return View();
        }

        /// <summary>
        /// Serves the Inventory help article explaining stock tracking, transaction types, and reorder alerts.
        /// </summary>
        public IActionResult Inventory()
        {
            return View();
        }

        /// <summary>
        /// Serves the Purchase Orders help article covering PO creation, submission, receiving, and conversion to vendor bills.
        /// </summary>
        public IActionResult PurchaseOrders()
        {
            return View();
        }

        /// <summary>
        /// Serves the Accounts Payable help article describing vendor bills, the AP ledger, and payment tracking.
        /// </summary>
        public IActionResult AccountsPayable()
        {
            return View();
        }

        /// <summary>
        /// Serves the Reports help article summarising the 24 available report actions including P&amp;L, AR Aging, and PDF exports.
        /// </summary>
        public IActionResult Reports()
        {
            return View();
        }

        /// <summary>
        /// Serves the Settings help article covering company settings, named ovens, pricing tiers, and platform configuration.
        /// </summary>
        public IActionResult Settings()
        {
            return View();
        }

        /// <summary>
        /// Serves the Customer Intake Kiosk help article explaining the tablet kiosk setup, the staff-triggered intake flow, and the Intakes review page.
        /// </summary>
        public IActionResult CustomerIntakeKiosk()
        {
            return View();
        }

        /// <summary>
        /// Serves the Custom Formula Item Templates help article explaining how to create NCalc formula
        /// templates, use the AI generator, and add formula items to quotes and jobs.
        /// </summary>
        public IActionResult CustomFormulaTemplates()
        {
            return View();
        }

        /// <summary>
        /// Serves the Timeclock help article explaining clock in/out, multi-segment days, the kiosk tablet
        /// mode with PIN authentication, manager edit/delete tools, and the Attendance report.
        /// </summary>
        public IActionResult Timeclock()
        {
            return View();
        }
    }
}
