Skip to content
Snippets Groups Projects

Fix: Don't use null project object

Merged Benedikt Heinrichs requested to merge Hotfix/1516-pidFix into master
1 file
+ 10
4
Compare changes
  • Side-by-side
  • Inline
using Coscine.Action;
using Coscine.Action;
using Coscine.Action.EventArgs;
using Coscine.Api.Pid.Models;
using Coscine.Configuration;
@@ -92,10 +92,11 @@ namespace Coscine.Api.Pid.Controllers
if (projectId.HasValue)
{
projectObject = _projectModel.CreateReturnObjectFromDatabaseObject(_projectModel.GetById(projectId.Value));
project = _projectModel.GetById(projectId.Value);
projectObject = _projectModel.CreateReturnObjectFromDatabaseObject(project);
var ownerId = _roleModel.GetAllWhere((x) => (x.DisplayName == "owner")).First().Id;
projectOwners = _projectRoleModel.GetAllWhere((x) => x.RoleId == ownerId && x.ProjectId == project.Id);
projectOwners = _projectRoleModel.GetAllWhere((x) => x.RoleId == ownerId && x.ProjectId == projectId.Value);
}
}
else if (project != null)
@@ -127,6 +128,11 @@ namespace Coscine.Api.Pid.Controllers
private void LogAnalyticsPidEnquiry(Project project, Resource resource, string applicationsProfile, string license,
IEnumerable<DisciplineObject> disciplines, IEnumerable<OrganizationObject> organizations, IEnumerable<ProjectRole> owners, string email)
{
string visibility = null;
if (project != null && project.VisibilityId.HasValue)
{
visibility = _visibilityModel.GetById(project.VisibilityId.Value)?.DisplayName;
}
_coscineLogger.AnalyticsLog(
new AnalyticsLogObject
{
@@ -138,7 +144,7 @@ namespace Coscine.Api.Pid.Controllers
License = license,
Disciplines = disciplines?.Select(x => x.DisplayNameEn).ToList(),
Organizations = organizations?.Select(x => x.DisplayName).ToList(),
Visibility = project.VisibilityId.HasValue ? _visibilityModel.GetById(project.VisibilityId.Value)?.DisplayName : null,
Visibility = visibility,
UserList = owners?.Select(x => x.UserId.ToString()).ToList(),
ExternalInfo = email == null ? null : HashMail(email),
});
Loading