protected void gLayoutBlocks_Delete(object sender, RowEventArgs e) { Rock.CMS.BlockInstance blockInstance = blockInstanceService.Get(( int )gLayoutBlocks.DataKeys[e.RowIndex]["id"]); if (BlockInstance != null) { blockInstanceService.Delete(blockInstance, CurrentPersonId); blockInstanceService.Save(blockInstance, CurrentPersonId); _page.FlushBlockInstances(); } BindGrids(); }
public Rock.CMS.DTO.BlockInstance ApiGet(string id, string apiKey) { using (Rock.Data.UnitOfWorkScope uow = new Rock.Data.UnitOfWorkScope()) { Rock.CMS.UserService userService = new Rock.CMS.UserService(); Rock.CMS.User user = userService.Queryable().Where(u => u.ApiKey == apiKey).FirstOrDefault(); if (user != null) { uow.objectContext.Configuration.ProxyCreationEnabled = false; Rock.CMS.BlockInstanceService BlockInstanceService = new Rock.CMS.BlockInstanceService(); Rock.CMS.BlockInstance BlockInstance = BlockInstanceService.Get(int.Parse(id)); if (BlockInstance.Authorized("View", user)) { return(BlockInstance.DataTransferObject); } else { throw new WebFaultException <string>("Not Authorized to View this BlockInstance", System.Net.HttpStatusCode.Forbidden); } } else { throw new WebFaultException <string>("Invalid API Key", System.Net.HttpStatusCode.Forbidden); } } }
protected void masterPage_OnSave(object sender, EventArgs e) { if (Page.IsValid) { using (new Rock.Data.UnitOfWorkScope()) { Rock.CMS.BlockInstanceService blockInstanceService = new Rock.CMS.BlockInstanceService(); Rock.CMS.BlockInstance blockInstance = blockInstanceService.Get(_blockInstance.Id); Rock.Attribute.Helper.LoadAttributes(blockInstance); blockInstance.Name = tbBlockName.Text; blockInstance.OutputCacheDuration = Int32.Parse(tbCacheDuration.Text); blockInstanceService.Save(blockInstance, CurrentPersonId); Rock.Attribute.Helper.GetEditValues(phAttributes, _blockInstance); _blockInstance.SaveAttributeValues(CurrentPersonId); Rock.Web.Cache.BlockInstance.Flush(_blockInstance.Id); } string script = "window.parent.closeModal()"; ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "close-modal", script, true); } }
public void ApiDeleteBlockInstance(string id, string apiKey) { using (Rock.Data.UnitOfWorkScope uow = new Rock.Data.UnitOfWorkScope()) { Rock.CMS.UserService userService = new Rock.CMS.UserService(); Rock.CMS.User user = userService.Queryable().Where(u => u.ApiKey == apiKey).FirstOrDefault(); if (user != null) { uow.objectContext.Configuration.ProxyCreationEnabled = false; Rock.CMS.BlockInstanceService BlockInstanceService = new Rock.CMS.BlockInstanceService(); Rock.CMS.BlockInstance BlockInstance = BlockInstanceService.Get(int.Parse(id)); if (BlockInstance.Authorized("Edit", user)) { BlockInstanceService.Delete(BlockInstance, user.PersonId); BlockInstanceService.Save(BlockInstance, user.PersonId); } else { throw new WebFaultException <string>("Not Authorized to Edit this BlockInstance", System.Net.HttpStatusCode.Forbidden); } } else { throw new WebFaultException <string>("Invalid API Key", System.Net.HttpStatusCode.Forbidden); } } }
public void DeleteBlockInstance(string id) { var currentUser = Rock.CMS.UserService.GetCurrentUser(); if (currentUser == null) { throw new WebFaultException <string>("Must be logged in", System.Net.HttpStatusCode.Forbidden); } using (Rock.Data.UnitOfWorkScope uow = new Rock.Data.UnitOfWorkScope()) { uow.objectContext.Configuration.ProxyCreationEnabled = false; Rock.CMS.BlockInstanceService BlockInstanceService = new Rock.CMS.BlockInstanceService(); Rock.CMS.BlockInstance BlockInstance = BlockInstanceService.Get(int.Parse(id)); if (BlockInstance.Authorized("Edit", currentUser)) { BlockInstanceService.Delete(BlockInstance, currentUser.PersonId); BlockInstanceService.Save(BlockInstance, currentUser.PersonId); } else { throw new WebFaultException <string>("Not Authorized to Edit this BlockInstance", System.Net.HttpStatusCode.Forbidden); } } }
protected void masterPage_OnSave( object sender, EventArgs e ) { if ( Page.IsValid ) { using ( new Rock.Data.UnitOfWorkScope() ) { Rock.CMS.BlockInstanceService blockInstanceService = new Rock.CMS.BlockInstanceService(); Rock.CMS.BlockInstance blockInstance = blockInstanceService.Get( _blockInstance.Id ); Rock.Attribute.Helper.LoadAttributes( blockInstance ); blockInstance.Name = tbBlockName.Text; blockInstance.OutputCacheDuration = Int32.Parse( tbCacheDuration.Text ); blockInstanceService.Save( blockInstance, CurrentPersonId ); Rock.Attribute.Helper.GetEditValues( phAttributes, _blockInstance ); _blockInstance.SaveAttributeValues( CurrentPersonId ); Rock.Web.Cache.BlockInstance.Flush( _blockInstance.Id ); } string script = "window.parent.closeModal()"; ScriptManager.RegisterStartupScript( this.Page, this.GetType(), "close-modal", script, true ); } }
public void UpdateBlockInstance(string id, Rock.CMS.DTO.BlockInstance BlockInstance) { var currentUser = Rock.CMS.UserService.GetCurrentUser(); if (currentUser == null) { throw new WebFaultException <string>("Must be logged in", System.Net.HttpStatusCode.Forbidden); } using (Rock.Data.UnitOfWorkScope uow = new Rock.Data.UnitOfWorkScope()) { uow.objectContext.Configuration.ProxyCreationEnabled = false; Rock.CMS.BlockInstanceService BlockInstanceService = new Rock.CMS.BlockInstanceService(); Rock.CMS.BlockInstance existingBlockInstance = BlockInstanceService.Get(int.Parse(id)); if (existingBlockInstance.Authorized("Edit", currentUser)) { uow.objectContext.Entry(existingBlockInstance).CurrentValues.SetValues(BlockInstance); if (existingBlockInstance.IsValid) { BlockInstanceService.Save(existingBlockInstance, currentUser.PersonId); } else { throw new WebFaultException <string>(existingBlockInstance.ValidationResults.AsDelimited(", "), System.Net.HttpStatusCode.BadRequest); } } else { throw new WebFaultException <string>("Not Authorized to Edit this BlockInstance", System.Net.HttpStatusCode.Forbidden); } } }
public void ApiMove(string id, string apiKey, Rock.CMS.DTO.BlockInstance BlockInstance) { using (Rock.Data.UnitOfWorkScope uow = new Rock.Data.UnitOfWorkScope()) { Rock.CMS.UserService userService = new Rock.CMS.UserService(); Rock.CMS.User user = userService.Queryable().Where(u => u.ApiKey == apiKey).FirstOrDefault(); if (user != null) { uow.objectContext.Configuration.ProxyCreationEnabled = false; Rock.CMS.BlockInstanceService BlockInstanceService = new Rock.CMS.BlockInstanceService(); Rock.CMS.BlockInstance existingBlockInstance = BlockInstanceService.Get(int.Parse(id)); if (existingBlockInstance.Authorized("Edit", user)) { // If the block was moved from or to the layout section, then all the pages // that use that layout need to be flushed from cache if (existingBlockInstance.Layout != BlockInstance.Layout) { if (existingBlockInstance.Layout != null) { Rock.Web.Cache.Page.FlushLayout(existingBlockInstance.Layout); } if (BlockInstance.Layout != null) { Rock.Web.Cache.Page.FlushLayout(BlockInstance.Layout); } } uow.objectContext.Entry(existingBlockInstance).CurrentValues.SetValues(BlockInstance); BlockInstanceService.Move(existingBlockInstance); BlockInstanceService.Save(existingBlockInstance, user.PersonId); } else { throw new WebFaultException <string>("Not Authorized to Edit this BlockInstance", System.Net.HttpStatusCode.Forbidden); } } else { throw new WebFaultException <string>("Invalid API Key", System.Net.HttpStatusCode.Forbidden); } } }
public void Move(string id, Rock.CMS.DTO.BlockInstance BlockInstance) { var currentUser = Rock.CMS.UserService.GetCurrentUser(); if (currentUser == null) { throw new WebFaultException <string>("Must be logged in", System.Net.HttpStatusCode.Forbidden); } using (Rock.Data.UnitOfWorkScope uow = new Rock.Data.UnitOfWorkScope()) { uow.objectContext.Configuration.ProxyCreationEnabled = false; Rock.CMS.BlockInstanceService BlockInstanceService = new Rock.CMS.BlockInstanceService(); Rock.CMS.BlockInstance existingBlockInstance = BlockInstanceService.Get(int.Parse(id)); if (existingBlockInstance.Authorized("Edit", currentUser)) { // If the block was moved from or to the layout section, then all the pages // that use that layout need to be flushed from cache if (existingBlockInstance.Layout != BlockInstance.Layout) { if (existingBlockInstance.Layout != null) { Rock.Web.Cache.Page.FlushLayout(existingBlockInstance.Layout); } if (BlockInstance.Layout != null) { Rock.Web.Cache.Page.FlushLayout(BlockInstance.Layout); } } uow.objectContext.Entry(existingBlockInstance).CurrentValues.SetValues(BlockInstance); BlockInstanceService.Move(existingBlockInstance); BlockInstanceService.Save(existingBlockInstance, currentUser.PersonId); } else { throw new WebFaultException <string>("Not Authorized to Edit this BlockInstance", System.Net.HttpStatusCode.Forbidden); } } }
public void ApiUpdateBlockInstance(string id, string apiKey, Rock.CMS.DTO.BlockInstance BlockInstance) { using (Rock.Data.UnitOfWorkScope uow = new Rock.Data.UnitOfWorkScope()) { Rock.CMS.UserService userService = new Rock.CMS.UserService(); Rock.CMS.User user = userService.Queryable().Where(u => u.ApiKey == apiKey).FirstOrDefault(); if (user != null) { uow.objectContext.Configuration.ProxyCreationEnabled = false; Rock.CMS.BlockInstanceService BlockInstanceService = new Rock.CMS.BlockInstanceService(); Rock.CMS.BlockInstance existingBlockInstance = BlockInstanceService.Get(int.Parse(id)); if (existingBlockInstance.Authorized("Edit", user)) { uow.objectContext.Entry(existingBlockInstance).CurrentValues.SetValues(BlockInstance); if (existingBlockInstance.IsValid) { BlockInstanceService.Save(existingBlockInstance, user.PersonId); } else { throw new WebFaultException <string>(existingBlockInstance.ValidationResults.AsDelimited(", "), System.Net.HttpStatusCode.BadRequest); } } else { throw new WebFaultException <string>("Not Authorized to Edit this BlockInstance", System.Net.HttpStatusCode.Forbidden); } } else { throw new WebFaultException <string>("Invalid API Key", System.Net.HttpStatusCode.Forbidden); } } }
public void ApiMove( string id, string apiKey, Rock.CMS.DTO.BlockInstance BlockInstance ) { using ( Rock.Data.UnitOfWorkScope uow = new Rock.Data.UnitOfWorkScope() ) { Rock.CMS.UserService userService = new Rock.CMS.UserService(); Rock.CMS.User user = userService.Queryable().Where( u => u.ApiKey == apiKey ).FirstOrDefault(); if ( user != null ) { uow.objectContext.Configuration.ProxyCreationEnabled = false; Rock.CMS.BlockInstanceService BlockInstanceService = new Rock.CMS.BlockInstanceService(); Rock.CMS.BlockInstance existingBlockInstance = BlockInstanceService.Get( int.Parse( id ) ); if ( existingBlockInstance.Authorized( "Edit", user ) ) { // If the block was moved from or to the layout section, then all the pages // that use that layout need to be flushed from cache if ( existingBlockInstance.Layout != BlockInstance.Layout ) { if ( existingBlockInstance.Layout != null ) Rock.Web.Cache.Page.FlushLayout( existingBlockInstance.Layout ); if ( BlockInstance.Layout != null ) Rock.Web.Cache.Page.FlushLayout( BlockInstance.Layout ); } uow.objectContext.Entry( existingBlockInstance ).CurrentValues.SetValues( BlockInstance ); BlockInstanceService.Move( existingBlockInstance ); BlockInstanceService.Save( existingBlockInstance, user.PersonId ); } else throw new WebFaultException<string>( "Not Authorized to Edit this BlockInstance", System.Net.HttpStatusCode.Forbidden ); } else throw new WebFaultException<string>( "Invalid API Key", System.Net.HttpStatusCode.Forbidden ); } }
public void ApiDeleteBlockInstance( string id, string apiKey ) { using ( Rock.Data.UnitOfWorkScope uow = new Rock.Data.UnitOfWorkScope() ) { Rock.CMS.UserService userService = new Rock.CMS.UserService(); Rock.CMS.User user = userService.Queryable().Where( u => u.ApiKey == apiKey ).FirstOrDefault(); if (user != null) { uow.objectContext.Configuration.ProxyCreationEnabled = false; Rock.CMS.BlockInstanceService BlockInstanceService = new Rock.CMS.BlockInstanceService(); Rock.CMS.BlockInstance BlockInstance = BlockInstanceService.Get( int.Parse( id ) ); if ( BlockInstance.Authorized( "Edit", user ) ) { BlockInstanceService.Delete( BlockInstance, user.PersonId ); BlockInstanceService.Save( BlockInstance, user.PersonId ); } else throw new WebFaultException<string>( "Not Authorized to Edit this BlockInstance", System.Net.HttpStatusCode.Forbidden ); } else throw new WebFaultException<string>( "Invalid API Key", System.Net.HttpStatusCode.Forbidden ); } }
public Rock.CMS.DTO.BlockInstance Get(string id) { var currentUser = Rock.CMS.UserService.GetCurrentUser(); if (currentUser == null) { throw new WebFaultException <string>("Must be logged in", System.Net.HttpStatusCode.Forbidden); } using (Rock.Data.UnitOfWorkScope uow = new Rock.Data.UnitOfWorkScope()) { uow.objectContext.Configuration.ProxyCreationEnabled = false; Rock.CMS.BlockInstanceService BlockInstanceService = new Rock.CMS.BlockInstanceService(); Rock.CMS.BlockInstance BlockInstance = BlockInstanceService.Get(int.Parse(id)); if (BlockInstance.Authorized("View", currentUser)) { return(BlockInstance.DataTransferObject); } else { throw new WebFaultException <string>("Not Authorized to View this BlockInstance", System.Net.HttpStatusCode.Forbidden); } } }
public void Move( string id, Rock.CMS.DTO.BlockInstance BlockInstance ) { var currentUser = Rock.CMS.UserService.GetCurrentUser(); if ( currentUser == null ) throw new WebFaultException<string>( "Must be logged in", System.Net.HttpStatusCode.Forbidden ); using ( Rock.Data.UnitOfWorkScope uow = new Rock.Data.UnitOfWorkScope() ) { uow.objectContext.Configuration.ProxyCreationEnabled = false; Rock.CMS.BlockInstanceService BlockInstanceService = new Rock.CMS.BlockInstanceService(); Rock.CMS.BlockInstance existingBlockInstance = BlockInstanceService.Get( int.Parse( id ) ); if ( existingBlockInstance.Authorized( "Edit", currentUser ) ) { // If the block was moved from or to the layout section, then all the pages // that use that layout need to be flushed from cache if ( existingBlockInstance.Layout != BlockInstance.Layout ) { if ( existingBlockInstance.Layout != null ) Rock.Web.Cache.Page.FlushLayout( existingBlockInstance.Layout ); if ( BlockInstance.Layout != null ) Rock.Web.Cache.Page.FlushLayout( BlockInstance.Layout ); } uow.objectContext.Entry( existingBlockInstance ).CurrentValues.SetValues( BlockInstance ); BlockInstanceService.Move( existingBlockInstance ); BlockInstanceService.Save( existingBlockInstance, currentUser.PersonId ); } else throw new WebFaultException<string>( "Not Authorized to Edit this BlockInstance", System.Net.HttpStatusCode.Forbidden ); } }
public Rock.CMS.DTO.BlockInstance ApiGet( string id, string apiKey ) { using (Rock.Data.UnitOfWorkScope uow = new Rock.Data.UnitOfWorkScope()) { Rock.CMS.UserService userService = new Rock.CMS.UserService(); Rock.CMS.User user = userService.Queryable().Where( u => u.ApiKey == apiKey ).FirstOrDefault(); if (user != null) { uow.objectContext.Configuration.ProxyCreationEnabled = false; Rock.CMS.BlockInstanceService BlockInstanceService = new Rock.CMS.BlockInstanceService(); Rock.CMS.BlockInstance BlockInstance = BlockInstanceService.Get( int.Parse( id ) ); if ( BlockInstance.Authorized( "View", user ) ) return BlockInstance.DataTransferObject; else throw new WebFaultException<string>( "Not Authorized to View this BlockInstance", System.Net.HttpStatusCode.Forbidden ); } else throw new WebFaultException<string>( "Invalid API Key", System.Net.HttpStatusCode.Forbidden ); } }
public void UpdateBlockInstance( string id, Rock.CMS.DTO.BlockInstance BlockInstance ) { var currentUser = Rock.CMS.UserService.GetCurrentUser(); if ( currentUser == null ) throw new WebFaultException<string>("Must be logged in", System.Net.HttpStatusCode.Forbidden ); using ( Rock.Data.UnitOfWorkScope uow = new Rock.Data.UnitOfWorkScope() ) { uow.objectContext.Configuration.ProxyCreationEnabled = false; Rock.CMS.BlockInstanceService BlockInstanceService = new Rock.CMS.BlockInstanceService(); Rock.CMS.BlockInstance existingBlockInstance = BlockInstanceService.Get( int.Parse( id ) ); if ( existingBlockInstance.Authorized( "Edit", currentUser ) ) { uow.objectContext.Entry(existingBlockInstance).CurrentValues.SetValues(BlockInstance); if (existingBlockInstance.IsValid) BlockInstanceService.Save( existingBlockInstance, currentUser.PersonId ); else throw new WebFaultException<string>( existingBlockInstance.ValidationResults.AsDelimited(", "), System.Net.HttpStatusCode.BadRequest ); } else throw new WebFaultException<string>( "Not Authorized to Edit this BlockInstance", System.Net.HttpStatusCode.Forbidden ); } }
public Rock.CMS.DTO.BlockInstance Get( string id ) { var currentUser = Rock.CMS.UserService.GetCurrentUser(); if ( currentUser == null ) throw new WebFaultException<string>("Must be logged in", System.Net.HttpStatusCode.Forbidden ); using (Rock.Data.UnitOfWorkScope uow = new Rock.Data.UnitOfWorkScope()) { uow.objectContext.Configuration.ProxyCreationEnabled = false; Rock.CMS.BlockInstanceService BlockInstanceService = new Rock.CMS.BlockInstanceService(); Rock.CMS.BlockInstance BlockInstance = BlockInstanceService.Get( int.Parse( id ) ); if ( BlockInstance.Authorized( "View", currentUser ) ) return BlockInstance.DataTransferObject; else throw new WebFaultException<string>( "Not Authorized to View this BlockInstance", System.Net.HttpStatusCode.Forbidden ); } }
public void DeleteBlockInstance( string id ) { var currentUser = Rock.CMS.UserService.GetCurrentUser(); if ( currentUser == null ) throw new WebFaultException<string>("Must be logged in", System.Net.HttpStatusCode.Forbidden ); using ( Rock.Data.UnitOfWorkScope uow = new Rock.Data.UnitOfWorkScope() ) { uow.objectContext.Configuration.ProxyCreationEnabled = false; Rock.CMS.BlockInstanceService BlockInstanceService = new Rock.CMS.BlockInstanceService(); Rock.CMS.BlockInstance BlockInstance = BlockInstanceService.Get( int.Parse( id ) ); if ( BlockInstance.Authorized( "Edit", currentUser ) ) { BlockInstanceService.Delete( BlockInstance, currentUser.PersonId ); BlockInstanceService.Save( BlockInstance, currentUser.PersonId ); } else throw new WebFaultException<string>( "Not Authorized to Edit this BlockInstance", System.Net.HttpStatusCode.Forbidden ); } }
public void ApiUpdateBlockInstance( string id, string apiKey, Rock.CMS.DTO.BlockInstance BlockInstance ) { using ( Rock.Data.UnitOfWorkScope uow = new Rock.Data.UnitOfWorkScope() ) { Rock.CMS.UserService userService = new Rock.CMS.UserService(); Rock.CMS.User user = userService.Queryable().Where( u => u.ApiKey == apiKey ).FirstOrDefault(); if (user != null) { uow.objectContext.Configuration.ProxyCreationEnabled = false; Rock.CMS.BlockInstanceService BlockInstanceService = new Rock.CMS.BlockInstanceService(); Rock.CMS.BlockInstance existingBlockInstance = BlockInstanceService.Get( int.Parse( id ) ); if ( existingBlockInstance.Authorized( "Edit", user ) ) { uow.objectContext.Entry(existingBlockInstance).CurrentValues.SetValues(BlockInstance); if (existingBlockInstance.IsValid) BlockInstanceService.Save( existingBlockInstance, user.PersonId ); else throw new WebFaultException<string>( existingBlockInstance.ValidationResults.AsDelimited(", "), System.Net.HttpStatusCode.BadRequest ); } else throw new WebFaultException<string>( "Not Authorized to Edit this BlockInstance", System.Net.HttpStatusCode.Forbidden ); } else throw new WebFaultException<string>( "Invalid API Key", System.Net.HttpStatusCode.Forbidden ); } }