Sid Gifari File Manager
🏠 Root
/
home
/
genremedia08
/
thepassage.overlookedtracks.com
/
wp-content9
/
plugins
/
echo-knowledge-base
/
js
/
ai
/
Editing: admin-ai-app.min.js
(function(){"use strict";const{useState:e,useEffect:a,useCallback:t,createElement:s}=wp.element;const{__:n}=wp.i18n;const{showError:o,showSuccess:i,makeApiRequest:r}=window.EPKB_AI_Util_React||{};const{AIAdminDashboard:c}=window.EPKB_AI_Dashboard||{};const{AIAdminGeneralSettings:d}=window.EPKB_AI_GeneralSettings||{};const{AIAdminChat:l}=window.EPKB_AI_Chat||{};const{AIAdminSearch:b}=window.EPKB_AI_Search||{};const{AIAdminTrainingData:u}=window.EPKB_AI_TrainingData||{};const{AIAdminTools:p}=window.EPKB_AI_Tools||{};const{AIAdminPROFeatures:m}=window.EPKB_AI_PROFeatures||{};const{AIAdminContentAnalysis:w}=window.EPKB_AI_ContentAnalysis||{};const h=({setActiveTab:e})=>{const a=window.location.href.split("page=")[0];const t=a+"page=epkb-kb-ai-features&active_tab=general-settings";return s("div",{className:"epkb-ai-api-key-missing",style:{backgroundColor:"#fee",border:"1px solid #c33",borderRadius:"4px",padding:"15px",margin:"20px 0"}},s("div",{className:"epkb-ai-error-box",style:{display:"flex",alignItems:"center"}},s("span",{className:"epkbfa epkbfa-exclamation-triangle",style:{color:"#c33",marginRight:"10px",fontSize:"24px"}}),s("div",{className:"epkb-ai-error-content"},s("h4",{style:{margin:"0 0 10px 0",color:"#c33"}},n("API Key Required","echo-knowledge-base")),s("p",{style:{margin:"0 0 10px 0"}},n("To use AI features, you need to configure your API key.","echo-knowledge-base")),s("a",{href:t,className:"epkb-ai-button epkb-ai-button-primary",onClick:a=>{a.preventDefault();e("general-settings");const t=new URL(window.location);t.searchParams.set("active_tab","general-settings");window.history.pushState({},"",t)}},n("Configure API Key","echo-knowledge-base")))))};const g=({settings:h})=>{const g=new URL(window.location);const _=h.active_tab||"dashboard";if(!g.searchParams.has("active_sub_tab")){const e=h.tabs_data?.[_];const a=e?.sub_tabs&&Object.values(e.sub_tabs)[0];if(a){g.searchParams.set("active_sub_tab",a.id);window.history.replaceState({},"",g)}}const[f,k]=e(_);const[y,v]=e(h.tabs_data||{});const[A,P]=e({});const[x,I]=e(false);const[S,E]=e(false);const N=y?.["general-settings"]?.ai_config;const C=N?.ai_provider==="gemini"?Boolean(N?.ai_gemini_key):Boolean(N?.ai_chatgpt_key);a(()=>{if(f!=="dashboard"){return}if(x)return;if(!y?.dashboard){return}if(y.dashboard.load_error){return}if(y?.dashboard?.status){I(true);const e=y.dashboard.status.issues&&y.dashboard.status.issues.length>0;E(e);return}const e=h.tabs?.find(e=>e.key==="dashboard");if(!e?.check_status)return;const a=async()=>{try{const e=await jQuery.ajax({url:h.ajax_url,type:"POST",data:{action:"epkb_get_ai_status",force_refresh:"true",_wpnonce_epkb_ajax_action:h.ajax_nonce}});if(e.success&&e.data){v(a=>({...a,dashboard:{...a.dashboard,status:e.data}}));const a=e.data.issues&&e.data.issues.length>0;E(a);I(true)}}catch(e){console.error("Failed to load AI status:",e)}};setTimeout(a,2e3)},[f,x,y,h]);const B=t(async e=>{P(a=>({...a,[e]:true}));try{const a=await r(`ai/${e}`,{method:"GET"});if(a.success){v(t=>({...t,[e]:a.data}));if(e==="dashboard"){I(false)}}}catch(a){if(o){o(a.message||n("Failed to load tab data","echo-knowledge-base"))}else{console.error(a)}if(e==="dashboard"){v(a=>({...a,[e]:a[e]||{load_error:true}}))}}finally{P(a=>({...a,[e]:false}))}},[r,o]);a(()=>{if(f!=="dashboard"){return}if(A.dashboard){return}const e=y?.dashboard;if(e&&(e.dashboard_stats||e.load_error)){return}B("dashboard")},[f,y,A,B]);const L=e=>{const a=y[e.key]||{};const t=!!A[e.key];if(e.key==="dashboard"&&a.load_error){return s("div",{className:"epkb-ai-loading-container"},s("div",{className:"epkb-ai-loading"},n("Failed to load dashboard data. Please reload the page.","echo-knowledge-base")))}if(e.key==="dashboard"&&(t||!y[e.key]||!a.dashboard_stats)){return s("div",{className:"epkb-ai-loading-container"},s("div",{className:"epkb-loading-spinner"}),s("div",{className:"epkb-ai-loading"},n("Loading Dashboard...","echo-knowledge-base")))}if(a.ai_disabled){return s("div",{className:"epkb-ai-disabled-content"},s("div",{className:"epkb-ai-notice epkb-ai-notice-warning",style:{padding:"12px 15px",marginBottom:"20px",borderLeft:"4px solid #ffba00",backgroundColor:"#fff8e5"}},s("p",{style:{margin:"0"}},s("span",{className:"dashicons dashicons-info",style:{marginRight:"8px",color:"#ffba00"}}),a.instructions||(e.key==="training-data"?n("To use Training Data, please enable either AI Chat or AI Search in their respective tabs.","echo-knowledge-base"):n("To use AI features, please configure your API key and accept the data privacy agreement in General Settings, then enable AI Search or AI Chat.","echo-knowledge-base"))," ",s("a",{href:"#",onClick:e=>{e.preventDefault();k("general-settings");const a=new URL(window.location);a.searchParams.set("active_tab","general-settings");window.history.pushState({},"",a)},style:{fontWeight:"bold",textDecoration:"underline"}},n("Go to General Settings","echo-knowledge-base")))),s("div",{className:"epkb-ai-features-promo",style:{marginTop:"20px",textAlign:"center"}},s("img",{src:"https://www.echoknowledgebase.com/wp-content/uploads/2025/08/AI-Pro-Features-List.jpg",alt:n("AI Features","echo-knowledge-base"),style:{maxWidth:"100%",height:"auto",borderRadius:"8px",boxShadow:"0 2px 8px rgba(0, 0, 0, 0.1)"}})))}const g={settings:h,tabData:a,isLoading:t,hasApiKey:C,makeApiRequest:r,showError:o,showSuccess:i,onDataChange:a=>{v(t=>({...t,[e.key]:{...t[e.key],...a}}))},onRefresh:()=>B(e.key)};switch(e.key){case"dashboard":return s(c,{...g,onTabSwitch:e=>{k(e);const a=new URL(window.location);a.searchParams.set("active_tab",e);window.history.pushState({},"",a)}});case"content-analysis":return s(w,{...g,onTabSwitch:e=>{k(e);const a=new URL(window.location);a.searchParams.set("active_tab",e);window.history.pushState({},"",a)}});case"general-settings":return s(d,{...g,onTabSwitch:e=>{k(e);const a=new URL(window.location);a.searchParams.set("active_tab",e);window.history.pushState({},"",a)}});case"chat":return s(l,{...g,onTabSwitch:e=>{k(e);const a=new URL(window.location);a.searchParams.set("active_tab",e);window.history.pushState({},"",a)}});case"search":return s(b,{...g,onTabSwitch:e=>{k(e);const a=new URL(window.location);a.searchParams.set("active_tab",e);window.history.pushState({},"",a)}});case"training-data":return s(u,{...g,selectedCollection:O,onTabSwitch:e=>{k(e);const a=new URL(window.location);a.searchParams.set("active_tab",e);window.history.pushState({},"",a)}});case"tools":return s(p,g);case"pro-features":return s(m,g);default:return s("div",null,n("Unknown tab","echo-knowledge-base"))}};const R=h.tabs&&h.tabs.length>0?h.tabs.map(e=>({name:e.key,title:e.title,className:`epkb-ai-tab-${e.key}`,icon:e.icon,has_issues:e.key==="dashboard"?S:false,requires_ai:e.requires_ai||false,is_disabled:e.requires_ai&&!h.ai_enabled})):[];if(R.length===0){return s("div",{className:"epkb-ai-admin-app"},s("div",{className:"epkb-ai-admin-error"},s("h1",null,n("AI Configuration","echo-knowledge-base")),s("p",null,n("Error: No tabs configured. Please check the configuration.","echo-knowledge-base"))))}const[T,K]=e(false);const[O,U]=e(null);const[D,j]=e(false);const $=y["training-data"]?.data_collections||[];const z=e=>{U(e);K(false);k("training-data");const a=new URL(window.location);a.searchParams.set("active_tab","training-data");a.searchParams.set("collection_id",e.id);window.history.pushState({},"",a)};const F=async()=>{if(D)return;j(true);try{let e=0;$.forEach(a=>{const t=a.name.match(/(\d+)$/);if(t){e=Math.max(e,parseInt(t[1]))}});const a=e+1;const t=n("Data Collection","echo-knowledge-base")+" "+a;const s=await r("training-collections",{method:"POST",data:{name:t,post_types:[]}});if(s.success){i(n("New training data collection created","echo-knowledge-base"));setTimeout(()=>{window.location.reload()},1e3)}else{o(s.message||n("Failed to create collection","echo-knowledge-base"));j(false)}}catch(e){o(e.message||n("Failed to create collection","echo-knowledge-base"));j(false)}};a(()=>{const e=e=>{if(!e.target.closest(".epkb-ai-training-data-dropdown")){K(false)}};if(T){document.addEventListener("click",e);return()=>document.removeEventListener("click",e)}},[T]);return s("div",{className:"epkb-ai-admin-app"},s("div",{className:"epkb-ai-admin-header"}),s("div",{className:"epkb-ai-custom-tabs"},window.EPKB_AI_SyncContext&&window.EPKB_AI_SyncContext.Consumer?s(window.EPKB_AI_SyncContext.Consumer,null,e=>s("div",{className:"epkb-ai-tabs-nav"},s("div",{className:"epkb-ai-tabs-regular"},R.filter(e=>e.name!=="pro-features").map(e=>s("button",{key:e.name,id:e.name==="dashboard"?"epkb-ai-dashboard-tab-button":undefined,className:`epkb-ai-tab-button ${e.className} ${f===e.name?"active":""} ${e.is_disabled?"disabled":""}`,onClick:async()=>{k(e.name);const a=new URL(window.location);a.searchParams.set("active_tab",e.name);const t=y[e.name]?.sub_tabs&&Object.values(y[e.name].sub_tabs)[0];if(t){a.searchParams.set("active_sub_tab",t.id)}window.history.pushState({},"",a)},title:e.is_disabled?n("AI features must be enabled to access this tab","echo-knowledge-base"):"",style:e.is_disabled?{opacity:.6,cursor:"pointer"}:{}},e.icon&&s("span",{className:e.icon})," ",e.title,e.name==="content-analysis"&&s("span",{style:{marginLeft:"5px",backgroundColor:"#d54e21",color:"#fff",padding:"2px 6px",borderRadius:"3px",fontSize:"11px",fontWeight:"bold",verticalAlign:"middle"}},"BETA"),e.is_disabled&&s("span",{className:"epkbfa epkbfa-lock",style:{marginLeft:"5px",fontSize:"14px"}}),e.has_issues&&s("span",{className:"epkb-ai-tab-issue-indicator",style:{color:"#dc3545",marginLeft:"5px",fontWeight:"bold",fontSize:"24px"}},"!")))),R.filter(e=>e.name==="pro-features").length>0&&s("div",{className:"epkb-ai-tabs-pro"},R.filter(e=>e.name==="pro-features").map(e=>s("button",{key:e.name,className:`epkb-ai-tab-button epkb-ai-tab-button-pro ${f===e.name?"active":""}`,onClick:async()=>{k(e.name);const a=new URL(window.location);a.searchParams.set("active_tab",e.name);const t=y[e.name]?.sub_tabs&&Object.values(y[e.name].sub_tabs)[0];if(t){a.searchParams.set("active_sub_tab",t.id)}window.history.pushState({},"",a)}},e.icon&&s("span",{className:e.icon})," ",e.title))))):s("div",{className:"epkb-ai-tabs-nav"},s("div",{className:"epkb-ai-tabs-regular"},R.filter(e=>e.name!=="pro-features").map(e=>s("button",{key:e.name,id:e.name==="dashboard"?"epkb-ai-dashboard-tab-button":undefined,className:`epkb-ai-tab-button ${e.className} ${f===e.name?"active":""} ${e.is_disabled?"disabled":""}`,onClick:async()=>{k(e.name);const a=new URL(window.location);a.searchParams.set("active_tab",e.name);const t=y[e.name]?.sub_tabs&&Object.values(y[e.name].sub_tabs)[0];if(t){a.searchParams.set("active_sub_tab",t.id)}window.history.pushState({},"",a)},title:e.is_disabled?n("AI features must be enabled to access this tab","echo-knowledge-base"):"",style:e.is_disabled?{opacity:.6,cursor:"pointer"}:{}},e.icon&&s("span",{className:e.icon})," ",e.title,e.name==="content-analysis"&&s("span",{style:{marginLeft:"5px",backgroundColor:"#d54e21",color:"#fff",padding:"2px 6px",borderRadius:"3px",fontSize:"11px",fontWeight:"bold",verticalAlign:"middle"}},"BETA"),e.is_disabled&&s("span",{className:"epkbfa epkbfa-lock",style:{marginLeft:"5px",fontSize:"14px"}}),e.has_issues&&s("span",{className:"epkb-ai-tab-issue-indicator",style:{color:"#dc3545",marginLeft:"5px",fontWeight:"bold",fontSize:"24px"}},"!")))),R.filter(e=>e.name==="pro-features").length>0&&s("div",{className:"epkb-ai-tabs-pro"},R.filter(e=>e.name==="pro-features").map(e=>s("button",{key:e.name,className:`epkb-ai-tab-button epkb-ai-tab-button-pro ${f===e.name?"active":""}`,onClick:async()=>{k(e.name);const a=new URL(window.location);a.searchParams.set("active_tab",e.name);const t=y[e.name]?.sub_tabs&&Object.values(y[e.name].sub_tabs)[0];if(t){a.searchParams.set("active_sub_tab",t.id)}window.history.pushState({},"",a)}},e.icon&&s("span",{className:e.icon})," ",e.title)))),window.EPKB_AI_SyncProgressBar&&window.EPKB_AI_SyncContext&&s(window.EPKB_AI_SyncContext.Consumer,null,e=>{if(!e||!e.job||e.job.status==="idle"){return null}if(f!=="training-data"){return null}return s("div",{className:"epkb-ai-sync-message-container",style:{position:"relative",zIndex:10}},s(window.EPKB_AI_SyncProgressBar))}),window.EPKB_AI_ContentAnalysisProgressBar&&window.EPKB_AI_ContentAnalysisSyncContext&&s(window.EPKB_AI_ContentAnalysisSyncContext.Consumer,null,e=>{if(!e||!e.analysisJob||e.analysisJob.status==="idle"){return null}if(f!=="content-analysis"){return null}const a=window.EPKB_AI_ContentAnalysis?.activeSubTab;if(a&&typeof a==="string"&&a.startsWith("improve-")){return null}return s("div",{className:"epkb-ai-sync-message-container",style:{position:"relative",zIndex:10}},s(window.EPKB_AI_ContentAnalysisProgressBar))}),s("div",{className:"epkb-ai-tab-content"},L({key:f,selectedCollection:O}))))};document.addEventListener("DOMContentLoaded",function(){const e=document.getElementById("epkb-ai-admin-react-root");if(e){const a=JSON.parse(e.dataset.epkbAiSettings||"{}");const t=document.getElementById("epkb-ai-initial-loader");if(t){setTimeout(()=>{t.style.display="none"},100)}const n=window.EPKB_AI_SyncProvider;const o=window.EPKB_AI_ContentAnalysisSyncProvider;const i=s(g,{settings:a});let r=i;if(n){r=s(n,null,r);window.__EPKB_AI_HAS_TOP_LEVEL_SYNC_PROVIDER__=true}if(o){window.__EPKB_AI_HAS_TOP_LEVEL_CONTENT_ANALYSIS_PROVIDER__=true;r=s(o,null,r)}if(wp.element.createRoot){const a=wp.element.createRoot(e);a.render(r)}else{const{render:a}=wp.element;a(r,e)}}});window.showEPKBAILoadingOverlay=function(e=null){let a=document.getElementById("epkb-ai-reload-overlay");if(!a){a=document.createElement("div");a.id="epkb-ai-reload-overlay";a.style.cssText="position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 999999; background: white; padding: 30px; border-radius: 8px; border: 3px solid #2271b1; box-shadow: 0 4px 20px rgba(0,0,0,0.25); min-width: 200px; text-align: center;";a.innerHTML=`\n\t\t\t\t<div class="epkb-ai-loading-container" style="margin: 0;">\n\t\t\t\t\t<div class="epkb-loading-spinner" style="margin: 0 auto 15px;"></div>\n\t\t\t\t\t<div class="epkb-ai-loading" id="epkb-ai-reload-message" style="margin: 0; font-size: 14px; color: #555;">${e||n("Reloading page...","echo-knowledge-base")}</div>\n\t\t\t\t</div>\n\t\t\t`;document.body.appendChild(a)}else{if(e){const a=document.getElementById("epkb-ai-reload-message");if(a){a.textContent=e}}a.style.display="block"}};window.addEventListener("beforeunload",function(e){if(!e.defaultPrevented&&window.epkbAIPageInteracted){window.showEPKBAILoadingOverlay()}});window.epkbAIPageInteracted=false;setTimeout(()=>{window.epkbAIPageInteracted=true},1e3);window.EPKB_AI_App={AIAdminApp:g}})();
Save
Cancel