Can this be done by skinning? - dotnetnuke

I am working on DNN 4.09.03. I want to modify the look and feel of a links module. I know how to change the outer looks with containers, but I want achieve a mouseover effect for the links itself.
Looking closely it appears that the links are placed into a table datacell. I want to set the background of that cell to and image, and on mouseover swap it for another image. Can this be done with skinning?
If not, I need some assistance in extending/customising the links module source. I need to know how to set up the development environment to do this first. I have the DotNetNuke solution (with source code) working in VS2008. How do I integrate the source of the links module, so i can customise it (and rename - maybe mylinks)?

I don't think you can do this by containers. If you can do it by any chance, I bet doing it by modifying the code is easier. You have to remember that you might have problems upgrading the links module in future if you modify it.
Just add the Links module to DNN VS2008 solution as a web application. You can do whatever change you won't to do in it. And then use a nant script to just package it and copy to DNN/Install/Modules folder. And then hit the DNN installation URL:
http://<dnn_url>/Install/Install.aspx?mode=installresources
Alternatively you can write some post-build commands in VS2008 it self to copy stuff. Have a look at the existing modules and where each different part files of a module (.ascx, .dnn, .sqldataprovider) is stored in DNN after installation.

This is possible with some creative CSS and maybe even a little jQuery - i did a lot of this sort of thing for the Blog module without having to touch the core module -

Related

Seeing calls to analytics.tiktok.com in our DNN site

We have a DNN site and I noticed on our home page that the dev tools show an error with an events.js file that is trying to call "analytics.tiktok.com". It is being blocked. I don't know if this is purposeful and I've searched our DNN modules code but haven't found an such reference.
The other devs can confirm they haven't added such code. I've searched the code folders for a file named events.js but haven't found one. I'm aware that DNN has large portions of it that are data driven but I don't know what tables to query to see if there's code that has that URL.
Is anyone aware if DNN or kendo controls has an references to tiktok?
It is definitely not part of DNN.
Another place to look for these calls are the skin (theme) controls in use, or the default.aspx. Anyway, if no one is aware of this stuff, I would check if you have a security hole (old Telerik libraries, unsafe passwords in FTP accounts...)
I would start by looking at the location in which that is embedded into the source of your webpage. Depending on where it is, that might help you track down "where" it is coming from.
It could be coming from inside source for a module, in the content of a module, in module settings, in a container, in a skin/theme, etc.

What would I need to change when copy pasting a React.js app?

I've built for myself a template that I'd like to use for all my projects. It has all my favorite styles set up, certain components etc.
If I want to start a new project, can I just copy paste this whole folder and rename it?
I am new to React and don't know exactly what happens under the hood. Other than making sure external services are reconfigured properly (for example Firebase), is there anything else I'll need to change? Is there any unique stamping created when I use create-react-app? Or is a simple copy-paste completely safe to use?
Yes copy paste will work, But make sure you run npm install first.
you can use this repository as a template repository for your other projects. To make this a template repository on GitHub, go to settings and under options tab check template repository.
template repository snippet

How to create a hello world DNN module from scratch

