landing page updates
This commit is contained in:
@@ -65,35 +65,6 @@
|
||||
background-clip: text;
|
||||
}
|
||||
|
||||
.hero-links {
|
||||
display: flex;
|
||||
gap: var(--space-xs);
|
||||
justify-content: center;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
.btn-primary {
|
||||
padding: var(--space-2xs) var(--space-lg);
|
||||
border-radius: var(--radius-md);
|
||||
background: var(--color-success);
|
||||
color: var(--color-white);
|
||||
font-weight: 600;
|
||||
font-size: var(--text-btn);
|
||||
text-decoration: none;
|
||||
transition: background 0.2s;
|
||||
}
|
||||
.btn-primary:hover { background: var(--color-success-hover); }
|
||||
.btn-ghost {
|
||||
padding: var(--space-2xs) var(--space-lg);
|
||||
border-radius: var(--radius-md);
|
||||
border: 1px solid var(--color-border-muted);
|
||||
color: var(--color-text);
|
||||
font-weight: 600;
|
||||
font-size: var(--text-btn);
|
||||
text-decoration: none;
|
||||
transition: border-color 0.2s, background 0.2s;
|
||||
}
|
||||
.btn-ghost:hover { border-color: var(--color-accent); background: var(--color-accent-subtle); }
|
||||
|
||||
/* Projects section */
|
||||
.projects-section {
|
||||
max-width: 1100px;
|
||||
|
||||
@@ -5,10 +5,6 @@
|
||||
<section class="hero">
|
||||
<div class="hero-inner">
|
||||
<h1>Alex Mickelson</h1>
|
||||
<div class="hero-links">
|
||||
<a href="/explore/repos" class="btn-primary">Browse All Projects</a>
|
||||
<a href="/user/login" class="btn-ghost">Sign In</a>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
|
||||
@@ -87,9 +87,10 @@
|
||||
card.href = esc(repoUrl);
|
||||
card.innerHTML = `
|
||||
<div class="repo-card-header">
|
||||
<span class="repo-icon">📦</span>
|
||||
<span class="repo-name">${esc(shortName)}</span>
|
||||
</div>
|
||||
<div class="repo-desc" style="color:#8b949e;font-size:0.85em">${esc(repoName)}</div>
|
||||
<div class="repo-desc">${esc(repoName)}</div>
|
||||
<div class="repo-commit">
|
||||
<span class="commit-dot"></span>
|
||||
<span class="commit-msg">${esc(commitMsg)}</span>
|
||||
@@ -147,9 +148,12 @@
|
||||
const description = item.querySelector('description')?.textContent || '';
|
||||
const when = pubDate ? timeAgo(pubDate) : '';
|
||||
|
||||
// Strip HTML from title for plain text display
|
||||
// Parse title HTML — Gitea only puts <a> tags in it, safe to use as innerHTML
|
||||
const titleDoc = new DOMParser().parseFromString(title, 'text/html');
|
||||
const titleText = titleDoc.body.textContent || title;
|
||||
// Preserve links but strip any unsafe tags (only <a> expected from Gitea)
|
||||
titleDoc.body.querySelectorAll('*:not(a)').forEach(el => el.replaceWith(el.textContent));
|
||||
const titleHtmlSafe = titleDoc.body.innerHTML;
|
||||
|
||||
let icon = '⚡';
|
||||
const t = titleText.toLowerCase();
|
||||
@@ -192,7 +196,7 @@
|
||||
el.innerHTML = `
|
||||
<div class="activity-op-icon">${icon}</div>
|
||||
<div class="activity-body">
|
||||
<div class="activity-headline"><a href="${esc(link)}">${esc(titleText)}</a></div>
|
||||
<div class="activity-headline">${titleHtmlSafe}</div>
|
||||
${commitsHtml}
|
||||
</div>
|
||||
<span class="activity-time">${when}</span>
|
||||
|
||||
Reference in New Issue
Block a user