Hello,
I just wanted to share with you my experienve with DNN4.9.
I made it work with Telerik menu.
For this I had to change the "RadMenu.ascx.vb" in "~\DesktopModules\Telerik.SkinObjects" :
1. Adding the following function (given in LocalizationApi Tutorial.pdf) :
Private Function LocalizeTab(ByVal objTab As DotNetNuke.Entities.Tabs.TabInfo) As DotNetNuke.Entities.Tabs.TabInfo
Try
Dim objLocalization As Object
objLocalization = System.Activator.CreateInstance("Apollo.LocalizationApi", "Apollo.DNN_Localization.LocalizeTab").Unwrap
' New Apollo.DNN_Localization.LocalizeTab
Return objLocalization.getLocalizedTab(objTab)
Catch exc As Exception
Return objTab
End Try
End Function
2. Modifiying the Page_Load by replacing the following For..Next code :
For i = 0 To PortalSettings.DesktopTabs.Count - 1
Dim tab As TabInfo = LocalizeTab(CType(PortalSettings.DesktopTabs(i), TabInfo))
With tab 'CType(PortalSettings.DesktopTabs(i), TabInfo)
If (.TabID = PortalSettings.ActiveTab.TabID) Then
FillShowPathArray(arrayShowPath, .TabID, objTabController)
End If
If (.IsVisible And Not .IsDeleted) And _
((.StartDate < Now And .EndDate > Now) Or AdminMode) And _
(PortalSecurity.IsInRoles(.AuthorizedRoles) And Not CheckToExclude(.TabName, .TabID)) Then
temp = New qElement
temp.page = tab 'CType(PortalSettings.DesktopTabs(i), TabInfo)
temp.radMenuItem = New RadMenuItem
If CheckShowOnlyCurrent(.TabID, .ParentId, StartingItemId, iRootGroupId) AndAlso _
CheckMenuVisibility(tab) Then 'CType(PortalSettings.DesktopTabs(i), TabInfo)
If (iItemIndex > 0 And HeaderSeparator <> String.Empty) Then
RadMenu1.Items.Add(CreateHeaderSeparatorItem())
End If
iItemIndex = iItemIndex + 1
temp.item = iItemIndex
PagesQueue.Enqueue(AuthPages.Count)
RadMenu1.Items.Add(temp.radMenuItem)
End If
AuthPages.Add(temp)
End If
End With
Next i
Hope this help,
Regards
Gilles