I've been looking for tutorials on making modules for DNN, and all of them seem to suggest starting from a huge template and then adding what you need to it, but I'm sure there is a way to build a very small, lightweight module with just the barebones. Just use an ASCX view, and show it on the screen. What is the simplest hand-written "Hello World" DNN module? If you really do need a whole lot of extra stuff in a module for it to work, what is the cleanest way to get a module template?
Background: I've come from front-end development, and I'm looking for a way to package my front-end scripts and styles together, then just use a single file as an AJAX endpoint to query to retrieve the data.
Depending on your DNN version, there is an easy way to create a simple module within DNN itself.
When you go to "Host > Extensions", there is a button with something like "Create new module". Fill out the fields and it will create a module for you that you can use like any other.
When the module is added to a page you can edit the source code (C# / VB) in the module itself.
This is the fastest way to create a basic module. But I would still recommend the template from Chris Hammond. It is slightly more complex but will be easier to maintain and can be packaged as a standalone installer for other DNN installations.

Using qooxdoo desktop without having to "build" it

in qooxdoo desktop you usually have to develop using the SDK and then "build" your app.
Is there a way to generate something like a qooxdoo.js file with the whole library inside so that you can script script it as you like (like jqueryui or dojo)?
Actually it could be nice to have every widget loaded at runtime like dojo's require("dojo.button") but both the approaches would be nice, just avoiding the build phase.
I hope the question is understandable :)
Thank you everybody!
Don't use the output of the build job to run your code as you develop - as among other things - will minify your code and make debugging very difficult.
If you want to code freely without needing to rebuild when you reference new classes then source-all is the build job for you.
In the root directory of your application, type:
python generate.py source-all
If will include the entire framework in the HTML file generated (you'll find it under source/index.html). This would work well if you are composing the UI from scratch and referencing many new qooxdoo widgets with each browser refresh.
If you add a completely new class of your own, you will need to run the source-all job again to include it.
I use the source build job however for a few reasons:
Habit: source-all didn't exist when I started using qooxdoo
Speed: You can notice a bit of lag it when you refresh the browser to view
your app
References: For a mature app, enough of the framework is
included in the application and its rare to add a new reference and
when you do, its probably in a new class of your own which would
require a re-run of the source job anyway.
I suggest you also look at Default Action Jobs as all the possibilities are explained in detail. Hope this helps.
Please check that thread for a detailed answer: http://qooxdoo.678.n2.nabble.com/Using-qooxdoo-desktop-without-having-to-build-it-td7585015.html;cid=1387453759247-228

DotNetNuke Module Packaging

Does anyone know of any simple, concise tutorials for packaging DotNetNuke modules for DotNetNuke 4 and DotNetNuke 5? Preferably something concerning DotNetNuke 5.4, since that's what I'm running.
The examples that I've seen all assume background knowledge, or they are about short-cuts to the existing process. I'm a beginner, so I need the simple basics.
Yeah, it's kind of a nightmare the first time.
I started here: Creating a DotNetNuke® Module - For Absolute Beginners! It's DNN 4.x, so a few of the conventions may have changed, but it will probably be close enough to get you going.
Creating a DNN Module and Understanding DNN Architectural Approach goes into more detail:
I suppose the important concept is: you're writing a WebControl using the MVC pattern. The DNN Module Wizard will create a "view" page for you, and you add code to suit.
there's some good resources here for info on packages:
http://www.dotnetnuke.com/Community/Blogs/tabid/825/EntryId/1140/Packaging-and-protecting-your-DotNetNuke%C2%AE-Module.aspx
by Michael Washington (mentioned above)
http://www.dotnetnuke.com/Development/Forge/ModuleReports/tabid/970/EntryId/453/DotNetNuke-4-3-Starter-Kit-and-Item-Templates.aspx
by Shaun Walker
Simple basics...
When you start with the DNN module template in Visual Studio there's a standard .dnn file there. this file must be modified to include all files needed to run the module (resx, images, dlls, ascx, .sqldataprovider) without any of the sourcecode files (.cs, .vb).
zip all of the files mentioned in the .dnn file up with the dnn file (all files in root of the zip) and submit it to the upload new module page (logged in as Host).
the zip is automatically extracted, the .dnn file is read and all files are placed in the appropriate places.
resources for creating packages:
http://www.codeproject.com/KB/dotnet/DnnModulePackager.aspx
http://www.mitchelsellers.com/blogs/articletype/articleview/articleid/200.aspx
by looking at these you can also further your understanding of package creation.
i'm using 4.9 currently so someone may want to correct me on changes that i'm unaware of.
Google for Michael Washington and / or Mitchel Sellers and they have excellent work on Module Development.
Mark Breen
Ireland
Chris Hammond has recently written two blog posts on dotnetnuke.com about packaging modules, you should really have a look that those, they are super, he tells you how to set up your environment and how to create a C#Template for your modules.
thanks
Mark
A good place to start is use the IFrame module. It's all code behind so no compile needed before deployment. Look in the dnn file to see where the files are copied to.
You might also want to look at https://github.com/dazinator/DnnPackager which is a NuGet package that when added to your module project, automates production of the install zip, and has other features

Resources