Fixed bug with custom icons not working with apps

This commit is contained in:
Paweł Malak 2021-11-18 13:05:32 +01:00
parent 1220c56fc5
commit 426766225b
7 changed files with 31 additions and 39 deletions

View file

@ -1,3 +1,6 @@
### v2.0.1 (TBA)
- Fixed bug with custom icons not working with apps when "pin by default" was disabled
### v2.0.0 (2021-11-15) ### v2.0.0 (2021-11-15)
- Added authentication system: - Added authentication system:
- Only logged in user can access settings ([#33](https://github.com/pawelmalak/flame/issues/33)) - Only logged in user can access settings ([#33](https://github.com/pawelmalak/flame/issues/33))

View file

@ -11,7 +11,7 @@ Flame is self-hosted startpage for your server. Its design is inspired (heavily)
- 📌 Pin your favourite items to the homescreen for quick and easy access - 📌 Pin your favourite items to the homescreen for quick and easy access
- 🔍 Integrated search bar with local filtering, 11 web search providers and ability to add your own - 🔍 Integrated search bar with local filtering, 11 web search providers and ability to add your own
- 🔑 Authentication system to protect your settings, apps and bookmarks - 🔑 Authentication system to protect your settings, apps and bookmarks
- 🔨 Dozens of option to customize Flame interface to your needs, including support for custom CSS and 15 built-in color themes - 🔨 Dozens of options to customize Flame interface to your needs, including support for custom CSS and 15 built-in color themes
- ☀️ Weather widget with current temperature, cloud coverage and animated weather status - ☀️ Weather widget with current temperature, cloud coverage and animated weather status
- 🐳 Docker integration to automatically pick and add apps based on their labels - 🐳 Docker integration to automatically pick and add apps based on their labels

View file

@ -8,25 +8,20 @@ const loadConfig = require('../../utils/loadConfig');
const createApp = asyncWrapper(async (req, res, next) => { const createApp = asyncWrapper(async (req, res, next) => {
const { pinAppsByDefault } = await loadConfig(); const { pinAppsByDefault } = await loadConfig();
let app; let body = { ...req.body };
let _body = { ...req.body };
if (_body.icon) { if (body.icon) {
_body.icon = _body.icon.trim(); body.icon = body.icon.trim();
} }
if (req.file) { if (req.file) {
_body.icon = req.file.filename; body.icon = req.file.filename;
} }
if (pinAppsByDefault) { const app = await App.create({
app = await App.create({ ...body,
..._body, isPinned: pinAppsByDefault,
isPinned: true, });
});
} else {
app = await App.create(req.body);
}
res.status(201).json({ res.status(201).json({
success: true, success: true,

View file

@ -18,17 +18,17 @@ const updateApp = asyncWrapper(async (req, res, next) => {
); );
} }
let _body = { ...req.body }; let body = { ...req.body };
if (_body.icon) { if (body.icon) {
_body.icon = _body.icon.trim(); body.icon = body.icon.trim();
} }
if (req.file) { if (req.file) {
_body.icon = req.file.filename; body.icon = req.file.filename;
} }
app = await app.update(_body); app = await app.update(body);
res.status(200).json({ res.status(200).json({
success: true, success: true,

View file

@ -7,20 +7,20 @@ const Bookmark = require('../../models/Bookmark');
const createBookmark = asyncWrapper(async (req, res, next) => { const createBookmark = asyncWrapper(async (req, res, next) => {
let bookmark; let bookmark;
let _body = { let body = {
...req.body, ...req.body,
categoryId: parseInt(req.body.categoryId), categoryId: parseInt(req.body.categoryId),
}; };
if (_body.icon) { if (body.icon) {
_body.icon = _body.icon.trim(); body.icon = body.icon.trim();
} }
if (req.file) { if (req.file) {
_body.icon = req.file.filename; body.icon = req.file.filename;
} }
bookmark = await Bookmark.create(_body); bookmark = await Bookmark.create(body);
res.status(201).json({ res.status(201).json({
success: true, success: true,

View file

@ -19,20 +19,20 @@ const updateBookmark = asyncWrapper(async (req, res, next) => {
); );
} }
let _body = { let body = {
...req.body, ...req.body,
categoryId: parseInt(req.body.categoryId), categoryId: parseInt(req.body.categoryId),
}; };
if (_body.icon) { if (body.icon) {
_body.icon = _body.icon.trim(); body.icon = body.icon.trim();
} }
if (req.file) { if (req.file) {
_body.icon = req.file.filename; body.icon = req.file.filename;
} }
bookmark = await bookmark.update(_body); bookmark = await bookmark.update(body);
res.status(200).json({ res.status(200).json({
success: true, success: true,

View file

@ -8,16 +8,10 @@ const loadConfig = require('../../utils/loadConfig');
const createCategory = asyncWrapper(async (req, res, next) => { const createCategory = asyncWrapper(async (req, res, next) => {
const { pinCategoriesByDefault: pinCategories } = await loadConfig(); const { pinCategoriesByDefault: pinCategories } = await loadConfig();
let category; const category = await Category.create({
...req.body,
if (pinCategories) { isPinned: pinCategories,
category = await Category.create({ });
...req.body,
isPinned: true,
});
} else {
category = await Category.create(req.body);
}
res.status(201).json({ res.status(201).json({
success: true, success: true,