protected virtual void FireAfterCreate(FileCreateEventArgs e) { if (AfterCreate != null) { AfterCreate(this, e); } }
public void Save() { if (Id == 0) { FileCreateEventArgs e = new FileCreateEventArgs(); FireBeforeCreate(e); if (!e.Cancel) { Data.SqlHelper.ExecuteNonQuery("INSERT INTO wikiFiles (path, name, createdBy, nodeId, version, type, downloads, archived, umbracoVersion, verified) VALUES(@path, @name, @createdBy, @nodeId, @nodeVersion, @type, @downloads, @archived, @umbracoVersion, @verified)", Data.SqlHelper.CreateParameter("@path", Path), Data.SqlHelper.CreateParameter("@name", Name), Data.SqlHelper.CreateParameter("@createdBy", CreatedBy), Data.SqlHelper.CreateParameter("@nodeId", NodeId), Data.SqlHelper.CreateParameter("@type", FileType), Data.SqlHelper.CreateParameter("@nodeVersion", NodeVersion), Data.SqlHelper.CreateParameter("@downloads", Downloads), Data.SqlHelper.CreateParameter("@archived", Archived), Data.SqlHelper.CreateParameter("@umbracoVersion", ToVersionString(Versions)), Data.SqlHelper.CreateParameter("@verified", Verified) ); CreateDate = DateTime.Now; Id = Data.SqlHelper.ExecuteScalar <int>("SELECT MAX(id) FROM wikiFiles WHERE createdBy = @createdBy", Data.SqlHelper.CreateParameter("@createdBy", CreatedBy)); FireAfterCreate(e); } } else { FileUpdateEventArgs e = new FileUpdateEventArgs(); FireBeforeUpdate(e); if (!e.Cancel) { Data.SqlHelper.ExecuteNonQuery("UPDATE wikiFiles SET path = @path, name = @name, type = @type, [current] = @current, removedBy = @removedBy, version = @version, downloads = @downloads, archived = @archived, umbracoVersion = @umbracoVersion, verified = @verified WHERE id = @id", Data.SqlHelper.CreateParameter("@path", Path), Data.SqlHelper.CreateParameter("@name", Name), Data.SqlHelper.CreateParameter("@type", FileType), Data.SqlHelper.CreateParameter("@current", Current), Data.SqlHelper.CreateParameter("@removedBy", RemovedBy), Data.SqlHelper.CreateParameter("@version", NodeVersion), Data.SqlHelper.CreateParameter("@id", Id), Data.SqlHelper.CreateParameter("@downloads", Downloads), Data.SqlHelper.CreateParameter("@archived", Archived), Data.SqlHelper.CreateParameter("@umbracoVersion", ToVersionString(Versions)), Data.SqlHelper.CreateParameter("@verified", Verified) ); FireAfterUpdate(e); } } }
protected virtual void FireBeforeCreate(FileCreateEventArgs e) { _events.FireCancelableEvent(BeforeCreate, this, e); }
protected virtual void FireAfterCreate(FileCreateEventArgs e) { if (AfterCreate != null) AfterCreate(this, e); }
public void Save() { if (Id == 0) { var e = new FileCreateEventArgs(); FireBeforeCreate(e); if (e.Cancel) return; Application.SqlHelper.ExecuteNonQuery( "INSERT INTO wikiFiles (path, name, createdBy, nodeId, version, type, downloads, archived, umbracoVersion, verified, dotNetVersion) VALUES(@path, @name, @createdBy, @nodeId, @nodeVersion, @type, @downloads, @archived, @umbracoVersion, @verified, @dotNetVersion)", Application.SqlHelper.CreateParameter("@path", Path), Application.SqlHelper.CreateParameter("@name", Name), Application.SqlHelper.CreateParameter("@createdBy", CreatedBy), Application.SqlHelper.CreateParameter("@nodeId", NodeId), Application.SqlHelper.CreateParameter("@type", FileType), Application.SqlHelper.CreateParameter("@nodeVersion", NodeVersion), Application.SqlHelper.CreateParameter("@downloads", Downloads), Application.SqlHelper.CreateParameter("@archived", Archived), Application.SqlHelper.CreateParameter("@umbracoVersion", ToVersionString(Versions)), Application.SqlHelper.CreateParameter("@verified", Verified), Application.SqlHelper.CreateParameter("@dotNetVersion", DotNetVersion) ); CreateDate = DateTime.Now; Id = Application.SqlHelper.ExecuteScalar<int>("SELECT MAX(id) FROM wikiFiles WHERE createdBy = @createdBy", Application.SqlHelper.CreateParameter("@createdBy", CreatedBy)); FireAfterCreate(e); } else { var e = new FileUpdateEventArgs(); FireBeforeUpdate(e); if (e.Cancel) return; Application.SqlHelper.ExecuteNonQuery( "UPDATE wikiFiles SET path = @path, name = @name, type = @type, [current] = @current, removedBy = @removedBy, version = @version, downloads = @downloads, archived = @archived, umbracoVersion = @umbracoVersion, verified = @verified, dotNetVersion = @dotNetVersion WHERE id = @id", Application.SqlHelper.CreateParameter("@path", Path), Application.SqlHelper.CreateParameter("@name", Name), Application.SqlHelper.CreateParameter("@type", FileType), Application.SqlHelper.CreateParameter("@current", Current), Application.SqlHelper.CreateParameter("@removedBy", RemovedBy), Application.SqlHelper.CreateParameter("@version", NodeVersion), Application.SqlHelper.CreateParameter("@id", Id), Application.SqlHelper.CreateParameter("@downloads", Downloads), Application.SqlHelper.CreateParameter("@archived", Archived), Application.SqlHelper.CreateParameter("@umbracoVersion", ToVersionString(Versions)), Application.SqlHelper.CreateParameter("@verified", Verified), Application.SqlHelper.CreateParameter("@dotNetVersion", DotNetVersion) ); FireAfterUpdate(e); } }
public void Save() { if (Id == 0) { var e = new FileCreateEventArgs(); FireBeforeCreate(e); if (e.Cancel) { return; } using (var sqlHelper = Application.SqlHelper) { sqlHelper.ExecuteNonQuery( "INSERT INTO wikiFiles (path, name, createdBy, nodeId, version, type, downloads, archived, umbracoVersion, verified, dotNetVersion, minimumVersionStrict) VALUES(@path, @name, @createdBy, @nodeId, @nodeVersion, @type, @downloads, @archived, @umbracoVersion, @verified, @dotNetVersion, @minimumVersionStrict)", sqlHelper.CreateParameter("@path", Path), sqlHelper.CreateParameter("@name", Name), sqlHelper.CreateParameter("@createdBy", CreatedBy), sqlHelper.CreateParameter("@nodeId", NodeId), sqlHelper.CreateParameter("@type", FileType), sqlHelper.CreateParameter("@nodeVersion", NodeVersion), sqlHelper.CreateParameter("@downloads", Downloads), sqlHelper.CreateParameter("@archived", Archived), sqlHelper.CreateParameter("@umbracoVersion", ToVersionString(Versions)), sqlHelper.CreateParameter("@verified", Verified), sqlHelper.CreateParameter("@dotNetVersion", string.IsNullOrWhiteSpace(DotNetVersion) ? "" : DotNetVersion), sqlHelper.CreateParameter("@minimumVersionStrict", string.IsNullOrWhiteSpace(MinimumVersionStrict) ? "" : MinimumVersionStrict) ); CreateDate = DateTime.Now; Id = sqlHelper.ExecuteScalar <int>( "SELECT MAX(id) FROM wikiFiles WHERE createdBy = @createdBy", sqlHelper.CreateParameter("@createdBy", CreatedBy)); } FireAfterCreate(e); } else { var e = new FileUpdateEventArgs(); FireBeforeUpdate(e); if (e.Cancel) { return; } using (var sqlHelper = Application.SqlHelper) { sqlHelper.ExecuteNonQuery( "UPDATE wikiFiles SET path = @path, name = @name, type = @type, [current] = @current, removedBy = @removedBy, version = @version, downloads = @downloads, archived = @archived, umbracoVersion = @umbracoVersion, verified = @verified, dotNetVersion = @dotNetVersion, minimumVersionStrict = @minimumVersionStrict WHERE id = @id", sqlHelper.CreateParameter("@path", Path), sqlHelper.CreateParameter("@name", Name), sqlHelper.CreateParameter("@type", FileType), sqlHelper.CreateParameter("@current", Current), sqlHelper.CreateParameter("@removedBy", RemovedBy), sqlHelper.CreateParameter("@version", NodeVersion), sqlHelper.CreateParameter("@id", Id), sqlHelper.CreateParameter("@downloads", Downloads), sqlHelper.CreateParameter("@archived", Archived), sqlHelper.CreateParameter("@umbracoVersion", ToVersionString(Versions)), sqlHelper.CreateParameter("@verified", Verified), sqlHelper.CreateParameter("@dotNetVersion", string.IsNullOrWhiteSpace(DotNetVersion) ? "" : DotNetVersion), sqlHelper.CreateParameter("@minimumVersionStrict", string.IsNullOrWhiteSpace(MinimumVersionStrict) ? "" : MinimumVersionStrict) ); } FireAfterUpdate(e); } }
public void Save() { if (Id == 0) { var e = new FileCreateEventArgs(); FireBeforeCreate(e); if (e.Cancel) { return; } using (var sqlHelper = Application.SqlHelper) { sqlHelper.ExecuteNonQuery( "INSERT INTO wikiFiles (path, name, createdBy, createDate, [current], nodeId, version, type, downloads, archived, umbracoVersion, verified, dotNetVersion, minimumVersionStrict) VALUES(@path, @name, @createdBy, @createDate, @current, @nodeId, @nodeVersion, @type, @downloads, @archived, @umbracoVersion, @verified, @dotNetVersion, @minimumVersionStrict)", sqlHelper.CreateParameter("@path", Path), sqlHelper.CreateParameter("@name", Name), sqlHelper.CreateParameter("@createdBy", CreatedBy), sqlHelper.CreateParameter("@createDate", DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss")), // Note: for some reason this has to be set to 1 else package uploads will fail // Interestingly, this property is never actually used, we use the currentFile // Note2: HACK! This is stored as a type `bit` and you need to pass "1" instead of a boolean 🤷♂️ sqlHelper.CreateParameter("@current", "1"), sqlHelper.CreateParameter("@nodeId", NodeId), sqlHelper.CreateParameter("@type", FileType), sqlHelper.CreateParameter("@nodeVersion", NodeVersion), sqlHelper.CreateParameter("@downloads", Downloads), sqlHelper.CreateParameter("@archived", Archived), sqlHelper.CreateParameter("@umbracoVersion", ToVersionString(Versions)), sqlHelper.CreateParameter("@verified", Verified), sqlHelper.CreateParameter("@dotNetVersion", string.IsNullOrWhiteSpace(DotNetVersion) ? "" : DotNetVersion), sqlHelper.CreateParameter("@minimumVersionStrict", string.IsNullOrWhiteSpace(MinimumVersionStrict) ? "" : MinimumVersionStrict) ); Id = sqlHelper.ExecuteScalar <int>( "SELECT MAX(id) FROM wikiFiles WHERE createdBy = @createdBy", sqlHelper.CreateParameter("@createdBy", CreatedBy)); } FireAfterCreate(e); } else { var e = new FileUpdateEventArgs(); FireBeforeUpdate(e); if (e.Cancel) { return; } using (var sqlHelper = Application.SqlHelper) { sqlHelper.ExecuteNonQuery( "UPDATE wikiFiles SET path = @path, name = @name, type = @type, [current] = @current, removedBy = @removedBy, version = @version, downloads = @downloads, archived = @archived, umbracoVersion = @umbracoVersion, verified = @verified, dotNetVersion = @dotNetVersion, minimumVersionStrict = @minimumVersionStrict WHERE id = @id", sqlHelper.CreateParameter("@path", Path), sqlHelper.CreateParameter("@name", Name), sqlHelper.CreateParameter("@type", FileType), sqlHelper.CreateParameter("@current", Current), sqlHelper.CreateParameter("@removedBy", RemovedBy), sqlHelper.CreateParameter("@version", NodeVersion), sqlHelper.CreateParameter("@id", Id), sqlHelper.CreateParameter("@downloads", Downloads), sqlHelper.CreateParameter("@archived", Archived), sqlHelper.CreateParameter("@umbracoVersion", ToVersionString(Versions)), sqlHelper.CreateParameter("@verified", Verified), sqlHelper.CreateParameter("@dotNetVersion", string.IsNullOrWhiteSpace(DotNetVersion) ? "" : DotNetVersion), sqlHelper.CreateParameter("@minimumVersionStrict", string.IsNullOrWhiteSpace(MinimumVersionStrict) ? "" : MinimumVersionStrict) ); } FireAfterUpdate(e); } }