diff --git a/src/FOSSDB/urls.py b/src/FOSSDB/urls.py
index e995603..d575c7c 100644
--- a/src/FOSSDB/urls.py
+++ b/src/FOSSDB/urls.py
@@ -19,9 +19,9 @@ from django.urls import include, path
urlpatterns = [
path("admin/", admin.site.urls),
- path("", include("account.urls")),
path("", include("fossdb.urls")),
path("", include("main.urls")),
+ path("", include("account.urls")),
path("", include("django.contrib.auth.urls")),
path("__reload__/", include("django_browser_reload.urls")),
]
diff --git a/src/apps/fossdb/migrations/0005_operatingsystem_is_linux.py b/src/apps/fossdb/migrations/0005_operatingsystem_is_linux.py
new file mode 100644
index 0000000..0448ee0
--- /dev/null
+++ b/src/apps/fossdb/migrations/0005_operatingsystem_is_linux.py
@@ -0,0 +1,18 @@
+# Generated by Django 4.2.2 on 2023-06-28 22:04
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('fossdb', '0004_alter_tag_icon_star'),
+ ]
+
+ operations = [
+ migrations.AddField(
+ model_name='operatingsystem',
+ name='is_linux',
+ field=models.BooleanField(blank=True, default=False),
+ ),
+ ]
diff --git a/src/apps/fossdb/models.py b/src/apps/fossdb/models.py
index c776012..22697a1 100644
--- a/src/apps/fossdb/models.py
+++ b/src/apps/fossdb/models.py
@@ -18,6 +18,7 @@ class License(models.Model):
class OperatingSystem(models.Model):
name = models.CharField(max_length=100, unique=True)
description = models.TextField(blank=True, default="")
+ is_linux = models.BooleanField(blank=True, default=False)
def __str__(self):
return self.name
@@ -75,6 +76,26 @@ class Project(models.Model):
def star_amount(self):
return self.star.count()
+ @property
+ def runs_on_macos(self):
+ return self.operating_system.filter(operating_system__name="macOS").exists()
+
+ @property
+ def runs_on_linux(self):
+ return self.operating_system.filter(operating_system__is_linux=True).exists()
+
+ @property
+ def runs_on_windows(self):
+ return self.operating_system.filter(operating_system__name="Windows").exists()
+
+ @property
+ def runs_on_ios(self):
+ return self.operating_system.filter(operating_system__name="iOS").exists()
+
+ @property
+ def runs_on_android(self):
+ return self.operating_system.filter(operating_system__name="Android").exists()
+
def get_absolute_url(self):
return f"/{self.owner}/{self.name}"
diff --git a/src/apps/fossdb/templates/detailed_view.html b/src/apps/fossdb/templates/detailed_view.html
index fac4530..ebdab84 100644
--- a/src/apps/fossdb/templates/detailed_view.html
+++ b/src/apps/fossdb/templates/detailed_view.html
@@ -1,48 +1,123 @@
{% extends "base.html" %}
{% load static %}
{% block title %}{{ project.owner }}/{{ project.name }}{% endblock %}
-{% block meta %}{% endblock %}
+{% block meta %}
+
+{% endblock meta %}
{% block content %}
-
@{{ project.owner }}
- {{ project.name }}
- {{ project.description }}
-
- {{ project.projecthostingplatform.hosting_platform }}
-
-
- {% for license in project.license.all %}
- -
- {{ license }}
-
- {% empty %}
- No license
- {% endfor %}
-
-
- {% for os in project.operating_system.all %}
- - {{ os }}
- {% empty %}
- No OS
- {% endfor %}
-
-
- {% for tag in project.tag.all %}
- - {{ tag }}
- {% empty %}
- No tag
- {% endfor %}
-
-
- {% for language in project.projectprogramminglanguage_set.all %}
- - {{ language.programming_language }} {{ language.percentage }}%
- {% empty %}
- No language
- {% endfor %}
-
-
-
+
+
+
{{ project.name }}
+
+
+
+
+
+ {% for tag in project.tag.all|dictsort:"name" %}
+
+
+ {{ tag }}
+
+
+ {% endfor %}
+
+
+
+
+
{{ project.description }}
+
+
+
+
+
+
+
+
+
+
+ See project source code and read more here!
+
+
+
+
+
+
+
+
+ {% if user == project.owner %}
+
+ {% endif %}
+
{% endblock %}
diff --git a/src/apps/fossdb/templates/explore.html b/src/apps/fossdb/templates/explore.html
index 0b61240..bc46639 100644
--- a/src/apps/fossdb/templates/explore.html
+++ b/src/apps/fossdb/templates/explore.html
@@ -3,18 +3,6 @@
{% block title %}{{ title }}{% endblock %}
{% block meta %}{% endblock %}
{% block content %}
- {{ username }}
-
-
-
-
{% for project in projects %}
{{ project }}
diff --git a/src/apps/fossdb/urls.py b/src/apps/fossdb/urls.py
index 1d4b5d0..9359b2d 100644
--- a/src/apps/fossdb/urls.py
+++ b/src/apps/fossdb/urls.py
@@ -4,7 +4,7 @@ from . import views
urlpatterns = [
path("explore/", views.ProjectListView.as_view(), name="explore"),
- path("add/", views.ProjectCreateView.as_view(), name="add-project"),
+ path("contribute/", views.ProjectCreateView.as_view(), name="contribute"),
path("
//", views.ProjectDetailView.as_view(), name="project-detail"),
path("//edit/", views.ProjectUpdateView.as_view(), name="project-update"),
path("//delete/", views.ProjectDeleteView.as_view(), name="project-delete"),
diff --git a/src/apps/fossdb/views.py b/src/apps/fossdb/views.py
index b2cf66f..beac620 100644
--- a/src/apps/fossdb/views.py
+++ b/src/apps/fossdb/views.py
@@ -23,7 +23,7 @@ class ProjectListView(FilterView):
template_name = "explore.html"
filterset_class = ProjectFilter
context_object_name = "projects"
- paginate_by = 10 # optional 10 projects a page
+ paginate_by = 100 # optional 10 projects a page
class ProjectCreateView(LoginRequiredMixin, CreateView):
diff --git a/src/apps/tokyonight_night/static_src/tailwind.config.js b/src/apps/tokyonight_night/static_src/tailwind.config.js
index 2883ee0..1f8e88b 100644
--- a/src/apps/tokyonight_night/static_src/tailwind.config.js
+++ b/src/apps/tokyonight_night/static_src/tailwind.config.js
@@ -126,6 +126,8 @@ module.exports = {
fontSize: {
base: "1rem",
xl: "1.25rem",
+ "2xl": "1.5rem",
+ "3xl": "2rem",
"4xl": "4rem",
xs: "0.75rem",
},
diff --git a/src/apps/tokyonight_night/templates/base.html b/src/apps/tokyonight_night/templates/base.html
index 86e0eb7..6488240 100644
--- a/src/apps/tokyonight_night/templates/base.html
+++ b/src/apps/tokyonight_night/templates/base.html
@@ -75,7 +75,7 @@
{% block content %}{% endblock %}
-