I wish I could, but there are some issues I have to address in some old custom modules before I can upgrade my client to version 6. It looks like the bug still exists in 6.1.2, though:
int BannerType = 0;
if (AllowNullBannerType)
{
if (!string.IsNullOrEmpty(BannerTypeId))
{
BannerType = Int32.Parse(Convert.ToString(BannerTypeId));
}
}
else
{
if (string.IsNullOrEmpty(BannerTypeId))
{
BannerType = PortalController.GetPortalSettingAsInteger("BannerTypeId", PortalSettings.PortalId, 1);
}
}
If AllowNullBannerType is false, then BannerType ONLY gets set if BannerTypeId is NOT set (unless I'm totally reading this wrong!) Maybe you could change the code above to:
int BannerType = 0;
if (AllowNullBannerType)
{
if (!string.IsNullOrEmpty(BannerTypeId))
{
BannerType = Int32.Parse(Convert.ToString(BannerTypeId));
}
}
else
{
if (!int.TryParse(BannerTypeId, out BannerType))
{
BannerType = PortalController.GetPortalSettingAsInteger("BannerTypeId", PortalSettings.PortalId, 1);
}
}
That way BannerType gets set to the value passed in IF it can be parsed as an integer, otherwise it gets set to the PortalSetting value. Regardless, we can still work around it by setting AllowNullBannerType=true if we want to use BannerTypeId as an attribute so it's a pretty low priority issue... I just figured I'd share the find just in case it helps someone out.