Dotnetnuke erweiterte Benutzerprofile

Derzeit arbeite ich daran eine Communtiy auf Basis von DNN zu erstellen. Es handelt sich dabei (wie schon mal weiter unten geschrieben) um eine Community rund um das Thema Ernährung, Fitness, usw. (www.lowfett.de). Was ich für DNN nicht gefunden habe ware so etwas wie erweiterte Benutzerprofile, also die Anforderung z.B. auch ein Bild von sich online zu stellen. Jetzt habe ich ein einges Modul dafür entwickel. Dabei habe ich zunächst das Profil um folgende Angaben erweitert Geburtstag Geschlecht Größe Gewicht Sternzeichen Haarfarbe Augenfarbe Bild Diese Informationen werde über die "Whidbey" Implementierung gespeichert. Da dieses allerdings sehr statisch ist und nicht ohne zu programmieren erweitert geändert werden kann, musste noch dynamischer aufgebaut werden. Nun habe ich mich hingesetzt und eine Verwaltung geschrieben, die es einem Benutzer - oder viel mehr Admin - erlaubt ein komplett eigenes Profil zu erstellen. Dabei stehen als Antwortmöglichkeiten folgendes zur Verfügung: Checkboxen (also Mehrfachauswahl) Radiobutton (Einfachauswahl) Comboboxen Freies Textfeld Wenn ich es schaffe, werde ich in den nächsten Tagen davon ein paar Screenshots machen. Durch diesen Mechanismus kann man jetzt weitere Eigenschaften dem Profil hinzufügen (z.B. Hobbies, Interessen, usw.).

Shop / Store bzw. Ecommerce Löung für DotNetNuke in C#

Für die DotNetNuke Plattform gibt es nur eine limitierte Anzahl von ECommererce-Lösungen. Folgende sind derzeit erhältlich: KodHedZ Store CataLook AIS-EC und eine Implementierung des Commerce Starter Kit Nun wird eine weitere Lösung hinzukommen. Da mich keine der Lösungen total überzeugt hat (obwohl CataLook schon fast ein Knaller ist) werde ich nun eine eigenen Implementieren. Eine Schwachstelle soll von Beginn an nicht auftretten: schlechte Usability. Es wird mit Sicherheit noch einige Zeit dauern bis die Lösung fertig ist aber wer noch Zeit zu warten hat .. soll warten :) Ach, es wird ein 100% DNN Modul(e) und komplett in C# entwickelt. Will hier keine Glaubenskrieg oder wilde Diskussionen lostretten, aber ich mag C# lieber ... auch wenn es nur wenige Punkte Vorsprung hat zu VB.Net ;-)  

Deutsche DotNetNuke Community wächst

Seitdem  6. Dezember ist die deutschesprachige Seite dnnportal.de online. Mittlerweile verzeichnet diese Seite täglich 10.000 Zugriffe und die Benutzeranzahl wächst von Tag zu Tag ... Fragen / Antworten / Diskussionen / News .. all das findet man auf dieser Seite. Das ist ein gute Beweis dafür, dass sich DotNetNuke immer mehr durchsetzt und als Portallösung ernst genommen wird.

FreeTextbox in DotNetNuke / Images / Folders

