From b75139c025729de5fa8d6598a90488327bb252c1 Mon Sep 17 00:00:00 2001 From: Ben Sturmfels Date: Fri, 20 Oct 2023 16:49:17 +1100 Subject: [PATCH] Add Use the Source mockup pages This doesn't include any data models yet. --- www/conservancy/settings.py | 1 + www/conservancy/urls.py | 4 ++- www/usethesource/__init__.py | 0 .../templates/usethesource/base.html | 17 +++++++++ .../templates/usethesource/candidate.html | 35 +++++++++++++++++++ .../templates/usethesource/download.html | 17 +++++++++ .../templates/usethesource/landing_page.html | 24 +++++++++++++ www/usethesource/urls.py | 10 ++++++ www/usethesource/views.py | 13 +++++++ 9 files changed, 120 insertions(+), 1 deletion(-) create mode 100644 www/usethesource/__init__.py create mode 100644 www/usethesource/templates/usethesource/base.html create mode 100644 www/usethesource/templates/usethesource/candidate.html create mode 100644 www/usethesource/templates/usethesource/download.html create mode 100644 www/usethesource/templates/usethesource/landing_page.html create mode 100644 www/usethesource/urls.py create mode 100644 www/usethesource/views.py diff --git a/www/conservancy/settings.py b/www/conservancy/settings.py index 44360548..2f26462e 100644 --- a/www/conservancy/settings.py +++ b/www/conservancy/settings.py @@ -100,6 +100,7 @@ INSTALLED_APPS = [ 'conservancy.apps.assignment', 'conservancy.apps.fossy', 'podjango', + 'usethesource', ] DEFAULT_AUTO_FIELD = 'django.db.models.AutoField' diff --git a/www/conservancy/urls.py b/www/conservancy/urls.py index 94699982..14185379 100644 --- a/www/conservancy/urls.py +++ b/www/conservancy/urls.py @@ -17,7 +17,8 @@ # along with this program in a file in the toplevel directory called # "AGPLv3". If not, see . -from django.conf.urls import include, url +from django.conf.urls import url +from django.urls import include, path from django.contrib import admin from . import feeds, frontpage, sponsors @@ -66,4 +67,5 @@ urlpatterns = [ url(r'^fossy/$', static_views.index), url(r'^fossy/', include('conservancy.apps.fossy.urls')), url(r'^cast/', include('podjango.urls')), + path('usethesource/', include('usethesource.urls')), ] diff --git a/www/usethesource/__init__.py b/www/usethesource/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/www/usethesource/templates/usethesource/base.html b/www/usethesource/templates/usethesource/base.html new file mode 100644 index 00000000..c08d82d5 --- /dev/null +++ b/www/usethesource/templates/usethesource/base.html @@ -0,0 +1,17 @@ +{% extends "base_standard.html" %} + +{% block head %} + + +{% endblock %} + +{% block outercontent %} + + +
+ {% block content %}{% endblock %} +
+{% endblock outercontent %} diff --git a/www/usethesource/templates/usethesource/candidate.html b/www/usethesource/templates/usethesource/candidate.html new file mode 100644 index 00000000..1dca667b --- /dev/null +++ b/www/usethesource/templates/usethesource/candidate.html @@ -0,0 +1,35 @@ +{% extends "usethesource/base.html" %} + +{% block content %} + {{ block.super }} + +
+
+
+

Linksys WRG987-v2

+

Vendor: Linksys

+

Device: WRG987

+

Released: Oct 20, 2023

+
+ +
+ +

The WRG1830 Wireless Router Gateway (WRG) is a component of the ZFR183x Pro Series Wireless Field Bus System. The WRG1830 provides BACnet IP connectivity to compatible Johnson Controls Field Controllers, VAV Controllers, Thermostats, and Sensors over a wireless mesh network.

+ +

Comments

+

Denver — Oct 20, 2023:
+ I was able to run the autogen and configure scripts, but the build failed with a missing dependency XYZ.

+ +
+
+ +
+
+ +
+
+
+{% endblock content %} diff --git a/www/usethesource/templates/usethesource/download.html b/www/usethesource/templates/usethesource/download.html new file mode 100644 index 00000000..791e5421 --- /dev/null +++ b/www/usethesource/templates/usethesource/download.html @@ -0,0 +1,17 @@ +{% extends "usethesource/base.html" %} + +{% block content %} + {{ block.super }} + +
+

Download

+

File: xyz-image.tar.gz

+ +

By downloading this, you agree to use it only for the purposes of GPL compliance checking, unless otherwise permitted by the license.

+ +
+ Back + Download +
+
+{% endblock content %} diff --git a/www/usethesource/templates/usethesource/landing_page.html b/www/usethesource/templates/usethesource/landing_page.html new file mode 100644 index 00000000..5dcc0c2e --- /dev/null +++ b/www/usethesource/templates/usethesource/landing_page.html @@ -0,0 +1,24 @@ +{% extends "usethesource/base.html" %} + +{% block content %} + {{ block.super }} + +
+

The Complete and Corresponding Source (CCS) is all of the technical materials and source code required to modify, run, and/or reinstall the software. The GPL and LGPL have a formal definitions for CCS, which is sometimes called "Corresponding Source.

+
+ +
+

Candidates

+
+

Linksys WRG987-v2

+

Released Oct 20, 2023

+

The WRG1830 Wireless Router Gateway (WRG) is a component of the ZFR183x Pro Series Wireless Field Bus System. The WRG1830 provides BACnet IP connectivity to compatible Johnson Controls Field Controllers, VAV Controllers, Thermostats, and Sensors over a wireless mesh network.

+
+ +
+

Linksys WRG987-v2

+

Released Oct 20, 2023

+

The WRG1830 Wireless Router Gateway (WRG) is a component of the ZFR183x Pro Series Wireless Field Bus System. The WRG1830 provides BACnet IP connectivity to compatible Johnson Controls Field Controllers, VAV Controllers, Thermostats, and Sensors over a wireless mesh network.

+
+
+{% endblock content %} diff --git a/www/usethesource/urls.py b/www/usethesource/urls.py new file mode 100644 index 00000000..e3f03bfa --- /dev/null +++ b/www/usethesource/urls.py @@ -0,0 +1,10 @@ +from django.urls import path + +from . import views + +app_name = 'usethesource' +urlpatterns = [ + path('', views.landing_page, name='landing'), + path('candidate/', views.candidate_page, name='candidate'), + path('download/', views.download_page, name='download'), +] diff --git a/www/usethesource/views.py b/www/usethesource/views.py new file mode 100644 index 00000000..64a0e1c6 --- /dev/null +++ b/www/usethesource/views.py @@ -0,0 +1,13 @@ +from django.shortcuts import render + + +def landing_page(request): + return render(request, 'usethesource/landing_page.html', {}) + + +def candidate_page(request): + return render(request, 'usethesource/candidate.html', {}) + + +def download_page(request): + return render(request, 'usethesource/download.html', {})