public CDialogItem[] PersonDisplayEdit(CPerson person) { CDialogItem[] retVal = null; //only if editing existing user if (person.ixPerson > 0 && api.Person.GetCurrentPerson().fAdministrator) { var allowKiln = new CDialogItem(); retVal = new CDialogItem[] { allowKiln }; allowKiln.sLabel = "Kiln Access"; allowKiln.sInstructions = "Is this user allowed to use Kiln?"; if (IsEligible(person)) { var personHasKilnAccess = PersonHasKilnAccess(person).GetValueOrDefault(); allowKiln.sContent = Forms.RadioInput(_radioInputName, "1", personHasKilnAccess, "Yes", "sAllowKilnYes") + Forms.RadioInput(_radioInputName, "0", !personHasKilnAccess, "No", "sAllowKilnNo") ; } else { //set default setting to yes if admin and no if normal user var setDefault = person.IsSiteAdmin(); var enabledAttrs = new Dictionary<string, string> { { "disabled", "true" } }; allowKiln.sContent = Forms.RadioInput(_radioInputName, "1", setDefault, "Yes", "sAllowKilnYes", enabledAttrs) + Forms.RadioInput(_radioInputName, "0", !setDefault, "No", "sAllowKilnNo", enabledAttrs) ; if (!api.SiteConfiguration.IsKilnEnabled) { allowKiln.sInstructions += " (This option is not configurable until Kiln is installed)"; } } } return retVal; }