Bei der Imagegallery der FreeTextBox innerhalb von DNN trat immer das Problem auf, dass Ordner ab der zweiten Ebene nicht mehr angezeigt wurden. Egal welche DNN - Berechtigungen gesetzt wurden, lediglich der Host konnte immer alle Ordner sehen. Das Problem bzw. die Lösung ist ganz einfach: In der Datenbank werden die Ordner so abgelegt "MeinOrdner/SubOrdner", bei der Überprüfung der Rechte wird aber "MeinOrdner\SubOrdner" übergeben. Dadurch wird natürlich keine Berechtigung gefunden und die Ordner werden nicht angezeigt. Eine Zeile Code im Projekt "Provider.Ftb3HtmlEditorProvider" ist nötig und schon läuft es wieder. Öffnen der Datei "ftb.imagegallery.aspx.vb" und die Funktion "Page_PreRender" eine Zeile Code einfügen: strDirectory = strDirectory.Replace("\", "/")   Die komplette Funktion sieht dann so aus:   Private Sub Page_PreRender(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.PreRender ' Obtain PortalSettings from Current ContextDim _portalSettings As PortalSettings = CType(Context.Items("PortalSettings"), PortalSettings) 'Get the list of sub-directoriesDim strDirectories As String() = System.IO.Directory.GetDirectories(Server.MapPath(imgGallery.CurrentImagesFolder), "*")Dim alDirectories As ArrayList = New ArrayListDim strDirectory As StringDim roles As StringDim i As IntegerDim s As String 'Parse directories (only adding those we have permission forFor i = 0 To strDirectories.Length - 1    If PortalSettings.ActiveTab.ParentId = PortalSettings.SuperTabId Then      strDirectory = strDirectories(i).Substring(Common.Globals.HostMapPath.Length)   Else      strDirectory = strDirectories(i).Substring(PortalSettings.HomeDirectoryMapPath.Length)   End If    'DANFIX    strDirectory = strDirectory.Replace("\", "/")    roles = FileSystemUtils.GetRoles(strDirectory, _portalSettings.PortalId, "READ")    If PortalSecurity.IsInRoles(roles) Then      alDirectories.Add(strDirectory)   End If Next imgGallery.CurrentDirectories = CType(alDirectories.ToArray(GetType(System.String)), String()) End Sub

DotNetNuke Version 3.0.11 Beta

Das DotNetNuke - Team hat einen neue Betaversion (BETA 3.0.11) lanciert. Diese findet man wie immer unter http://www.dotnetnuke.com.Die Installation verläuft wie immer ohne Probleme, selbst ein Update von der 3.0.10 war möglich. Dieses ist laut Ankündigung die letzte Beta (!) die nächst Version soll eine die 3.0 Final sein.  

Wo ist der Anfang von DotNetNuke?

DotNetNuke ist ein sehr mächtiges und auch ausgereiftes CMS (Content Management System), allerdings hat ein solch mächtiges System immer den üblen Beigeschmack, dass mal als Anwender zunächt hoffungslos überforder ist.Auch wenn die Entwickler von DNN schon eine ganz gut Usability erreicht haben und auch die Installation meist ohne große Probleme verläuft, bleibt die Frage "Wie arbeite ich richtig mit DotNetNuke?". Eine Standardantwort gibt es zunächst nicht, wer jedoch bei diesem Thema individuelle Hilfe braucht, kann sich bei mir melden. (mail at dotnetnukeblog punkt de)  

DotNetNuke: Wie kann ich ein Client - JavaScript zu einem ASCX Control hinzufügen

Wer sich schon immer fragte, wie man bei einem DotNetNuke Modul (bzw. einem ASCX-Control unter DNN) eine eigene JavaScript Datei einbinden kann .. hier die Antwort: Die entsprechende JavaScript Datei in das Visual Studio Projekt aufnehmen Im Page_Load Event folgendes einfügen:Dim jsFilePath As String = ResolveUrl("MeinSkript.js") Me.Page.RegisterClientScriptBlock("MeinSkript.js", " ") Danach sind die Funktionen des Skripts auf dem Client verfügbar. Unter http://www.microsoft.com/germany/msdn/library/net/aspnet/EinfuegenVonClientseitigemSkriptAusEinemASPNETServersteuerelement.mspxfindet man auch noch einen interessanten Artikel von Microsoft zu diesem Thema (generell Client-Skripte einfügen).  

DotNetNuke zu leistungssstark? Benutzer überfordert?

Die Portallösung DotNetNuke ist mittlerweile sehr mächtig. Obwohl die Bedienung in den meisten Fällen sehr Benutzerfreundlich ist, kann man durchaus verschiedenen Dinge optimieren. Diese Erkenntnis km mir gestern, als ich eine „Einführung“ von DotNetNuke gegeben habe.   So war der Entschluss recht schnell gefasst, dass ein paar extra Admin-Module den Komfort und vor allem die Schnelligkeit durchaus erhöhen. Diese sollen dann mehr wie eine Schnellerfassung arbeiten …   Mehr zu diesem Thema .. wie immer ... in diesem Blog.    

DotNetNuke Schnupperkurs

Wer neugierig ist was DotNetNuke ist, was es kann, wo man es herbekommt und so ein richtig schönes KickOff haben will .. es gibt auf der MSDN-Online Seite von Microsoft einen WebCast zum Thema DotNetNuke.   Das Schöne ist dabei, man muss nichts installieren und bekommt trotzdem schon mal einen sehr guten Überblick!   Hier ist der Link: http://www.microsoft.com/germany/msdn/webcasts/detail.aspx?id=100341

Opensource Projekt -> Firebird - Anbindung

Da es für Dotnetnuke mittlerweile nur noch einen Datenbankprovider gibt, wäre es doch sehr schön weiter kostenlose Alternativen zu schaffen. Aus diesem Grund hat sich in den letzten Tagen eine Gruppe zusammengefunden, die sich nun mit der Erstellung allternativer Datenbankprovider beschäftigt.Derzeit besteht das Team aus drei Leuten - Tom www.dbresource.de, Hans-Peter www.dnnportal.de und meiner Person. Bin sehr gespannt wie sich das weiterentwickelt. Die ersten Schritte sind auf jeden Fall gemacht. Wäre doch schön, wenn DotNetnuke nicht nur mit dem MS SQL-Server sondern auch mit Firebirdsql oder MySQL zusammenarbeiten würde .... Mehr in den nächsten Tagen!

Firebird und DotNetNuke

Nachdem ich mich heute den ganzen Abend über mein Notebook geärgert habe und ich es nun neu Aufsetzen muss, brauchte ich auf jeden Fall noch ein Erfolgserlebnis, bevor ich schlafen gehe! In den letzten Tagen ist ein Projekt ins Leben gerufen wurden, dass sich mit DotNetNuke und der OpenSource Datenbank Firebird beschäftigt. Es gibt für DNN 3 leider keine weitern Datenbankprovider. So haben wir beschlossen, eine Unterstützung von Firebird für DNN 3 zu implementieren. Später wollen wir dann auch MySQL mit ins Boot nehmen - Firebird ist quasi zum warm werden. Also; weil mein Notebook so schön arbeitet und nur von Zeit zu Zeit eine CD verlangt, habe ich angefangen meine anderen Rechner mit Firebird auszustatten. Die Installation und Einrichtung verlief ohne Probleme :) und ein paar Minuten später konnte ich auch schon die ersten Daten auslesen. Na das sieht alles ganz gut aus .... mal schauen wie es weitergeht. Alles weiter werde ich hier berichten. Leider ist meine Zeit im Augenblick sehr knapp, da ich gerade versuche mit Hilfe von DotNetNuke die www.lowfett.de neu aufzubauen. Naja, jetzt kann ich später die Augen getrost zu machen gehen. :)   I'm rocking the world, yeah ;-)

Umlaute werden nicht (oder nicht richtig) dargestellt

Dieses liegt an der Einstellung in der Web.Config.Nach der Installation steht dort folgendes:<globalization culture="en-US" uiCulture="en" requestEncoding="UTF-8" responseEncoding="UTF-8" fileEncoding="UTF-8" />Ändert man dieses ab in:<globalization requestEncoding="iso-8859-15" responseEncoding="iso-8859-15" culture="de-DE" uiCulture="de-DE" fileEncoding="iso-8859-15" />oder <globalization requestEncoding="UTF-8" responseEncoding="UTF-8" culture="de-DE" uiCulture="de-DE" fileEncoding="UTF-8" />Werden auch Umlaute wieder richtig angezeigt.

Deutsche DotNetNuke Community

Nachdem ich mich jetzt schon einige Zeit mit dem ständig cooler werdenden freien Portalframework DotNetNuke (DNN) beschäftige, nimmt die Begeisterung keine Abbruch. Neben diesem Weblog kann ich noch die sehr gute deutsche Portalseite empfehlen: DNNPortal. Dort findet man News und Support in deutsch.