public Boolean clearLocked <t>(int id, bool ajax) { dynamic item = ActiveRecordBase <t> .Find(id); bool result = false; if (item.GetType().GetMethod("editing") != null) { HelperService.writelog("Releasing editor from item ", item.editing.nid, item.id); item.editing = null; ActiveRecordMediator <dynamic> .Save(item); result = true; } return(result); }
//This is a generic set of methods that will first check the object has a property //then if it does set it to null if the user is not actively editing it public Boolean clearConnections <t>() { t[] items = ActiveRecordBase <t> .FindAll(); bool result = false; foreach (dynamic item in items) { if (item.GetType().GetProperty("editing") != null) { if (isActive(item.editing)) { HelperService.writelog("Releasing editor from item ", item.editing, item.id); item.editing = null; ActiveRecordMediator <dynamic> .Save(item); result = true; } } } return(result); }