DotNetNuke



  • I've just had to work with the dotnetnuke (a cms written in vb.net) for the last few hours. I think I might need to call a very special friend of mine. He often wears white and works in a place where they have lots of nice little rooms with padded walls and where you are given nice jackets and in these jackets you hug yourself all day long. Anyway... this lovely piece of software:

    • has almost every link implemented via the DoPostBack() function. Yeah, why use the plain old hyper link when you can have a bunch of javascript code do exactly the same. Surprisingly, it works even in Firefox and Opera, BUT, of course, you can't frickin' open it in a new tab!!
    • Imagine the following scenario: you want to add a new page and edit its content. Sounds simple enough, right? Wrong! Because, you see, you try to add a new page using IE. Ups, you can't, because the javascript code is broken (and why do you even need javascript to click on an icon that just loads a new page?). God knows why you try firefox. It works. Lovely. You start to edit the page. But the rte just wouldn't work in firefox. So you change back to ie. And then when you want to add another page...
    • If you are logged in as a user who has permissions to edit just a certain part of the web page and you want to check one of the other parts (for instance, you can edit the, let's say, 'about' page, but you can't edit the 'news' - you just want to read them) the whole application crashes. Hard. And takes down the whole server.
    Combine that with a totally lazy admin, the most yellowish of all the yellow colours you have ever seen and the three years it took to finish - and you get the shiny new webpage of our school. Or at least something that pretends to be the shiny new webpage of our school. Now I think I'll go and pay that friend of mine a visit...


  • To the funny farm, where life is beautiful all the time, and I'll be happy so see those nice young men in their clean white coats.
    And they're coming to take me away ha haaa



  • [quote user="mare"]has almost every link implemented via the DoPostBack() function. Yeah, why use the plain old hyper link when you can have a bunch of javascript code do exactly the same. Surprisingly, it works even in Firefox and Opera, BUT, of course, you can't frickin' open it in a new tab!![/quote]

    ARRRGH.  I hate web sites that have all of their links like that -- you can't open them in a new tab, and even if you can they'll navigate your main tab to the new page as well.  Petfinder.com comes to mind.  Those are just one notch above are the straight-up Javascript links and popups for things that don't need them (Best Buy's web site is a huge offender in this regard).


  • Considered Harmful

    Oh my God, someone else out there knows my agony!

    I've been working exclusively with DotNetNuke for over a year now.  It has more WTFs than I could possibly list.  We would have to start our own DotNetNuke forum to list them.  I can't even pick the biggest WTF.  It is the embodiment of the term.



  • [quote user="Anonononymous"]To the funny farm, where life is beautiful all the time, and I'll be happy so see those nice young men in their clean white coats.
    And they're coming to take me away ha haaa[/quote]

    Love it.. LOL. My mom used to have that as her answering machine message in the early 90s.



  • That's the one thing I hate about ASP.NET. Almost all sites I see with
    it use links (among other things) with DoPostBack. The dang enter key
    doesn't even work on a lot of the forms that use it. Regardless of the
    "code behind", ASP.NET makes it too easy for people to make bunked-up
    pages. It's going to take me forever to make the switch from ASP to
    ASP.NET. I like the control I have with ASP.



  • [quote user="Saladin"]

    [quote user="mare"]has almost every link implemented via the DoPostBack() function. Yeah, why use the plain old hyper link when you can have a bunch of javascript code do exactly the same. Surprisingly, it works even in Firefox and Opera, BUT, of course, you can't frickin' open it in a new tab!![/quote]

    ARRRGH.  I hate web sites that have all of their links like that -- you can't open them in a new tab, and even if you can they'll navigate your main tab to the new page as well.  Petfinder.com comes to mind.  Those are just one notch above are the straight-up Javascript links and popups for things that don't need them (Best Buy's web site is a huge offender in this regard).

    [/quote]

    Ah, the wonders of the leaky abstraction.

    It's because we needed a hyperlink-ish-thing that worked just like an <input type="button">.

     



  • A lot of this sounds like simply a bad install or hacked customization....

    I have been involved in a significant number of DNN installations before, and as a portal engine, it works great. It has it's problems of course, but your issues are not representative of DNN as far as I have seen. I have never had a problem with DNN being rendered in IE.

    As far as the DoPostBack functionality... while you may not choose to implement a website like this, you are not dealing with a small website written in html...

    When you click a link, the portal engine does many things, including counting access to the pages, and logging them to SQL. This is considered very important to some portal users to gain statistics on their sites. There are also a number of other things this functionality does, but I don't have the time right now to look through it. ( I am about 8000 miles away from home...)

    This also leads to the point that DNN is open source. Go download the source, learn some ASP.net and try to understand how a real portal works before bashing it. I can assure you most of the problems are with YOUR install. Do a fresh install of DNN, and you will see that you don't have these issues.

    You comment about crashing the whole server, well I would hope more than just one person reading this can smell something that stinks here... I have had some pretty messed up ASP.net applications and DNN installs and I have never seen it take down 'the whole server'. There is a thing called application isolation.... you should read about this. If one application is taking out your 'whole server' you have issues far beyond what DNN can be blamed for.

     

    I invite you to examine the real wtf's on this install. I am sure you will find many, but I doubt you will be able to accurately blame the DNN team.



  • In ASP.Net you can use a LinkButton (which looks like a hyperlink, but causes a postback - which posts the form contents back for processing), or you can use a HyperLink which renders like a normal hyperlink tag (and obviously doesnt post form contents). So its really a case of using the wrong tool for the job.

     My pet hate is people that use a LinkButton for navigation and then in the OnClick event handler pull a Response.Redirect(...). So it posts the whole form contents and viewstate back to the original page, goes thru all the initialization steps, starts handling postback events, hits the redirect (which they usually cant even be bothered with the force end execution flag - in this case it executes the entire bloody page apart from the render step), sends a redireciotn back to the client, which then asks for the new page.... :P



  • MasterPlanSoftware: well, yes, I guess I can't say you're wrong, because that's the first time I've ever worked with dotnetnuke  :) Then still, I wonder how it took them over three years to come up with something that looks exactly like the default installation (as far as i can tell from the screenshots on the web) apart from the fluorescent yellow background and a new header image and how they managed to break it that badly :)

     But regarding the DoPostBack - I as the user simply don't care what the portal engine does, I just want the links to behave as I am used them to behave and I as the wanna-be-developer am certain that there are other, less obtrusive ways of achieving the same functionality. 
     



  • [quote user="MasterPlanSoftware"]As far as the DoPostBack functionality... while you may not choose to implement a website like this, you are not dealing with a small website written in html...

    When you click a link, the portal engine does many things, including counting access to the pages, and logging them to SQL. This is considered very important to some portal users to gain statistics on their sites. There are also a number of other things this functionality does, but I don't have the time right now to look through it. ( I am about 8000 miles away from home...)[/quote]

    All of these things can be done without using JavaScript, because they are server-side operations. At least, I freaking well hope that the JavaScript isn't interacting with the SQL database directly. If it is, then that's an even bigger WTF.

    On another note, from the way DNN is being described, it reminds me of the version of Community Server that this very website was based on before.



  • [quote user="MasterPlanSoftware"]When you click a link, the portal engine does many things, including counting access to the pages, and logging them to SQL. This is considered very important to some portal users to gain statistics on their sites. There are also a number of other things this functionality does, but I don't have the time right now to look through it. ( I am about 8000 miles away from home...)[/quote]Is there any reason this couldn't be done with a hyperlink? You click a hyperlink, the server gets a GET request, which tells it exactly where the user wants to go, where he came from, what browser he's using and your cookies.



  • [quote user="mare"]

    I've just had to work with the dotnetnuke (a cms
    written in vb.net) for the last few hours. I think I might need to call
    a very special friend of mine. He often wears white and works in a
    place where they have lots of nice little rooms with padded walls and
    where you are given nice jackets and in these jackets you hug yourself
    all day long.

    [/quote]

       You know someone who works for Microsoft !?!? 

     




  • ROT13('CMS') == 'WTF'


     

     



  • If it's done by the same group as PHPNuke, I'm not at all surprised. Whenever some poor idiot asked about PHPNuke, I'd just copy/paste this gem:

    From the PHPNuke FAQ: If you get lots of Notice lines in your PHP-Nuke output like this: [notice messages] then the error level for the reporting is too high. Set display_errors [sic] so that PHP will display all errors, except notices, in your php.ini.



  • @MasterPlanSoftware said:

    When you click a link, the portal engine does many things, including counting access to the pages, and logging them to SQL. This is considered very important to some portal users to gain statistics on their sites.

    So what? There's no good reasons to break all the links for a damn blasted server side operation that's got nothing to do with the client.

    @phx said:

    In ASP.Net you can use a LinkButton (which looks like a hyperlink, but causes a postback - which posts the form contents back for processing), or you can use a HyperLink which renders like a normal hyperlink tag (and obviously doesnt post form contents).

    Which is a case of retarded naming, most people just want a link, so they'll use the first thing that says link namely "linkbutton". Says link, looks like a link, should be a link right?

    And this is why you see heaps of completely unusable ASP.Net websites.

    The Daily WTF was like that too, I don't remember if it was when it ran CS1 or before Alex customized CS2, but I still have the GreaseMonkey script that got rid of all that retarded JS.


Log in to reply