Skip to content
Snippets Groups Projects

Fix: for live (rpdm/issues#71)

Merged L. Ellenbeck requested to merge Hotfix/0071-fixResourceCreate into master
4 files
+ 62
55
Compare changes
  • Side-by-side
  • Inline

Files

+ 19
26
@@ -19,7 +19,7 @@ namespace Coscine.Database.Models
@@ -19,7 +19,7 @@ namespace Coscine.Database.Models
return
return
(from tableEntry in GetITableFromDatabase(db)
(from tableEntry in GetITableFromDatabase(db)
where tableEntry.Id == id
where tableEntry.Id == id
&& tableEntry.Deleted == true
&& tableEntry.Deleted
select tableEntry).Count() == 1;
select tableEntry).Count() == 1;
});
});
}
}
@@ -32,7 +32,7 @@ namespace Coscine.Database.Models
@@ -32,7 +32,7 @@ namespace Coscine.Database.Models
return
return
(from tableEntry in GetITableFromDatabase(db).AsExpandable()
(from tableEntry in GetITableFromDatabase(db).AsExpandable()
where expression.Invoke(tableEntry) == id
where expression.Invoke(tableEntry) == id
&& tableEntry.Deleted == false
&& !tableEntry.Deleted
select tableEntry).FirstOrDefault();
select tableEntry).FirstOrDefault();
});
});
}
}
@@ -61,7 +61,7 @@ namespace Coscine.Database.Models
@@ -61,7 +61,7 @@ namespace Coscine.Database.Models
return
return
(from tableEntry in GetITableFromDatabase(db).AsExpandable()
(from tableEntry in GetITableFromDatabase(db).AsExpandable()
where whereClause.Invoke(tableEntry)
where whereClause.Invoke(tableEntry)
&& tableEntry.Deleted == false
&& !tableEntry.Deleted
select tableEntry).FirstOrDefault();
select tableEntry).FirstOrDefault();
});
});
}
}
@@ -72,7 +72,7 @@ namespace Coscine.Database.Models
@@ -72,7 +72,7 @@ namespace Coscine.Database.Models
{
{
return
return
(from tableEntry in GetITableFromDatabase(db)
(from tableEntry in GetITableFromDatabase(db)
where tableEntry.Deleted == false
where !tableEntry.Deleted
select tableEntry).ToList();
select tableEntry).ToList();
});
});
}
}
@@ -84,7 +84,7 @@ namespace Coscine.Database.Models
@@ -84,7 +84,7 @@ namespace Coscine.Database.Models
return
return
(from tableEntry in GetITableFromDatabase(db).AsExpandable()
(from tableEntry in GetITableFromDatabase(db).AsExpandable()
where whereClause.Invoke(tableEntry)
where whereClause.Invoke(tableEntry)
&& tableEntry.Deleted == false
&& !tableEntry.Deleted
select tableEntry).ToList();
select tableEntry).ToList();
});
});
}
}
@@ -107,18 +107,12 @@ namespace Coscine.Database.Models
@@ -107,18 +107,12 @@ namespace Coscine.Database.Models
public override int Delete(Project databaseObject)
public override int Delete(Project databaseObject)
{
{
databaseObject.Deleted = true;
databaseObject.Deleted = true;
return DatabaseConnection.ConnectToDatabase((db) =>
return DatabaseConnection.ConnectToDatabase((db) => (int)db.Update(databaseObject).State);
{
return (int)db.Update(databaseObject).State;
});
}
}
public int HardDelete(Project databaseObject)
public int HardDelete(Project databaseObject)
{
{
return DatabaseConnection.ConnectToDatabase((db) =>
return DatabaseConnection.ConnectToDatabase((db) => (int)db.Remove(databaseObject).State);
{
return (int) db.Remove(databaseObject).State;
});
}
}
public int HardDelete(Expression<Func<Project, bool>> whereClause)
public int HardDelete(Expression<Func<Project, bool>> whereClause)
@@ -126,8 +120,8 @@ namespace Coscine.Database.Models
@@ -126,8 +120,8 @@ namespace Coscine.Database.Models
return DatabaseConnection.ConnectToDatabase((db) =>
return DatabaseConnection.ConnectToDatabase((db) =>
{
{
return (int)db.Remove(from tableEntry in GetITableFromDatabase(db).AsExpandable()
return (int)db.Remove(from tableEntry in GetITableFromDatabase(db).AsExpandable()
where whereClause.Invoke(tableEntry)
where whereClause.Invoke(tableEntry)
select tableEntry).State;
select tableEntry).State;
});
});
}
}
@@ -177,7 +171,7 @@ namespace Coscine.Database.Models
@@ -177,7 +171,7 @@ namespace Coscine.Database.Models
join pi in db.ProjectInstitutes on p.Id equals pi.ProjectId into joinedPi
join pi in db.ProjectInstitutes on p.Id equals pi.ProjectId into joinedPi
from jpi in joinedPi.DefaultIfEmpty()
from jpi in joinedPi.DefaultIfEmpty()
where p.Deleted == false
where !p.Deleted
group jpi by jpi.OrganizationUrl into g
group jpi by jpi.OrganizationUrl into g
select new OrganizationCountObject(g.Key, g.Count())).ToList();
select new OrganizationCountObject(g.Key, g.Count())).ToList();
});
});
@@ -189,8 +183,8 @@ namespace Coscine.Database.Models
@@ -189,8 +183,8 @@ namespace Coscine.Database.Models
var slug = projectObject.DisplayName;
var slug = projectObject.DisplayName;
slug = slug.ToLower();
slug = slug.ToLower();
slug = Regex.Replace(slug, @"[\s-]+", "-");
slug = Regex.Replace(slug, @"[\s-]+", "-");
slug = Regex.Replace(slug, @"[^a-z0-9-]*|", "");
slug = Regex.Replace(slug, "[^a-z0-9-]*|", "");
slug = Regex.Replace(slug, @"^-|-$", "");
slug = Regex.Replace(slug, "^-|-$", "");
Random r = new Random();
Random r = new Random();
int rInt = r.Next(0, 9000000) + 1000000;
int rInt = r.Next(0, 9000000) + 1000000;
@@ -211,7 +205,7 @@ namespace Coscine.Database.Models
@@ -211,7 +205,7 @@ namespace Coscine.Database.Models
while (GetBySlug(fullSlug + rInt) != null)
while (GetBySlug(fullSlug + rInt) != null)
{
{
rInt++;
rInt++;
};
}
fullSlug += rInt;
fullSlug += rInt;
}
}
@@ -333,11 +327,11 @@ namespace Coscine.Database.Models
@@ -333,11 +327,11 @@ namespace Coscine.Database.Models
public IEnumerable<Project> GetTopLevelWithAccess(User user, params string[] allowedAccess)
public IEnumerable<Project> GetTopLevelWithAccess(User user, params string[] allowedAccess)
{
{
return GetWithAccess(user, allowedAccess, (allowedProjectIds) => GetAllWhere((project) =>
return GetWithAccess(user, allowedAccess, (_) => GetAllWhere((project) =>
(
(
// all accessable projects that have no parents
// all accessible projects that have no parents
(!project.SubProjectSubProjectNavigations.Any())
(project.SubProjectSubProjectNavigations.Count == 0)
|| // all accessable projects that have no accessable parents
|| // all accessible projects that have no accessible parents
(
(
project.SubProjectSubProjectNavigations.All(
project.SubProjectSubProjectNavigations.All(
(parentProjects) =>
(parentProjects) =>
@@ -436,7 +430,7 @@ namespace Coscine.Database.Models
@@ -436,7 +430,7 @@ namespace Coscine.Database.Models
{
{
list = GetAllWhere((dbProject) => (from subProject in dbProject.SubProjectProjects
list = GetAllWhere((dbProject) => (from subProject in dbProject.SubProjectProjects
where subProject.SubProjectId == currentProject.Id
where subProject.SubProjectId == currentProject.Id
&& subProject.Project.Deleted == false
&& !subProject.Project.Deleted
select subProject).Any());
select subProject).Any());
if (list.Any())
if (list.Any())
@@ -530,6 +524,5 @@ namespace Coscine.Database.Models
@@ -530,6 +524,5 @@ namespace Coscine.Database.Models
}
}
return $"{counted}/{maxCount}";
return $"{counted}/{maxCount}";
}
}
}
}
}
}
 
\ No newline at end of file
Loading