Skip to content

Instantly share code, notes, and snippets.

@fabriciosanchez
Created July 26, 2016 20:32
Show Gist options
  • Save fabriciosanchez/7fedf2dfd3b1a9c9204bc24ee2c8009a to your computer and use it in GitHub Desktop.
Save fabriciosanchez/7fedf2dfd3b1a9c9204bc24ee2c8009a to your computer and use it in GitHub Desktop.
Método que faz o set de operações relacionados ao processo de autenticação do Arda.
[HttpPost]
[Route("setuserpermissionsandcode")]
public IActionResult SetUserPermissionsAndCode(string name)
{
var uniqueName = HttpContext.Request.Headers["unique_name"].ToString();
var code = HttpContext.Request.Headers["code"].ToString();
try
{
if (uniqueName != null && name != null && code != null)
{
User responseUser = null;
bool responseEmail = false;
bool UserExists = _permission.VerifyIfUserIsInUserPermissionsDatabase(uniqueName);
if (!UserExists)
{
responseUser = _permission.CreateNewUserAndSetInitialPermissions(uniqueName, name);
responseEmail = _permission.SendNotificationOfNewUserByEmail(uniqueName);
if (responseUser == null || responseEmail == false)
{
return new HttpStatusCodeResult((int)HttpStatusCode.InternalServerError);
}
else
{
bool response = _permission.SetUserPermissionsAndCode(uniqueName, code);
if (response)
{
return new HttpStatusCodeResult((int)HttpStatusCode.OK);
}
else
{
return new HttpStatusCodeResult((int)HttpStatusCode.InternalServerError);
}
}
}
else
{
bool response = _permission.SetUserPermissionsAndCode(uniqueName, code);
if (response)
{
return new HttpStatusCodeResult((int)HttpStatusCode.OK);
}
else
{
return new HttpStatusCodeResult((int)HttpStatusCode.InternalServerError);
}
}
}
else
{
return new HttpStatusCodeResult((int)HttpStatusCode.BadRequest);
}
}
catch (Exception)
{
return new HttpStatusCodeResult((int)HttpStatusCode.InternalServerError);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment