{"id":384245,"date":"2023-06-05T09:09:57","date_gmt":"2023-06-05T01:09:57","guid":{"rendered":"https:\/\/www.engeniustech.com\/jp\/downloads-2\/"},"modified":"2024-08-15T17:03:55","modified_gmt":"2024-08-15T09:03:55","slug":"downloads-2","status":"publish","type":"page","link":"https:\/\/www.engeniustech.com\/jp\/downloads\/","title":{"rendered":"\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u30bb\u30f3\u30bf\u30fc"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"384245\" class=\"elementor elementor-384245 elementor-318383\" data-elementor-post-type=\"page\">\n\t\t\t\t\t\t<section class=\"has_eae_slider elementor-section elementor-top-section elementor-element elementor-element-7f3f223 elementor-section-full_width elementor-section-height-min-height elementor-hidden-tablet elementor-hidden-mobile elementor-section-height-default elementor-section-items-middle\" data-eae-slider=\"33028\" data-id=\"7f3f223\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t\t\t<div class=\"elementor-background-overlay\"><\/div>\n\t\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-no\">\n\t\t\t\t\t<div class=\"has_eae_slider elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-e1a636f\" data-eae-slider=\"62427\" data-id=\"e1a636f\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-a11bb27 elementor-widget elementor-widget-heading\" data-id=\"a11bb27\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u30bb\u30f3\u30bf\u30fc<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"has_eae_slider elementor-section elementor-top-section elementor-element elementor-element-464b8d4 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-eae-slider=\"93213\" data-id=\"464b8d4\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"has_eae_slider elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-3d708a4\" data-eae-slider=\"64127\" data-id=\"3d708a4\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-ef3e413 elementor-widget elementor-widget-shortcode\" data-id=\"ef3e413\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><div id=\"product-menu-section\">\n    <p class=\"download-title\">\u88fd\u54c1\u30ab\u30c6\u30b4\u30ea\u30fc\u3067\u88fd\u54c1\u3092\u898b\u3064\u3051\u308b<\/p>\n    <div class=\"product-menu-wrap\">\n        <div id=\"product_type\">\n            <button class=\"option1\">\u30ab\u30c6\u30b4\u30ea\u30fc<\/button>\n            <ul id=\"type\" style=\"display: none;\">\n                <li data-value=\"access_point\"><span>\u5c4b\u5185\u30ef\u30a4\u30e4\u30ec\u30b9<\/span><\/li>\n                <li data-value=\"access_point2\"><span>\u5c4b\u5916\u30ef\u30a4\u30e4\u30ec\u30b9<\/span><\/li>\n                <li data-value=\"switch\"><span>\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30b9\u30a4\u30c3\u30c1<\/span><\/li>\n                <li data-value=\"gateways\"><span>VPN\u30d5\u30a1\u30a4\u30a2\u30a6\u30a9\u30fc\u30eb<\/span><\/li>\n                <li data-value=\"cameras\"><span>AI\u30ab\u30e1\u30e9<\/span><\/li>\n                <li data-value=\"pdu\"><span>\u96fb\u6e90\u5206\u914d\u30e6\u30cb\u30c3\u30c8<\/span><\/li>\n                <!--<li data-value=\"management\"><span>\u7db2\u8def\u7ba1\u7406\u5e73\u53f0<\/span><\/li>\n                <li data-value=\"accessories\"><span>\u7db2\u8def\u914d\u4ef6<\/span><\/li>\n                <li data-value=\"antenna\"><span>\u5916\u63a5\u5f0f\u5929\u7dda<\/span><\/li>-->\n                <li data-value=\"data_center\"><span>Data Center<\/span><\/li>\n            <\/ul>\n        <\/div>\n        <div id=\"product_series\">\n            <button class=\"option2\">\u30b7\u30ea\u30fc\u30ba<\/button>\n            <ul id=\"series_type\" style=\"display: none;\">\n                <li data-value=\"enGenius_cloud\"><span>EnGenius Cloud<\/span><\/li>\n                <!--<li data-value=\"enGenius_fit\"><span>EnGenius Fit<\/span><\/li>\n                <li data-value=\"eoc\"><span>Broadband Outdoor<\/span><\/li>\n                <li data-value=\"enStation_outdoors\"><span>Station Outdoor<\/span><\/li>\n                <li data-value=\"legacy_product\"><span>Legacy products<\/span><\/li>-->\n                <li data-value=\"server\"><span>DC-MHS Server<\/span><\/li>\n                <li data-value=\"smartnic\"><span>SmartNIC<\/span><\/li>\n            <\/ul>\n        <\/div>\n        <div id=\"product_model\">\n            <button class=\"option3\">\u30e2\u30c7\u30eb\u756a\u53f7<\/button>\n            <ul id=\"model_number\" style=\"display: none; max-height: 500px; overflow-y: auto;\"><\/ul>\n        <\/div>\n    <\/div>\n    <div class=\"download-divider\">\n        <div class=\"divider-text\">\u307e\u305f\u306f<\/div>\n        <div class=\"divider-line\"><\/div>\n    <\/div>\n<\/div>\n\n<script>\njQuery(document).ready(function($) {\n    const typeSelect = $('#type');\n    const seriesSelect = $('#series_type');\n    const modelNumbersSelect = $('#model_number');\n\n    let lastSelectedType = null;\n    let lastSelectedSeries = null;\n\n    \/\/ \u985e\u578b\u5c0d\u61c9\u9700\u8981\u96b1\u85cf\u7684\u7cfb\u5217\n    const seriesFilterMap = {\n        access_point: ['eoc', 'enStation_outdoors'],\n        switch: ['eoc', 'enStation_outdoors'],\n        gateways: ['eoc', 'enStation_outdoors', 'legacy_product'],\n        cameras: ['enGenius_fit', 'eoc', 'enStation_outdoors', 'legacy_product'],\n        pdu: ['enGenius_fit', 'eoc', 'enStation_outdoors', 'legacy_product'],\n        management: ['enGenius_cloud', 'enStation_outdoors', 'legacy_product']\n    };\n\n    \/\/ \u5207\u63db dropdown \u986f\u793a\n    function showMenu(menuToShow) {\n        [typeSelect, seriesSelect, modelNumbersSelect].forEach(menu => {\n            if (menu.is(menuToShow)) {\n                menu.hasClass('visible') ? menu.slideUp(500).removeClass('visible') : menu.slideDown(500).addClass('visible');\n            } else {\n                if (menu.hasClass('visible')) menu.slideUp(500).removeClass('visible');\n            }\n        });\n    }\n\n    $('.option1').on('click', () => showMenu(typeSelect));\n    $('.option2').on('click', () => showMenu(seriesSelect));\n    $('.option3').on('click', () => showMenu(modelNumbersSelect));\n\n    \/\/ \u9ede\u64ca type\n\ttypeSelect.on('click', 'li', function() {\n\t\tlastSelectedType?.removeClass('selected');\n\t\t$(this).addClass('selected');\n\t\tlastSelectedType = $(this);\n\n\t\t$('.option1').text($(this).text());\n\t\tconst selectedType = $(this).data('value');\n\n\t\tif (selectedType === 'accessories' || selectedType === 'antenna') {\n\t\t\t$('#product_series').hide();\n\t\t\ttypeSelect.slideUp(500).removeClass('visible');\n\t\t\tpopulateModelNumbers();\n\t\t\tmodelNumbersSelect.slideDown(500).addClass('visible');\n\t\t} else {\n\t\t\tseriesSelect.find('li').show();\n\n\t\t\tif (selectedType === 'data_center') {\n\t\t\t\t\/\/ Data Center \u53ea\u986f\u793a\u9019\u5169\u500b\u7cfb\u5217\n\t\t\t\tseriesSelect.find('li').hide();\n\t\t\t\tseriesSelect.find('li[data-value=\"server\"], li[data-value=\"smartnic\"]').show();\n\t\t\t} else {\n\t\t\t\t\/\/ \u5176\u4ed6\u985e\u578b\u96b1\u85cf server \/ smartnic\n\t\t\t\tseriesSelect.find('li[data-value=\"server\"], li[data-value=\"smartnic\"]').hide();\n\t\t\t\t\/\/ \u518d\u5957\u7528\u539f\u672c\u7684\u7be9\u9078\u898f\u5247\n\t\t\t\t(seriesFilterMap[selectedType] || []).forEach(val => \n\t\t\t\t\tseriesSelect.find(`li[data-value=\"${val}\"]`).hide()\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t$('#product_series').show();\n\t\t\tshowMenu(seriesSelect);\n\t\t}\n\t});\n\n    \/\/ \u9ede\u64ca series\n    seriesSelect.on('click', 'li', function() {\n        lastSelectedSeries?.removeClass('selected');\n        $(this).addClass('selected');\n        lastSelectedSeries = $(this);\n\n        $('.option2').text($(this).text());\n        const selectedSeries = $(this).data('value');\n\n        populateModelNumbers(selectedSeries);\n        seriesSelect.slideUp(500).removeClass('visible');\n    });\n\n    \/\/ \u9ede\u64ca model\n    modelNumbersSelect.on('click', 'li', function () {\n        const customUrl = $(this).data('url');\n        const postId = $(this).data('post-id');\n        if (customUrl) window.location.href = customUrl;\n        else if (postId) window.location.href = '\/jp\/download-result?post_id=' + postId;\n    });\n\n    \/\/ \u751f\u6210\u578b\u865f\u5217\u8868\n    function populateModelNumbers(selectedSeries) {\n        const selectedType = typeSelect.find('li.selected').data('value');\n        modelNumbersSelect.hide();\n\n        \/\/ \u7ba1\u7406\u5de5\u5177\u7279\u6b8a\u8655\u7406\n        if (selectedType === 'management' && selectedSeries === 'eoc') {\n            const staticModels = [\n                { label: 'SkyPoint NMS', url: '\/jp\/download-result\/skypoint\/' },\n                { label: 'SkyLink Tool', url: '\/jp\/download-result\/skylink' },\n                { label: 'SkyLocator Tool', url: '\/jp\/download-result\/skylocator' }\n            ];\n            modelNumbersSelect.html(staticModels.map(m => `<li data-url=\"${m.url}\"><span>${m.label}<\/span><\/li>`).join(''));\n            modelNumbersSelect.slideDown(500).addClass('visible');\n            return;\n        }\n\n        if (selectedType && (selectedSeries || selectedType === 'accessories' || selectedType === 'antenna')) {\n            let requestData = { action: 'dynamic_form', type: selectedType };\n            if (selectedSeries) requestData.series_type = selectedSeries;\n\n            modelNumbersSelect.html('<li><span style=\"color: red;\">Loading...<\/span><\/li>').slideDown(500).addClass('visible');\n\n            $.ajax({\n                url: '\/jp\/wp-admin\/admin-ajax.php',\n                method: 'POST',\n                data: requestData,\n                dataType: 'json',\n                success: function(response) {\n                    if (!response.length) {\n                        modelNumbersSelect.html('<li id=\"noProductMessage\"><span>Product not found.<\/span><\/li>');\n                    } else {\n                        const html = response.map(r => {\n                            const label = r.label;\n                            const value = r.value;\n                            const postId = r.postId;\n                            return `<li data-value=\"${value}\" data-post-id=\"${postId}\"><span>${value ? label + ' | ' + value : label}<\/span><\/li>`;\n                        }).join('');\n                        modelNumbersSelect.html(html);\n                    }\n                },\n                error: function(xhr, status, error) {\n                    modelNumbersSelect.html('<li><span style=\"color: red;\">Error loading products. Please try again later.<\/span><\/li>');\n                    console.error('AJAX error:', error);\n                }\n            });\n        }\n    }\n\n    \/\/ \u9ede\u64ca\u5916\u90e8\u95dc\u9589\u9078\u55ae\n    $(document).on('click', function(event) {\n        if (!$(event.target).closest('.product-menu-wrap').length) {\n            [typeSelect, seriesSelect, modelNumbersSelect].forEach(menu => menu.hasClass('visible') && menu.slideUp(500).removeClass('visible'));\n        }\n    });\n});\n<\/script>\n<\/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<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"has_eae_slider elementor-section elementor-top-section elementor-element elementor-element-a978916 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-eae-slider=\"94535\" data-id=\"a978916\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"has_eae_slider elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-526a2c8\" data-eae-slider=\"21560\" data-id=\"526a2c8\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-1144f8c elementor-widget elementor-widget-shortcode\" data-id=\"1144f8c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><div id=\"download-search-section\">\n  <p class=\"download-title\">\u88fd\u54c1\u30e2\u30c7\u30eb\u540d\/\u756a\u53f7\u3067\u691c\u7d22<\/p>\n  <form id=\"search-form\">\n    <div class=\"search-input-wrapper\">\n      <input type=\"text\" id=\"search-input\" placeholder=\"\u88fd\u54c1\u30e2\u30c7\u30eb\u540d\/\u756a\u53f7\">\n      <button type=\"button\" class=\"clear-button\"><\/button>\n    <\/div>\n    <div id=\"search-count\"><\/div>\n    <div id=\"search-results\"><\/div>\n  <\/form>\n<\/div>\n\n<script>\n  const searchInput = document.getElementById('search-input');\n  const searchForm = document.getElementById('search-form');\n  const searchResultsContainer = document.getElementById('search-results');\n  const searchCountContainer = document.getElementById('search-count');\n\n  let debounceTimer;\n\n  searchForm.addEventListener('input', function(event) {\n    clearTimeout(debounceTimer);\n\n    const keyword = searchInput.value.trim();\n\n    if (keyword === '') {\n      searchResultsContainer.innerHTML = '';\n      searchCountContainer.textContent = '';\n      return;\n    }\n\n    debounceTimer = setTimeout(() => {\n      const encodedKeyword = encodeURIComponent(keyword);\n\n      fetch(`\/jp\/wp-admin\/admin-ajax.php?action=perform_search&keyword=${encodedKeyword}`)\n        .then(response => response.json())\n        .then(data => {\n          const results = data.results;\n          const totalCount = data.total_count;\n          displaySearchResults(results, keyword, totalCount);\n        });\n    }, 300);\n  });\n\n\tsearchForm.addEventListener('submit', function(event) {\n\t  event.preventDefault();\n\t});\n\n  function displaySearchResults(results, keyword, totalCount) {\n    searchResultsContainer.innerHTML = '';\n\n    searchCountContainer.textContent = `Your search has returned ${totalCount} results.`;\n\n    if (results.length > 0) {\n      results.forEach(result => {\n        const resultItem = document.createElement('div');\n        resultItem.classList.add('search-result');\n\t\tif(result.model_number){\n\t\t\tresultItem.innerHTML = `\n\t\t\t  <a href=\"${result.permalink}\">\n\t\t\t\t<span>${highlightKeyword(result.title, keyword)}<\/span>\n\t\t\t\t<span> - ${highlightKeyword(result.model_number, keyword)}<\/span>\n\t\t\t\t<span>${highlightKeyword(result.excerpt, keyword)}<\/span>\n\t\t\t  <\/a>\n\t\t\t`;\n\t\t}else{\n\t\t\tresultItem.innerHTML = `\n\t\t\t  <a href=\"${result.permalink}\">\n\t\t\t\t<span>${highlightKeyword(result.title, keyword)}<\/span>\n\t\t\t\t<span>${highlightKeyword(result.model_number, keyword)}<\/span>\n\t\t\t\t<span>${highlightKeyword(result.excerpt, keyword)}<\/span>\n\t\t\t  <\/a>\n\t\t\t`;\n\t\t}\n\n        searchResultsContainer.appendChild(resultItem);\n      });\n    } else {\n      const noResultsMessage = document.createElement('p');\n      noResultsMessage.textContent = 'No Results Returned.';\n      searchResultsContainer.appendChild(noResultsMessage);\n    }\n  }\n\n  function highlightKeyword(text, keyword) {\n    const regex = new RegExp(keyword, 'gi');\n    return text.replace(regex, match => `<mark class=\"marked\">${match}<\/mark>`);\n  }\n\n  const clearButton = document.querySelector('.clear-button');\n\n  clearButton.addEventListener('click', function() {\n    searchInput.value = '';\n    searchResultsContainer.innerHTML = '';\n    searchCountContainer.textContent = '';\n  });\n<\/script>\n<\/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<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u30bb\u30f3\u30bf\u30fc<\/p>\n","protected":false},"author":31,"featured_media":0,"parent":0,"menu_order":51,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"content-type":"","footnotes":""},"categories":[],"tags":[],"class_list":["post-384245","page","type-page","status-publish","hentry"],"acf":{"youtube_videos":""},"pure_taxonomies":[],"_links":{"self":[{"href":"https:\/\/www.engeniustech.com\/jp\/wp-json\/wp\/v2\/pages\/384245","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.engeniustech.com\/jp\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.engeniustech.com\/jp\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.engeniustech.com\/jp\/wp-json\/wp\/v2\/users\/31"}],"replies":[{"embeddable":true,"href":"https:\/\/www.engeniustech.com\/jp\/wp-json\/wp\/v2\/comments?post=384245"}],"version-history":[{"count":0,"href":"https:\/\/www.engeniustech.com\/jp\/wp-json\/wp\/v2\/pages\/384245\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.engeniustech.com\/jp\/wp-json\/wp\/v2\/media?parent=384245"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.engeniustech.com\/jp\/wp-json\/wp\/v2\/categories?post=384245"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.engeniustech.com\/jp\/wp-json\/wp\/v2\/tags?post=384245"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}