Compare commits
7 Commits
b9d2e57d5d
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
bfdda8a164 | ||
|
|
58e10876b4 | ||
|
|
67f279103c | ||
|
|
4d9d069cd2 | ||
|
|
4a1a7c042a | ||
|
|
f6daba165f | ||
|
|
199676800d |
@@ -7,7 +7,7 @@ on:
|
||||
|
||||
jobs:
|
||||
deploy:
|
||||
runs-on: vps-host
|
||||
runs-on: benny-vps
|
||||
steps:
|
||||
- name: Pull latest code
|
||||
run: |
|
||||
|
||||
6
app.py
6
app.py
@@ -20,10 +20,10 @@ HUB_PUSH_SECRET = os.getenv("HUB_PUSH_SECRET")
|
||||
|
||||
CONTACT = {
|
||||
"name": os.environ.get("BH_CONTACT_NAME", "Benjamin Mosley"),
|
||||
"title": os.environ.get("BH_CONTACT_TITLE", "E-Commerce Manager, United Supermarkets"),
|
||||
"title": os.environ.get("BH_CONTACT_TITLE", "Level II Technical Support, AMA TechTel"),
|
||||
"email": os.environ.get("BH_CONTACT_EMAIL", "ben@bennyshouse.net"),
|
||||
"phone": os.environ.get("BH_CONTACT_PHONE", "(806) 655 2300"),
|
||||
"city": os.environ.get("BH_CONTACT_CITY", "Canyon / Amarillo / Borger / Remote"),
|
||||
"phone": os.environ.get("BH_CONTACT_PHONE", "Contact via Email for Phone #"),
|
||||
"city": os.environ.get("BH_CONTACT_CITY", "Greater Amarillo Area"),
|
||||
"cal": os.environ.get("BH_CONTACT_CAL", "https://calendly.com/bennyshouse24/30min"),
|
||||
"link": os.environ.get("BH_CONTACT_LINK", "https://www.linkedin.com/in/benjamin-mosley-849643329/"),
|
||||
"site": os.environ.get("BH_CONTACT_SITE", "https://bennyshouse.net"),
|
||||
|
||||
Binary file not shown.
@@ -40,15 +40,15 @@
|
||||
</td>
|
||||
<td class="px-5 py-3 text-[rgb(var(--muted))]">{{ projectpost.category }}</td>
|
||||
<td class="px-5 py-3 flex flex-wrap gap-2">
|
||||
<a href="{{ url_for('view_project', slug=projectpost.slug) }}" class="btn btn-ghost border-none bg-blue-600 hover:bg-blue-700 text-white">Preview</a>
|
||||
<a href="{{ url_for('edit_project', slug=projectpost.slug) }}" class="btn btn-ghost border-none bg-yellow-500 hover:bg-yellow-600 text-white">Edit</a>
|
||||
<a href="{{ url_for('view_project', slug=projectpost.slug) }}" class="btn border-none bg-blue-600 hover:bg-blue-700 text-white">Preview</a>
|
||||
<a href="{{ url_for('edit_project', slug=projectpost.slug) }}" class="btn border-none bg-yellow-500 hover:bg-yellow-600 text-white">Edit</a>
|
||||
{% if projectpost.draft %}
|
||||
<form action="{{ url_for('publish_project', slug=projectpost.slug) }}" method="POST">
|
||||
<button type="submit" class="btn btn-ghost border-none bg-green-600 hover:bg-green-700 text-white">Publish</button>
|
||||
<button type="submit" class="btn border-none bg-green-600 hover:bg-green-700 text-white">Publish</button>
|
||||
</form>
|
||||
{% endif %}
|
||||
<form action="{{ url_for('delete_project', slug=projectpost.slug) }}" method="POST" onsubmit="return confirm('Delete this project?');">
|
||||
<button type="submit" class="btn btn-ghost border-none bg-red-600 hover:bg-red-700 text-white">Delete</button>
|
||||
<button type="submit" class="btn border-none bg-red-600 hover:bg-red-700 text-white">Delete</button>
|
||||
</form>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -92,15 +92,15 @@
|
||||
</td>
|
||||
<td class="px-5 py-3 text-[rgb(var(--muted))]">{{ blogpost.category }}</td>
|
||||
<td class="px-5 py-3 flex flex-wrap gap-2">
|
||||
<a href="{{ url_for('view_blog', slug=blogpost.slug) }}" class="btn btn-ghost border-none bg-blue-600 hover:bg-blue-700 text-white">Preview</a>
|
||||
<a href="{{ url_for('edit_blog', slug=blogpost.slug) }}" class="btn btn-ghost border-none bg-yellow-500 hover:bg-yellow-600 text-white">Edit</a>
|
||||
<a href="{{ url_for('view_blog', slug=blogpost.slug) }}" class="btn border-none bg-blue-600 hover:bg-blue-700 text-white">Preview</a>
|
||||
<a href="{{ url_for('edit_blog', slug=blogpost.slug) }}" class="btn border-none bg-yellow-500 hover:bg-yellow-600 text-white">Edit</a>
|
||||
{% if blogpost.draft %}
|
||||
<form action="{{ url_for('publish_blog', slug=blogpost.slug) }}" method="POST">
|
||||
<button type="submit" class="btn btn-ghost border-none bg-green-600 hover:bg-green-700 text-white">Publish</button>
|
||||
<button type="submit" class="btn border-none bg-green-600 hover:bg-green-700 text-white">Publish</button>
|
||||
</form>
|
||||
{% endif %}
|
||||
<form action="{{ url_for('delete_blog', slug=blogpost.slug) }}" method="POST" onsubmit="return confirm('Delete this post?');">
|
||||
<button type="submit" class="btn btn-ghost border-none bg-red-600 hover:bg-red-700 text-white">Delete</button>
|
||||
<button type="submit" class="btn border-none bg-red-600 hover:bg-red-700 text-white">Delete</button>
|
||||
</form>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
<!-- Hero -->
|
||||
<section class="text-center py-20 bg-gradient-to-br from-orange-500/20 via-rose-500/10 to-fuchsia-500/10 text-white shadow-inner">
|
||||
<h1 class="text-5xl font-extrabold mb-4">Contact Me</h1>
|
||||
<p class="text-lg opacity-90">Here’s my professional contact card — let’s connect!</p>
|
||||
<p class="text-lg opacity-90">Here’s my contact card — let’s connect!</p>
|
||||
</section>
|
||||
|
||||
<!-- vCard Section -->
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
<!-- Avatar / Photo -->
|
||||
<div class="flex-shrink-0">
|
||||
<img src="{{ url_for('static', filename='Headshot.jpg') }}" alt="{{ CONTACT.name }}"
|
||||
<img src="{{ url_for('static', filename='Headshot.jpeg') }}" alt="{{ CONTACT.name }}"
|
||||
class="w-40 h-40 rounded-full border-4 border-[rgb(var(--accent))] shadow-glass object-cover">
|
||||
</div>
|
||||
|
||||
@@ -45,7 +45,7 @@
|
||||
</div>
|
||||
|
||||
<div class="pt-4 flex flex-wrap gap-3">
|
||||
<a href="{{ CONTACT.site }}" target="_blank" class="btn btn-primary items-center">
|
||||
<a href="{{ CONTACT.site }}" target="_blank" class="btn btn-primary border-none bg-[rgb(var(--card))] hover:bg-[rgb(var(--border))]">
|
||||
<i class="fa fa-globe mr-2 text-[rgb(var(--accent))]"></i> Website
|
||||
</a>
|
||||
<a href="{{ CONTACT.link }}" target="_blank" class="btn btn-primary border-none bg-[rgb(var(--card))] hover:bg-[rgb(var(--border))]">
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
<div class="grid lg:grid-cols-[1.1fr_0.9fr] items-center gap-10">
|
||||
<div>
|
||||
<h1 class="heading-hero">
|
||||
Builder. Operator. <span class="text-accent">Problem-solver.</span>
|
||||
My name is Ben. <span class="text-accent">How can I help you?</span>
|
||||
</h1>
|
||||
<p class="mt-4 subtle max-w-2xl text-lg">
|
||||
I’m Ben — CIS student, full-stack web dev, and infrastructure tinkerer.
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
<!-- Content -->
|
||||
<div>
|
||||
<label for="content" class="block font-semibold mb-1">Post Content</label>
|
||||
<textarea id="content" name="content" required
|
||||
<textarea id="content" name="content"
|
||||
class="text-black bg-white w-full border border-gray-300 rounded px-4 py-2 leading-relaxed text-base focus:ring-2 focus:ring-orange-400 focus:outline-none resize-none overflow-hidden"
|
||||
rows="1"></textarea>
|
||||
</div>
|
||||
@@ -77,12 +77,15 @@
|
||||
|
||||
<script src="https://unpkg.com/easymde/dist/easymde.min.js"></script>
|
||||
<script>
|
||||
new EasyMDE({
|
||||
const easyMDE = new EasyMDE({
|
||||
element: document.getElementById('content'),
|
||||
spellChecker: false,
|
||||
autosave: { enabled: true, uniqueId: 'new_blog' },
|
||||
toolbar: ['bold','italic','heading','|','quote','unordered-list','ordered-list','|','link','image','|','preview','side-by-side','fullscreen','|','guide'],
|
||||
});
|
||||
document.querySelector('form').addEventListener('submit', function() {
|
||||
easyMDE.codemirror.save();
|
||||
});
|
||||
</script>
|
||||
|
||||
{% endblock %}
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
<!-- Content -->
|
||||
<div>
|
||||
<label for="content" class="block font-semibold mb-1">Post Content</label>
|
||||
<textarea id="content" name="content" required
|
||||
<textarea id="content" name="content"
|
||||
class="text-black bg-white w-full border border-gray-300 rounded px-4 py-2 leading-relaxed text-base focus:ring-2 focus:ring-orange-400 focus:outline-none resize-none overflow-hidden"
|
||||
rows="1"></textarea>
|
||||
</div>
|
||||
@@ -76,12 +76,15 @@
|
||||
|
||||
<script src="https://unpkg.com/easymde/dist/easymde.min.js"></script>
|
||||
<script>
|
||||
new EasyMDE({
|
||||
const easyMDE = new EasyMDE({
|
||||
element: document.getElementById('content'),
|
||||
spellChecker: false,
|
||||
autosave: { enabled: true, uniqueId: 'new_project' },
|
||||
toolbar: ['bold','italic','heading','|','quote','unordered-list','ordered-list','|','link','image','|','preview','side-by-side','fullscreen','|','guide'],
|
||||
});
|
||||
document.querySelector('form').addEventListener('submit', function() {
|
||||
easyMDE.codemirror.save();
|
||||
});
|
||||
</script>
|
||||
|
||||
{% endblock %}
|
||||
|
||||
Reference in New Issue
Block a user