This commit is contained in:
Flatlogic Bot 2026-02-06 17:31:09 +00:00
parent 95a1721315
commit 07824dbfb1
17 changed files with 146 additions and 22 deletions

View File

@ -177,5 +177,5 @@ if EMAIL_USE_SSL:
DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField'
LOGIN_REDIRECT_URL = 'index'
LOGOUT_REDIRECT_URL = 'index'
LOGIN_REDIRECT_URL = 'home'
LOGOUT_REDIRECT_URL = 'home'

View File

@ -81,7 +81,7 @@
<!-- Navigation -->
<nav class="navbar navbar-expand-lg navbar-light bg-white sticky-top shadow-sm">
<div class="container">
<a class="navbar-brand d-flex align-items-center" href="{% url 'index' %}">
<a class="navbar-brand d-flex align-items-center" href="{% url 'home' %}">
<i class="bi bi-shop-window me-2 text-primary"></i>
Jimma Market
</a>
@ -188,7 +188,7 @@
<li class="mb-2"><a href="{% url 'about_us' %}" class="text-muted text-decoration-none">{% trans "About Us" %}</a></li>
<li class="mb-2"><a href="{% url 'contact_us' %}" class="text-muted text-decoration-none">{% trans "Contact Support" %}</a></li>
<li class="mb-2"><a href="{% url 'delivery_info' %}" class="text-muted text-decoration-none">{% trans "Delivery Info" %}</a></li>
<li class="mb-2"><a href="{% url 'seller_info' %}" class="text-muted text-decoration-none">{% trans "Sell on Jimma" %}</a></li>
<li class="mb-2"><a href="{% url 'project_log' %}" class="text-muted text-decoration-none">{% trans "Project Log" %}</a></li>
</ul>
</div>
<div class="col-lg-4">
@ -209,7 +209,7 @@
<p class="text-muted mb-0 small">&copy; 2026 Jimma Market. {% trans "All rights reserved." %}</p>
</div>
<div class="col-md-6 text-center text-md-end">
<p class="text-muted mb-0 small">{% trans "Built by" %} <a href="https://github.com/Osman-1234" target="_blank" class="text-primary text-decoration-none fw-bold">Bilal</a></p>
<p class="text-muted mb-0 small">{% trans "Built by" %} <a href="https://github.com/Osman-1234" target="_blank" class="text-primary text-decoration-none fw-bold">Bilal</a> | <a href="{% url 'project_log' %}" class="text-muted text-decoration-none">v1.1.0</a></p>
</div>
</div>
</div>
@ -219,4 +219,4 @@
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script>
{% block extra_js %}{% endblock %}
</body>
</html>
</html>

View File

@ -12,7 +12,7 @@
<header class="mb-5 text-center">
<nav aria-label="breadcrumb">
<ol class="breadcrumb justify-content-center mb-4">
<li class="breadcrumb-item"><a href="{% url 'index' %}" class="text-decoration-none">Home</a></li>
<li class="breadcrumb-item"><a href="{% url 'home' %}" class="text-decoration-none">Home</a></li>
<li class="breadcrumb-item"><a href="{% url 'article_list' %}" class="text-decoration-none">Blog</a></li>
<li class="breadcrumb-item active" aria-current="page">{{ article.title|truncatechars:30 }}</li>
</ol>

View File

@ -53,7 +53,7 @@
</div>
<h3>No articles found</h3>
<p class="text-muted">Check back later for new updates and stories from Jimma Market.</p>
<a href="{% url 'index' %}" class="btn btn-primary rounded-pill px-4">Return Home</a>
<a href="{% url 'home' %}" class="btn btn-primary rounded-pill px-4">Return Home</a>
</div>
{% endfor %}
</div>

View File

