made changepass PATCH method

This commit is contained in:
EntireTwix 2021-04-05 23:26:35 -07:00
parent 6187a3b521
commit 375913c0db

View file

@ -33,23 +33,25 @@ public:
{
auto resp = HttpResponse::newHttpResponse();
auto handlerInfo = app().getHandlersInfo();
resp->setBody("<h1>ALL FUNCTIONS (that have args) ARE EXPECTING JSON AS DATA TYPE</h1><h2>/BankF/help (GET)</h2><blockquote><p>the page you're looking at right now!</p></blockquote><h2><br />/BankF/<span style=\"color: #ff0000;\">admin</span>/close (POST)</h2><p><span style=\"background-color: #808080;\">&nbsp;attempt&nbsp;</span> - admin password</p><blockquote><p>Closes and Saves the server.</p></blockquote><h2><br />/BankF/user (POST)</h2><p><span style=\"background-color: #808080;\">&nbsp;name&nbsp;</span> - name of the user being added</p><p><span style=\"background-color: #808080;\">&nbsp;init_pass&nbsp;</span> - initial password for the user being added</p><blockquote><p>Adds a user to the bank</p></blockquote><h2><br />/BankF/<span style=\"color: #ff0000;\">admin</span>/user (POST)</h2><p><span style=\"background-color: #808080;\">&nbsp;name&nbsp;</span> - name of the user being added</p><p><span style=\"background-color: #808080;\">&nbsp;attempt&nbsp;</span> - admin password required to add user with balance</p><p><span style=\"background-color: #808080;\">&nbsp;init_bal&nbsp;</span> - initial balance for user being added</p><p><span style=\"background-color: #808080;\">&nbsp;init_pass&nbsp;</span> - initial password for user being added</p><blockquote><p>Adds a user with initial balance</p></blockquote><h2><br />/BankF/user (DELETE)</h2><p><span style=\"background-color: #808080;\">&nbsp;name&nbsp;</span> - name of user being deleted</p><p><span style=\"background-color: #808080;\">&nbsp;attempt&nbsp;</span> - password of user being deleted</p><blockquote><p>Deletes a user with the password of the user as verification</p></blockquote><h2><br />/BankF/<span style=\"color: #ff0000;\">admin</span>/user (DELETE)</h2><p><span style=\"background-color: #808080;\">&nbsp;name&nbsp;</span> - name of user being deleted</p><p><span style=\"background-color: #808080;\">&nbsp;attempt&nbsp;</span> - admin password</p><blockquote><p>Deletes a user with admin password as verification</p></blockquote><h2><br />/BankF/sendfunds (POST)</h2><p><span style=\"background-color: #808080;\">&nbsp;a_name&nbsp;</span> - sender's name</p><p><span style=\"background-color: #808080;\">&nbsp;b_name&nbsp;</span> - reciever's name</p><p><span style=\"background-color: #808080;\">&nbsp;amount&nbsp;</span> - amount being sent</p><p><span style=\"background-color: #808080;\">&nbsp;attempt&nbsp;</span> - password of sender</p><blockquote><p>Sends money from one user to another</p></blockquote><h2><br />/BankF/changepass (POST)</h2><p><span style=\"background-color: #808080;\">&nbsp;name&nbsp;</span> - name of user's password being changes</p><p><span style=\"background-color: #808080;\">&nbsp;attempt&nbsp;</span> - password of user being changed</p><p><span style=\"background-color: #808080;\">&nbsp;new_pass&nbsp;</span> - new password to replace the current user's password</p><blockquote><p>&nbsp;Changes password of a user</p></blockquote><h2><br />/BankF/{name}/contains (GET)</h2><blockquote><p>returns a 0 or 1 based on if the bank contains the user</p></blockquote><h2><br />/BankF/{name}/getbal (GET)</h2><blockquote><p>returns the balance of a given user's name, if -1 that means the user does not exist</p></blockquote><h2><br />/BankF/vpass (GET)</h2><p><span style=\"background-color: #808080;\">&nbsp;name&nbsp;</span> - name of user being verified</p><p><span style=\"background-color: #808080;\">&nbsp;attempt&nbsp; </span>- password being verified</p><blockquote><p>returns 0 or 1 based on if [attempt] is equal to the password of the user [name]. The intended usage for this function is for connected services</p></blockquote><p>&nbsp;</p><p>&nbsp;</p>");
resp->setBody("<h1>ALL FUNCTIONS (that have args) ARE EXPECTING JSON AS DATA TYPE</h1><h2>/BankF/help (GET)</h2><blockquote><p>the page you're looking at right now!</p></blockquote><h2><br />/BankF/<span style=\"color: #ff0000;\">admin</span>/close (POST)</h2><p><span style=\"background-color: #808080;\">&nbsp;attempt&nbsp;</span> - admin password</p><blockquote><p>Closes and Saves the server.</p></blockquote><h2><br />/BankF/user (POST)</h2><p><span style=\"background-color: #808080;\">&nbsp;name&nbsp;</span> - name of the user being added</p><p><span style=\"background-color: #808080;\">&nbsp;init_pass&nbsp;</span> - initial password for the user being added</p><blockquote><p>Adds a user to the bank</p></blockquote><h2><br />/BankF/<span style=\"color: #ff0000;\">admin</span>/user (POST)</h2><p><span style=\"background-color: #808080;\">&nbsp;name&nbsp;</span> - name of the user being added</p><p><span style=\"background-color: #808080;\">&nbsp;attempt&nbsp;</span> - admin password required to add user with balance</p><p><span style=\"background-color: #808080;\">&nbsp;init_bal&nbsp;</span> - initial balance for user being added</p><p><span style=\"background-color: #808080;\">&nbsp;init_pass&nbsp;</span> - initial password for user being added</p><blockquote><p>Adds a user with initial balance</p></blockquote><h2><br />/BankF/user (DELETE)</h2><p><span style=\"background-color: #808080;\">&nbsp;name&nbsp;</span> - name of user being deleted</p><p><span style=\"background-color: #808080;\">&nbsp;attempt&nbsp;</span> - password of user being deleted</p><blockquote><p>Deletes a user with the password of the user as verification</p></blockquote><h2><br />/BankF/<span style=\"color: #ff0000;\">admin</span>/user (DELETE)</h2><p><span style=\"background-color: #808080;\">&nbsp;name&nbsp;</span> - name of user being deleted</p><p><span style=\"background-color: #808080;\">&nbsp;attempt&nbsp;</span> - admin password</p><blockquote><p>Deletes a user with admin password as verification</p></blockquote><h2><br />/BankF/sendfunds (POST)</h2><p><span style=\"background-color: #808080;\">&nbsp;a_name&nbsp;</span> - sender's name</p><p><span style=\"background-color: #808080;\">&nbsp;b_name&nbsp;</span> - reciever's name</p><p><span style=\"background-color: #808080;\">&nbsp;amount&nbsp;</span> - amount being sent</p><p><span style=\"background-color: #808080;\">&nbsp;attempt&nbsp;</span> - password of sender</p><blockquote><p>Sends money from one user to another</p></blockquote><h2><br />/BankF/changepass (PATCH)</h2><p><span style=\"background-color: #808080;\">&nbsp;name&nbsp;</span> - name of user's password being changes</p><p><span style=\"background-color: #808080;\">&nbsp;attempt&nbsp;</span> - password of user being changed</p><p><span style=\"background-color: #808080;\">&nbsp;new_pass&nbsp;</span> - new password to replace the current user's password</p><blockquote><p>&nbsp;Changes password of a user</p></blockquote><h2><br />/BankF/{name}/contains (GET)</h2><blockquote><p>returns a 0 or 1 based on if the bank contains the user</p></blockquote><h2><br />/BankF/{name}/getbal (GET)</h2><blockquote><p>returns the balance of a given user's name, if -1 that means the user does not exist</p></blockquote><h2><br />/BankF/vpass (GET)</h2><p><span style=\"background-color: #808080;\">&nbsp;name&nbsp;</span> - name of user being verified</p><p><span style=\"background-color: #808080;\">&nbsp;attempt&nbsp; </span>- password being verified</p><blockquote><p>returns 0 or 1 based on if [attempt] is equal to the password of the user [name]. The intended usage for this function is for connected services</p></blockquote><p>&nbsp;</p><p>&nbsp;</p>");
resp->setExpiredTime(0);
callback(resp);
}
void Close(req_args) const
{
GEN_BODY
bool res;
if (body["attempt"].asCString() == bank.admin_pass)
{
bank.Save();
JSON(true);
res = true;
app().quit();
}
else
{
JSON(false);
res = false;
}
JSON(res);
}
void AddUser(req_args) const
{
@ -100,7 +102,8 @@ public:
METHOD_ADD(BankF::AddUser, "/user", Post);
METHOD_ADD(BankF::AdminAddUser, "/admin/user", Post);
METHOD_ADD(BankF::SendFunds, "/sendfunds", Post);
METHOD_ADD(BankF::ChangePassword, "/changepass", Post);
METHOD_ADD(BankF::ChangePassword, "/changepass", Patch);
METHOD_ADD(BankF::Help, "/help", Get);
METHOD_ADD(BankF::VerifyPassword, "/vpass", Get);