|
|
smcculloch posted on August 06, 2008 08:19 
While working on a major update/rewrite of the shoutbox module available on this site, I've been struck with a bit of a dilemna.
Do I use jQuery or ASP.NET Ajax to build the enhanced ajax functionality?
So far, the jQuery functionality has worked great on the Simple Gallery and Property Agent module.
The requirements for the new enhanced module are:-
- Dyanmic loading of the chat log
- Dynamic posting of a "shout" with auto-update of chat log.
- Templating of layout
There a few reasons why I am leaning towards jQuery:-
- jTemplates allows me to define templates that site administrators can use.
- No problems with enforcing that ajax must be installed on the server.
One concern that I do have:-
- There is no real way to centrally includes libraries such as jQuery, so there is a risk that they maybe loaded multiple times. So far, I've been adding a config option to optionally not include it, but that is hardly practical.
Incidentally, here is the list of planned features:-
- Removal of iframe for ajax functionality and xhtml compliance.
- Flood control
- User banning
- Word Censor
- Better layout for smilies
- Templating
So, a more flexible and powerful shoutbox.
Wednesday, August 06, 2008 11:39 AM
Hi Scott, it's a difficult choice for sure. I've found Rick's blog entry an interesting read: http://www.west-wind.com/WebLog/posts/413878.aspx Cheers, Joe
Wednesday, August 06, 2008 1:33 PM
I think it is worthwhile to consider this. By opening up to other frameworks you are adding a wealth of resources to your toolkit. This is good for you and your customers, and also good for DNN. It is never perfect of course.
Wednesday, August 06, 2008 10:42 PM
I had seen Rick's post earlier, the problem is that it really needs to be a core method for dotnetnuke (registering scripts). A custom script manager for DNN (like the one mentioned in the article) would be excellant.
Thursday, August 07, 2008 2:14 AM
You're fully justified to be concerned about it.. it's a recipe for dll-hell and not the first time it has happened with DNN modules. Recent cases I've been involved with have been over at Onyak, Catalook and also the new core feedback beta. The only way to manage it safely is to specify the minimum required version of the library for the module and link to it on the downloads page. It's really the same as having a minimum required version of DNN - not a drama when it's in the open. Onyak now packages a separate download of RAD dll's and others such as ZLDNN simply refer purchasers to the required download. Them's my pennies on it.
Thursday, August 14, 2008 7:07 AM
Scott, if your open to other client side architecture's I would recommend Dojo. It's an open source project with huge support from major players. Dojo is very deep with solid architecture. http://www.dojotoolkit.org/ I have experience with it and DNN, and so far.. it's a very long runway, we're doing thing we never thought possible on the web with it.
Monday, August 18, 2008 9:12 AM
I am curious which way you are going on this? Of course I know these may be open options for quite awhile.
Monday, August 18, 2008 4:20 PM
I've gone the path of using jQuery with an option to disable it.
Wednesday, September 10, 2008 1:24 PM
I have derided DNN for a while about not handling this type of content better. CSS is another critical web page resource that suffers from being essential a static system. Much could be gained from a system that lets the core, modules and skins request CSS and JS resources dynamically. Any conflicts or duplications would be handled by the system. With Jquery the only viable option is an override but I would also provide a field to allow people to reuse the same files. Or, even better, use a CDN like http://code.jquery.com/jquery-1.2.2.min.js.
Thursday, September 11, 2008 8:23 AM
I think that is a good option for all situations except internal environments where they may not have access to the internet. Though, it would be very rare nowadays.
Thursday, September 11, 2008 9:41 AM
Since tests have shown it is a better user experience to load JS files after the content, a JS template file would be a natural for all of this. It would load under the content and contain all of the files and scripts. This would allow a savvy person to point to a site-wide version or swap out JQuery entirely for another library.
Monday, September 29, 2008 10:13 AM
Just announced!!! Microsoft (DNN ?) to support JQuery http://www.dotnetnuke.com/Community/Blogs/tabid/825/EntryID/2008/Default.aspx I think this will be a great step forward.
Saturday, October 04, 2008 6:23 PM
qqq
Sunday, October 05, 2008 6:26 AM
Within days of Microsoft’s announcement that it would adopt jQuery, a popular open source JavaScript library, DNN Corp jumped on it and starting with DNN 5 RC1 will provide full support for jQuery. Thanks guys! quote taken from: http://seablick.com/blog/articletype/articleview/articleid/126/dnn-5-rc1-released-in-time-for-of-europe.aspx
|