@ -8,7 +8,7 @@
<div class="container">
<nav aria-label="breadcrumb" class="mb-4">
<ol class="breadcrumb">
<li class="breadcrumb-item"><a href="{% url 'index' %}" class="text-decoration-none">{% trans "Home" %}</a></li>
<li class="breadcrumb-item"><a href="{% url 'home' %}" class="text-decoration-none">{% trans "Home" %}</a></li>
<li class="breadcrumb-item"><a href="{% url 'product_list' %}" class="text-decoration-none">{% trans "Shop" %}</a></li>
<li class="breadcrumb-item active" aria-current="page">{{ category.name }}</li>
</ol>

View File

@ -252,4 +252,4 @@
box-shadow: 0 1rem 3rem rgba(0,0,0,.1) !important;
}
</style>
{% endblock %}
{% endblock %}

View File

@ -39,7 +39,7 @@
</p>
<div class="d-grid gap-3">
<a href="{% url 'index' %}" class="btn btn-primary btn-lg rounded-pill">{% trans "Continue Shopping" %}</a>
<a href="{% url 'home' %}" class="btn btn-primary btn-lg rounded-pill">{% trans "Continue Shopping" %}</a>
{% if not user.is_authenticated %}
<a href="{% url 'admin:index' %}" class="btn btn-link text-secondary text-decoration-none small">
{% trans "Create an account to track your orders" %}

View File

@ -8,7 +8,7 @@
<div class="container">
<nav aria-label="breadcrumb" class="mb-4">
<ol class="breadcrumb">
<li class="breadcrumb-item"><a href="{% url 'index' %}" class="text-decoration-none">{% trans "Home" %}</a></li>
<li class="breadcrumb-item"><a href="{% url 'home' %}" class="text-decoration-none">{% trans "Home" %}</a></li>
<li class="breadcrumb-item"><a href="{% url 'category_products' product.category.slug %}" class="text-decoration-none">{{ product.category.name }}</a></li>
<li class="breadcrumb-item active" aria-current="page">{{ product.name }}</li>
</ol>

View File

@ -0,0 +1,89 @@
{% extends 'base.html' %}
{% load i18n static %}
{% block title %}{% trans "Project Log & Version History" %} | Jimma Market{% endblock %}
{% block content %}
<!-- Hero Section -->
<section class="bg-primary text-white py-5 mb-5">
<div class="container text-center">
<h1 class="display-4 fw-bold mb-3">{% trans "Project Log" %}</h1>
<p class="lead mb-0">{% trans "Tracking our progress and commitment to improving Jimma Market." %}</p>
<div class="mt-4">
<span class="badge bg-white text-primary px-3 py-2 fs-6 rounded-pill">
{% trans "Current Version" %}: v{{ current_version }}
</span>
</div>
</div>
</section>
<div class="container mb-5">
<div class="row justify-content-center">
<div class="col-lg-8">
<!-- Timeline -->
<div class="timeline">
{% for log in logs %}
<div class="card border-0 shadow-sm mb-4">
<div class="card-body p-4">
<div class="d-flex justify-content-between align-items-center mb-3">
<h3 class="h4 fw-bold mb-0 text-primary">v{{ log.version }}</h3>
<span class="text-muted small"><i class="bi bi-calendar3 me-1"></i> {{ log.date }}</span>
</div>
<h5 class="fw-bold mb-3">{{ log.description }}</h5>
<ul class="list-group list-group-flush bg-transparent">
{% for change in log.changes %}
<li class="list-group-item bg-transparent border-0 ps-0 d-flex">
<i class="bi bi-check2-circle text-success me-3 mt-1"></i>
<span>{{ change }}</span>
</li>
{% endfor %}
</ul>
</div>
</div>
{% endfor %}
</div>
<!-- Future Roadmap (Optional Placeholder) -->
<div class="mt-5 p-4 bg-light rounded-4 border">
<h4 class="fw-bold mb-3"><i class="bi bi-rocket-takeoff me-2 text-primary"></i>{% trans "Future Roadmap" %}</h4>
<p class="text-muted mb-0">
{% trans "We're constantly working on new features including automated delivery dispatch, integrated payment gateways (Telebirr/CBE Birr), and a dedicated mobile app for vendors." %}
</p>
</div>
</div>
</div>
</div>
<style>
.timeline .card {
position: relative;
transition: all 0.3s ease;
}
.timeline .card:hover {
transform: scale(1.01);
box-shadow: 0 .5rem 1rem rgba(0,0,0,.1) !important;
}
.timeline .card::before {
content: '';
position: absolute;
left: -1rem;
top: 2rem;
width: 0.5rem;
height: 0.5rem;
background-color: var(--bs-primary);
border-radius: 50%;
display: none;
}
@media (min-width: 992px) {
.timeline {
border-left: 2px solid #dee2e6;
padding-left: 2rem;
margin-left: 1rem;
}
.timeline .card::before {
display: block;
left: -2.3rem;
}
}
</style>
{% endblock %}

