diff --git a/wrenchboard/src/shared_tool/family_acc.cc b/wrenchboard/src/shared_tool/family_acc.cc index 862ad77b..3c315ca0 100644 --- a/wrenchboard/src/shared_tool/family_acc.cc +++ b/wrenchboard/src/shared_tool/family_acc.cc @@ -105,7 +105,6 @@ return ret; } long WrenchFamilyAdd(CVars in, CVars &out){ - logfmt(logINFO, "WrenchFamilyAdd()"); long family_id = 0; @@ -139,17 +138,43 @@ return family_id; } long WrenchFamilyUpdate(CVars in, CVars &out){ + logfmt(logINFO, "WrenchFamilyUpdate()"); + long family_id = 0; + try { + long member_id = REQ_LONG(in, "member_id", 1, -1); + REQ_STRING(in, "firstname", 2, 34, "(.*)"); + REQ_STRING(in, "lastname", 2, 34, "(.*)"); + REQ_STRING(in, "family_uid", 2, 50, "(.*)"); + CVars x; + x["firstname"] = in["firstname"]; + x["firstname"].set_valid(true); + x["lastname"] = in["lastname"]; + x["lastname"].set_valid(true); + + const PGresult *res = pgsql_query(" SELECT id AS family_id FROM members_family " + " WHERE member_id=%lu AND uid='%s' ", member_id,in["family_uid"].c_str()); + if (res != NULL && pgsql_num_rows(res) > 0) { + mapf = pgsql_fetch_assoc(res, 0); + CVars rec; + map_to_cvars(f, rec); + update_db_record(DBS_VALID, "members_family", x, rec["family_id"].Long()); + ret = PHP_API_OK; + } + out["status"] = "OK"; + } catch (bad_parameter) { + logfmt(logINFO, "ERROR CALL long WrenchFamilyUpdate(CVars in, CVars &out)"); + } + logfmt(logINFO, "WrenchFamilyUpdate()"); +return family_id; +} + +long WrenchFamilyManage(CVars in, CVars &out){ /* wrenchboard=> select * from members_family; id | member_id | firstname | lastname | age | active | status | added | updated ----+-----------+-----------+----------+-----+--------+--------+-------+--------- (0 rows) */ - logfmt(logINFO, "WrenchFamilyUpdate()"); -return 0; -} - -long WrenchFamilyManage(CVars in, CVars &out){ logfmt(logINFO, "WrenchFamilyManage()"); return 0; }