Skip to content

Commit a38e230

Browse files
committed
add configuration setting for creating pulse annotations
1 parent bda6a6a commit a38e230

6 files changed

Lines changed: 20 additions & 1 deletion

File tree

bats_ai/core/admin/configuration.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ class ConfigurationAdmin(admin.ModelAdmin):
1111
"display_pulse_annotations",
1212
"display_sequence_annotations",
1313
"run_inference_on_upload",
14+
"create_pulse_annotations_from_batbot",
1415
"spectrogram_x_stretch",
1516
"spectrogram_view",
1617
]

bats_ai/core/models/configuration.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ class AvailableColorScheme(models.TextChoices):
2222
display_pulse_annotations = models.BooleanField(default=True)
2323
display_sequence_annotations = models.BooleanField(default=True)
2424
run_inference_on_upload = models.BooleanField(default=True)
25+
create_pulse_annotations_from_batbot = models.BooleanField(default=False)
2526
spectrogram_x_stretch = models.DecimalField(default=2.5, max_digits=3, decimal_places=2)
2627
spectrogram_view = models.CharField(
2728
max_length=12, choices=SpectrogramViewMode, default=SpectrogramViewMode.COMPRESSED

bats_ai/core/views/configuration.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ class ConfigurationSchema(Schema):
2626
display_sequence_annotations: bool
2727
is_admin: bool | None = None
2828
run_inference_on_upload: bool
29+
create_pulse_annotations_from_batbot: bool
2930
spectrogram_x_stretch: float
3031
spectrogram_view: Configuration.SpectrogramViewMode
3132
default_color_scheme: Configuration.AvailableColorScheme
@@ -44,6 +45,7 @@ def get_configuration(request):
4445
display_pulse_annotations=config.display_pulse_annotations,
4546
display_sequence_annotations=config.display_sequence_annotations,
4647
run_inference_on_upload=config.run_inference_on_upload,
48+
create_pulse_annotations_from_batbot=config.create_pulse_annotations_from_batbot,
4749
spectrogram_x_stretch=config.spectrogram_x_stretch,
4850
spectrogram_view=config.spectrogram_view,
4951
default_color_scheme=config.default_color_scheme,
@@ -62,7 +64,7 @@ def update_configuration(request, payload: ConfigurationSchema):
6264
config = Configuration.objects.first()
6365
if not config:
6466
return JsonResponse({"error": "No configuration found"}, status=404)
65-
for attr, value in payload.dict().items():
67+
for attr, value in payload.dict(exclude={"is_admin"}).items():
6668
setattr(config, attr, value)
6769
config.save()
6870
return ConfigurationSchema.from_orm(config)

client/src/api/api.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -653,6 +653,7 @@ export interface ConfigurationSettings {
653653
display_pulse_annotations: boolean;
654654
display_sequence_annotations: boolean;
655655
run_inference_on_upload: boolean;
656+
create_pulse_annotations_from_batbot: boolean;
656657
spectrogram_x_stretch: number;
657658
spectrogram_view: "compressed" | "uncompressed";
658659
is_admin?: boolean;

client/src/use/useState.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ const configuration: Ref<Configuration> = ref({
7070
spectrogram_view: "compressed",
7171
spectrogram_x_stretch: 2.5,
7272
run_inference_on_upload: true,
73+
create_pulse_annotations_from_batbot: false,
7374
default_color_scheme: "inferno",
7475
default_spectrogram_background_color: "rgb(0, 0, 0)",
7576
is_admin: false,

client/src/views/Admin.vue

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,8 @@ export default defineComponent({
2828
displaySequenceAnnotations:
2929
configuration.value.display_sequence_annotations,
3030
runInferenceOnUpload: configuration.value.run_inference_on_upload,
31+
createPulseAnnotationsFromBatbot:
32+
configuration.value.create_pulse_annotations_from_batbot,
3133
spectrogramXStretch: configuration.value.spectrogram_x_stretch,
3234
spectrogramView: configuration.value.spectrogram_view,
3335
defaultColorScheme: configuration.value.default_color_scheme,
@@ -54,6 +56,8 @@ export default defineComponent({
5456
configuration.value.display_sequence_annotations;
5557
settings.runInferenceOnUpload =
5658
configuration.value.run_inference_on_upload;
59+
settings.createPulseAnnotationsFromBatbot =
60+
configuration.value.create_pulse_annotations_from_batbot;
5761
settings.spectrogramXStretch = configuration.value.spectrogram_x_stretch;
5862
settings.defaultColorScheme = configuration.value.default_color_scheme;
5963
settings.defaultBackgroundColor =
@@ -74,6 +78,8 @@ export default defineComponent({
7478
display_pulse_annotations: settings.displayPulseAnnotations,
7579
display_sequence_annotations: settings.displaySequenceAnnotations,
7680
run_inference_on_upload: settings.runInferenceOnUpload,
81+
create_pulse_annotations_from_batbot:
82+
settings.createPulseAnnotationsFromBatbot,
7783
spectrogram_x_stretch: settings.spectrogramXStretch,
7884
default_color_scheme: settings.defaultColorScheme,
7985
default_spectrogram_background_color: settings.defaultBackgroundColor,
@@ -148,6 +154,13 @@ export default defineComponent({
148154
label="Run Inference on Upload"
149155
/>
150156
</v-row>
157+
<v-row>
158+
<v-switch
159+
v-model="settings.createPulseAnnotationsFromBatbot"
160+
:color="settings.createPulseAnnotationsFromBatbot ? 'primary' : ''"
161+
label="Create pulse annotations from BatBot on import"
162+
/>
163+
</v-row>
151164
<v-row>
152165
<v-col cols="3">
153166
<div class="text-caption">Stretch compressed spectrogram</div>

0 commit comments

Comments
 (0)