mirror of
https://github.com/UNITRONIX/BetterDesk.git
synced 2026-10-26 14:30:19 +00:00
235c9c0706
Bump axios/multer and npm overrides; add safeSqlIdent and multer cleanup; harden JWT aud/iss/nbf; CSP without unsafe-eval via static protobuf build and data-bd-call delegation; ship Security Test Suite v1.2.0 and docs. Ignore generated RdClient protobuf artifacts (~40k lines) — rebuild locally with npm run protocols:rdclient. Thanks: INSOLVE (Honorary); Marco Jakobs (@jacotec); MyNameisStitch (@MyNameisStitch); Redspin (@playerumpknow); muopc (@muopc)
37 lines
1.6 KiB
HTML
37 lines
1.6 KiB
HTML
<%- include('layouts/main', {
|
|
title: typeof title !== 'undefined' ? title : 'Languages',
|
|
pageStyles: typeof pageStyles !== 'undefined' ? pageStyles : ['languages'],
|
|
pageScripts: typeof pageScripts !== 'undefined' ? pageScripts : ['languages'],
|
|
currentPage: typeof currentPage !== 'undefined' ? currentPage : 'languages',
|
|
breadcrumb: typeof breadcrumb !== 'undefined' ? breadcrumb : [{ label: 'Languages' }],
|
|
body: `
|
|
<div class="page-content" style="max-width: 1400px; margin: 0 auto;">
|
|
<div class="lang-header">
|
|
<h2>${_('languages.title')}</h2>
|
|
</div>
|
|
|
|
<div class="lang-stats-row" id="lang-stats"></div>
|
|
|
|
<div class="lang-grid" id="lang-grid">
|
|
<div style="grid-column:1/-1; text-align:center; padding:40px; color:var(--text-secondary);">
|
|
<span class="material-icons-round" style="font-size:32px; opacity:0.4;">hourglass_empty</span>
|
|
<p>${_('common.loading')}</p>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Detail overlay -->
|
|
<div class="lang-detail-overlay" id="lang-detail-overlay" data-bd-call="Languages.closeDetail" data-bd-self-only="1">
|
|
<div class="lang-detail-panel">
|
|
<div class="lang-detail-header">
|
|
<span></span>
|
|
<button class="lang-detail-close" data-bd-call="Languages.closeDetail">
|
|
<span class="material-icons-round">close</span>
|
|
</button>
|
|
</div>
|
|
<div id="lang-detail-content"></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
`
|
|
}) %>
|