routing improved, settings initialized
This commit is contained in:
18
backend/utils/initializeSettings.js
Normal file
18
backend/utils/initializeSettings.js
Normal file
@@ -0,0 +1,18 @@
|
||||
import SettingsType from "../models/type/settings_type.js";
|
||||
|
||||
const initializeSettings = async () => {
|
||||
await SettingsType.findOrCreate({
|
||||
where: { name: 'personal' },
|
||||
defaults: { name: 'personal' }
|
||||
});
|
||||
await SettingsType.findOrCreate({
|
||||
where: { name: 'view' },
|
||||
defaults: { name: 'view' }
|
||||
});
|
||||
await SettingsType.findOrCreate({
|
||||
where: { name: 'sexuality' },
|
||||
defaults: { name: 'sexuality' }
|
||||
});
|
||||
};
|
||||
|
||||
export default initializeSettings;
|
||||
@@ -1,9 +1,86 @@
|
||||
import UserParamType from '../models/type/user_param.js';
|
||||
import SettingsType from '../models/type/settings_type.js'; // Importiere SettingsType
|
||||
|
||||
const initializeTypes = async () => {
|
||||
const settingsTypes = await SettingsType.findAll();
|
||||
const settingsTypeMap = settingsTypes.reduce((map, type) => {
|
||||
map[type.name] = type.id;
|
||||
return map;
|
||||
}, {});
|
||||
|
||||
const getSettingsTypeId = (name) => settingsTypeMap[name];
|
||||
|
||||
await UserParamType.findOrCreate({
|
||||
where: { description: 'language' },
|
||||
defaults: { description: 'language' }
|
||||
defaults: { description: 'language', datatype: 'string', settingsTypeId: getSettingsTypeId('personal') }
|
||||
});
|
||||
await UserParamType.findOrCreate({
|
||||
where: { description: 'birthdate' },
|
||||
defaults: { description: 'birthdate', datatype: 'date', settingsTypeId: getSettingsTypeId('personal') }
|
||||
});
|
||||
await UserParamType.findOrCreate({
|
||||
where: { description: 'zip' },
|
||||
defaults: { description: 'zip', datatype: 'string', settingsTypeId: getSettingsTypeId('personal') }
|
||||
});
|
||||
await UserParamType.findOrCreate({
|
||||
where: { description: 'town' },
|
||||
defaults: { description: 'town', datatype: 'string', settingsTypeId: getSettingsTypeId('personal') }
|
||||
});
|
||||
await UserParamType.findOrCreate({
|
||||
where: { description: 'bodyheight' },
|
||||
defaults: { description: 'bodyheight', datatype: 'float', settingsTypeId: getSettingsTypeId('view') }
|
||||
});
|
||||
await UserParamType.findOrCreate({
|
||||
where: { description: 'weight' },
|
||||
defaults: { description: 'weight', datatype: 'float', settingsTypeId: getSettingsTypeId('view') }
|
||||
});
|
||||
await UserParamType.findOrCreate({
|
||||
where: { description: 'eyecolor' },
|
||||
defaults: { description: 'eyecolor', datatype: 'string', settingsTypeId: getSettingsTypeId('view') }
|
||||
});
|
||||
await UserParamType.findOrCreate({
|
||||
where: { description: 'haircolor' },
|
||||
defaults: { description: 'haircolor', datatype: 'string', settingsTypeId: getSettingsTypeId('view') }
|
||||
});
|
||||
await UserParamType.findOrCreate({
|
||||
where: { description: 'hairlength' },
|
||||
defaults: { description: 'hairlength', datatype: 'int', settingsTypeId: getSettingsTypeId('view') }
|
||||
});
|
||||
await UserParamType.findOrCreate({
|
||||
where: { description: 'skincolor' },
|
||||
defaults: { description: 'skincolor', datatype: 'int', settingsTypeId: getSettingsTypeId('view') }
|
||||
});
|
||||
await UserParamType.findOrCreate({
|
||||
where: { description: 'freckles' },
|
||||
defaults: { description: 'freckles', datatype: 'int', settingsTypeId: getSettingsTypeId('view') }
|
||||
});
|
||||
await UserParamType.findOrCreate({
|
||||
where: { description: 'piercings' },
|
||||
defaults: { description: 'piercings', datatype: 'bool', settingsTypeId: getSettingsTypeId('view') }
|
||||
});
|
||||
await UserParamType.findOrCreate({
|
||||
where: { description: 'tattoos' },
|
||||
defaults: { description: 'tattoos', datatype: 'bool', settingsTypeId: getSettingsTypeId('view') }
|
||||
});
|
||||
await UserParamType.findOrCreate({
|
||||
where: { description: 'sexualpreference' },
|
||||
defaults: { description: 'sexualpreference', minAge: 14, datatype: 'int', settingsTypeId: getSettingsTypeId('sexuality') }
|
||||
});
|
||||
await UserParamType.findOrCreate({
|
||||
where: { description: 'gender' },
|
||||
defaults: { description: 'gender', datatype: 'string', settingsTypeId: getSettingsTypeId('personal') }
|
||||
});
|
||||
await UserParamType.findOrCreate({
|
||||
where: { description: 'pubichair' },
|
||||
defaults: { description: 'pubichair', minAge: 14, datatype: 'int', settingsTypeId: getSettingsTypeId('sexuality') }
|
||||
});
|
||||
await UserParamType.findOrCreate({
|
||||
where: { description: 'penislength' },
|
||||
defaults: { description: 'penislength', minAge: 14, gender: 'm', datatype: 'int', settingsTypeId: getSettingsTypeId('sexuality') }
|
||||
});
|
||||
await UserParamType.findOrCreate({
|
||||
where: { description: 'brasize' },
|
||||
defaults: { description: 'brasize', minAge: 14, gender: 'f', datatype: 'string', settingsTypeId: getSettingsTypeId('sexuality') }
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
39
backend/utils/initializeUserRights.js
Normal file
39
backend/utils/initializeUserRights.js
Normal file
@@ -0,0 +1,39 @@
|
||||
import UserRightType from "../models/type/user_right.js";
|
||||
|
||||
const initializeUserRights = async() => {
|
||||
|
||||
await UserRightType.findOrCreate({
|
||||
where: { title: "mainadmin"},
|
||||
defaults: { title: "mainadmin"}
|
||||
});
|
||||
await UserRightType.findOrCreate({
|
||||
where: { title: "contactrequests"},
|
||||
defaults: { title: "contactrequests"}
|
||||
});
|
||||
await UserRightType.findOrCreate({
|
||||
where: { title: "useradministration"},
|
||||
defaults: { title: "useradministration"}
|
||||
});
|
||||
await UserRightType.findOrCreate({
|
||||
where: { title: "forum"},
|
||||
defaults: { title: "forum"}
|
||||
});
|
||||
await UserRightType.findOrCreate({
|
||||
where: { title: "rights"},
|
||||
defaults: { title: "rights"}
|
||||
});
|
||||
await UserRightType.findOrCreate({
|
||||
where: { title: "interrests"},
|
||||
defaults: { title: "interrests"}
|
||||
});
|
||||
await UserRightType.findOrCreate({
|
||||
where: { title: "falukant"},
|
||||
defaults: { title: "falukant"}
|
||||
});
|
||||
await UserRightType.findOrCreate({
|
||||
where: { title: "developer"},
|
||||
defaults: { title: "developer"}
|
||||
});
|
||||
};
|
||||
|
||||
export default initializeUserRights;
|
||||
@@ -1,10 +1,14 @@
|
||||
import { initializeDatabase } from './sequelize.js';
|
||||
import initializeTypes from './initializeTypes.js';
|
||||
import initializeSettings from './initializeSettings.js';
|
||||
import initializeUserRights from './initializeUserRights.js';
|
||||
|
||||
const syncDatabase = async () => {
|
||||
try {
|
||||
await initializeDatabase();
|
||||
await initializeSettings();
|
||||
await initializeTypes();
|
||||
await initializeUserRights();
|
||||
console.log('All models were synchronized successfully.');
|
||||
} catch (error) {
|
||||
console.error('Unable to synchronize the database:', error);
|
||||
|
||||
Reference in New Issue
Block a user