diff --git a/src/backend/apps/webcam/admin.py b/src/backend/apps/webcam/admin.py index 41d7553d1..0e8e9c666 100644 --- a/src/backend/apps/webcam/admin.py +++ b/src/backend/apps/webcam/admin.py @@ -11,7 +11,7 @@ class WebcamAdmin(admin.GISModelAdmin): - readonly_fields = ('id', ) + readonly_fields = ('id',) gis_widget = DriveBCMapWidget change_form_template = "admin/timelapse.html" # custom template diff --git a/src/backend/apps/webcam/migrations/0014_remove_webcam_is_on.py b/src/backend/apps/webcam/migrations/0014_remove_webcam_is_on.py new file mode 100644 index 000000000..e3fd2dd4e --- /dev/null +++ b/src/backend/apps/webcam/migrations/0014_remove_webcam_is_on.py @@ -0,0 +1,17 @@ +# Generated by Django 5.2.12 on 2026-05-06 21:59 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('webcam', '0013_camerasource_highway_region_regionhighway_and_more'), + ] + + operations = [ + migrations.RemoveField( + model_name='webcam', + name='is_on', + ), + ] diff --git a/src/backend/apps/webcam/migrations/0015_webcam_is_on.py b/src/backend/apps/webcam/migrations/0015_webcam_is_on.py new file mode 100644 index 000000000..17f0e7d8e --- /dev/null +++ b/src/backend/apps/webcam/migrations/0015_webcam_is_on.py @@ -0,0 +1,18 @@ +# Generated by Django 5.2.12 on 2026-05-07 15:07 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('webcam', '0014_remove_webcam_is_on'), + ] + + operations = [ + migrations.AddField( + model_name='webcam', + name='is_on', + field=models.BooleanField(default=True), + ), + ] diff --git a/src/backend/apps/webcam/models.py b/src/backend/apps/webcam/models.py index b2b471213..75b3906a0 100644 --- a/src/backend/apps/webcam/models.py +++ b/src/backend/apps/webcam/models.py @@ -88,6 +88,19 @@ def get_timezone(self): # PointField stores as (x=lon, y=lat) tzname = tf.timezone_at(lng=self.location.x, lat=self.location.y) return pytz.timezone(tzname) if tzname else timezone.utc + + # @property + # def camera_source(self): + # if not self.id: + # return None + # return CameraSource.objects.using("mssql").filter( + # id=self.id + # ).first() + + # @property + # def is_on(self): + # cs = self.camera_source + # return True if not cs else not cs.cam_controldisabled class Region(models.Model):