I belive, there is an error in /Admin/Skins/Banner.ascx.cs:
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
if (PortalSettings.BannerAdvertising != 0 && Visible)
{
int BannerType = 0;
if (AllowNullBannerType) // shoud be: if (!AllowNullBannerType)
{
if (!string.IsNullOrEmpty(BannerTypeId))
{
BannerType = Int32.Parse(Convert.ToString(BannerTypeId));
}
}
else
{
if (string.IsNullOrEmpty(BannerTypeId))
{
BannerType = PortalController.GetPortalSettingAsInteger("BannerTypeId", PortalSettings.PortalId, 1);
}
}
In original variant, if you specify:
<dnn:BANNER ID="dnnBANNER1" runat="server" GroupName="MyBanners" BannerTypeId="4" BannerCount="4" Orientation="H" AllowNullBannerType="true" />
you'll get only banners of type 4. And if you specify:
<dnn:BANNER ID="dnnBANNER1" runat="server" GroupName="MyBanners" BannerTypeId="4" BannerCount="4" Orientation="H" />
you may get no banners at all, because BannerTypeId from PortalSettings is used. This error persists since DNN 5.