Files
ComfyUI-Lora-Manager/templates/loras.html
Will Miao 6e9ed34b92 Update
2025-01-26 07:21:26 +08:00

88 lines
4.0 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<title>LoRA Management</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="/loras_static/css/style.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css">
</head>
<body>
<div class="theme-toggle" onclick="toggleTheme()">
<img src="/loras_static/images/theme-toggle.svg" alt="Theme">
</div>
<!-- 添加模态窗口 -->
<div id="loraModal" class="modal"></div>
<div id="loading-overlay" class="loading-overlay" style="display: none;">
<div class="loading-content">
<div class="loading-spinner"></div>
<div class="loading-status">Scanning Loras...</div>
<div class="progress-container">
<div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"></div>
</div>
</div>
</div>
<div class="container">
<!-- 控制栏 -->
<div class="controls">
<div class="folder-tags">
{% for folder in folders %}
<div class="tag" data-folder="{{ folder }}" onclick="toggleFolder(this)">{{ folder }}</div>
{% endfor %}
</div>
<div class="actions">
<select id="sortSelect">
<option value="name">Name</option>
<option value="date">Date</option>
<option value="size">Size</option>
</select>
<button onclick="refreshLoras()"><i class="fas fa-sync"></i> Refresh</button>
<button onclick="fetchCivitai()" class="secondary"><i class="fas fa-download"></i> Fetch</button>
</div>
</div>
<!-- Lora卡片容器 -->
<div class="card-grid" id="loraGrid">
{% for lora in loras %}
<!-- 在卡片部分更新元数据展示 -->
<div class="lora-card" data-name="{{ lora.model_name }}" data-file_name="{{ lora.file_name }}" data-folder="{{ lora.folder }}" data-meta="{{ lora.civitai | default({}) | tojson | forceescape }}">
<div class="card-preview">
<img src="{{ lora.preview_url or '/loras_static/images/no-preview.png' }}" alt="{{ lora.name }}">
<div class="card-header">
<span class="base-model-label" title="{{ lora.base_model }}">
{{ lora.base_model }}
</span>
<div class="card-actions">
<i class="fas fa-globe"
title="View on Civitai"
onclick="event.stopPropagation(); openCivitai('{{ lora.file_name }}')"></i>
<i class="fas fa-copy"
title="Copy Model Name"
onclick="event.stopPropagation(); navigator.clipboard.writeText(this.closest('.lora-card').dataset.file_name)"></i>
<i class="fas fa-trash"
title="Delete Model"
onclick="event.stopPropagation(); deleteModel('{{ lora.file_name }}')"></i>
</div>
</div>
<div class="card-footer">
<div class="model-info">
<span class="model-name">{{ lora.model_name }}</span>
</div>
<div class="card-actions">
<i class="fas fa-image"
title="Replace Preview Image"
onclick="event.stopPropagation(); replacePreview('{{ lora.file_name }}')"></i>
</div>
</div>
</div>
</div>
{% endfor %}
</div>
</div>
<script src="/loras_static/js/script.js"></script>
</body>
</html>