mirror of
https://github.com/Relintai/mourne_rcpp_fw.git
synced 2025-01-13 07:41:12 +01:00
Village management skeleton classes.
This commit is contained in:
parent
aa2664c200
commit
731f45f63d
@ -33,6 +33,7 @@ import traceback
|
|||||||
|
|
||||||
folders = [
|
folders = [
|
||||||
'app',
|
'app',
|
||||||
|
'app/village',
|
||||||
]
|
]
|
||||||
|
|
||||||
module_folders = [
|
module_folders = [
|
||||||
|
9
app/village/village.cpp
Normal file
9
app/village/village.cpp
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
#include "village.h"
|
||||||
|
|
||||||
|
Village::Village() :
|
||||||
|
Resource() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
Village::~Village() {
|
||||||
|
}
|
16
app/village/village.h
Normal file
16
app/village/village.h
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
#ifndef VILLAGE_H
|
||||||
|
#define VILLAGE_H
|
||||||
|
|
||||||
|
#include "core/string.h"
|
||||||
|
|
||||||
|
#include "core/resource.h"
|
||||||
|
|
||||||
|
class Village : public Resource {
|
||||||
|
RCPP_OBJECT(Village, Resource);
|
||||||
|
|
||||||
|
public:
|
||||||
|
Village();
|
||||||
|
~Village();
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
34
app/village/village_controller.cpp
Normal file
34
app/village/village_controller.cpp
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
#include "village_controller.h"
|
||||||
|
|
||||||
|
#include "core/html/form_validator.h"
|
||||||
|
#include "core/html/html_builder.h"
|
||||||
|
#include "core/http/cookie.h"
|
||||||
|
#include "core/http/http_session.h"
|
||||||
|
#include "core/http/request.h"
|
||||||
|
#include "core/http/session_manager.h"
|
||||||
|
|
||||||
|
|
||||||
|
void VillageController::handle_request_default(Request *request) {
|
||||||
|
}
|
||||||
|
|
||||||
|
VillageController *VillageController::get_singleton() {
|
||||||
|
return _self;
|
||||||
|
}
|
||||||
|
|
||||||
|
VillageController::VillageController() :
|
||||||
|
Object() {
|
||||||
|
|
||||||
|
if (_self) {
|
||||||
|
printf("VillageController::VillageController(): Error! self is not null!/n");
|
||||||
|
}
|
||||||
|
|
||||||
|
_self = this;
|
||||||
|
}
|
||||||
|
|
||||||
|
VillageController::~VillageController() {
|
||||||
|
if (_self == this) {
|
||||||
|
_self = nullptr;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
VillageController *VillageController::_self = nullptr;
|
29
app/village/village_controller.h
Normal file
29
app/village/village_controller.h
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
#ifndef VILLAGE_CONTROLLER_H
|
||||||
|
#define VILLAGE_CONTROLLER_H
|
||||||
|
|
||||||
|
#include "core/string.h"
|
||||||
|
#include "core/containers/vector.h"
|
||||||
|
|
||||||
|
#include "core/object.h"
|
||||||
|
|
||||||
|
#include "village.h"
|
||||||
|
|
||||||
|
class Request;
|
||||||
|
class FormValidator;
|
||||||
|
|
||||||
|
class VillageController : public Object {
|
||||||
|
RCPP_OBJECT(VillageController, Object);
|
||||||
|
|
||||||
|
public:
|
||||||
|
virtual void handle_request_default(Request *request);
|
||||||
|
|
||||||
|
static VillageController *get_singleton();
|
||||||
|
|
||||||
|
VillageController();
|
||||||
|
~VillageController();
|
||||||
|
|
||||||
|
protected:
|
||||||
|
static VillageController *_self;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
63
app/village/village_model.cpp
Normal file
63
app/village/village_model.cpp
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
#include "village_model.h"
|
||||||
|
|
||||||
|
#include "core/database/database.h"
|
||||||
|
#include "core/database/database_manager.h"
|
||||||
|
#include "core/database/query_builder.h"
|
||||||
|
#include "core/database/query_result.h"
|
||||||
|
#include "core/database/table_builder.h"
|
||||||
|
|
||||||
|
#include "core/hash/sha256.h"
|
||||||
|
|
||||||
|
#define VILLAGE_TABLE_NAME "village"
|
||||||
|
|
||||||
|
void VillageModel::create_table() {
|
||||||
|
Ref<TableBuilder> tb = DatabaseManager::get_singleton()->ddb->get_table_builder();
|
||||||
|
|
||||||
|
tb->create_table(VILLAGE_TABLE_NAME);
|
||||||
|
tb->integer("id")->auto_increment()->next_row();
|
||||||
|
tb->varchar("username", 60)->not_null()->next_row();
|
||||||
|
tb->varchar("email", 100)->not_null()->next_row();
|
||||||
|
tb->integer("rank")->not_null()->next_row();
|
||||||
|
tb->varchar("pre_salt", 100)->next_row();
|
||||||
|
tb->varchar("post_salt", 100)->next_row();
|
||||||
|
tb->varchar("password_hash", 100)->next_row();
|
||||||
|
tb->integer("banned")->next_row();
|
||||||
|
tb->varchar("password_reset_token", 100)->next_row();
|
||||||
|
tb->integer("locked")->next_row();
|
||||||
|
tb->primary_key("id");
|
||||||
|
tb->ccreate_table();
|
||||||
|
tb->run_query();
|
||||||
|
//tb->print();
|
||||||
|
}
|
||||||
|
void VillageModel::drop_table() {
|
||||||
|
Ref<TableBuilder> tb = DatabaseManager::get_singleton()->ddb->get_table_builder();
|
||||||
|
|
||||||
|
tb->drop_table_if_exists(VILLAGE_TABLE_NAME)->run_query();
|
||||||
|
}
|
||||||
|
void VillageModel::migrate() {
|
||||||
|
drop_table();
|
||||||
|
create_table();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
VillageModel *VillageModel::get_singleton() {
|
||||||
|
return _self;
|
||||||
|
}
|
||||||
|
|
||||||
|
VillageModel::VillageModel() :
|
||||||
|
Object() {
|
||||||
|
|
||||||
|
if (_self) {
|
||||||
|
printf("VillageModel::VillageModel(): Error! self is not null!/n");
|
||||||
|
}
|
||||||
|
|
||||||
|
_self = this;
|
||||||
|
}
|
||||||
|
|
||||||
|
VillageModel::~VillageModel() {
|
||||||
|
if (_self == this) {
|
||||||
|
_self = nullptr;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
VillageModel *VillageModel::_self = nullptr;
|
26
app/village/village_model.h
Normal file
26
app/village/village_model.h
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
#ifndef VILLAGE_MODEL_H
|
||||||
|
#define VILLAGE_MODEL_H
|
||||||
|
|
||||||
|
#include "core/string.h"
|
||||||
|
#include "core/containers/vector.h"
|
||||||
|
|
||||||
|
#include "core/object.h"
|
||||||
|
|
||||||
|
class VillageModel : public Object {
|
||||||
|
RCPP_OBJECT(VillageModel, Object);
|
||||||
|
|
||||||
|
public:
|
||||||
|
virtual void create_table();
|
||||||
|
virtual void drop_table();
|
||||||
|
virtual void migrate();
|
||||||
|
|
||||||
|
static VillageModel *get_singleton();
|
||||||
|
|
||||||
|
VillageModel();
|
||||||
|
~VillageModel();
|
||||||
|
|
||||||
|
protected:
|
||||||
|
static VillageModel *_self;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
Loading…
Reference in New Issue
Block a user