feat: 统一文件上传接口 + 模板图片展示 + 导航页 + 侧边栏调整

This commit is contained in:
admin
2026-07-10 20:43:02 +08:00
parent cbd0430452
commit ce6823e282
25 changed files with 933 additions and 166 deletions

View File

@@ -713,7 +713,8 @@ function renderFeat(){
return `<div class="feat-card" data-id="${r.id}">
<div class="feat-cover">
<div class="grad" style="background:${gradStyle(r.category_name)}"></div>
<div class="ico">${iconSvg(ic,64)}</div>
${r.cover?`<img src="${esc(r.cover)}" style="position:absolute;inset:0;width:100%;height:100%;object-fit:cover" onerror="this.style.display='none';this.parentNode.querySelector('.ico').style.display=''">`:''}
<div class="ico" style="${r.cover?'display:none':''}">${iconSvg(ic,64)}</div>
<span class="feat-badge">Featured</span>
</div>
<div class="feat-body">
@@ -749,8 +750,9 @@ function renderList(){
return `<div class="r-card" data-id="${r.id}">
<div class="r-logo">
<div class="grad" style="background:${gradStyle(r.category_name)}"></div>
${r.logo?`<img src="${esc(r.logo)}" style="position:absolute;inset:0;width:100%;height:100%;object-fit:cover" onerror="this.style.display='none';this.parentNode.querySelector('.ico').style.display=''">`:''}
<div class="gframe"></div>
<div class="ico">${iconSvg(ic,46)}</div>
<div class="ico" style="${r.logo?'display:none':''}">${iconSvg(ic,46)}</div>
</div>
<div class="r-info">
<div class="r-top">
@@ -882,7 +884,8 @@ function renderDetail(data){
<div class="m-h-top">
<div class="m-logo">
<div class="grad" style="background:${gradStyle(r.category_name)}"></div>
<div class="ico">${iconSvg(ic,40)}</div>
${r.logo?`<img src="${esc(r.logo)}" style="position:absolute;inset:0;width:100%;height:100%;object-fit:cover" onerror="this.style.display='none';this.parentNode.querySelector('.ico').style.display=''">`:''}
<div class="ico" style="${r.logo?'display:none':''}">${iconSvg(ic,40)}</div>
</div>
<div class="m-h-info">
<div class="m-name">${esc(r.name)}</div>
@@ -923,7 +926,8 @@ function renderItem(it, ic){
return `<div class="m-item" data-id="${it.id}">
<div class="m-item-img">
<div class="grad" style="background:${gradStyle(state.menuCache[state.currentRid]?.restaurant?.category_name)}"></div>
<div class="ico">${iconSvg(ic,36)}</div>
${it.image?`<img src="${esc(it.image)}" style="position:absolute;inset:0;width:100%;height:100%;object-fit:cover" onerror="this.style.display='none';this.parentNode.querySelector('.ico').style.display=''">`:''}
<div class="ico" style="${it.image?'display:none':''}">${iconSvg(ic,36)}</div>
</div>
<div class="m-item-info">
<div class="m-item-name">${esc(it.name)}</div>