Dotnetnuke Module Development roadblocks, where is my module? - asp.net

I've been trying to wrap my head around module development for DotNetNuke for the past day and I keep running into roadblocks. Prior to this, being the *NIX/OSX grognard that I am, I have managed to create a Skin and a few Widgets "The Hard Way" by creating the manifest file myself with a python script, coding everything in Textmate and using a Makefile to create the packages anytime I update it, then installing it onto a remote development site on some shared hosting. However, I want to try things the "DotNetNuke way", so I've been looking around for instructions now that I've got a Windows VM up and running.
From what I've found, this is what you're actually supposed to do:
Create a local dotnetnuke website.
When the dotnetnuke website has been created, go to Host -> Extensions -> Create Extension
Select Module and fill out all the forms.
Open up the website in Visual Studio.
Find your module in the <site>/DesktopModules and start hacking away at it
When you want to redistribute your package, go to Host -> Extensions -> Edit Module -> Create Package.
There are a couple of problems with this, however. I get as far as step 5, and for some reason I can't seem to find my module in DesktopModules. I have tried looking elsewhere in the directory tree for my test module and I can't find it anywhere. In addition, when I try editing a package, I can't see any "Create Package" button.
Any ideas where I'm going wrong? I'm using the absolute latest DotNetNuke as of this writing (5.6.0), by the way.
Update: Okay, feeling a little foolish I first have to create the module in Visual Studio, then create the module in the website and attach it to the manifest of my module. However, when I do this, my site blows up because it seems to assume that I'm using a company name of "YourCompany". Fine. I revert, delete the module and try again but creating my module with a namespace of my company name doesn't seem to change any "YourCompany" names, they're still all over the created files. What in the heck is going on here?

You need to do a search and replace in the entire project as well as the settings in the Projects settings. Also here is a link that may help link

Have a look in the project/solution properties under application make sure root namespace is not YourCompany

Related

Aptana Studio Code Assist for WordPress is incomplete

