Create a fimaily account

This commit is contained in:
CHIEFSOFT\ameye
2023-05-21 12:01:35 -04:00
parent a0dd6791a3
commit 0c35e8f564
+57 -4
View File
@@ -1511,11 +1511,38 @@ long LoginWrenchBoardFamilyLogin(CVars in, CVars &out);
long WrenchBoardCreateFamilyAcc(CVars in, CVars &out);
long WrenchBoardCreateFamilyAcc(CVars in, CVars &out){
long ret = 0;
return 0;
try {
CVars x;
x["username"] = in["uid"];
x["username"].set_valid(true);
x["email"] = in["uid"];
x["email"].set_valid(true);
x["password"] = in["uid"];
x["password"].set_valid(true);
x["firstname"] = in["firstname"];
x["firstname"].set_valid(true);
x["lastname"] = in["lastname"];
x["lastname"].set_valid(true);
x["account_type"] = "FAMILY";
x["account_type"].set_valid(true);
// x["loc"] = out["loc"];
// x["loc"].set_valid(true);
ret = insert_db_record(DBS_VALID, "members", "members_id_seq", x);
if ( ret > 0 ){
pgsql_exec("UPDATE members_family SET family_member_id=%lu WHERE uid='%s'",ret, in["uid"].c_str() );
}
} catch (bad_parameter) {
logfmt(logINFO, "ERROR CALL long WrenchBoardCreateFamilyAcc(CVars in, CVars &out)");
}
return ret;
}
long LoginWrenchBoardFamilyLogin(CVars in, CVars &out){
long ret = PHP_API_BAD_PARAM;
long family_member_id = 0;
logfmt(logINFO, "********~~~~~~~~ ------LoginWrenchBoardFamilyLogin()");
try {
@@ -1529,10 +1556,36 @@ long LoginWrenchBoardFamilyLogin(CVars in, CVars &out){
map_to_cvars(f, rec);
if( rec["family_member_id"]==""){
logfmt(logINFO, "LoginWrenchBoardFamilyLogin()- Need to Construct Account Now------->");
WrenchBoardCreateFamilyAcc(rec,out);
family_member_id = WrenchBoardCreateFamilyAcc(rec,out);
}
out = rec;
ret = PHP_LOGIN_OK;
else{
family_member_id = rec["family_member_id"].Long();
}
if (family_member_id > 0){
load_db_record(out, "SELECT *,id AS member_id , to_char(last_login, 'Day Mon dd, yyyy HH:MI AM') AS last_login2 "
" FROM members WHERE status=1 AND id = %lu",family_member_id);
CVars vw;
vw["currency"] = "NAIRA"; // this might become a variable based on the country
vw["currency"].set_valid( true );
long wallet_id = CheckWallet(out["member_id"].Long(),vw);
load_db_record( out, "SELECT amount AS balance FROM members_wallet WHERE member_id = %lu AND currency='%s' ", out["member_id"].Long(), vw["currency"].c_str());
pgsql_exec("DELETE FROM members_session WHERE member_id=%ld ", out["member_id"].Long());
// remove all existing session
if (SessionCheck(out["id"].Long(), in["sessionid"].c_str(), 1) > 0) {
out["stauts"] = "OK";
/*LOAD THE SESSION INTO OUT now */
load_db_record(out, "SELECT session FROM members_session WHERE member_id=%lu ORDER BY id DESC LIMIT 1", out["member_id"].Long());
//===============================================================================================================================
pgsql_query("UPDATE members SET last_login = now() , loc='%s' WHERE id = %lu",loc, out["member_id"].Long());
pgsql_exec("UPDATE members_family SET last_login = now() WHERE family_member_id=%lu",family_member_id );
ret = PHP_LOGIN_OK;
LoginLogger(out["member_id"].Long(),login_mode);
} else {
out["status"] = "Session check failed";
}
}
}
out["status"] = "OK";
} catch (bad_parameter) {