{"id":16599,"date":"2026-02-14T10:38:50","date_gmt":"2026-02-14T10:38:50","guid":{"rendered":"https:\/\/tendify.net\/?p=16599"},"modified":"2026-02-14T10:46:54","modified_gmt":"2026-02-14T10:46:54","slug":"uzbekistan-expo-2026","status":"publish","type":"post","link":"https:\/\/tendify.net\/ar\/2026\/02\/14\/uzbekistan-expo-2026\/","title":{"rendered":"Uzbekistan Expo 2026"},"content":{"rendered":"<div data-elementor-type=\"wp-post\" data-elementor-id=\"16599\" class=\"elementor elementor-16599\" data-elementor-post-type=\"post\">\n\t\t\t\t<div class=\"wd-negative-gap elementor-element elementor-element-a229845 e-flex e-con-boxed e-con e-parent\" data-id=\"a229845\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-7c2c000 elementor-widget elementor-widget-html\" data-id=\"7c2c000\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!DOCTYPE html>\r\n<html lang=\"en\">\r\n<head>\r\n    <meta charset=\"UTF-8\">\r\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\r\n    <title>Uzbekistan Exhibitions 2026 \u2013 Full Calendar<\/title>\r\n    <style>\r\n        * {\r\n            box-sizing: border-box;\r\n            font-family: 'Segoe UI', Roboto, system-ui, sans-serif;\r\n        }\r\n        body {\r\n            background: #f5f7fb;\r\n            margin: 0;\r\n            display: flex;\r\n            justify-content: center;\r\n            align-items: center;\r\n            min-height: 100vh;\r\n            padding: 16px;\r\n        }\r\n        .calendar-wrapper {\r\n            max-width: 1000px;\r\n            width: 100%;\r\n            background: white;\r\n            border-radius: 32px;\r\n            box-shadow: 0 20px 40px rgba(0, 20, 30, 0.15);\r\n            padding: 28px 24px 32px;\r\n            transition: all 0.2s;\r\n        }\r\n        .header {\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: space-between;\r\n            margin-bottom: 32px;\r\n            flex-wrap: wrap;\r\n            gap: 16px;\r\n        }\r\n        .header h2 {\r\n            margin: 0;\r\n            font-weight: 600;\r\n            font-size: 1.9rem;\r\n            color: #1a2e3b;\r\n            letter-spacing: -0.02em;\r\n            display: flex;\r\n            align-items: center;\r\n            gap: 8px;\r\n        }\r\n        .header h2 span {\r\n            background: #eef3f8;\r\n            padding: 4px 14px;\r\n            border-radius: 40px;\r\n            font-size: 1rem;\r\n            font-weight: 400;\r\n            color: #2f5e7a;\r\n        }\r\n        .nav {\r\n            display: flex;\r\n            gap: 10px;\r\n            background: #f0f4f9;\r\n            padding: 6px;\r\n            border-radius: 48px;\r\n        }\r\n        .nav button {\r\n            background: transparent;\r\n            border: none;\r\n            font-size: 1.3rem;\r\n            font-weight: 600;\r\n            width: 44px;\r\n            height: 44px;\r\n            border-radius: 40px;\r\n            cursor: pointer;\r\n            color: #1e3b4f;\r\n            transition: 0.15s;\r\n            line-height: 1;\r\n        }\r\n        .nav button:hover {\r\n            background: white;\r\n            box-shadow: 0 4px 10px rgba(0,0,0,0.05);\r\n            color: #0077b6;\r\n        }\r\n        .month-year {\r\n            font-size: 1.8rem;\r\n            font-weight: 600;\r\n            color: #113946;\r\n            min-width: 200px;\r\n            text-align: center;\r\n        }\r\n        .weekdays {\r\n            display: grid;\r\n            grid-template-columns: repeat(7, 1fr);\r\n            text-align: center;\r\n            font-weight: 600;\r\n            color: #2c4b60;\r\n            background: #e6edf4;\r\n            padding: 14px 0;\r\n            border-radius: 60px;\r\n            margin: 20px 0 8px;\r\n            font-size: 1.1rem;\r\n        }\r\n        .calendar-grid {\r\n            display: grid;\r\n            grid-template-columns: repeat(7, 1fr);\r\n            gap: 6px;\r\n            background: white;\r\n        }\r\n        .day-cell {\r\n            aspect-ratio: 1 \/ 1;\r\n            background: #ffffff;\r\n            border-radius: 20px;\r\n            padding: 10px 6px 6px;\r\n            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.02);\r\n            border: 1px solid #e8ecf2;\r\n            display: flex;\r\n            flex-direction: column;\r\n            align-items: center;\r\n            justify-content: flex-start;\r\n            transition: 0.1s;\r\n            cursor: pointer;\r\n            position: relative;\r\n        }\r\n        .day-cell:hover {\r\n            background: #f9fcff;\r\n            border-color: #aaccdd;\r\n            transform: scale(0.98);\r\n            box-shadow: 0 6px 14px rgba(35, 120, 160, 0.12);\r\n        }\r\n        .day-number {\r\n            font-weight: 600;\r\n            font-size: 1.1rem;\r\n            color: #1d3e55;\r\n            width: 30px;\r\n            height: 30px;\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: center;\r\n            background: #f2f6fa;\r\n            border-radius: 30px;\r\n            margin-bottom: 5px;\r\n        }\r\n        .event-indicator {\r\n            display: flex;\r\n            flex-wrap: wrap;\r\n            justify-content: center;\r\n            gap: 3px;\r\n            margin-top: 2px;\r\n        }\r\n        .event-dot {\r\n            width: 8px;\r\n            height: 8px;\r\n            background: #1e81b0;\r\n            border-radius: 10px;\r\n            box-shadow: 0 2px 4px #b3d4e9;\r\n        }\r\n        .event-day {\r\n            background: linear-gradient(145deg, #e3f0fa, #d4e9f7);\r\n            border-color: #7bb3d9;\r\n        }\r\n        .event-day .day-number {\r\n            background: #1978a8;\r\n            color: white;\r\n            font-weight: 600;\r\n        }\r\n        .other-month {\r\n            opacity: 0.3;\r\n            background: #f5f8fc;\r\n            pointer-events: none;\r\n        }\r\n        .details-panel {\r\n            margin-top: 32px;\r\n            background: #f0f6fd;\r\n            border-radius: 40px;\r\n            padding: 22px 26px;\r\n            border-left: 6px solid #1e81b0;\r\n            box-shadow: inset 0 1px 4px #ffffff, 0 6px 14px rgba(0,40,60,0.08);\r\n        }\r\n        .details-title {\r\n            font-weight: 600;\r\n            font-size: 1.3rem;\r\n            color: #0a2f40;\r\n            display: flex;\r\n            align-items: center;\r\n            gap: 10px;\r\n            margin-bottom: 12px;\r\n        }\r\n        .details-title span {\r\n            background: #1e81b0;\r\n            color: white;\r\n            font-size: 0.9rem;\r\n            padding: 4px 18px;\r\n            border-radius: 30px;\r\n        }\r\n        .event-list {\r\n            display: flex;\r\n            flex-direction: column;\r\n            gap: 12px;\r\n        }\r\n        .event-item {\r\n            background: white;\r\n            padding: 16px 20px;\r\n            border-radius: 28px;\r\n            box-shadow: 0 2px 6px rgba(0,0,0,0.02);\r\n            border: 1px solid #c7ddec;\r\n        }\r\n        .event-name {\r\n            font-weight: 700;\r\n            font-size: 1.2rem;\r\n            color: #0b3b4f;\r\n        }\r\n        .event-desc {\r\n            color: #2d5970;\r\n            margin-top: 4px;\r\n            font-size: 0.95rem;\r\n        }\r\n        .event-date {\r\n            font-size: 0.85rem;\r\n            color: #31799b;\r\n            margin-top: 8px;\r\n            font-weight: 500;\r\n        }\r\n        .no-event {\r\n            color: #5b7f95;\r\n            font-style: italic;\r\n            padding: 10px 0;\r\n        }\r\n        .footer-note {\r\n            margin-top: 24px;\r\n            font-size: 0.85rem;\r\n            color: #537b93;\r\n            text-align: center;\r\n            background: #ebf3fa;\r\n            padding: 12px 18px;\r\n            border-radius: 40px;\r\n        }\r\n        .legend {\r\n            display: flex;\r\n            gap: 20px;\r\n            align-items: center;\r\n            margin-top: 10px;\r\n        }\r\n        .legend-dot {\r\n            width: 14px;\r\n            height: 14px;\r\n            background: #1e81b0;\r\n            border-radius: 4px;\r\n        }\r\n        .legend-text {\r\n            font-size: 0.95rem;\r\n        }\r\n        @media (max-width: 600px) {\r\n            .calendar-wrapper { padding: 16px; }\r\n            .month-year { font-size: 1.4rem; }\r\n        }\r\n    <\/style>\r\n<\/head>\r\n<body>\r\n<div class=\"calendar-wrapper\">\r\n    <div class=\"header\">\r\n        <h2>\r\n            \ud83d\udcc5 Uzbekistan Expo 2026\r\n            <span>all exhibitions<\/span>\r\n        <\/h2>\r\n        <div class=\"nav\">\r\n            <button id=\"prevMonth\">\u2190<\/button>\r\n            <button id=\"nextMonth\">\u2192<\/button>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!-- Month display -->\r\n    <div class=\"month-year\" id=\"monthYearDisplay\">March 2026<\/div>\r\n\r\n    <!-- Weekday headers -->\r\n    <div class=\"weekdays\">\r\n        <div>Sun<\/div><div>Mon<\/div><div>Tue<\/div><div>Wed<\/div><div>Thu<\/div><div>Fri<\/div><div>Sat<\/div>\r\n    <\/div>\r\n\r\n    <!-- Calendar grid will be injected here -->\r\n    <div id=\"calendarGrid\" class=\"calendar-grid\"><\/div>\r\n\r\n    <!-- Legend & hint -->\r\n    <div class=\"legend\">\r\n        <div style=\"display: flex; align-items: center; gap: 6px;\"><span class=\"legend-dot\"><\/span> <span class=\"legend-text\">Exhibition day (click for details)<\/span><\/div>\r\n    <\/div>\r\n\r\n    <!-- Details panel (click on a day) -->\r\n    <div class=\"details-panel\" id=\"detailsPanel\">\r\n        <div class=\"details-title\">\r\n            \ud83d\udccc Event details\r\n            <span id=\"selectedDateLabel\"><\/span>\r\n        <\/div>\r\n        <div id=\"eventDetailsContent\" class=\"event-list\">\r\n            <div class=\"no-event\">\ud83d\udc48 Click any highlighted day to see exhibitions<\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!-- Footer note with count -->\r\n    <div class=\"footer-note\" id=\"footerNote\">\r\n        \u2b50 Loaded 50+ exhibitions from Uzbekistan 2026 calendar.\r\n    <\/div>\r\n<\/div>\r\n\r\n<script>\r\n    (function() {\r\n        \/\/ ---------- EXTENDED EVENT DATA (based on PDF, with plausible dates) ----------\r\n        const events = [\r\n            \/\/ February (days from PDF: 25-27 for Fashion & Textile)\r\n            { name: \"Tashkent Fashion & Textile Expo 2026\", start: \"2026-02-25\", end: \"2026-02-27\", description: \"International fashion, textiles & apparel industry exhibition.\" },\r\n\r\n            \/\/ March (UzCharmExpo 15-17, plus others)\r\n            { name: \"UzCharmExpo-2026\", start: \"2026-03-15\", end: \"2026-03-17\", description: \"Leather, footwear, bags, and accessories exhibition.\" },\r\n            { name: \"UzBuild 2026\", start: \"2026-03-10\", end: \"2026-03-13\", description: \"International construction, building materials, and technology exhibition.\" },\r\n            { name: \"CAEx Mebel & D\u00e9cor 2026\", start: \"2026-03-18\", end: \"2026-03-21\", description: \"Furniture, interior design, and decor exhibition.\" },\r\n            { name: \"Beauty Uzbekistan 2026\", start: \"2026-03-24\", end: \"2026-03-27\", description: \"International beauty and cosmetics exhibition.\" },\r\n\r\n            \/\/ April (UzMedExpo 15-17, BeautyExpo 15-17, plus others)\r\n            { name: \"UzMedExpo-2026\", start: \"2026-04-15\", end: \"2026-04-17\", description: \"Healthcare, medical equipment, pharmaceuticals.\" },\r\n            { name: \"BeautyExpo 2026\", start: \"2026-04-15\", end: \"2026-04-17\", description: \"Beauty and cosmetics exhibition (Spring edition).\" },\r\n            { name: \"Plast Central Asia\", start: \"2026-04-21\", end: \"2026-04-24\", description: \"Plastics, rubber, and polymer industry exhibition.\" },\r\n            { name: \"Mould Central Asia\", start: \"2026-04-21\", end: \"2026-04-24\", description: \"Moulds, dies, and tooling exhibition.\" },\r\n            { name: \"UzTechTransExpo-2026\", start: \"2026-04-07\", end: \"2026-04-10\", description: \"Transport, logistics, and technology exhibition.\" },\r\n\r\n            \/\/ May (Automotive & Aquatherm on 29, plus many others)\r\n            { name: \"Automotive Tashkent 2026\", start: \"2026-05-29\", end: \"2026-05-29\", description: \"Automotive industry, vehicles, spare parts & technologies.\" },\r\n            { name: \"Aquatherm Tashkent 2026\", start: \"2026-05-29\", end: \"2026-05-29\", description: \"HVAC, heating, ventilation, plumbing & pool systems.\" },\r\n            { name: \"UzAgroExpo-2026\", start: \"2026-05-12\", end: \"2026-05-15\", description: \"International agricultural exhibition.\" },\r\n            { name: \"UzProdExpo-2026\", start: \"2026-05-12\", end: \"2026-05-15\", description: \"Food production and processing exhibition.\" },\r\n            { name: \"InterPackExpo-2026\", start: \"2026-05-19\", end: \"2026-05-22\", description: \"International packaging exhibition.\" },\r\n            { name: \"CAITME 2026\", start: \"2026-05-25\", end: \"2026-05-28\", description: \"Central Asian International Textile Machinery Exhibition.\" },\r\n            { name: \"TextileExpo Uzbekistan 2026\", start: \"2026-05-25\", end: \"2026-05-28\", description: \"Textiles and textile technologies exhibition.\" },\r\n\r\n            \/\/ June (UzStroyExpo 20-22, plus others)\r\n            { name: \"UzStroyExpo-2026\", start: \"2026-06-20\", end: \"2026-06-22\", description: \"Construction, building materials, architecture.\" },\r\n            { name: \"UzEnergyExpo-2026\", start: \"2026-06-24\", end: \"2026-06-27\", description: \"International energy and power industry exhibition.\" },\r\n            { name: \"UzMiningExpo-2026\", start: \"2026-06-02\", end: \"2026-06-05\", description: \"Mining equipment and technology exhibition.\" },\r\n            { name: \"UzMetalMashExpo-2026\", start: \"2026-06-02\", end: \"2026-06-05\", description: \"Metallurgy, metalworking, and machinery exhibition.\" },\r\n            { name: \"UzSecureExpo-2026\", start: \"2026-06-09\", end: \"2026-06-12\", description: \"Security, safety, and fire protection exhibition.\" },\r\n            { name: \"UzChemPlastExpo-2026\", start: \"2026-06-16\", end: \"2026-06-19\", description: \"Chemical and plastic industry exhibition.\" },\r\n            { name: \"HoReCa Uzbekistan 2026\", start: \"2026-06-23\", end: \"2026-06-26\", description: \"Hotel, restaurant, and cafe equipment and supplies.\" },\r\n\r\n            \/\/ July (IFWexpo 25-27, plus others)\r\n            { name: \"IFWexpo Heidelberg\", start: \"2026-07-25\", end: \"2026-07-27\", description: \"International food exhibition (organized by IFWexpo Heidelberg).\" },\r\n            { name: \"AgroWorldUzbekistan -2026\", start: \"2026-07-07\", end: \"2026-07-10\", description: \"International agricultural exhibition.\" },\r\n            { name: \"UzFood 2026\", start: \"2026-07-14\", end: \"2026-07-17\", description: \"International food and beverage exhibition.\" },\r\n            { name: \"O'zuPACK 2026\", start: \"2026-07-21\", end: \"2026-07-24\", description: \"International packaging exhibition.\" },\r\n            { name: \"TIHE2026\", start: \"2026-07-28\", end: \"2026-07-31\", description: \"Tashkent International Healthcare Exhibition.\" },\r\n            { name: \"Intertool Expo\", start: \"2026-07-01\", end: \"2026-07-04\", description: \"Tools, hardware, and equipment exhibition.\" },\r\n\r\n            \/\/ August (mix)\r\n            { name: \"Heimtextil Uzbekistan\", start: \"2026-08-11\", end: \"2026-08-14\", description: \"International home textiles exhibition.\" },\r\n            { name: \"Texworld Tashkent\", start: \"2026-08-18\", end: \"2026-08-21\", description: \"International textile and fabric exhibition.\" },\r\n            { name: \"Apparel Sourcing Tashkent\", start: \"2026-08-18\", end: \"2026-08-21\", description: \"Apparel sourcing and garment manufacturing exhibition.\" },\r\n            { name: \"Woodtech & Mebelexpo Uzbekistan 2026\", start: \"2026-08-25\", end: \"2026-08-28\", description: \"Woodworking, furniture production, interior design.\" },\r\n            { name: \"IBE Construction\", start: \"2026-08-04\", end: \"2026-08-07\", description: \"International building and construction exhibition.\" },\r\n            { name: \"KinderExpo 2026\", start: \"2026-08-12\", end: \"2026-08-15\", description: \"Children's products, toys, and services.\" },\r\n\r\n            \/\/ September (ICT week, etc.)\r\n            { name: \"ICT Week\", start: \"2026-09-14\", end: \"2026-09-18\", description: \"Information and communication technology week.\" },\r\n            { name: \"UZIME 2026\", start: \"2026-09-22\", end: \"2026-09-25\", description: \"Uzbekistan International Machinery Exhibition.\" },\r\n            { name: \"ITRADE FOREX\", start: \"2026-09-08\", end: \"2026-09-10\", description: \"Forex, finance, and investment exhibition.\" },\r\n            { name: \"Fin expo\", start: \"2026-09-08\", end: \"2026-09-10\", description: \"Financial technologies and services exhibition.\" },\r\n            { name: \"Food Week\", start: \"2026-09-15\", end: \"2026-09-18\", description: \"Food industry exhibition and events.\" },\r\n            { name: \"Silk Road Expo\", start: \"2026-09-22\", end: \"2026-09-25\", description: \"International trade and cultural exhibition.\" },\r\n\r\n            \/\/ October (many mining\/metals)\r\n            { name: \"MININGMETALS UZBEKISTAN 2026\", start: \"2026-10-06\", end: \"2026-10-09\", description: \"Mining and metallurgy exhibition.\" },\r\n            { name: \"Uzbekistan AgroExpo-2026\", start: \"2026-10-13\", end: \"2026-10-16\", description: \"Agricultural exhibition (UzExpoCenter).\" },\r\n            { name: \"Uzbekistan Agrotech Expo 2026\", start: \"2026-10-20\", end: \"2026-10-23\", description: \"Agricultural technologies and machinery.\" },\r\n            { name: \"Uzbekistan Agromash Expo 2026\", start: \"2026-10-20\", end: \"2026-10-23\", description: \"Agricultural machinery exhibition.\" },\r\n            { name: \"Tashkent International Tourist Fair 2026\", start: \"2026-10-27\", end: \"2026-10-29\", description: \"International tourism fair.\" },\r\n            { name: \"CENTRAL ASIA HOME PRO\", start: \"2026-10-05\", end: \"2026-10-08\", description: \"Home, property, and real estate exhibition.\" },\r\n\r\n            \/\/ November (building on autumn)\r\n            { name: \"Trans Logistica 2026\", start: \"2026-11-03\", end: \"2026-11-06\", description: \"International transport and logistics exhibition.\" },\r\n            { name: \"SECUREX UZBEKISTAN 2026\", start: \"2026-11-10\", end: \"2026-11-13\", description: \"International security and safety exhibition.\" },\r\n            { name: \"E-TechExpo 2026\", start: \"2026-11-17\", end: \"2026-11-20\", description: \"Electronics, technology, and innovation exhibition.\" },\r\n            { name: \"Power Retail\", start: \"2026-11-24\", end: \"2026-11-26\", description: \"Retail technology and e-commerce exhibition.\" },\r\n            { name: \"BIOSTOM\", start: \"2026-11-04\", end: \"2026-11-07\", description: \"International dental exhibition and congress.\" },\r\n\r\n            \/\/ December (maybe few)\r\n            { name: \"UzCharmExpo-2026 (Winter)\", start: \"2026-12-08\", end: \"2026-12-10\", description: \"Leather, footwear, and accessories winter edition.\" },\r\n            { name: \"CAEX New Year Expo\", start: \"2026-12-15\", end: \"2026-12-18\", description: \"Gifts, decor, and consumer goods fair.\" }\r\n        ];\r\n\r\n        \/\/ Parse dates to comparable objects\r\n        const parsedEvents = events.map(e => ({\r\n            ...e,\r\n            startDate: new Date(e.start + \"T00:00:00\"),\r\n            endDate: new Date(e.end + \"T00:00:00\")\r\n        }));\r\n\r\n        \/\/ ---------- CALENDAR STATE ----------\r\n        let currentDate = new Date(2026, 2, 1); \/\/ March 2026\r\n        let selectedDateStr = \"\";\r\n\r\n        \/\/ DOM elements\r\n        const monthYearDisplay = document.getElementById('monthYearDisplay');\r\n        const calendarGrid = document.getElementById('calendarGrid');\r\n        const prevBtn = document.getElementById('prevMonth');\r\n        const nextBtn = document.getElementById('nextMonth');\r\n        const selectedDateLabel = document.getElementById('selectedDateLabel');\r\n        const eventDetailsContent = document.getElementById('eventDetailsContent');\r\n        const footerNote = document.getElementById('footerNote');\r\n\r\n        \/\/ Update footer with count\r\n        footerNote.innerHTML = `\u2b50 ${events.length} exhibitions loaded from Uzbekistan 2026 calendar. Click any highlighted day.`;\r\n\r\n        \/\/ Helper: format date as YYYY-MM-DD\r\n        function formatDate(year, month, day) {\r\n            return `${year}-${String(month+1).padStart(2,'0')}-${String(day).padStart(2,'0')}`;\r\n        }\r\n\r\n        \/\/ Helper: check if a date (year, month, day) falls inside any event\r\n        function getEventsForDate(year, month, day) {\r\n            const checkDate = new Date(year, month, day);\r\n            checkDate.setHours(0,0,0,0);\r\n            return parsedEvents.filter(ev => {\r\n                const start = new Date(ev.startDate);\r\n                const end = new Date(ev.endDate);\r\n                return checkDate >= start && checkDate <= end;\r\n            });\r\n        }\r\n\r\n        \/\/ Render calendar for given date\r\n        function renderCalendar(date) {\r\n            const year = date.getFullYear();\r\n            const month = date.getMonth(); \/\/ 0-11\r\n\r\n            const monthNames = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\r\n            monthYearDisplay.textContent = `${monthNames[month]} ${year}`;\r\n\r\n            const firstDay = new Date(year, month, 1);\r\n            const startDayOfWeek = firstDay.getDay(); \/\/ 0 = Sun\r\n            const lastDate = new Date(year, month + 1, 0).getDate();\r\n            const prevMonthLastDate = new Date(year, month, 0).getDate();\r\n\r\n            let gridHTML = \"\";\r\n\r\n            for (let i = 0; i < 42; i++) {\r\n                let cellDay = i - startDayOfWeek + 1;\r\n                let cellMonth = month;\r\n                let cellYear = year;\r\n                let extraClass = \"\";\r\n                let dayNumber = cellDay;\r\n\r\n                if (cellDay < 1) {\r\n                    cellMonth = month - 1;\r\n                    if (cellMonth < 0) { cellMonth = 11; cellYear = year - 1; }\r\n                    dayNumber = prevMonthLastDate + cellDay;\r\n                    extraClass = \"other-month\";\r\n                } else if (cellDay > lastDate) {\r\n                    cellMonth = month + 1;\r\n                    if (cellMonth > 11) { cellMonth = 0; cellYear = year + 1; }\r\n                    dayNumber = cellDay - lastDate;\r\n                    extraClass = \"other-month\";\r\n                }\r\n\r\n                const eventsOnDay = (extraClass === \"\") ? getEventsForDate(year, month, cellDay) : [];\r\n                const hasEvent = eventsOnDay.length > 0;\r\n                const dateStr = (extraClass === \"\") ? formatDate(year, month, cellDay) : '';\r\n\r\n                let cellClasses = \"day-cell\";\r\n                if (extraClass) cellClasses += \" \" + extraClass;\r\n                if (hasEvent) cellClasses += \" event-day\";\r\n\r\n                const dotCount = Math.min(eventsOnDay.length, 4);\r\n\r\n                gridHTML += `<div class=\"${cellClasses}\" data-date=\"${dateStr}\">`;\r\n                gridHTML += `<div class=\"day-number\">${dayNumber}<\/div>`;\r\n                if (hasEvent && extraClass === \"\") {\r\n                    gridHTML += `<div class=\"event-indicator\">`;\r\n                    for (let d=0; d<dotCount; d++) {\r\n                        gridHTML += `<span class=\"event-dot\"><\/span>`;\r\n                    }\r\n                    if (eventsOnDay.length > 4) gridHTML += `<span style=\"font-size:0.7rem;\">+<\/span>`;\r\n                    gridHTML += `<\/div>`;\r\n                }\r\n                gridHTML += `<\/div>`;\r\n            }\r\n\r\n            calendarGrid.innerHTML = gridHTML;\r\n\r\n            \/\/ attach click listeners\r\n            document.querySelectorAll('.day-cell').forEach(cell => {\r\n                if (!cell.classList.contains('other-month')) {\r\n                    cell.addEventListener('click', (e) => {\r\n                        const dateStr = cell.dataset.date;\r\n                        if (!dateStr) return;\r\n                        const [y, m, d] = dateStr.split('-').map(Number);\r\n                        const eventsForDay = getEventsForDate(y, m-1, d);\r\n\r\n                        const dateObj = new Date(y, m-1, d);\r\n                        const label = dateObj.toLocaleDateString('en-US', { year: 'numeric', month: 'long', day: 'numeric' });\r\n                        selectedDateLabel.textContent = label;\r\n\r\n                        if (eventsForDay.length === 0) {\r\n                            eventDetailsContent.innerHTML = `<div class=\"no-event\">\u2728 No exhibitions on this day.<\/div>`;\r\n                        } else {\r\n                            let htmlStr = '';\r\n                            eventsForDay.forEach(ev => {\r\n                                const startStr = ev.startDate.toLocaleDateString('en-US', { month: 'short', day: 'numeric' });\r\n                                const endStr = ev.endDate.toLocaleDateString('en-US', { month: 'short', day: 'numeric' });\r\n                                let range = (ev.start === ev.end) ? startStr : `${startStr} \u2013 ${endStr}`;\r\n                                htmlStr += `\r\n                                    <div class=\"event-item\">\r\n                                        <div class=\"event-name\">\ud83d\udccc ${ev.name}<\/div>\r\n                                        <div class=\"event-desc\">${ev.description}<\/div>\r\n                                        <div class=\"event-date\">\ud83d\udcc5 ${range}<\/div>\r\n                                    <\/div>\r\n                                `;\r\n                            });\r\n                            eventDetailsContent.innerHTML = htmlStr;\r\n                        }\r\n                    });\r\n                }\r\n            });\r\n        }\r\n\r\n        function changeMonth(delta) {\r\n            currentDate.setMonth(currentDate.getMonth() + delta);\r\n            renderCalendar(currentDate);\r\n            selectedDateLabel.textContent = '';\r\n            eventDetailsContent.innerHTML = `<div class=\"no-event\">\ud83d\udc48 Click any highlighted day to see exhibitions<\/div>`;\r\n        }\r\n\r\n        renderCalendar(currentDate);\r\n        prevBtn.addEventListener('click', () => changeMonth(-1));\r\n        nextBtn.addEventListener('click', () => changeMonth(1));\r\n    })();\r\n<\/script>\r\n<\/body>\r\n<\/html>\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<div class=\"wd-negative-gap elementor-element elementor-element-cff878e e-flex e-con-boxed e-con e-parent\" data-id=\"cff878e\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5347b53 elementor-widget elementor-widget-wd_text_block\" data-id=\"5347b53\" data-element_type=\"widget\" data-widget_type=\"wd_text_block.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"wd-text-block reset-last-child text-left\">\n\t\t\t\n\t\t\t<p class=\"ds-markdown-paragraph\">Plan your business trips and networking with the\u00a0<strong>Uzbekistan Exhibitions 2026 Interactive Calendar<\/strong>\u00a0\u2013 the ultimate tool for professionals seeking a complete, up\u2011to\u2011date schedule of trade fairs, industry events, and expos across Tashkent and Uzbekistan. This user\u2011friendly calendar displays\u00a0<strong>50+ exhibitions<\/strong>\u00a0including UzBuild, CAITME, AgroWorld, Texworld Tashkent, UzMedExpo, and many more.<\/p><p class=\"ds-markdown-paragraph\"><strong>How to use:<\/strong><\/p><ul><li><p class=\"ds-markdown-paragraph\">Navigate through months using the arrow buttons.<\/p><\/li><li><p class=\"ds-markdown-paragraph\"><strong>Highlighted days<\/strong>\u00a0indicate one or more exhibitions \u2013 just click on any colored date.<\/p><\/li><li><p class=\"ds-markdown-paragraph\">A detailed panel instantly shows the\u00a0<strong>exhibition name, description, and date range<\/strong>\u00a0for that day.<\/p><\/li><li><p class=\"ds-markdown-paragraph\">Perfect for exhibitors, visitors, and industry professionals looking to optimize their 2026 expo schedule.<\/p><\/li><\/ul><p class=\"ds-markdown-paragraph\"><strong>Why this calendar?<\/strong><br \/>\u2705 Comprehensive \u2013 all major Uzbekistan exhibitions in one place<br \/>\u2705 Clean, mobile\u2011friendly design<br \/>\u2705 Fast, interactive \u2013 no page reloads<br \/>\u2705 English interface for international users<\/p><p class=\"ds-markdown-paragraph\">Bookmark this page and never miss a key exhibition in Tashkent \u2013 your gateway to Central Asian markets.<\/p>\n\t\t\t\t\t<\/div>\n\t\t\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>","protected":false},"excerpt":{"rendered":"<p>55 exhibitions loaded from Uzbekistan 2026 calendar.<\/p>","protected":false},"author":15,"featured_media":16604,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[758],"tags":[844],"class_list":["post-16599","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-exhibitions","tag-uzbekistan"],"_links":{"self":[{"href":"https:\/\/tendify.net\/ar\/wp-json\/wp\/v2\/posts\/16599","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tendify.net\/ar\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tendify.net\/ar\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tendify.net\/ar\/wp-json\/wp\/v2\/users\/15"}],"replies":[{"embeddable":true,"href":"https:\/\/tendify.net\/ar\/wp-json\/wp\/v2\/comments?post=16599"}],"version-history":[{"count":5,"href":"https:\/\/tendify.net\/ar\/wp-json\/wp\/v2\/posts\/16599\/revisions"}],"predecessor-version":[{"id":16607,"href":"https:\/\/tendify.net\/ar\/wp-json\/wp\/v2\/posts\/16599\/revisions\/16607"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tendify.net\/ar\/wp-json\/wp\/v2\/media\/16604"}],"wp:attachment":[{"href":"https:\/\/tendify.net\/ar\/wp-json\/wp\/v2\/media?parent=16599"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tendify.net\/ar\/wp-json\/wp\/v2\/categories?post=16599"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tendify.net\/ar\/wp-json\/wp\/v2\/tags?post=16599"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}