Skip to content

Commit 14bea68

Browse files
authoredMar 6, 2025··
fix(3277): Convert string "true" value to boolean for MySQL on banner list endpoint (#3298)
1 parent d1c1c43 commit 14bea68

File tree

2 files changed

+6
-1
lines changed

2 files changed

+6
-1
lines changed
 

‎plugins/banners/list.js

+5-1
Original file line numberDiff line numberDiff line change
@@ -23,14 +23,18 @@ module.exports = () => ({
2323
},
2424
handler: async (request, h) => {
2525
const { bannerFactory } = request.server.app;
26-
const { scope } = request.query;
26+
const { scope, isActive } = request.query;
2727

2828
if (scope !== 'GLOBAL') {
2929
if (!request.auth.isAuthenticated) {
3030
throw boom.unauthorized('Authentication required');
3131
}
3232
}
3333

34+
if (isActive !== undefined) {
35+
request.query.isActive = ['true', true, '1', 1].includes(isActive);
36+
}
37+
3438
// list params defaults to empty object in models if undefined
3539
return bannerFactory
3640
.list({ params: request.query })

‎test/plugins/banner.test.js

+1
Original file line numberDiff line numberDiff line change
@@ -213,6 +213,7 @@ describe('banner plugin test', () => {
213213
bannerFactoryMock.list.resolves(getBannerMock(testBannersActive));
214214

215215
return server.inject(options).then(reply => {
216+
assert.calledWith(bannerFactoryMock.list, { params: { isActive: true, scope: 'GLOBAL' } });
216217
assert.equal(reply.statusCode, 200);
217218
assert.deepEqual(reply.result, testBannersActive);
218219
});

0 commit comments

Comments
 (0)
Please sign in to comment.