Bereinigen und Entfernen von nicht mehr benötigten TinyMCE-Dateien und -Plugins; Aktualisierung der Internationalisierung für Deutsch und Englisch in den Falukant- und Navigationsmodulen; Verbesserung der Statusleiste und Router-Implementierung.
This commit is contained in:
24
backend/models/service/minigame_campaign.js
Normal file
24
backend/models/service/minigame_campaign.js
Normal file
@@ -0,0 +1,24 @@
|
||||
import { sequelize } from '../../utils/sequelize.js';
|
||||
import { DataTypes } from 'sequelize';
|
||||
|
||||
const MinigameCampaign = sequelize.define('minigame_campaign', {
|
||||
code: {
|
||||
type: DataTypes.STRING,
|
||||
allowNull: false,
|
||||
unique: true,
|
||||
},
|
||||
title: {
|
||||
type: DataTypes.STRING,
|
||||
allowNull: false,
|
||||
},
|
||||
description: {
|
||||
type: DataTypes.TEXT,
|
||||
allowNull: true,
|
||||
},
|
||||
}, {
|
||||
tableName: 'minigame_campaign',
|
||||
schema: 'service',
|
||||
underscored: true,
|
||||
});
|
||||
|
||||
export default MinigameCampaign;
|
||||
25
backend/models/service/minigame_campaign_level.js
Normal file
25
backend/models/service/minigame_campaign_level.js
Normal file
@@ -0,0 +1,25 @@
|
||||
import { sequelize } from '../../utils/sequelize.js';
|
||||
import { DataTypes } from 'sequelize';
|
||||
|
||||
const MinigameCampaignLevel = sequelize.define('minigame_campaign_level', {
|
||||
campaignId: {
|
||||
type: DataTypes.INTEGER,
|
||||
allowNull: false,
|
||||
field: 'campaign_id'
|
||||
},
|
||||
index: { // 1-based level number
|
||||
type: DataTypes.INTEGER,
|
||||
allowNull: false,
|
||||
},
|
||||
config: {
|
||||
type: DataTypes.JSONB,
|
||||
allowNull: false,
|
||||
defaultValue: {}
|
||||
},
|
||||
}, {
|
||||
tableName: 'minigame_campaign_level',
|
||||
schema: 'service',
|
||||
underscored: true,
|
||||
});
|
||||
|
||||
export default MinigameCampaignLevel;
|
||||
41
backend/models/service/minigame_user_progress.js
Normal file
41
backend/models/service/minigame_user_progress.js
Normal file
@@ -0,0 +1,41 @@
|
||||
import { sequelize } from '../../utils/sequelize.js';
|
||||
import { DataTypes } from 'sequelize';
|
||||
|
||||
const MinigameUserProgress = sequelize.define('minigame_user_progress', {
|
||||
userId: {
|
||||
type: DataTypes.INTEGER,
|
||||
allowNull: false,
|
||||
field: 'user_id'
|
||||
},
|
||||
campaignId: {
|
||||
type: DataTypes.INTEGER,
|
||||
allowNull: false,
|
||||
field: 'campaign_id'
|
||||
},
|
||||
levelIndex: {
|
||||
type: DataTypes.INTEGER,
|
||||
allowNull: false,
|
||||
defaultValue: 1,
|
||||
field: 'level_index'
|
||||
},
|
||||
stars: { // 0..3
|
||||
type: DataTypes.INTEGER,
|
||||
allowNull: false,
|
||||
defaultValue: 0
|
||||
},
|
||||
bestScore: {
|
||||
type: DataTypes.INTEGER,
|
||||
allowNull: false,
|
||||
defaultValue: 0,
|
||||
field: 'best_score'
|
||||
}
|
||||
}, {
|
||||
tableName: 'minigame_user_progress',
|
||||
schema: 'service',
|
||||
underscored: true,
|
||||
indexes: [
|
||||
{ unique: true, fields: ['user_id', 'campaign_id'] }
|
||||
]
|
||||
});
|
||||
|
||||
export default MinigameUserProgress;
|
||||
Reference in New Issue
Block a user