public async Task<bool> DeleteDiagramAsync(Guid id)
{
dynamic diagram;
diagram = await DAL.LoadDiagram(id);
var user = UserHelper.GetCurrentUserID();
if (diagram.userId != user)
{
var resp = new HttpResponseMessage(HttpStatusCode.Unauthorized)
{
Content = new StringContent("User not authorized to delete this diagram"),
ReasonPhrase = "User not authorized to delete this diagram"
};
throw new HttpResponseException(resp);
}
var result = false;
result = await DAL.DeleteDiagramAsync(id.ToString());
if (!result)
{
var resp = new HttpResponseMessage(HttpStatusCode.NotFound)
{
Content = new StringContent(string.Format("DiagramId (id={0}) was not found", id.ToString())),
ReasonPhrase = "Diagram not found"
};
throw new HttpResponseException(resp);
}
return result;
}