I installed the WordPress bundle/ruble for Aptana Studio, but it's only providing code assistance for a subset of WordPress functions. I'd like code assistance for all WordPress core functions (or as many as possible). My projects have PHP as their nature, and are connected via SFTP to remote WordPress installations.
After the bundle (which hasn't been updated in over a year) didn't provide everything I was looking for, I tried using a local copy of WordPress as an external library, then adding it as an external directory to the PHP Buildpath. Neither one added any more functions than the bundle provided. These actions were suggested in Aptana Studio Support and WordPress Answers.
Am I doing something wrong, or is the level of code assistance I'm looking for not available?
It's true that the WordPress bundle offers just some limited auto-completion support. Though including the local copy of another WordPress installation as a PHP external library seemed to solve this in the latest Aptana Studio version (3.4.0,) as you already mention to have tried, and as it is suggested in this one of the links that you pointed out.
Here are all the specific steps I took, so you can check if there was something different in the procedure you followed.
Open the Preferences menu going to Window > Preferences
Select Aptana Studio > Editors > PHP > Libraries
Click "New user library"
Add the path to another local WordPress installation (not the same WordPress files in the current project,) selecting the root folder of a freshly extracted WordPress download (e.g.: C:\wordpress-3.5.1\wordpress)
Make sure the new library is selected in the user libraries list (marking it with a checkmark next to the library icon.)
Apply the changes and press OK
Make sure your project is a PHP project. Right click the project folder, select Properties > Project Natures and mark the PHP checkbox.
Now, inside PHP code, I get autocompletion suggestions for all core WordPress functions - and I can even go to check their source by pressing F3 on their function name.
I followed the steps of E. Serrano and it works perfectly. What is silly is that if you want autocompletion for, say, add_action('wp_print_footer_scripts', 'scripts.js', 1); the moment that you type the quote, autocompletion is lost... if you try add_action( wp_ you get all WP commands. Hope it helps...

I need a sensible and simple Plone project directory structure

I've been asked to build a website with Plone. I would also like to use git version control for this project. Ideally, I would have all the work I do stored in one directory -- my project directory -- which will also make version control simple. Can anyone point me to a resource that explains how to do this?
We keep our company project skeleton at https://github.com/niteoweb/niteoweb.skel.plone.
It has some of our internal specifics, but should be usable. At least as a point of reference.

PHPStorm - Link external SFTP-folders into project

the issue i am fighting through is a bit complicated. Ill explain the setup envoironment to you first.
I am using PHPStorm to work on a Symony2 Project.
My Apache is hosted on a Debian-VM connected to PHPStorm via "Deployment Tool".
/* So far: I can edit code and update the server automaticaly on save. Works*/
My problem now is, that i am using the composer, which is ment do get me the right bundles into the vendor folder.
I WANT to create kind of a symlink from the server directly into the project.
I DONT WANT to download the vendor folder from the server hard into the project.
COMPACT:
I want to create a symbolic link within a PHPStorm project. Linking a folder from a server into the Project. The linked in folder should be unidirectional updated on source change. The Classes and Namespaces should be known to the Project.
Is there any native way to get this done?
Or does anyone know a plugin which could handle such affairs?
I hope i expressed my point clearly :/ Please ask, if anything is unclear.
Greetings and thanks upfront.
It's not possible to do directly from PhpStorm, see the related issue. You can use some third-party tool like ExpanDrive to map a server directory to the drive letter by SFTP and then add this local directory as a content root to your PhpStorm project. Note that it may affect the performance dramatically.

Aptana Studio 3 What is a workspace

Could some one explain to me what a Workspace space is in Aptana and how to use them? My main problem is that I don't even understand the concept of the Workspace and I can find no documentation anywhere (and I've looked quite a lot) that explains this.
Sorry if sounds like a stupid question but I want to try using an IDE rather than Notepad++ to see if I like it and I'm really stuck on what the concept of a Workspace is.
The workspace is place you adding your projects. Aptana is built on eclipse, so you can read about workspace in eclipse. http://archive.darronschall.com/weblog/2006/01/getting-friendly-with-eclipse-workspaces.html
Workspace is the area where you load all your current active projects. It makes it easier for you to access them at one place rather than always have to navigate to your project directory. As an example, you may have a zend project in your zend framework directory but another HTML project sitting in your public directory. These two projects will be inside your workspace such that a single click in them brings the entire project to the side bar.

Include another MSI file in my setup project

I'm trying to make a setup program for an ASP.NET web site. I need to make sure the target machine has sqlxml installed.
I must verify the target machine has the software installed, and if not, launch a .msi file either before or after the main installation.
I'm a complete newbie with setup projects, so maybe this is obvious, but after several hours browsing the web I haven't found a satisfactory solution. I've been reading about WiX, etc. but I'm looking (if possible) for a simple solution.
Thank you both!
I understand an installer can't run another one. I was thinking in a functionality similar to Prerequisites (in project properties). There I can check a component and it will be automatically installed if it isn't. I don't need to do anything else. But, the most important thing for me is that the installation won't run if it's not needed.
I also tried the .msm solution, but I couldn't find any. Maybe I can make one myself? I haven't tried it yet though.
Unfortunately, you can't run one installer from another, since only one can be running at a time. You need to chain them together and run one after the other. Google "msi chaining". This is often the reason why products like Visual Studio use an external setup.exe which then runs the installers one after the other.
Looks like you need to 'chain' the installs http://objectmix.com/xml-soap/84668-installing-sqlxml-net-app.html
You can get the redist here http://www.microsoft.com/downloads/details.aspx?FamilyID=51D4A154-8E23-47D2-A033-764259CFB53B&displaylang=en
CAn you add this as a pre-req for your install?
What are you using to build the create the install?
Edit:
I had a look to see how you can check of the SQLXML is installed and come across this:
http://www.tech-archive.net/Archive/SQL-Server/microsoft.public.sqlserver.xml/2005-04/msg00110.html
The system I am on just now has the following key HKEY_CLASSES_ROOT \ SQLXMLX (note the X at the end), so you might need to do a bit more investigation in to what the actual key is.
I'm not familer with Visual Studio install authoring but if you can add an entry to the AppSearch and RegLocator tables you should be able to check for the existance of the registry key when the install starts. See here
http://msdn.microsoft.com/en-us/library/aa371564(VS.85).aspx
The Reglocator table gives you the option to set a property with a value from the registry if found. You can then use this in the condition on a custom action.
A lot to put together, but I hope it move you in the right direction.
Brent's answer is correct. I would just add that, sometimes, you can find a "merge module" for the bits you depend on. That's a .msm file. You can certainly include 1 or more of those in your .msi file. I have no idea whether a merge module is available for SQLXML. Sorry.

Resources