{"id":12919,"date":"2026-08-09T14:19:58","date_gmt":"2026-08-09T11:19:58","guid":{"rendered":"https:\/\/altal.md\/?page_id=12919"},"modified":"2026-08-09T17:11:49","modified_gmt":"2026-08-09T14:11:49","slug":"generator-de-scheme","status":"publish","type":"page","link":"https:\/\/altal.md\/ro\/instrumente-hvac\/generator-de-scheme\/","title":{"rendered":"Generator de scheme"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"12919\" class=\"elementor elementor-12919\">\n\t\t\t\t<div class=\"elementor-element elementor-element-4619207e e-flex e-con-boxed e-con e-parent\" data-id=\"4619207e\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1c8d1e17 elementor-widget elementor-widget-text-editor\" data-id=\"1c8d1e17\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h3><strong><span class=\"\">Generator de scheme<\/span><\/strong><\/h3>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1801d26 elementor-widget elementor-widget-html\" data-id=\"1801d26\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!-- ============================================================ -->\r\n<!--  ALTAL - \u0413\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440 \u0441\u0445\u0435\u043c \u0438 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0439 (Elementor) v1.0      -->\r\n<!-- ============================================================ -->\r\n\r\n<style>\r\n    .altal-scheme-generator {\r\n        max-width: 1400px;\r\n        margin: 0 auto;\r\n        padding: 20px 0;\r\n        font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\r\n        color: #1a2332;\r\n    }\r\n\r\n    .altal-scheme-generator .header {\r\n        margin-bottom: 24px;\r\n    }\r\n    .altal-scheme-generator .header h1 {\r\n        font-size: 28px;\r\n        font-weight: 700;\r\n        color: #0b2b4a;\r\n        margin: 0 0 4px 0;\r\n    }\r\n    .altal-scheme-generator .header p {\r\n        color: #64748b;\r\n        font-size: 16px;\r\n        margin: 0;\r\n    }\r\n\r\n    .altal-scheme-generator .breadcrumb {\r\n        font-size: 13px;\r\n        color: #888;\r\n        margin-bottom: 16px;\r\n    }\r\n    .altal-scheme-generator .breadcrumb a {\r\n        color: #0057a8;\r\n        text-decoration: none;\r\n    }\r\n\r\n    .altal-scheme-generator .project-selector {\r\n        background: #ffffff;\r\n        border-radius: 12px;\r\n        padding: 16px 24px;\r\n        margin-bottom: 24px;\r\n        border: 1px solid #e9edf2;\r\n        display: flex;\r\n        justify-content: space-between;\r\n        align-items: center;\r\n        flex-wrap: wrap;\r\n        gap: 12px;\r\n    }\r\n    .altal-scheme-generator .project-selector select {\r\n        padding: 10px 16px;\r\n        border: 1px solid #ddd;\r\n        border-radius: 8px;\r\n        font-size: 14px;\r\n        min-width: 280px;\r\n        background: #fff;\r\n    }\r\n    .altal-scheme-generator .project-selector .btn {\r\n        padding: 10px 24px;\r\n        background: #0057a8;\r\n        color: #fff;\r\n        border: none;\r\n        border-radius: 8px;\r\n        font-weight: 600;\r\n        cursor: pointer;\r\n        transition: 0.2s;\r\n    }\r\n    .altal-scheme-generator .project-selector .btn:hover {\r\n        background: #004a8f;\r\n    }\r\n    .altal-scheme-generator .project-selector .btn-outline {\r\n        background: #f0f4f8;\r\n        color: #1a2332;\r\n        border: 1px solid #ddd;\r\n    }\r\n    .altal-scheme-generator .project-selector .btn-outline:hover {\r\n        background: #e4e9f0;\r\n    }\r\n\r\n    .altal-scheme-generator .grid {\r\n        display: grid;\r\n        grid-template-columns: 360px 1fr;\r\n        gap: 24px;\r\n    }\r\n\r\n    .altal-scheme-generator .panel {\r\n        background: #ffffff;\r\n        border-radius: 12px;\r\n        border: 1px solid #e9edf2;\r\n        padding: 24px;\r\n    }\r\n    .altal-scheme-generator .panel h3 {\r\n        font-size: 16px;\r\n        color: #0b2b4a;\r\n        margin: 0 0 16px 0;\r\n        display: flex;\r\n        align-items: center;\r\n        gap: 8px;\r\n    }\r\n    .altal-scheme-generator .panel .field {\r\n        margin-bottom: 14px;\r\n    }\r\n    .altal-scheme-generator .panel .field label {\r\n        display: block;\r\n        font-weight: 600;\r\n        font-size: 13px;\r\n        margin-bottom: 4px;\r\n    }\r\n    .altal-scheme-generator .panel .field select,\r\n    .altal-scheme-generator .panel .field input {\r\n        width: 100%;\r\n        padding: 10px 12px;\r\n        border: 1px solid #ddd;\r\n        border-radius: 8px;\r\n        font-size: 14px;\r\n        background: #fff;\r\n    }\r\n    .altal-scheme-generator .panel .field .hint {\r\n        font-size: 12px;\r\n        color: #888;\r\n        margin-top: 2px;\r\n    }\r\n    .altal-scheme-generator .panel .btn-generate {\r\n        width: 100%;\r\n        padding: 14px;\r\n        background: #0057a8;\r\n        color: #fff;\r\n        border: none;\r\n        border-radius: 8px;\r\n        font-weight: 600;\r\n        font-size: 16px;\r\n        cursor: pointer;\r\n        transition: 0.2s;\r\n        margin-top: 4px;\r\n    }\r\n    .altal-scheme-generator .panel .btn-generate:hover {\r\n        background: #004a8f;\r\n    }\r\n\r\n    .altal-scheme-generator .preview {\r\n        background: #ffffff;\r\n        border-radius: 12px;\r\n        border: 1px solid #e9edf2;\r\n        padding: 24px;\r\n        min-height: 500px;\r\n    }\r\n    .altal-scheme-generator .preview .tabs {\r\n        display: flex;\r\n        gap: 16px;\r\n        border-bottom: 2px solid #e9edf2;\r\n        margin-bottom: 16px;\r\n        padding-bottom: 8px;\r\n    }\r\n    .altal-scheme-generator .preview .tabs button {\r\n        background: none;\r\n        border: none;\r\n        padding: 6px 0;\r\n        font-size: 14px;\r\n        font-weight: 500;\r\n        color: #888;\r\n        cursor: pointer;\r\n        border-bottom: 2px solid transparent;\r\n        transition: 0.2s;\r\n    }\r\n    .altal-scheme-generator .preview .tabs button.active {\r\n        color: #0057a8;\r\n        border-bottom-color: #0057a8;\r\n    }\r\n    .altal-scheme-generator .preview .tab-content {\r\n        display: none;\r\n    }\r\n    .altal-scheme-generator .preview .tab-content.active {\r\n        display: block;\r\n    }\r\n\r\n    .altal-scheme-generator .scheme-container {\r\n        background: #fafcff;\r\n        border: 1px solid #e9edf2;\r\n        border-radius: 8px;\r\n        padding: 16px;\r\n        overflow: auto;\r\n        min-height: 350px;\r\n        display: flex;\r\n        justify-content: center;\r\n        align-items: center;\r\n    }\r\n    .altal-scheme-generator .scheme-container svg {\r\n        max-width: 100%;\r\n        height: auto;\r\n    }\r\n\r\n    .altal-scheme-generator .bom-table {\r\n        width: 100%;\r\n        border-collapse: collapse;\r\n        font-size: 14px;\r\n    }\r\n    .altal-scheme-generator .bom-table th {\r\n        background: #f8fafc;\r\n        text-align: left;\r\n        padding: 10px 12px;\r\n        border-bottom: 2px solid #e9edf2;\r\n        font-weight: 600;\r\n    }\r\n    .altal-scheme-generator .bom-table td {\r\n        padding: 10px 12px;\r\n        border-bottom: 1px solid #e9edf2;\r\n    }\r\n    .altal-scheme-generator .bom-table .total {\r\n        font-weight: 700;\r\n        background: #f0f7ff;\r\n    }\r\n\r\n    .altal-scheme-generator .export-actions {\r\n        margin-top: 20px;\r\n        display: flex;\r\n        gap: 12px;\r\n        flex-wrap: wrap;\r\n        padding-top: 16px;\r\n        border-top: 1px solid #e9edf2;\r\n    }\r\n    .altal-scheme-generator .export-actions .btn {\r\n        padding: 10px 24px;\r\n        border: none;\r\n        border-radius: 8px;\r\n        font-weight: 600;\r\n        font-size: 14px;\r\n        cursor: pointer;\r\n        transition: 0.2s;\r\n    }\r\n    .altal-scheme-generator .export-actions .btn-pdf {\r\n        background: #0057a8;\r\n        color: #fff;\r\n    }\r\n    .altal-scheme-generator .export-actions .btn-pdf:hover {\r\n        background: #004a8f;\r\n    }\r\n    .altal-scheme-generator .export-actions .btn-dwg {\r\n        background: #f0f4f8;\r\n        color: #1a2332;\r\n        border: 1px solid #ddd;\r\n    }\r\n    .altal-scheme-generator .export-actions .btn-dwg:hover {\r\n        background: #e4e9f0;\r\n    }\r\n    .altal-scheme-generator .export-actions .btn-save {\r\n        background: #34a853;\r\n        color: #fff;\r\n    }\r\n    .altal-scheme-generator .export-actions .btn-save:hover {\r\n        background: #2d9348;\r\n    }\r\n\r\n    .altal-scheme-generator .placeholder {\r\n        text-align: center;\r\n        padding: 40px 20px;\r\n        color: #888;\r\n    }\r\n    .altal-scheme-generator .placeholder i {\r\n        font-size: 40px;\r\n        color: #ddd;\r\n        margin-bottom: 12px;\r\n    }\r\n    .altal-scheme-generator .placeholder h4 {\r\n        color: #0b2b4a;\r\n        margin: 0 0 4px 0;\r\n    }\r\n\r\n    @media (max-width: 1024px) {\r\n        .altal-scheme-generator .grid {\r\n            grid-template-columns: 1fr;\r\n        }\r\n    }\r\n    @media (max-width: 700px) {\r\n        .altal-scheme-generator .project-selector {\r\n            flex-direction: column;\r\n            align-items: stretch;\r\n        }\r\n        .altal-scheme-generator .project-selector select {\r\n            min-width: 100%;\r\n        }\r\n        .altal-scheme-generator .export-actions {\r\n            flex-direction: column;\r\n        }\r\n        .altal-scheme-generator .export-actions .btn {\r\n            width: 100%;\r\n            text-align: center;\r\n        }\r\n    }\r\n<\/style>\r\n\r\n<div class=\"altal-scheme-generator\">\r\n\r\n    <!-- \u0425\u041b\u0415\u0411\u041d\u042b\u0415 \u041a\u0420\u041e\u0428\u041a\u0418 -->\r\n    <div class=\"breadcrumb\">\r\n        <a href=\"\/\">\ud83c\udfe0 \u0413\u043b\u0430\u0432\u043d\u0430\u044f<\/a>\r\n        <span>\u203a<\/span>\r\n        <span>Instrumente HVAC<\/span>\r\n        <span>\u203a<\/span>\r\n        <span>Generator de scheme<\/span>\r\n    <\/div>\r\n\r\n    <!-- \u0417\u0410\u0413\u041e\u041b\u041e\u0412\u041e\u041a -->\r\n    <div class=\"header\">\r\n        <h1>\ud83d\udcd0 Generator de scheme \u0219i specifica\u021bii<\/h1>\r\n        <p>Crea\u021bi schema de leg\u0103tur\u0103 a pompei de c\u0103ldur\u0103 \u0219i specifica\u021bia echipamentului (BOM) pe baza datelor proiectului dvs.<\/p>\r\n    <\/div>\r\n\r\n    <!-- \u0412\u042b\u0411\u041e\u0420 \u041f\u0420\u041e\u0415\u041a\u0422\u0410 -->\r\n    <div class=\"project-selector\">\r\n        <select id=\"projectSelect\">\r\n            <option value=\"\">-- Selecta\u021bi proiectul --<\/option>\r\n            <option value=\"1\">Proiect: Cas\u0103 \u00een Chi\u0219in\u0103u (15 kW)<\/option>\r\n            <option value=\"2\">Proiect: Oficiu \u00een B\u0103l\u021bi (30 kW)<\/option>\r\n        <\/select>\r\n        <div style=\"display:flex; gap:10px; flex-wrap:wrap;\">\r\n            <button class=\"btn\" onclick=\"loadProject()\"><i class=\"fas fa-sync\"><\/i> \u00cenc\u0103rca\u021bi proiectul<\/button>\r\n            <button class=\"btn btn-outline\" onclick=\"createNewProject()\"><i class=\"fas fa-plus\"><\/i> Schem\u0103 nou\u0103<\/button>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!-- \u041e\u0421\u041d\u041e\u0412\u041d\u0410\u042f \u0421\u0415\u0422\u041a\u0410 -->\r\n    <div class=\"grid\">\r\n\r\n        <!-- \u041b\u0415\u0412\u0410\u042f \u041f\u0410\u041d\u0415\u041b\u042c: \u041d\u0410\u0421\u0422\u0420\u041e\u0419\u041a\u0418 -->\r\n        <div class=\"panel\">\r\n            <h3><i class=\"fas fa-sliders-h\" style=\"color:#0057a8;\"><\/i> Parametrii schemei<\/h3>\r\n\r\n            <div class=\"field\">\r\n                <label>Tipul pompei de c\u0103ldur\u0103<\/label>\r\n                <select id=\"hpType\">\r\n                    <option value=\"air_water\">Aer-Ap\u0103 (Air-Water)<\/option>\r\n                    <option value=\"water_water\">Ap\u0103-Ap\u0103 (Water-Water)<\/option>\r\n                    <option value=\"monoblock\">Monobloc<\/option>\r\n                    <option value=\"ground_water\">Sol-Ap\u0103<\/option>\r\n                <\/select>\r\n            <\/div>\r\n\r\n            <div class=\"field\">\r\n                <label>Puterea pompei de c\u0103ldur\u0103 (kW)<\/label>\r\n                <input type=\"number\" id=\"powerInput\" value=\"15\" min=\"1\" max=\"1000\">\r\n                <div class=\"hint\">Putere recomandat\u0103: <span id=\"recommendedPower\">12.5<\/span> kW<\/div>\r\n            <\/div>\r\n\r\n            <div class=\"field\">\r\n                <label>Regim de temperatur\u0103<\/label>\r\n                <select id=\"tempMode\">\r\n                    <option value=\"35\">Temperatur\u0103 joas\u0103 (35\u00b0C) \u2014 pardoseal\u0103 cald\u0103<\/option>\r\n                    <option value=\"55\">Temperatur\u0103 \u00eenalt\u0103 (55\u00b0C) \u2014 radiatoare<\/option>\r\n                    <option value=\"65\">Temperatur\u0103 \u00eenalt\u0103 (65\u00b0C) \u2014 registre<\/option>\r\n                <\/select>\r\n            <\/div>\r\n\r\n            <div class=\"field\">\r\n                <label>Moduri de func\u021bionare<\/label>\r\n                <select id=\"operationModes\">\r\n                    <option value=\"heating\">Doar \u00eenc\u0103lzire<\/option>\r\n                    <option value=\"heating_cooling\">\u00cenc\u0103lzire + R\u0103cire<\/option>\r\n                    <option value=\"heating_dhw\">\u00cenc\u0103lzire + ACM<\/option>\r\n                    <option value=\"heating_cooling_dhw\">\u00cenc\u0103lzire + R\u0103cire + ACM<\/option>\r\n                <\/select>\r\n            <\/div>\r\n\r\n            <div class=\"field\">\r\n                <label>Tipul leg\u0103turii<\/label>\r\n                <select id=\"pipingType\">\r\n                    <option value=\"standard\">Standard<\/option>\r\n                    <option value=\"economy\">Economic<\/option>\r\n                    <option value=\"premium\">Premium<\/option>\r\n                <\/select>\r\n            <\/div>\r\n\r\n            <!-- ===== \u0414\u041e\u041f\u041e\u041b\u041d\u0418\u0422\u0415\u041b\u042c\u041d\u042b\u0415 \u041f\u0410\u0420\u0410\u041c\u0415\u0422\u0420\u042b (\u0417\u0410\u0413\u0420\u0423\u0416\u0410\u042e\u0422\u0421\u042f \u0418\u0417 \u041a\u041e\u041d\u0424\u0418\u0413\u0423\u0420\u0410\u0422\u041e\u0420\u0410) ===== -->\r\n            <div style=\"background: #f8fafc; border-radius:8px; padding:12px 14px; margin:12px 0; border:1px solid #e9edf2;\">\r\n                <h4 style=\"margin:0 0 10px 0; font-size:14px; color:#0b2b4a;\">\u2699\ufe0f Parametrii sistemului<\/h4>\r\n                \r\n                <div class=\"field\" style=\"margin-bottom:8px;\">\r\n                    <label style=\"font-size:12px;\">Rezervor tampon (litri)<\/label>\r\n                    <input type=\"number\" id=\"bufferTank\" value=\"200\" step=\"10\" style=\"width:100%; padding:6px 10px; border:1px solid #ddd; border-radius:6px; font-size:13px;\">\r\n                <\/div>\r\n                \r\n                <div class=\"field\" style=\"margin-bottom:8px;\">\r\n                    <label style=\"font-size:12px;\">Rezervor ACM (litri)<\/label>\r\n                    <input type=\"number\" id=\"dhwTank\" value=\"300\" step=\"10\" style=\"width:100%; padding:6px 10px; border:1px solid #ddd; border-radius:6px; font-size:13px;\">\r\n                <\/div>\r\n                \r\n                <div class=\"field\" style=\"margin-bottom:8px;\">\r\n                    <label style=\"font-size:12px;\">R\u0103cire pasiv\u0103<\/label>\r\n                    <select id=\"passiveCooling\" style=\"width:100%; padding:6px 10px; border:1px solid #ddd; border-radius:6px; font-size:13px;\">\r\n                        <option value=\"no\">Nu<\/option>\r\n                        <option value=\"yes\">Da<\/option>\r\n                    <\/select>\r\n                <\/div>\r\n                \r\n                <div class=\"field\" style=\"margin-bottom:8px;\">\r\n                    <label style=\"font-size:12px;\">Ventiloconvector \u00een hol<\/label>\r\n                    <select id=\"fancoil\" style=\"width:100%; padding:6px 10px; border:1px solid #ddd; border-radius:6px; font-size:13px;\">\r\n                        <option value=\"no\">Nu<\/option>\r\n                        <option value=\"yes\">Da<\/option>\r\n                    <\/select>\r\n                <\/div>\r\n                \r\n                <div class=\"field\" style=\"margin-bottom:8px;\">\r\n                    <label style=\"font-size:12px;\">Sistem fotovoltaic (PV)<\/label>\r\n                    <select id=\"pvSystem\" style=\"width:100%; padding:6px 10px; border:1px solid #ddd; border-radius:6px; font-size:13px;\">\r\n                        <option value=\"no\">Nu<\/option>\r\n                        <option value=\"yes\">Da<\/option>\r\n                    <\/select>\r\n                <\/div>\r\n                \r\n                <div class=\"field\" style=\"margin-bottom:8px;\">\r\n                    <label style=\"font-size:12px;\">Putere PV (kWp)<\/label>\r\n                    <input type=\"number\" id=\"pvPower\" value=\"0\" step=\"0.5\" min=\"0\" style=\"width:100%; padding:6px 10px; border:1px solid #ddd; border-radius:6px; font-size:13px;\">\r\n                <\/div>\r\n                \r\n                <div class=\"field\" style=\"margin-bottom:0;\">\r\n                    <label style=\"font-size:12px;\">Acumulator termic (litri)<\/label>\r\n                    <input type=\"number\" id=\"thermalAccumulator\" value=\"0\" step=\"100\" style=\"width:100%; padding:6px 10px; border:1px solid #ddd; border-radius:6px; font-size:13px;\">\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <button class=\"btn-generate\" onclick=\"generateScheme()\">\r\n                <i class=\"fas fa-play\"><\/i> Genera\u021bi schema \u0219i BOM\r\n            <\/button>\r\n        <\/div>\r\n\r\n        <!-- \u041f\u0420\u0410\u0412\u0410\u042f \u041f\u0410\u041d\u0415\u041b\u042c: \u041f\u0420\u0415\u0414\u041f\u0420\u041e\u0421\u041c\u041e\u0422\u0420 -->\r\n        <div class=\"preview\">\r\n\r\n            <!-- \u0412\u041a\u041b\u0410\u0414\u041a\u0418 -->\r\n            <div class=\"tabs\">\r\n                <button class=\"active\" data-tab=\"scheme\">\ud83d\udcd0 Schem\u0103<\/button>\r\n                <button data-tab=\"bom\">\ud83d\udccb Specifica\u021bie (BOM)<\/button>\r\n                <button data-tab=\"preview\">\ud83d\udcc4 Raport complet<\/button>\r\n            <\/div>\r\n\r\n            <!-- \u0421\u0425\u0415\u041c\u0410 -->\r\n            <div class=\"tab-content active\" id=\"tab-scheme\">\r\n                <div class=\"scheme-container\" id=\"schemeContainer\">\r\n                    <div class=\"placeholder\">\r\n                        <i class=\"fas fa-project-diagram\"><\/i>\r\n                        <h4>Ap\u0103sa\u021bi \u00abGenera\u021bi schema\u00bb<\/h4>\r\n                        <p style=\"font-size:14px; margin:0;\">Se va crea schema de leg\u0103tur\u0103 \u00een func\u021bie de parametrii selecta\u021bi<\/p>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <!-- BOM -->\r\n            <div class=\"tab-content\" id=\"tab-bom\">\r\n                <div id=\"bomContainer\">\r\n                    <div class=\"placeholder\">\r\n                        <i class=\"fas fa-list\"><\/i>\r\n                        <h4>Specifica\u021bia nu a fost generat\u0103<\/h4>\r\n                        <p style=\"font-size:14px; margin:0;\">Dup\u0103 generarea schemei, aici va ap\u0103rea lista componentelor<\/p>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <!-- \u041f\u041e\u041b\u041d\u042b\u0419 \u041e\u0422\u0427\u0415\u0422 -->\r\n            <div class=\"tab-content\" id=\"tab-preview\">\r\n                <div id=\"previewContainer\">\r\n                    <div class=\"placeholder\">\r\n                        <i class=\"fas fa-file-alt\"><\/i>\r\n                        <h4>Raport complet<\/h4>\r\n                        <p style=\"font-size:14px; margin:0;\">Aici va fi documentul combinat cu schema \u0219i specifica\u021bia<\/p>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <!-- \u041a\u041d\u041e\u041f\u041a\u0418 \u042d\u041a\u0421\u041f\u041e\u0420\u0422\u0410 -->\r\n            <div class=\"export-actions\">\r\n                <button class=\"btn btn-pdf\" onclick=\"exportPDF()\"><i class=\"fas fa-file-pdf\"><\/i> Desc\u0103rca\u021bi PDF<\/button>\r\n                <button class=\"btn btn-dwg\" onclick=\"exportDWG()\"><i class=\"fas fa-cube\"><\/i> Desc\u0103rca\u021bi DWG<\/button>\r\n                <button class=\"btn btn-save\" onclick=\"saveToDB()\"><i class=\"fas fa-save\"><\/i> Salva\u021bi \u00een BD<\/button>\r\n            <\/div>\r\n\r\n        <\/div>\r\n\r\n    <\/div>\r\n\r\n<\/div>\r\n\r\n<script>\r\n    \/\/ ============================================================\r\n    \/\/ \u041f\u0415\u0420\u0415\u041a\u041b\u042e\u0427\u0415\u041d\u0418\u0415 \u0412\u041a\u041b\u0410\u0414\u041e\u041a\r\n    \/\/ ============================================================\r\n    document.querySelectorAll('.altal-scheme-generator .tabs button').forEach(btn => {\r\n        btn.addEventListener('click', function() {\r\n            document.querySelectorAll('.altal-scheme-generator .tabs button').forEach(b => b.classList.remove('active'));\r\n            this.classList.add('active');\r\n\r\n            const tabId = this.dataset.tab;\r\n            document.querySelectorAll('.altal-scheme-generator .tab-content').forEach(tab => tab.classList.remove('active'));\r\n            document.getElementById('tab-' + tabId).classList.add('active');\r\n        });\r\n    });\r\n\r\n\/\/ ============================================================\r\n\/\/ \u0417\u0410\u0413\u0420\u0423\u0417\u041a\u0410 \u0414\u0410\u041d\u041d\u042b\u0425 \u0418\u0417 localStorage\r\n\/\/ ============================================================\r\nfunction loadDataFromConfigurator() {\r\n    \/\/ \u0427\u0438\u0442\u0430\u0435\u043c \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u0437 localStorage\r\n    const hpPower = localStorage.getItem('altal_hp_power') || 15;\r\n    const hpType = localStorage.getItem('altal_hp_type') || 'air_water';\r\n    const bufferTank = localStorage.getItem('altal_buffer_tank') || 200;\r\n    const dhwTank = localStorage.getItem('altal_dhw_tank') || 300;\r\n    const passiveCooling = localStorage.getItem('altal_passive_cooling') || 'no';\r\n    const fancoil = localStorage.getItem('altal_fancoil') || 'no';\r\n    const pvSystem = localStorage.getItem('altal_pv_system') || 'no';\r\n    const pvPower = localStorage.getItem('altal_pv_power') || 0;\r\n    const thermalAccumulator = localStorage.getItem('altal_thermal_accumulator') || 0;\r\n    \r\n    console.log('\ud83d\udce5 \u0417\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u044b \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u0437 localStorage:', {\r\n        hpPower, hpType, bufferTank, dhwTank, passiveCooling, fancoil, pvSystem, pvPower, thermalAccumulator\r\n    });\r\n    \r\n    \/\/ \u0417\u0430\u043f\u043e\u043b\u043d\u044f\u0435\u043c \u043f\u043e\u043b\u044f\r\n    const setValue = (id, value) => {\r\n        const el = document.getElementById(id);\r\n        if (el) {\r\n            if (el.tagName === 'SELECT') {\r\n                const options = el.querySelectorAll('option');\r\n                let found = false;\r\n                options.forEach(opt => {\r\n                    if (opt.value === String(value) || opt.textContent === String(value)) {\r\n                        el.value = opt.value;\r\n                        found = true;\r\n                    }\r\n                });\r\n                if (!found && options.length > 0) {\r\n                    el.value = options[0].value;\r\n                }\r\n            } else {\r\n                el.value = value;\r\n            }\r\n        }\r\n    };\r\n    \r\n    setValue('powerInput', Math.round(Number(hpPower)));\r\n    setValue('hpType', hpType);\r\n    setValue('bufferTank', bufferTank);\r\n    setValue('dhwTank', dhwTank);\r\n    setValue('passiveCooling', passiveCooling);\r\n    setValue('fancoil', fancoil);\r\n    setValue('pvSystem', pvSystem);\r\n    setValue('pvPower', pvPower);\r\n    setValue('thermalAccumulator', thermalAccumulator);\r\n}\r\n\r\n\/\/ \u0412\u044b\u0437\u044b\u0432\u0430\u0435\u043c \u043f\u0440\u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0435 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b\r\ndocument.addEventListener('DOMContentLoaded', function() {\r\n    loadDataFromConfigurator();\r\n});\r\n\r\n\/\/ ============================================================\r\n\/\/ \u0417\u0410\u0413\u0420\u0423\u0417\u041a\u0410 \u0414\u0410\u041d\u041d\u042b\u0425 \u0418\u0417 localStorage\r\n\/\/ ============================================================\r\nfunction loadDataFromConfigurator() {\r\n    \/\/ \u0427\u0438\u0442\u0430\u0435\u043c \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u0437 localStorage\r\n    const hpPower = localStorage.getItem('altal_hp_power') || 15;\r\n    const hpType = localStorage.getItem('altal_hp_type') || 'air_water';\r\n    const hpModel = localStorage.getItem('altal_hp_model') || '\u0422\u041d';\r\n    const scop = localStorage.getItem('altal_hp_scop') || 4.0;\r\n    const heatLoss = localStorage.getItem('altal_heat_loss') || 0;\r\n    const systemType = localStorage.getItem('altal_system_type') || 'floor';\r\n    \r\n    \/\/ \u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b (\u0438\u0437 \u041a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440\u0430)\r\n    const bufferTank = localStorage.getItem('altal_buffer_tank') || 200;\r\n    const dhwTank = localStorage.getItem('altal_dhw_tank') || 300;\r\n    const passiveCooling = localStorage.getItem('altal_passive_cooling') || 'no';\r\n    const fancoil = localStorage.getItem('altal_fancoil') || 'no';\r\n    const pvSystem = localStorage.getItem('altal_pv_system') || 'no';\r\n    const pvPower = localStorage.getItem('altal_pv_power') || 0;\r\n    const thermalAccumulator = localStorage.getItem('altal_thermal_accumulator') || 0;\r\n    \r\n    console.log('\ud83d\udce5 \u0417\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u044b \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u0437 localStorage:', {\r\n        hpPower, hpType, hpModel, scop, heatLoss, systemType,\r\n        bufferTank, dhwTank, passiveCooling, fancoil, pvSystem, pvPower, thermalAccumulator\r\n    });\r\n    \r\n    \/\/ \u0417\u0430\u043f\u043e\u043b\u043d\u044f\u0435\u043c \u043f\u043e\u043b\u044f \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435\r\n    const setValue = (id, value) => {\r\n        const el = document.getElementById(id);\r\n        if (el) {\r\n            if (el.tagName === 'SELECT') {\r\n                const options = el.querySelectorAll('option');\r\n                let found = false;\r\n                options.forEach(opt => {\r\n                    if (opt.value === String(value) || opt.textContent === String(value)) {\r\n                        el.value = opt.value;\r\n                        found = true;\r\n                    }\r\n                });\r\n                if (!found && options.length > 0) {\r\n                    el.value = options[0].value;\r\n                }\r\n            } else {\r\n                el.value = value;\r\n            }\r\n        }\r\n    };\r\n    \r\n    \/\/ \u0417\u0430\u043f\u043e\u043b\u043d\u044f\u0435\u043c \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u043f\u043e\u043b\u044f\r\n    setValue('powerInput', Math.round(Number(hpPower)));\r\n    setValue('hpType', hpType);\r\n    \r\n    \/\/ \u0417\u0430\u043f\u043e\u043b\u043d\u044f\u0435\u043c \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u043f\u043e\u043b\u044f (\u0435\u0441\u043b\u0438 \u043e\u043d\u0438 \u0435\u0441\u0442\u044c \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435)\r\n    setValue('bufferTank', bufferTank);\r\n    setValue('dhwTank', dhwTank);\r\n    setValue('passiveCooling', passiveCooling);\r\n    setValue('fancoil', fancoil);\r\n    setValue('pvSystem', pvSystem);\r\n    setValue('pvPower', pvPower);\r\n    setValue('thermalAccumulator', thermalAccumulator);\r\n    \r\n    \/\/ \u0415\u0441\u043b\u0438 \u0435\u0441\u0442\u044c \u043f\u043e\u043b\u0435 \u0434\u043b\u044f \u043c\u043e\u0434\u0435\u043b\u0438 \u2014 \u0437\u0430\u043f\u043e\u043b\u043d\u044f\u0435\u043c\r\n    const modelEl = document.getElementById('hpModel');\r\n    if (modelEl) modelEl.value = hpModel;\r\n    \r\n    \/\/ \u0415\u0441\u043b\u0438 \u0435\u0441\u0442\u044c \u043f\u043e\u043b\u0435 \u0434\u043b\u044f SCOP \u2014 \u0437\u0430\u043f\u043e\u043b\u043d\u044f\u0435\u043c\r\n    const scopEl = document.getElementById('scopValue');\r\n    if (scopEl) scopEl.textContent = scop;\r\n}\r\n\r\n\/\/ \u0412\u044b\u0437\u044b\u0432\u0430\u0435\u043c \u043f\u0440\u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0435 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b\r\ndocument.addEventListener('DOMContentLoaded', function() {\r\n    loadDataFromConfigurator();\r\n});    \r\n\r\n    \/\/ ============================================================\r\n    \/\/ \u0417\u0410\u0413\u0420\u0423\u0417\u041a\u0410 \u041f\u0420\u041e\u0415\u041a\u0422\u0410\r\n    \/\/ ============================================================\r\n    function loadProject() {\r\n        const projectId = document.getElementById('projectSelect').value;\r\n        if (!projectId) {\r\n            alert('Selecta\u021bi un proiect din list\u0103');\r\n            return;\r\n        }\r\n        alert('\ud83d\udcc2 \u00cenc\u0103rc\u0103m proiectul ID: ' + projectId);\r\n        \/\/ \u0417\u0434\u0435\u0441\u044c \u0431\u0443\u0434\u0435\u0442 AJAX-\u0437\u0430\u043f\u0440\u043e\u0441 \u043a \u0441\u0435\u0440\u0432\u0435\u0440\u0443\r\n    }\r\n\r\n    function createNewProject() {\r\n        alert('\ud83c\udd95 Crearea unei scheme noi pentru un proiect nou');\r\n        \/\/ \u0417\u0434\u0435\u0441\u044c \u0431\u0443\u0434\u0435\u0442 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u0435 \u043c\u043e\u0434\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043e\u043a\u043d\u0430 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043f\u0440\u043e\u0435\u043a\u0442\u0430\r\n    }\r\n\r\n    \/\/ ============================================================\r\n    \/\/ \u0413\u0415\u041d\u0415\u0420\u0410\u0426\u0418\u042f \u0421\u0425\u0415\u041c\u042b \u0418 BOM\r\n    \/\/ ============================================================\r\n    function generateScheme() {\r\n        const hpType = document.getElementById('hpType').value;\r\n        const power = document.getElementById('powerInput').value;\r\n        const tempMode = document.getElementById('tempMode').value;\r\n        const operationModes = document.getElementById('operationModes').value;\r\n        const pipingType = document.getElementById('pipingType').value;\r\n\r\n        \/\/ \u041f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u043c \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0443\r\n        document.getElementById('schemeContainer').innerHTML = `\r\n            <div class=\"placeholder\">\r\n                <i class=\"fas fa-spinner fa-spin\" style=\"font-size:40px; color:#0057a8;\"><\/i>\r\n                <h4>Generare schem\u0103...<\/h4>\r\n                <p style=\"font-size:14px; margin:0;\">V\u0103 rug\u0103m s\u0103 a\u0219tepta\u021bi<\/p>\r\n            <\/div>\r\n        `;\r\n\r\n        \/\/ \u0418\u043c\u0438\u0442\u0430\u0446\u0438\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438\r\n        setTimeout(() => {\r\n            document.getElementById('schemeContainer').innerHTML = generateSVG(hpType, power, tempMode);\r\n            document.getElementById('bomContainer').innerHTML = generateBOM(hpType, power, operationModes, pipingType);\r\n            document.getElementById('previewContainer').innerHTML = `\r\n                <div style=\"padding:20px; background:#f8fafc; border-radius:8px;\">\r\n                    <h4 style=\"margin:0 0 8px 0;\">\ud83d\udcc4 Raport complet<\/h4>\r\n                    <p>Raportul include schema de leg\u0103tur\u0103 \u0219i specifica\u021bia echipamentului.<\/p>\r\n                    <p style=\"color:#888; font-size:13px; margin:4px 0 0 0;\">Ap\u0103sa\u021bi \u00abDesc\u0103rca\u021bi PDF\u00bb pentru a ob\u021bine documentul final.<\/p>\r\n                <\/div>\r\n            `;\r\n        }, 800);\r\n    }\r\n\r\n    \/\/ ============================================================\r\n    \/\/ \u0413\u0415\u041d\u0415\u0420\u0410\u0426\u0418\u042f SVG-\u0421\u0425\u0415\u041c\u042b\r\n    \/\/ ============================================================\r\n    function generateSVG(hpType, power, tempMode) {\r\n        const labels = {\r\n            'air_water': 'PC Aer-Ap\u0103',\r\n            'water_water': 'PC Ap\u0103-Ap\u0103',\r\n            'monoblock': 'Monobloc',\r\n            'ground_water': 'PC Sol-Ap\u0103'\r\n        };\r\n\r\n        return `\r\n            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 800 480\" width=\"100%\" height=\"auto\">\r\n                <rect x=\"10\" y=\"10\" width=\"780\" height=\"460\" fill=\"#fafcff\" stroke=\"#e9edf2\" stroke-width=\"2\" rx=\"8\"\/>\r\n\r\n                <!-- \u0422\u041d -->\r\n                <rect x=\"150\" y=\"70\" width=\"120\" height=\"90\" fill=\"#e3f2fd\" stroke=\"#1976d2\" stroke-width=\"2\" rx=\"4\"\/>\r\n                <text x=\"210\" y=\"110\" text-anchor=\"middle\" font-family=\"Arial\" font-size=\"14\" font-weight=\"bold\" fill=\"#1976d2\">PC<\/text>\r\n                <text x=\"210\" y=\"135\" text-anchor=\"middle\" font-family=\"Arial\" font-size=\"12\" fill=\"#333\">${labels[hpType] || 'PC'}<\/text>\r\n                <text x=\"210\" y=\"150\" text-anchor=\"middle\" font-family=\"Arial\" font-size=\"11\" fill=\"#666\">${power} kW<\/text>\r\n\r\n                <!-- \u041d\u0430\u0441\u043e\u0441 -->\r\n                <rect x=\"400\" y=\"190\" width=\"100\" height=\"80\" fill=\"#fff3e0\" stroke=\"#f57c00\" stroke-width=\"2\" rx=\"4\"\/>\r\n                <text x=\"450\" y=\"225\" text-anchor=\"middle\" font-family=\"Arial\" font-size=\"14\" font-weight=\"bold\" fill=\"#f57c00\">Pomp\u0103<\/text>\r\n                <text x=\"450\" y=\"250\" text-anchor=\"middle\" font-family=\"Arial\" font-size=\"12\" fill=\"#333\">Circula\u021bie<\/text>\r\n\r\n                <!-- \u0411\u0430\u043a -->\r\n                <rect x=\"550\" y=\"310\" width=\"100\" height=\"90\" fill=\"#e8f5e9\" stroke=\"#388e3c\" stroke-width=\"2\" rx=\"4\"\/>\r\n                <text x=\"600\" y=\"350\" text-anchor=\"middle\" font-family=\"Arial\" font-size=\"14\" font-weight=\"bold\" fill=\"#388e3c\">Rezervor<\/text>\r\n                <text x=\"600\" y=\"375\" text-anchor=\"middle\" font-family=\"Arial\" font-size=\"12\" fill=\"#333\">Expansiune<\/text>\r\n                <text x=\"600\" y=\"390\" text-anchor=\"middle\" font-family=\"Arial\" font-size=\"11\" fill=\"#666\">${Math.round(power * 0.8)} l<\/text>\r\n\r\n                <!-- \u0422\u0440\u0443\u0431\u044b -->\r\n                <line x1=\"270\" y1=\"115\" x2=\"400\" y2=\"230\" stroke=\"#1976d2\" stroke-width=\"3\"\/>\r\n                <line x1=\"270\" y1=\"115\" x2=\"270\" y2=\"355\" stroke=\"#1976d2\" stroke-width=\"3\"\/>\r\n                <line x1=\"270\" y1=\"355\" x2=\"550\" y2=\"355\" stroke=\"#1976d2\" stroke-width=\"3\"\/>\r\n\r\n                <!-- \u0421\u0442\u0440\u0435\u043b\u043a\u0438 -->\r\n                <polygon points=\"395,225 405,230 395,235\" fill=\"#1976d2\"\/>\r\n                <polygon points=\"275,350 270,355 275,360\" fill=\"#1976d2\"\/>\r\n\r\n                <!-- \u041f\u043e\u0434\u043f\u0438\u0441\u0438 -->\r\n                <text x=\"330\" y=\"190\" font-family=\"Arial\" font-size=\"12\" fill=\"#1976d2\">Alimentare ${tempMode}\u00b0C<\/text>\r\n                <text x=\"330\" y=\"370\" font-family=\"Arial\" font-size=\"12\" fill=\"#1976d2\">Retur 45\u00b0C<\/text>\r\n\r\n                <!-- \u041b\u0435\u0433\u0435\u043d\u0434\u0430 -->\r\n                <rect x=\"30\" y=\"435\" width=\"740\" height=\"28\" fill=\"#fff\" stroke=\"#ddd\" stroke-width=\"1\" rx=\"4\"\/>\r\n                <text x=\"40\" y=\"454\" font-family=\"Arial\" font-size=\"11\" fill=\"#888\">\r\n                    Schema de leg\u0103tur\u0103 a pompei de c\u0103ldur\u0103 | Putere: ${power} kW | Regim: ${tempMode}\u00b0C\r\n                <\/text>\r\n            <\/svg>\r\n        `;\r\n    }\r\n\r\n    \/\/ ============================================================\r\n    \/\/ \u0413\u0415\u041d\u0415\u0420\u0410\u0426\u0418\u042f BOM (\u0421\u041f\u0415\u0426\u0418\u0424\u0418\u041a\u0410\u0426\u0418\u0418)\r\n    \/\/ ============================================================\r\n    function generateBOM(hpType, power, operationModes, pipingType) {\r\n        const components = [\r\n            { name: 'Pomp\u0103 de circula\u021bie', part: 'PC-200', qty: 2, price: 1200 },\r\n            { name: 'Van\u0103 cu 3 c\u0103i', part: 'TV-150', qty: 1, price: 450 },\r\n            { name: 'Rezervor de expansiune', part: `RB-${Math.round(power * 0.8)}`, qty: 1, price: 320 },\r\n            { name: 'Grup de siguran\u021b\u0103', part: 'GS-100', qty: 1, price: 180 },\r\n            { name: 'Filtru cu sit\u0103', part: 'FS-80', qty: 1, price: 95 },\r\n            { name: 'Robinet cu bil\u0103', part: 'BS-50', qty: 4, price: 45 },\r\n        ];\r\n\r\n        if (operationModes.includes('cooling')) {\r\n            components.push({ name: 'Van\u0103 cu 4 c\u0103i', part: 'FV-200', qty: 1, price: 680 });\r\n        }\r\n\r\n        if (operationModes.includes('dhw')) {\r\n            components.push({ name: 'Boiler ACM', part: `DHW-${Math.round(power * 1.5)}`, qty: 1, price: 2400 });\r\n        }\r\n\r\n        const total = components.reduce((sum, c) => sum + (c.qty * c.price), 0);\r\n\r\n        let html = `\r\n            <h4 style=\"margin:0 0 8px 0;\">\ud83d\udccb Specifica\u021bia echipamentului (BOM)<\/h4>\r\n            <p style=\"font-size:13px; color:#888; margin:0 0 16px 0;\">Proiect: ${hpType} | Putere: ${power} kW | Tip leg\u0103tur\u0103: ${pipingType}<\/p>\r\n            <table class=\"bom-table\">\r\n                <thead>\r\n                    <tr>\r\n                        <th>Nr.<\/th>\r\n                        <th>Denumire<\/th>\r\n                        <th>Articol<\/th>\r\n                        <th>Cant.<\/th>\r\n                        <th>Pre\u021b, \u20ac<\/th>\r\n                        <th>Total, \u20ac<\/th>\r\n                    <\/tr>\r\n                <\/thead>\r\n                <tbody>\r\n        `;\r\n\r\n        components.forEach((c, i) => {\r\n            html += `\r\n                <tr>\r\n                    <td>${i + 1}<\/td>\r\n                    <td>${c.name}<\/td>\r\n                    <td>${c.part}<\/td>\r\n                    <td>${c.qty}<\/td>\r\n                    <td>${c.price.toFixed(2)}<\/td>\r\n                    <td>${(c.qty * c.price).toFixed(2)}<\/td>\r\n                <\/tr>\r\n            `;\r\n        });\r\n\r\n        html += `\r\n                <tr class=\"total\">\r\n                    <td colspan=\"5\" style=\"text-align:right; font-weight:700;\">TOTAL:<\/td>\r\n                    <td style=\"font-weight:700;\">${total.toFixed(2)} \u20ac<\/td>\r\n                <\/tr>\r\n            <\/tbody>\r\n        <\/table>\r\n        `;\r\n\r\n        return html;\r\n    }\r\n\r\n    \/\/ ============================================================\r\n    \/\/ \u042d\u041a\u0421\u041f\u041e\u0420\u0422\r\n    \/\/ ============================================================\r\n    function exportPDF() {\r\n        alert('\ud83d\udcc4 Func\u021bia de export \u00een PDF va fi ad\u0103ugat\u0103 \u00een etapa urm\u0103toare');\r\n    }\r\n\r\n    function exportDWG() {\r\n        alert('\ud83d\udcd0 Func\u021bia de export \u00een DWG va fi ad\u0103ugat\u0103 \u00een etapa urm\u0103toare');\r\n    }\r\n\r\n    function saveToDB() {\r\n        alert('\ud83d\udcbe Func\u021bia de salvare \u00een BD va fi ad\u0103ugat\u0103 \u00een etapa urm\u0103toare');\r\n    }\r\n\r\n    \/\/ \u041f\u043e\u0434\u0433\u0440\u0443\u0437\u043a\u0430 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u043c\u043e\u0439 \u043c\u043e\u0449\u043d\u043e\u0441\u0442\u0438\r\n    document.addEventListener('DOMContentLoaded', function() {\r\n        document.getElementById('recommendedPower').textContent = (Math.random() * 10 + 10).toFixed(1);\r\n    });\r\n    \r\n\/\/ ============================================================\r\n\/\/ \u0421\u041e\u0425\u0420\u0410\u041d\u0415\u041d\u0418\u0415 \u041f\u0420\u041e\u0415\u041a\u0422\u0410 \u041d\u0410 \u0421\u0415\u0420\u0412\u0415\u0420\u0415\r\n\/\/ ============================================================\r\nasync function saveProjectToServer() {\r\n    \/\/ \u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c, \u0435\u0441\u0442\u044c \u043b\u0438 \u0434\u0430\u043d\u043d\u044b\u0435\r\n    const hpPower = localStorage.getItem('altal_hp_power');\r\n    if (!hpPower) {\r\n        alert('\u26a0\ufe0f Selecta\u021bi mai \u00eent\u00e2i o pomp\u0103 de c\u0103ldur\u0103');\r\n        return;\r\n    }\r\n    \r\n    \/\/ \u0421\u043e\u0431\u0438\u0440\u0430\u0435\u043c \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u0437 localStorage\r\n    const projectData = {\r\n        project_name: 'Proiect ' + new Date().toLocaleDateString() + ' ' + new Date().toLocaleTimeString(),\r\n        calculation: {\r\n            heat_loss: localStorage.getItem('altal_heat_loss'),\r\n            recommended_power: localStorage.getItem('altal_recommended_power'),\r\n            building_type: localStorage.getItem('altal_building_type'),\r\n            area: localStorage.getItem('altal_area'),\r\n            floors: localStorage.getItem('altal_floors'),\r\n            region: localStorage.getItem('altal_region'),\r\n            system_type: localStorage.getItem('altal_system_type'),\r\n            buffer_tank: localStorage.getItem('altal_buffer_tank'),\r\n            dhw_tank: localStorage.getItem('altal_dhw_tank'),\r\n            passive_cooling: localStorage.getItem('altal_passive_cooling'),\r\n            fancoil: localStorage.getItem('altal_fancoil'),\r\n            pv_system: localStorage.getItem('altal_pv_system'),\r\n            pv_power: localStorage.getItem('altal_pv_power'),\r\n            thermal_accumulator: localStorage.getItem('altal_thermal_accumulator'),\r\n            autonomy_hours: localStorage.getItem('altal_autonomy_hours')\r\n        },\r\n        equipment: {\r\n            hp_model: localStorage.getItem('altal_hp_model'),\r\n            hp_power: localStorage.getItem('altal_hp_power'),\r\n            hp_type: localStorage.getItem('altal_hp_type'),\r\n            hp_price: localStorage.getItem('altal_hp_price'),\r\n            scop: localStorage.getItem('altal_hp_scop')\r\n        }\r\n    };\r\n    \r\n    console.log('\ud83d\udce4 \u041e\u0442\u043f\u0440\u0430\u0432\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440:', projectData);\r\n    \r\n    try {\r\n        const response = await fetch('\/wp-json\/altal\/v1\/save-project', {\r\n            method: 'POST',\r\n            headers: {\r\n                'Content-Type': 'application\/json'\r\n            },\r\n            body: JSON.stringify(projectData)\r\n        });\r\n        \r\n        const result = await response.json();\r\n        \r\n        if (result.success) {\r\n            console.log('\u2705 \u041f\u0440\u043e\u0435\u043a\u0442 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d! ID:', result.project_id);\r\n            localStorage.setItem('altal_project_id', result.project_id);\r\n            alert('\u2705 Proiectul a fost salvat cu succes!\\nID: ' + result.project_id);\r\n            return result.project_id;\r\n        } else {\r\n            console.error('\u274c \u041e\u0448\u0438\u0431\u043a\u0430 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f:', result.error);\r\n            alert('\u26a0\ufe0f Eroare la salvare: ' + (result.error || 'necunoscut\u0103'));\r\n        }\r\n    } catch (error) {\r\n        console.error('\u274c \u041e\u0448\u0438\u0431\u043a\u0430:', error);\r\n        alert('\u26a0\ufe0f Eroare de conexiune: ' + error.message);\r\n    }\r\n}\r\n\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Generator de scheme \ud83c\udfe0 \u0413\u043b\u0430\u0432\u043d\u0430\u044f \u203a Instrumente HVAC \u203a Generator de scheme \ud83d\udcd0 Generator de scheme \u0219i specifica\u021bii Crea\u021bi schema de leg\u0103tur\u0103 a pompei de c\u0103ldur\u0103 \u0219i specifica\u021bia echipamentului (BOM) pe baza datelor proiectului dvs. &#8211; Selecta\u021bi proiectul &#8211;Proiect: Cas\u0103 \u00een Chi\u0219in\u0103u (15 kW)Proiect: Oficiu \u00een B\u0103l\u021bi (30 kW) \u00cenc\u0103rca\u021bi proiectul Schem\u0103 nou\u0103 Parametrii schemei&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":12154,"menu_order":4,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_kad_post_transparent":"default","_kad_post_title":"default","_kad_post_layout":"default","_kad_post_sidebar_id":"","_kad_post_content_style":"default","_kad_post_vertical_padding":"default","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"footnotes":""},"class_list":["post-12919","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/altal.md\/ro\/wp-json\/wp\/v2\/pages\/12919","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/altal.md\/ro\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/altal.md\/ro\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/altal.md\/ro\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/altal.md\/ro\/wp-json\/wp\/v2\/comments?post=12919"}],"version-history":[{"count":18,"href":"https:\/\/altal.md\/ro\/wp-json\/wp\/v2\/pages\/12919\/revisions"}],"predecessor-version":[{"id":12967,"href":"https:\/\/altal.md\/ro\/wp-json\/wp\/v2\/pages\/12919\/revisions\/12967"}],"up":[{"embeddable":true,"href":"https:\/\/altal.md\/ro\/wp-json\/wp\/v2\/pages\/12154"}],"wp:attachment":[{"href":"https:\/\/altal.md\/ro\/wp-json\/wp\/v2\/media?parent=12919"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}