In case you were wondering how you get dojo code support in PHPStorm even if dojo is not in your project folder, here’s the solution:

Make code assist for dojo work if it is in an external directory.
1. Open Project Settings
2. Select Directories
3. Add the path to your dojo folder as a new Content Root.
4. Mark the directories dijit, dojo, dojox as a Resource Root
That’s it.
Just a quick post about the new PHP IDE by JetBRAINS. So far I’ve been working with Aptana Studio. I also tried NetBeans and Comodo Edit, but none was really satisfying, because either dojo or ftp support was missing (if I find time, I’ll write a post in more detail about the differences between those IDEs).
But now there is PhpStorm. I’m really impressed and enthused by its features, especially code completion for JavaScript. Since JavaScript is a loosely typed language, it’s difficult to write a good code assist. But PhpStorm just picks up everything. For example, if I use dojo.hitch to set the scope of a function, it catches what ‘this’ refers to within the anonymous function !

PHPStorm's amazing code assist in action. Notice that setting the scope with dojo.hitch is reflected in code assist!
It took me a long time to figure out how to check if a node in a dijit.tree is already set to selected, when the user clicks on it. So I thought I share what I found out:
dojo.connect(this.tree, 'onMouseDown', this, function(evt) {
var node = dijit.getEnclosingWidget(evt.target);
if (node.item == this.tree.attr('selectedItem')) {
console.debug('selected');
}
});
February 13th, 2010
Simon
I only started recently to dig into REST, so I’m in no way an expert in this field. There are not that many tutorials on the internet, and the ones I found were only of limited help. They all seemed to miss something or, rather, I missed something. So I decided to write my own tutorial about my findings to help others that might have the same problems. On the client side, I’ll use the Dojo Toolkit, on the server side, PHP.
I will focus mainly on providing and explaining some working code examples including server PHP code. At the end of this article you can find all code as a downloadable zip-file. As an introduction to REST, read some of the tutorials linked at the end of this article, because I’m not going to repeat some of the things you can read there.
Demonstration eines mit der Bibliothek Dojo erstellten Layouts, in welchem die Dijit-Klassen BorderContainer, TabContainer und ContentPane zur Anwendung gelangen.