login to the service uses mysql now.

pull/1/head
moneroexamples 8 years ago
parent baa1955076
commit 3d3e0e1760

@ -15,38 +15,32 @@ using namespace restbed;
int int
main() main()
{ {
xmreg::MySqlAccounts xmr_accounts; // xmreg::MySqlAccounts xmr_accounts;
//
//xmr_accounts.create_account("41vEA7Ye8Bpeda6g59v5t46koWrVn2PNgEKgzquJjmiKCFTsh9gajr8J3pad49rqu581TAtFGCH9CYTCkYrCpuWUG9GkgeB"); // //xmr_accounts.create_account("41vEA7Ye8Bpeda6g59v5t46koWrVn2PNgEKgzquJjmiKCFTsh9gajr8J3pad49rqu581TAtFGCH9CYTCkYrCpuWUG9GkgeB");
//
//
string addr = "41vEA7Ye8Bpeda6g9v5t46koWrVn2PNgEKgluJjmiKCFTsh9gajr8J3pad49rqu581TAtFGCH9CYTCkYrCpuWUG9GkgeB"; // string addr = "41vEA7Ye8Bpeda6g9v5t46koWrVn2PNgEKgluJjmiKCFTsh9gajr8J3pad49rqu581TAtFGCH9CYTCkYrCpuWUG9GkgeB";
//
xmreg::XmrAccount acc; // xmreg::XmrAccount acc;
//
bool r = xmr_accounts.select(addr, acc); // bool r = xmr_accounts.select(addr, acc);
//
if (r) // if (r)
{ // {
cout << "Account foudn: " << acc.id << endl; // cout << "Account foudn: " << acc.id << endl;
//
xmreg::XmrAccount new_acc = acc; // xmreg::XmrAccount new_acc = acc;
new_acc.total_received = 20e12; // new_acc.total_received = 20e12;
//
cout << xmr_accounts.update(acc, new_acc) << endl; // cout << xmr_accounts.update(acc, new_acc) << endl;
//
} // }
else // else
{ // {
cout << "Account does not exist" << endl; // cout << "Account does not exist" << endl;
cout << xmr_accounts.create(addr) << endl; // cout << xmr_accounts.create(addr) << endl;
} // }
xmreg::YourMoneroRequests::show_logs = true; xmreg::YourMoneroRequests::show_logs = true;

@ -150,7 +150,7 @@ public:
return false; return false;
} }
bool uint64_t
create(const string& address) create(const string& address)
{ {
Query query = conn.query(INSERT_STMT); Query query = conn.query(INSERT_STMT);
@ -161,15 +161,15 @@ public:
SimpleResult sr = query.execute(address); SimpleResult sr = query.execute(address);
if (sr.rows() == 1) if (sr.rows() == 1)
return true; return sr.insert_id();
} }
catch (mysqlpp::Exception& e) catch (mysqlpp::Exception& e)
{ {
MYSQL_EXCEPTION_MSG(e); MYSQL_EXCEPTION_MSG(e);
return false; return 0;
} }
return false; return 0;
} }
bool bool

@ -88,7 +88,33 @@ public:
if (show_logs) if (show_logs)
print_json_log("login request: ", j_request); print_json_log("login request: ", j_request);
json j_response {{"new_address", true}}; string xmr_address = j_request["address"];
// check if login address is new or existing
xmreg::MySqlAccounts xmr_accounts;
xmreg::XmrAccount acc;
uint64_t acc_id {0};
json j_response;
if (xmr_accounts.select(xmr_address, acc))
{
//cout << "Account found: " << acc.id << endl;
acc_id = acc.id;
j_response = {{"new_address", false}};
}
else
{
//cout << "Account does not exist" << endl;
if ((acc_id = xmr_accounts.create(xmr_address)) != 0)
{
//cout << "account created acc_id: " << acc_id << endl;
j_response = {{"new_address", true}};
}
}
string response_body = j_response.dump(); string response_body = j_response.dump();

Loading…
Cancel
Save