diff --git a/test_tube_scanner/modules/capture_interface.py b/test_tube_scanner/modules/capture_interface.py index 4547a94..9e0554a 100644 --- a/test_tube_scanner/modules/capture_interface.py +++ b/test_tube_scanner/modules/capture_interface.py @@ -111,8 +111,10 @@ class VideoCaptureInterface(abc.ABC): """ if not self.use_tracking: return - - self._params = ExperimentParams(cfg.to_params_dict()) + + params = self.DEFAULT_TRACKER_CONFIG if not cfg else cfg.to_params_dict() + + self._params = ExperimentParams(params) self._metrics = self._params.build_metrics() self._tracker = PlanarianTracker( tube_axis = self._params.tube_axis, diff --git a/test_tube_scanner/planarian/models.py b/test_tube_scanner/planarian/models.py index eaad200..684946a 100644 --- a/test_tube_scanner/planarian/models.py +++ b/test_tube_scanner/planarian/models.py @@ -18,9 +18,9 @@ class ExperimentConfig(models.Model): author = models.ForeignKey(User, on_delete=models.CASCADE, verbose_name="Auteur", null=True, blank=True) # --- Identification --- - identifier = models.CharField( max_length=100, verbose_name=_("Identifiant d'expérience"), help_text=_("session_1-HD-2026-04-27"), ) - experiment = models.ForeignKey(Experiment, verbose_name="Expérience", on_delete=models.CASCADE, related_name="experiment_well" , null=True, blank=True) - well = models.ForeignKey(Well, verbose_name="Puit", on_delete=models.CASCADE, related_name="well_experiment", null=True, blank=True ) + identifier = models.CharField( max_length=100, verbose_name=_("Identifiant d'expérience"), help_text=_("session_1-HD-2026-04-27"), null=True, blank=True ) + experiment = models.ForeignKey(Experiment, verbose_name="Expérience", on_delete=models.CASCADE, related_name="experiment_well", null=True, blank=False) + well = models.ForeignKey(Well, verbose_name="Puit", on_delete=models.CASCADE, related_name="well_experiment", null=True, blank=False ) description = models.TextField( blank=True, verbose_name=_("Description"), ) created_at = models.DateTimeField(auto_now_add=True, verbose_name=_("Créé le")) @@ -162,10 +162,7 @@ class ExperimentConfig(models.Model): def save(self, *args, **kwargs): session = self.get_session() dte = self.experiment.created.isoformat()[:19] - self.identifier = f'{dte}-{session.id}-{self.experiment.id}-{self.experiment.multiwell.position}-{self.well.name}' - - print(self.identifier) - + self.identifier = f'{dte}-{session.id}-{self.experiment.id}-{self.experiment.multiwell.position}-{self.well.name}' super().save(*args, **kwargs) @@ -179,7 +176,4 @@ def create_well_position(sender, instance, created, **kwargs): conf = ScannerConstants().get() instance.fps = conf.video_frame_rate instance.save() - - - - + diff --git a/test_tube_scanner/planarian/templates/planarian/base.html b/test_tube_scanner/planarian/templates/planarian/base.html index fa7ff4e..27165c1 100644 --- a/test_tube_scanner/planarian/templates/planarian/base.html +++ b/test_tube_scanner/planarian/templates/planarian/base.html @@ -3,7 +3,8 @@ {% block columns %}{% endblock %} -{% block sidebar_list %} +{#% block sidebar_list %#} + +{#% endblock %#} {% block js_footer %} {{ block.super }} @@ -46,8 +48,8 @@ setTimeout(function() { message.remove(); }, 500); - }, 5000); // 5 seconds + }, 15000); // 15 seconds }); }); -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/test_tube_scanner/planarian/templates/planarian/experiment_list.html b/test_tube_scanner/planarian/templates/planarian/experiment_list.html index 5229d9a..7d8cf81 100644 --- a/test_tube_scanner/planarian/templates/planarian/experiment_list.html +++ b/test_tube_scanner/planarian/templates/planarian/experiment_list.html @@ -2,7 +2,7 @@ {% load i18n home_tags scanner_tags %} {% block content %} -
+
@@ -24,11 +24,12 @@ {% for message in messages %} -
+

{{ message }}

{% endfor %} diff --git a/test_tube_scanner/planarian/views.py b/test_tube_scanner/planarian/views.py index 68ba2fa..177f453 100644 --- a/test_tube_scanner/planarian/views.py +++ b/test_tube_scanner/planarian/views.py @@ -68,10 +68,18 @@ class ExperimentConfigListView(ListView): context_object_name = "configs" ordering = ["-created_at"] + ''' + def get_queryset(self): + # Récupérer le queryset de base + queryset = ExperimentConfig.objects.filter(experiment__session_experiments__isnull=False).select_related() + return queryset''' + + def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) return global_context(self.request, **context) + # --------------------------------------------------------------------------- # Vue : création / modification d'une configuration diff --git a/test_tube_scanner/scanner/templates/scanner/base.html b/test_tube_scanner/scanner/templates/scanner/base.html index 86e4eb4..68682e0 100644 --- a/test_tube_scanner/scanner/templates/scanner/base.html +++ b/test_tube_scanner/scanner/templates/scanner/base.html @@ -103,15 +103,14 @@ {% trans "Calibration" %} {% endif %} - - - {% trans "Balayage multi-puits" %} - {% if conf.tracking %} {% trans "Préparation des expériences" %} - {% endif %} + {% endif %} + + {% trans "Balayage multi-puits" %} + {% trans "Gestionnaire d'images" %} @@ -119,7 +118,6 @@ {% trans "Redifusion vidéos" %} {% endblock %} -
{% endblock %} {% endblock %} diff --git a/test_tube_scanner/scanner/templates/scanner/calibration.html b/test_tube_scanner/scanner/templates/scanner/calibration.html index 9c8874e..ada407b 100644 --- a/test_tube_scanner/scanner/templates/scanner/calibration.html +++ b/test_tube_scanner/scanner/templates/scanner/calibration.html @@ -149,7 +149,7 @@
{% if conf.tracking %} -
+
{% trans 'Configuration du tracking' %}