Skip to content

Commit 18402ba

Browse files
authored
Merge pull request #292 from os2display/feature/brnd-feed
BRND booking
2 parents b28d9be + 4eedf3a commit 18402ba

File tree

5 files changed

+93
-0
lines changed

5 files changed

+93
-0
lines changed

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@
33
All notable changes to this project will be documented in this file.
44

55
## [Unreleased]
6+
- [#292](https://github.com/os2display/display-admin-client/pull/292)
7+
- Add BRND Booking feed type
68

79
## [2.5.2] - 2025-09-25
810

src/components/feed-sources/feed-source-form.jsx

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import EventDatabaseApiFeedType from "./templates/event-database-feed-type";
1515
import ColiboFeedType from "./templates/colibo-feed-type";
1616
import StickyFooter from "../util/sticky-footer";
1717
import EventDatabaseApiV2FeedType from "./templates/event-database-v2-feed-type";
18+
import BrndFeedType from "./templates/brnd-feed-type";
1819

1920
/**
2021
* The feed-source form component.
@@ -126,6 +127,14 @@ function FeedSourceForm({
126127
feedSourceId={feedSource["@id"]}
127128
/>
128129
)}
130+
{feedSource?.feedType === "App\\Feed\\BrndFeedType" && (
131+
<BrndFeedType
132+
handleInput={handleSecretInput}
133+
formStateObject={feedSource.secrets}
134+
mode={mode}
135+
feedSourceId={feedSource["@id"]}
136+
/>
137+
)}
129138
{feedSource?.feedType ===
130139
"App\\Feed\\EventDatabaseApiFeedType" && (
131140
<EventDatabaseApiFeedType

src/components/feed-sources/feed-source-manager.jsx

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,16 @@ function FeedSourceManager({
8080
recipients: [],
8181
},
8282
},
83+
{
84+
value: "App\\Feed\\BrndFeedType",
85+
title: t("brnd-feed-type.title"),
86+
key: "8",
87+
secretsDefault: {
88+
api_base_uri: "",
89+
company_id: "",
90+
api_auth_key: "",
91+
},
92+
},
8393
{
8494
value: "App\\Feed\\EventDatabaseApiFeedType",
8595
title: t("dynamic-fields.event-database-api-feed-type.title"),
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
import React from "react";
2+
import PropTypes from "prop-types";
3+
import { useTranslation } from "react-i18next";
4+
import FormInput from "../../util/forms/form-input";
5+
6+
const BrndFeedType = ({ handleInput, formStateObject, mode }) => {
7+
const { t } = useTranslation("common", {
8+
keyPrefix: "brnd-feed-type",
9+
});
10+
11+
return (
12+
<>
13+
<FormInput
14+
name="api_base_uri"
15+
type="text"
16+
label={t("api-base-uri")}
17+
className="mb-2"
18+
onChange={handleInput}
19+
placeholder={
20+
mode === "PUT" ? t("redacted-value-input-placeholder") : ""
21+
}
22+
value={formStateObject?.api_base_uri}
23+
/>
24+
25+
<FormInput
26+
name="company_id"
27+
type="text"
28+
className="mb-2"
29+
label={t("company-id")}
30+
onChange={handleInput}
31+
placeholder={
32+
mode === "PUT" ? t("redacted-value-input-placeholder") : ""
33+
}
34+
value={formStateObject?.company_id}
35+
/>
36+
37+
<FormInput
38+
name="api_auth_key"
39+
type="text"
40+
label={t("api-auth-key")}
41+
onChange={handleInput}
42+
placeholder={
43+
mode === "PUT" ? t("redacted-value-input-placeholder") : ""
44+
}
45+
value={formStateObject?.api_auth_key}
46+
/>
47+
</>
48+
);
49+
};
50+
51+
BrndFeedType.propTypes = {
52+
handleInput: PropTypes.func,
53+
formStateObject: PropTypes.shape({
54+
api_base_uri: PropTypes.string,
55+
company_id: PropTypes.string,
56+
api_auth_key: PropTypes.string,
57+
}),
58+
mode: PropTypes.string,
59+
};
60+
61+
export default BrndFeedType;

src/translations/da/common.json

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -285,6 +285,9 @@
285285
"colibo-feed-type": {
286286
"title": "Colibo"
287287
},
288+
"brnd-feed-type": {
289+
"title": "BRND"
290+
},
288291
"dynamic-fields": {
289292
"event-database-api-feed-type": {
290293
"title": "Eventdatabase API",
@@ -1157,6 +1160,14 @@
11571160
"save-before-recipients-can-be-set": "Bemærk! Datakilden skal gemmes før der kan tilkobles tilladte modtagergrupper. Gem og åbn datakilden igen.",
11581161
"allowed-recipients-help": "Det er kun disse modtagergrupper, der vil være tilgængelige, når man opretter et slide, der bruger datakilden."
11591162
},
1163+
"brnd-feed-type": {
1164+
"title": "BRND feed",
1165+
"api-base-uri": "API Base URI",
1166+
"company-id": "Company ID",
1167+
"api-auth-key": "API Auth Key",
1168+
"values-info": "Værdierne Company ID og API Auth Key udleveres af BRND. Ret henvendelse til BRND support.",
1169+
"redacted-value-input-placeholder": "Skjult værdi"
1170+
},
11601171
"event-database-api-v2-feed-type": {
11611172
"title": "Event databasen v.2",
11621173
"host": "Host",

0 commit comments

Comments
 (0)