View File

@ -52,7 +52,7 @@
</div>
</div>
<div class="text-center mt-4">
<a href="{% url 'index' %}" class="text-secondary text-decoration-none small">
<a href="{% url 'home' %}" class="text-secondary text-decoration-none small">
<i class="bi bi-arrow-left me-1"></i> {% trans "Back to Home" %}
</a>
</div>

View File

@ -45,7 +45,7 @@
</div>
</div>
<div class="text-center mt-4">
<a href="{% url 'index' %}" class="text-secondary text-decoration-none small">
<a href="{% url 'home' %}" class="text-secondary text-decoration-none small">
<i class="bi bi-arrow-left me-1"></i> {% trans "Back to Home" %}
</a>
</div>

View File

@ -2,7 +2,7 @@ from django.urls import path
from . import views
urlpatterns = [
path('', views.home, name='index'),
path('', views.home, name='home'),
path('signup/', views.signup, name='signup'), # Added signup url
path('products/', views.product_list, name='product_list'),
path('product/<slug:slug>/', views.product_detail, name='product_detail'),
@ -29,8 +29,9 @@ urlpatterns = [
path('delivery-info/', views.delivery_info, name='delivery_info'),
path('contact/', views.contact_us, name='contact_us'),
path('track-order/', views.track_order, name='track_order'),
path('project-log/', views.project_log, name='project_log'), # Added project log url
# Blog/Articles
path('blog/', views.article_list, name='article_list'),
path('blog/<slug:slug>/', views.article_detail, name='article_detail'),
]
]

View File

@ -375,3 +375,35 @@ def article_list(request):
def article_detail(request, slug):
article = get_object_or_404(Article, slug=slug, is_published=True)
return render(request, 'core/article_detail.html', {'article': article})
def project_log(request):
"""
View to display project version history and updates.
"""
logs = [
{
"version": "1.1.0",
"date": "February 6, 2026",
"description": "Enhanced user experience and neighborhood filtering.",
"changes": [
"Implemented Neighborhood (Kebele) filtering for products and categories.",
"Added user registration (signup) functionality.",
"Enhanced hero search bar with product and Kebele search combined.",
"Updated site-wide contact information and social links.",
"Integrated internationalization (i18n) support for key pages.",
]
},
{
"version": "1.0.0",
"date": "February 1, 2026",
"description": "Initial launch of Jimma Market platform.",
"changes": [
"Core marketplace functionality with multi-vendor support.",
"Product listing, detail views, and category organization.",
"Shopping cart and checkout system with order tracking.",
"Vendor dashboard for product and order management.",
"Basic news and blog section integration.",
]
}
]
return render(request, 'core/project_log.html', {'logs': logs, 'current_version': '1.1.0'})

View File

@ -1,15 +1,17 @@
{
"name": "workspace",
"version": "1.0.0",
"description": "This workspace houses the Django application scaffold used for Python-based templates.",
"name": "jimma-market",
"version": "1.1.0",
"description": "Jimma Market - Your Local Online Marketplace",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "",
"author": "Bilal",
"license": "ISC",
"dependencies": {
"bootstrap": "^5.3.8"
"bootstrap": "^5.3.3",
"bootstrap-icons": "^1.11.3",
"@popperjs/core": "^2.11.8"
}
}
}