templates/base.html.twig line 1

Open in your IDE?
  1. <!doctype html>
  2. <html lang="{{ app.request.locale }}">
  3. <head>
  4.     <meta charset="utf-8">
  5.     <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6.     <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
  7.     <meta name="description" content="">
  8.     <meta name="author" content="">
  9.     <link rel="icon" href="{{ asset('theme/img/logo.png') }}" type="image/x-icon" />
  10.     <title>{% block title %} Deco Pierre & Nature {% endblock %}</title>
  11.     <link href="{{ asset('theme/vendor/fontawesome-free/css/all.min.css') }}" rel="stylesheet" type="text/css">
  12.     <link href="https://fonts.googleapis.com/css?family=Nunito:200,200i,300,300i,400,400i,600,600i,700,700i,800,800i,900,900i" rel="stylesheet">
  13.     <link href="{{ asset('theme/css/sb-admin-2.min.css') }}" rel="stylesheet">
  14.     <link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.6.0/css/bootstrap.min.css"/>
  15.     <link rel="stylesheet" href="https://cdn.datatables.net/1.12.1/css/jquery.dataTables.min.css">
  16.     <link rel="stylesheet" href="https://cdn.datatables.net/buttons/2.2.3/css/buttons.dataTables.min.css">
  17.     <link href="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/css/select2.min.css" rel="stylesheet" />
  18.     <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/select2-bootstrap4-theme@1.0.0/dist/select2-bootstrap4.min.css">
  19.     <link href="//cdn.jsdelivr.net/npm/@sweetalert2/theme-dark@4/dark.css" rel="stylesheet">
  20.     <link href="https://cdn.jsdelivr.net/npm/busy-load@0.1.2/dist/app.min.css" rel="stylesheet">
  21.     <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fancyapps/ui@5.0/dist/fancybox/fancybox.css"/>
  22.     {% block head %}{% endblock%}
  23.     <style>
  24.         .swal2-popup {
  25.             background: #FFFFFF !important;
  26.         }
  27.         .swal2-title {
  28.             color: #333333 !important;
  29.         }
  30.         .swal2-html-container, .swal2-content {
  31.             color: #545454 !important;
  32.         }
  33.     </style>
  34. </head>
  35. <body id="page-top">
  36. {% if app.request.host == 'dev.decopierrenature.com' or app.request.host == '127.0.0.1' or app.request.host == 'localhost' %}
  37.     <div style="position: fixed; top: 0; left: 0; width: 100%; text-align: center; color: rgba(255, 0, 0, 0.6); font-size: 16px; font-weight: bold; pointer-events: none; z-index: 9999; background: rgba(255, 230, 230, 0.9); padding: 2px; border-bottom: 1px solid rgba(255, 0, 0, 0.2);">
  38.         🚧 DEVELOPMENT ENVIRONMENT ({{ app.request.host }}) 🚧
  39.     </div>
  40. {% endif %}
  41. <div id="wrapper">
  42.     {# Flash messages moved to bottom after scripts load #}
  43.     <ul class="navbar-nav bg-gradient-primary sidebar sidebar-dark accordion" id="accordionSidebar">
  44.         <a class="sidebar-brand d-flex align-items-center justify-content-center" href="{{ path('app_panel_dashboard') }}">
  45.             <div class="sidebar-brand-icon rotate-n-15">
  46.                 <img src="{{ asset('/theme/img/logo.png') }}" style="width: 50px" alt="">
  47.             </div>
  48.             <div class="sidebar-brand-text mx-3">{% trans %} name {% endtrans %}</div>
  49.         </a>
  50.         <hr class="sidebar-divider my-0">
  51.         <li class="nav-item active">
  52.             <a class="nav-link" href="{{ path('app_panel_dashboard') }}">
  53.                 <i class="fas fa-fw fa-tachometer-alt"></i>
  54.                 <span>{% trans %} dashboard {% endtrans %}</span></a>
  55.         </li>
  56.         <hr class="sidebar-divider">
  57.         <div class="sidebar-heading">
  58.             {% trans %} inventory {% endtrans %}
  59.         </div>
  60.         <li class="nav-item">
  61.             <a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#files"
  62.                aria-expanded="true" aria-controls="collapseTwo">
  63.                 <i class="fas fa-fw fa-cog"></i>
  64.                 <span>{% trans %} files {% endtrans %}</span>
  65.             </a>
  66.             <div id="files" class="collapse" aria-labelledby="headingTwo" data-parent="#accordionSidebar">
  67.                 <div class="bg-white py-2 collapse-inner rounded">
  68.                     <a class="collapse-item" href="{{ path('admin_invoice_show') }}">{% trans %} invoice {% endtrans %}</a>
  69.                     <a class="collapse-item" href="{{ path('proforma_index') }}">{% trans %} proforma {% endtrans %}</a>
  70.                 </div>
  71.             </div>
  72.         </li>
  73.         <li class="nav-item">
  74.             <a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#collapseTwo"
  75.                aria-expanded="true" aria-controls="collapseTwo">
  76.                 <i class="fas fa-fw fa-cog"></i>
  77.                 <span>{% trans %} product {% endtrans %}</span>
  78.             </a>
  79.             <div id="collapseTwo" class="collapse" aria-labelledby="headingTwo" data-parent="#accordionSidebar">
  80.                 <div class="bg-white py-2 collapse-inner rounded">
  81.                     <a class="collapse-item" href="{{ path('app_admin_product') }}">{% trans %} products {% endtrans %}</a>
  82.                     <a class="collapse-item" href="{{ path('app_admin_product_create') }}"><i class="fas fa-plus-circle"></i> Ürün Ekle</a>
  83.                     <a class="collapse-item" href="{{ path('app_admin_measurement_unit') }}">{% trans %} measurementunit {% endtrans %}</a>
  84.                     <a class="collapse-item" href="{{ path('app_admin_measurement') }}">{% trans %} measurement {% endtrans %}</a>
  85.                     <a class="collapse-item" href="{{ path('admin_measurement_conversions_index') }}">{% trans %} measurementconversions {% endtrans %}</a>
  86.                     <a class="collapse-item" href="{{ path('app_admin_category_index') }}">Kategoriler</a>
  87.                 </div>
  88.             </div>
  89.         </li>
  90.         <li class="nav-item">
  91.             <a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#customerModule"
  92.                aria-expanded="true" aria-controls="collapseTwo">
  93.                 <i class="fas fa-fw fa-cog"></i>
  94.                 <span>{% trans %} customer.self {% endtrans %}</span>
  95.             </a>
  96.             <div id="customerModule" class="collapse" aria-labelledby="headingTwo" data-parent="#accordionSidebar">
  97.                 <div class="bg-white py-2 collapse-inner rounded">
  98.                     <a class="collapse-item" href="{{ path('admin_customer_index') }}" id="allCustomersBtn">{% trans %} customer.all {% endtrans %}</a>
  99.                     <a class="collapse-item" type="button" id="addCustomerBtn">{% trans %} customer.add {% endtrans %}</a>
  100.                     <a class="collapse-item" href="{{ path('admin_gift_certificate_index') }}">Hediye Çekleri</a>
  101.                 </div>
  102.             </div>
  103.         </li>
  104.         <li class="nav-item">
  105.             <a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#payments"
  106.                aria-expanded="true" aria-controls="collapseUtilities">
  107.                 <i class="fas fa-fw fa-wrench"></i>
  108.                 <span>{% trans %} payments.self {% endtrans %}</span>
  109.             </a>
  110.             <div id="payments" class="collapse" aria-labelledby="headingUtilities"
  111.                  data-parent="#accordionSidebar">
  112.                 <div class="bg-white py-2 collapse-inner rounded">
  113.                     <a class="collapse-item" href="{{ path('admin_payments_index') }}">{% trans %} payments.all {% endtrans %}</a>
  114.                 </div>
  115.             </div>
  116.         </li>
  117.         <li class="nav-item">
  118.             <a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#collapseUtilities"
  119.                aria-expanded="true" aria-controls="collapseUtilities">
  120.                 <i class="fas fa-fw fa-wrench"></i>
  121.                 <span>{% trans %} warehouse {% endtrans %}</span>
  122.             </a>
  123.             <div id="collapseUtilities" class="collapse" aria-labelledby="headingUtilities"
  124.                  data-parent="#accordionSidebar">
  125.                 <div class="bg-white py-2 collapse-inner rounded">
  126.                     <a class="collapse-item" href="{{ path('app_admin_warehouse') }}">{% trans %} warehouse {% endtrans %}</a>
  127.                 </div>
  128.             </div>
  129.         </li>
  130.         <li class="nav-item">
  131.             <a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#stocktransfer"
  132.                aria-expanded="true" aria-controls="collapseUtilities">
  133.                 <i class="fas fa-fw fa-wrench"></i>
  134.                 <span>{% trans %} stocktransfer {% endtrans %}</span>
  135.             </a>
  136.             <div id="stocktransfer" class="collapse" aria-labelledby="headingUtilities"
  137.                  data-parent="#accordionSidebar">
  138.                 <div class="bg-white py-2 collapse-inner rounded">
  139.                     <a class="collapse-item" href="{{ path('stock_transfer_between_warehouses_index') }}">{% trans %} warehouse.transfer.between {% endtrans %}</a>
  140.                     <a class="collapse-item" href="{{ path('app_admin_stock_transfer') }}">{% trans %} stocktransfer {% endtrans %}</a>
  141.                     <a class="collapse-item" href="{{ path('app_admin_stock_transfer_new') }}">{% trans %} addstocktransfer {% endtrans %}</a>
  142.                     <a class="collapse-item" href="{{ path('admin_stocktransfer_report', {'year':2023}) }}">{% trans %} stock.transfer.report {% endtrans %}</a>
  143.                 </div>
  144.             </div>
  145.         </li>
  146.         <li class="nav-item">
  147.             <a class="nav-link" href="{{ path('app_admin_supplier_index') }}">
  148.                 <i class="fas fa-fw fa-truck"></i>
  149.                 <span>Tedarikçiler</span>
  150.             </a>
  151.         </li>
  152.         <li class="nav-item">
  153.             <a class="nav-link" href="{{ path('app_admin_purchase_order_index') }}">
  154.                 <i class="fas fa-fw fa-shopping-basket"></i>
  155.                 <span>Satın Alma Siparişleri</span>
  156.             </a>
  157.         </li>
  158.         <li class="nav-item">
  159.             <a class="nav-link" href="{{ path('app_admin_company_index') }}">
  160.                 <i class="fas fa-fw fa-building"></i>
  161.                 <span>Şirket Yönetimi</span>
  162.             </a>
  163.         </li>
  164.         <li class="nav-item">
  165.             <a class="nav-link collapsed" href="{{ path('app_buying_in_turkey') }}">
  166.                 <i class="fas fa-fw fa-wrench"></i>
  167.                 <span>{% trans %} turkeyPurchase {% endtrans %}</span>
  168.             </a>
  169.         </li>
  170.         <li class="nav-item">
  171.             <a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#buyinfrance"
  172.                aria-expanded="true" aria-controls="collapseUtilities">
  173.                 <i class="fas fa-fw fa-wrench"></i>
  174.                 <span>{% trans %} purchase.france {% endtrans %}</span>
  175.             </a>
  176.             <div id="buyinfrance" class="collapse" aria-labelledby="headingUtilities"
  177.                  data-parent="#accordionSidebar">
  178.                 <div class="bg-white py-2 collapse-inner rounded">
  179.                     <a class="collapse-item" style="cursor: pointer;" onclick="createPopup('{{ path("buyin_france_new") }}','buyin-turkey-new')">{% trans %} purchase.france.add {% endtrans %}</a>
  180.                     <a class="collapse-item" style="cursor: pointer;" href="{{ path('buyin_france_index') }}">{% trans %} purchase.france.all {% endtrans %}</a>
  181.                 </div>
  182.             </div>
  183.         </li>
  184.         <li class="nav-item">
  185.             <a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#sales"
  186.                aria-expanded="true" aria-controls="collapseUtilities">
  187.                 <i class="fas fa-fw fa-wrench"></i>
  188.                 <span>{% trans %} sales {% endtrans %}</span>
  189.             </a>
  190.             <div id="sales" class="collapse" aria-labelledby="headingUtilities"
  191.                  data-parent="#accordionSidebar">
  192.                 <div class="bg-white py-2 collapse-inner rounded">
  193.                     <a class="collapse-item" href="{{ path('app_admin_sales') }}">{% trans %} addSale {% endtrans %}</a>
  194.                     <a class="collapse-item" href="{{ path('app_admin_sales_all') }}">{% trans %} allSales {% endtrans %}</a>
  195.                     <a class="collapse-item" href="{{ path('un_allocated_products_index') }}">{% trans %} unAllocatedSales {% endtrans %}</a>
  196.                     <a class="collapse-item" href="{{ path("admin_sales_return_index") }}">Iade / Iptal</a>
  197.                     <a class="collapse-item" href="{{ path('admin_sales_history_index') }}">Satış Geçmişi</a>
  198.                     <a class="collapse-item" href="{{ path('admin_email_logs') }}">Mail Kayıtları</a>
  199.                 </div>
  200.             </div>
  201.         </li>
  202.         <li class="nav-item">
  203.             <a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#reports"
  204.                aria-expanded="true" aria-controls="collapseUtilities">
  205.                 <i class="fas fa-fw fa-wrench"></i>
  206.                 <span>{% trans %} reports {% endtrans %}</span>
  207.             </a>
  208.             <div id="reports" class="collapse" aria-labelledby="headingUtilities"
  209.                  data-parent="#accordionSidebar">
  210.                 <div class="bg-white py-2 collapse-inner rounded">
  211.                     <a class="collapse-item" href="{{ path('app_admin_seller_sales') }}">{% trans %} sales.representatives {% endtrans %}</a>
  212.                     <a class="collapse-item" href="{{ path('app_admin_report_products') }}">{% trans %} product.based {% endtrans %}</a>
  213.                     <a class="collapse-item" href="{{ path('app_admin_sales_all') }}">{% trans %} sales.all {% endtrans %}</a>
  214.                     <a class="collapse-item" href="{{ path('app_admin_stock_consistency_report') }}">{{ 'stock.consistency.report.title'|trans }}</a>
  215.                     <a class="collapse-item" href="{{ path('app_admin_stock_consistency_report') }}">{{ 'stock.consistency.report.title'|trans }}</a>
  216.                     <a class="collapse-item" href="{{ path('app_admin_stock_transaction_index') }}">Stok Hareketleri</a>
  217.                     <a class="collapse-item" href="{{ path('app_admin_report_prediction') }}">Stok Tahmin Raporu</a>
  218.                     <a class="collapse-item" href="{{ path('admin_stock_movement_report_index') }}">Stok Hareket Raporu Detay</a>
  219.                     <a class="collapse-item" href="{{ path('app_strategic_analysis_dashboard') }}" style="color: #4e73df; font-weight: bold;">Stratejik Analiz 2026</a>
  220.                     <a class="collapse-item" href="{{ path('app_strategic_analysis_budget_planning') }}" style="color: #1cc88a; font-weight: bold;">Bütçe Planlama 2026</a>
  221.                 </div>
  222.             </div>
  223.         </li>
  224.         <li class="nav-item">
  225.             <a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#expenses"
  226.                aria-expanded="true" aria-controls="collapseUtilities">
  227.                 <i class="fas fa-fw fa-wallet"></i>
  228.                 <span>Gider Yönetimi</span>
  229.             </a>
  230.             <div id="expenses" class="collapse" aria-labelledby="headingUtilities"
  231.                  data-parent="#accordionSidebar">
  232.                 <div class="bg-white py-2 collapse-inner rounded">
  233.                     <a class="collapse-item" href="{{ path('app_expense_transaction_index') }}">Gider Listesi</a>
  234.                     <a class="collapse-item" href="{{ path('app_expense_transaction_new') }}">Harcama Ekle</a>
  235.                     <a class="collapse-item" href="{{ path('app_admin_expense_overview') }}">Aylık Genel Giderler</a>
  236.                     <a class="collapse-item" href="{{ path('app_expense_category_index') }}">Kategoriler</a>
  237.                     <a class="collapse-item" href="{{ path('app_admin_debt_index') }}">Borç Takip</a>
  238.                 </div>
  239.             </div>
  240.         </li>
  241.         <li class="nav-item">
  242.             <a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#dataManagement"
  243.                aria-expanded="true" aria-controls="collapseUtilities">
  244.                 <i class="fas fa-fw fa-database"></i>
  245.                 <span>Veri Yönetimi</span>
  246.             </a>
  247.             <div id="dataManagement" class="collapse" aria-labelledby="headingUtilities"
  248.                  data-parent="#accordionSidebar">
  249.                 <div class="bg-white py-2 collapse-inner rounded">
  250.                     <h6 class="collapse-header">2025 Hazırlık:</h6>
  251.                     <a class="collapse-item" href="{{ path('app_manual_entry_list') }}">Geçmiş Veri Listesi</a>
  252.                     <a class="collapse-item" href="{{ path('app_manual_product_entry') }}">Yeni Veri Girişi</a>
  253.                     <div class="collapse-divider"></div>
  254.                     <h6 class="collapse-header">Canlı Raporlar:</h6>
  255.                     <a class="collapse-item" href="{{ path('app_admin_current_data') }}">Güncel Veriler</a>
  256.                 </div>
  257.             </div>
  258.         </li>
  259.         <li class="nav-item">
  260.             <a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#stocktake"
  261.                aria-expanded="true" aria-controls="collapseUtilities">
  262.                 <i class="fas fa-fw fa-wrench"></i>
  263.                 <span>{% trans %} stocktaking {% endtrans %}</span>
  264.             </a>
  265.             <div id="stocktake" class="collapse" aria-labelledby="headingUtilities"
  266.                  data-parent="#accordionSidebar">
  267.                 <div class="bg-white py-2 collapse-inner rounded">
  268.                     {% set warehouses = getWarehouses() %}
  269.                     {% for warehouse in warehouses %}
  270.                         <a class="collapse-item" href="{{ path('stock_info_index', {'warehouseId': warehouse.id}) }}">{{ warehouse.name }}</a>
  271.                     {% endfor %}
  272.                 </div>
  273.             </div>
  274.         </li>
  275.         <li class="nav-item">
  276.             <a class="nav-link collapsed" href="{{ path('user_index') }}"
  277.                aria-expanded="true" aria-controls="collapseUtilities">
  278.                 <i class="fas fa-fw fa-wrench"></i>
  279.                 <span>{% trans %} users {% endtrans %}</span>
  280.             </a>
  281.         </li>
  282.     </ul>
  283.     <div id="content-wrapper" class="d-flex flex-column">
  284.         <div id="content">
  285.             <nav class="navbar navbar-expand navbar-light bg-white topbar mb-0 static-top shadow">
  286.                 <button id="sidebarToggleTop" class="btn btn-link d-md-none rounded-circle mr-3">
  287.                     <i class="fa fa-bars"></i>
  288.                 </button>
  289.                 <ul class="navbar-nav ml-auto">
  290.                     {% if is_granted('ROLE_SUPER_ADMIN') %}
  291.                         <li class="nav-item dropdown no-arrow mx-1">
  292.                             <a class="nav-link" href="{{ path('app_admin_settings_index') }}">
  293.                                 <div>
  294.                                     <button class="btn btn-warning">
  295.                                         <i class="fas fa-cog"></i> Ayarlar
  296.                                     </button>
  297.                                 </div>
  298.                             </a>
  299.                         </li>
  300.                     {% endif %}
  301.                     <li class="nav-item dropdown no-arrow mx-1">
  302.                         <a class="nav-link" href="{{ path('app_admin_product') }}" >
  303.                             <div>
  304.                                 <button class="btn btn-primary">{% trans %} products.self {% endtrans %}</button>
  305.                             </div>
  306.                         </a>
  307.                     </li>
  308.                     <li class="nav-item dropdown no-arrow mx-1" style="display: flex !important; align-items: center;">
  309.                         <a class="nav-link" href="{{ path('app_admin_product_create') }}" style="padding: 0;">
  310.                             <button class="btn btn-success" style="font-weight: 600; box-shadow: 0 2px 8px rgba(40,167,69,0.3);">
  311.                                 <i class="fas fa-plus-circle"></i> Ürün Ekle
  312.                             </button>
  313.                         </a>
  314.                     </li>
  315.                     <li class="nav-item dropdown no-arrow mx-1">
  316.                         <a class="nav-link" href="{{ path('app_admin_sales') }}" >
  317.                             <div>
  318.                                 <button class="btn btn-primary">{% trans %} addSale {% endtrans %}</button>
  319.                             </div>
  320.                         </a>
  321.                     </li>
  322.                     <li class="nav-item dropdown no-arrow mx-1">
  323.                         <a class="nav-link" href="{{ path('app_admin_sales_all') }}" >
  324.                             <div>
  325.                                 <button class="btn btn-primary">{% trans %} allSales {% endtrans %}</button>
  326.                             </div>
  327.                         </a>
  328.                     </li>
  329.                     {% if app.request.getPathInfo() == '/' %}
  330.                         <li class="nav-item dropdown no-arrow mx-1">
  331.                             <a class="nav-link" data-toggle="modal" data-target="#lowStockModal">
  332.                                 <div>
  333.                                     <button class="btn btn-primary">{% trans %} low.stocks {% endtrans %}</button>
  334.                                 </div>
  335.                             </a>
  336.                         </li>
  337.                     {% endif %}
  338.                     <li class="nav-item dropdown no-arrow d-sm-none">
  339.                         <a class="nav-link dropdown-toggle" href="#" id="searchDropdown" role="button"
  340.                            data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
  341.                             <i class="fas fa-search fa-fw"></i>
  342.                         </a>
  343.                         <div class="dropdown-menu dropdown-menu-right p-3 shadow animated--grow-in"
  344.                              aria-labelledby="searchDropdown">
  345.                             <form class="form-inline mr-auto w-100 navbar-search">
  346.                                 <div class="input-group">
  347.                                     <input type="text" class="form-control bg-light border-0 small"
  348.                                            placeholder="Search for..." aria-label="Search"
  349.                                            aria-describedby="basic-addon2">
  350.                                     <div class="input-group-append">
  351.                                         <button class="btn btn-primary" type="button">
  352.                                             <i class="fas fa-search fa-sm"></i>
  353.                                         </button>
  354.                                     </div>
  355.                                 </div>
  356.                             </form>
  357.                         </div>
  358.                     </li>
  359.                     {{ render(controller("App\\Controller\\Admin\\Stock\\BuyingInTurkeyController::getUnTransferedPurchases")) }}
  360.                     {{ render(controller("App\\Controller\\Admin\\StockTransfer\\StockTransferController::getUnTransferedStockTransfers")) }}
  361.                     <li class="nav-item dropdown no-arrow mx-1">
  362.                         <a class="nav-link dropdown-toggle" href="#" id="alertsDropdown" role="button"
  363.                            data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
  364.                             <i class="fas fa-language fa-fw"></i>
  365.                             <span class="badge badge-danger badge-counter">{{ app.request.locale }}</span>
  366.                         </a>
  367.                         <div class="dropdown-list dropdown-menu dropdown-menu-right shadow animated--grow-in"
  368.                              aria-labelledby="alertsDropdown">
  369.                             <h6 class="dropdown-header">
  370.                                 {% trans %} select.language {% endtrans %}
  371.                             </h6>
  372.                             <a class="dropdown-item d-flex align-items-center" href="{{ path('app_change_locale', {'locale':'en'}) }}">
  373.                                 <div>
  374.                                     {% trans %} english {% endtrans %}
  375.                                 </div>
  376.                             </a>
  377.                             <a class="dropdown-item d-flex align-items-center" href="{{ path('app_change_locale', {'locale':'fr'}) }}">
  378.                                 <div>
  379.                                     {% trans %} french {% endtrans %}
  380.                                 </div>
  381.                             </a>
  382.                             <a class="dropdown-item d-flex align-items-center" href="{{ path('app_change_locale', {'locale':'tr'}) }}">
  383.                                 <div>
  384.                                     {% trans %} turkish {% endtrans %}
  385.                                 </div>
  386.                             </a>
  387.                         </div>
  388.                     </li>
  389.                     </li>
  390.                     <div class="topbar-divider d-none d-sm-block"></div>
  391.                     <li class="nav-item dropdown no-arrow">
  392.                         <a class="nav-link dropdown-toggle" href="#" id="userDropdown" role="button"
  393.                            data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
  394.                             <span class="mr-2 d-none d-lg-inline text-gray-600 small">{{ app.user.email }}</span>
  395.                         </a>
  396.                         <div class="dropdown-menu dropdown-menu-right shadow animated--grow-in"
  397.                              aria-labelledby="userDropdown">
  398.                             <a class="dropdown-item" href="{{ path('admin_profile_index') }}">
  399.                                 <i class="fas fa-user fa-sm fa-fw mr-2 text-gray-400"></i>
  400.                                 Profil Düzenle
  401.                             </a>
  402.                             <a class="dropdown-item" href="{{ path('app_logout') }}">
  403.                                 <i class="fas fa-sign-out-alt fa-sm fa-fw mr-2 text-gray-400"></i>
  404.                                 {% trans %} logout {% endtrans %}
  405.                             </a>
  406.                         </div>
  407.                     </li>
  408.                 </ul>
  409.             </nav>
  410.             {% block body %}
  411.             {% endblock %}
  412.         </div>
  413.         <footer class="sticky-footer bg-white">
  414.             <div class="container my-auto">
  415.                 <div class="copyright text-center my-auto">
  416.                     <span>{% trans %} copyright {% endtrans %}</span>
  417.                 </div>
  418.             </div>
  419.         </footer>
  420.     </div>
  421. </div>
  422. <a class="scroll-to-top rounded" href="#page-top">
  423.     <i class="fas fa-angle-up"></i>
  424. </a>
  425. <div class="modal fade" id="logoutModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel"
  426.      aria-hidden="true">
  427.     <div class="modal-dialog" role="document">
  428.         <div class="modal-content">
  429.             <div class="modal-header">
  430.                 <h5 class="modal-title" id="exampleModalLabel">{% trans %} ready.to.leave {% endtrans %}</h5>
  431.                 <button class="close" type="button" data-dismiss="modal" aria-label="Close">
  432.                     <span aria-hidden="true">×</span>
  433.                 </button>
  434.             </div>
  435.             <div class="modal-body">{% trans %} logout.message {% endtrans %}</div>
  436.             <div class="modal-footer">
  437.                 <button class="btn btn-secondary" type="button" data-dismiss="modal">{% trans %} cancel.self {% endtrans %}</button>
  438.                 <a class="btn btn-primary" href="login.html">{% trans %} logout.modal {% endtrans %}</a>
  439.             </div>
  440.         </div>
  441.     </div>
  442. </div>
  443. {% block javascripts %}
  444.     <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script>
  445.     <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.1/umd/popper.min.js"></script>
  446.     <script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.6.0/js/bootstrap.min.js"></script>
  447.     <script src="{{ asset('theme/vendor/jquery-easing/jquery.easing.min.js') }}"></script>
  448.         <script src="https://cdn.jsdelivr.net/npm/sweetalert2@11/dist/sweetalert2.min.js"></script>
  449.     <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.mask/1.14.16/jquery.mask.min.js"></script>
  450.     <script src="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/js/select2.full.min.js"></script>
  451.     <script src="https://cdn.datatables.net/1.12.1/js/jquery.dataTables.min.js"></script>
  452.     <script src="https://cdn.datatables.net/buttons/2.2.3/js/dataTables.buttons.min.js"></script>
  453.     <script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/3.1.3/jszip.min.js"></script>
  454.     <script src="https://cdn.datatables.net/buttons/2.2.3/js/buttons.html5.min.js"></script>
  455.     <script src="https://cdn.jsdelivr.net/npm/busy-load@0.1.2/dist/app.min.js"></script>
  456.     <script src="https://cdn.jsdelivr.net/npm/@fancyapps/ui@5.0/dist/fancybox/fancybox.umd.js"></script>
  457.     <script src="{{ asset('theme/js/sb-admin-2.min.js') }}"></script>
  458. {% endblock %}
  459. {% block javascript %}
  460. {% endblock %}
  461. <script>
  462.     // Bu script bloğu, tüm kütüphaneler yüklendikten sonra çalışır
  463.     $(document).ready(function() {
  464.         // Show flashed messages using SweetAlert after it's loaded
  465.         {% for message in app.flashes('success') %}
  466.         Swal.fire({
  467.             position: 'top-end',
  468.             icon: 'success',
  469.             title: "{{ message }}",
  470.             showConfirmButton: false,
  471.             timer: 3000
  472.         });
  473.         {% endfor %}
  474.         {% for message in app.flashes('error') %}
  475.         Swal.fire({
  476.             position: 'top-end',
  477.             icon: 'error',
  478.             title: "{{ message }}",
  479.             showConfirmButton: false,
  480.             timer: 3000
  481.         });
  482.         {% endfor %}
  483.         $('#addCustomerBtn').on('click', function (){
  484.             createPopup("{{ path('admin_customer_add_new') }}", "{% trans %} add.customer.page {% endtrans %}")
  485.         })
  486.         $('.mask-money').mask("##0.00", {reverse: true});
  487.         $('.mask-quantity').mask("##0.00", {reverse: true});
  488.         $('.select2-place').select2();
  489.         $.busyLoadSetup({ animation: "slide", background: "rgba(255, 152, 0, 0.86)" });
  490.     });
  491.     function createPopup(url, window_name = 'example-popup'){
  492.         var width = 1100;
  493.         var height = 700;
  494.         var screen_width = window.screen.width;
  495.         var screen_height = window.screen.height;
  496.         var popup_left = (screen_width - width) / 2;
  497.         var popup_top = (screen_height - height) / 2;
  498.         var popup_window = window.open(url, window_name, 'width=' + width + ',height=' + height + ',left=' + popup_left + ',top=' + popup_top);
  499.     }
  500.     $('#stockTransferBetweenWarehousesBtn').on('click', function (){
  501.         createPopup('/stock-transfer-between-warehouses', 'Stock Transfer')
  502.     })
  503.     $( document ).ajaxStart(function() {
  504.         $.busyLoadFull("show",{
  505.             background: "rgba(106,113,106,0.73)",
  506.             fontawesome: "fa fa-spinner fa-spin fa-3x fa-fw",
  507.         });
  508.     });
  509.     $('#global-warehouse-select').on('change', function (){
  510.         const warehouseId = this.value;
  511.         if (warehouseId) {
  512.             window.location.href = `/admin/warehouse/setmain/${warehouseId}`;
  513.         }
  514.     })
  515.     $( document ).ajaxStop(function() {
  516.         $.busyLoadFull("hide");
  517.     });
  518.     function addCommas(number)
  519.     {
  520.         decimals = 2;
  521.         number = (number + '').replace(/[^0-9+\-Ee.]/g, '');
  522.         var n = !isFinite(+number) ? 0 : +number;
  523.         var prec = !isFinite(+decimals) ? 0 : Math.abs(decimals);
  524.         var sep = (typeof thousandsSep === 'undefined') ? ',' : thousandsSep;
  525.         var dec = (typeof decPoint === 'undefined') ? '.' : decPoint;
  526.         var s = '';
  527.         var toFixedFix = function (n, prec) {
  528.             var k = Math.pow(10, prec);
  529.             return '' + (Math.round(n * k) / k).toFixed(prec)
  530.         };
  531.         s = (prec ? toFixedFix(n, prec) : '' + Math.round(n)).split('.');
  532.         if (s[0].length > 3) {
  533.             s[0] = s[0].replace(/\B(?=(?:\d{3})+(?!\d))/g, sep)
  534.         }
  535.         if ((s[1]  || '').length < prec) {
  536.             s[1] = s[1] || '';
  537.             s[1] += new Array(prec - s[1].length + 1).join('0')
  538.         }
  539.         return s.join(dec)
  540.     }
  541.     Fancybox.bind("[data-fancybox]", {
  542.         // Your custom options
  543.     });
  544. </script>
  545. </body>
  546. </html>