Hey Jeff,
Really really nice site. I like the use of FUs- is this going to be in a future version of the core? Or available on the developers exchange?
Thanks Gavin. Well, I've spoken with a couple people from Daemon (not sure if I mentioned it to Geoff though) and they were interested in considering this for v2.4. But that was over a month ago and I haven't approached the idea since. If people are interested in it (including Daemon) I'll spend some time working on it.
In order to make this an option in Farcry (and do it correctly) the code would really need to be cleaned up a bit and some code modifications would need to be made to the core (currently my version is a little specific to this site, but not by much and easily modifiable). Technically all of my custom code is inside the project folder (and nothing is inside the core), however like the current Friendly URL code in Farcry, it would be nice to be able to have configurable settings from within the Admin area.
The final result would allow people to use FU's the old way or the new way. I prefer the new way for many reasons. One main reason is because it doesn't use a text file anymore (this takes care of the corruption issue many people are having), rather it builds the links on the fly (and can cache newer links so that speed is not an issue. Although I am not caching mine and I haven't seen any speed issues).
I also really like the simplicty of the RH navigation. It's something i've been struggling with lately. You may have given me some inspiration there! ;-)
Thanks. I'm not very happy with it though and am considering pulling it. I had to rewrite getDescendants() though (Spike helped me out with that one). It is backwards compatable, but I never sent it into Daemon. In reality the same code changes should be made to getAncestors(), getChildren(), etc (but I never got around to it). The modification does an extra check. When getting nav nodes, not only does it check if the node is 'approved', but it also makes sure it has a valid object under it to display (ex: dmLink, dmHTML, dmInclude, etc). It chekcs against a list of objects as an argument so that you can send in your own custom objects should you have any (or tell it to only check against a specific custom list).
I had previously written a custom method (posted here back in Jan) that did the same thing, but it caused major performance issues (it required you to loop over the results from getdescendants and run this method each time which required a query within each loop... not good). By editing the single query within getDescendants() the result is "much" faster and more reliable.
Also, i'm curious as to how you did the anchor linking on the RH side. Did you use a Regex to find them or something? Also some seem to be nested... like the places of worship here http://www.middlesexhospital.org/go/midGenInfo
I'm glad you asked. I almost forgot about this one. I wrote this back in Setpember 2004. Orignally the client wanted to make IDs on each of the heading tags and then make links manually in the RH nav. I knew this was way too much work to ask of the content editors.
So I knew I'd have to come up with something. At first I wrote custom RegEx solutions, but they were not very reliable, they weer very slow, and they caused CFMX to crash when the user mistakenly had other html tags within the <h*> tags.
The solution? Someone from the CFDJ mailing list helped me come up with a way to have the dmHTML content go through jTidy, return as XML, and replace each <h*> tag accordingly. Then I placed the list results through a cfloop (to make the unordered list you are referring to) and replaced all of the <h*> tags with ids and viola! Okay, its a little more complex than that, but the final result did a few things for me. 1) It runs extremely fast, and 2) it makes sure that the HTML that comes back from Farcry is Tidy. This was extremely nice since I had a requirement to make this site XHTML Strict. There was also a minor problem I had with jTidywhere it didn't replace special windows charaters with the four digit equivalent. Due to Spike's java experience I had him modify the jTidy source (open source) and add a custom method for me. Thanks again Spike ;)
If you really want more info on this I'd be happy to share my code (send me an email off-list). I should probably write about it in more detail on my blog because I've had a few people ask me about it. As for that page (The General Info page) I never had time to break that up into sub pages, but I really should. It looks aweful all on one page like that (I was being rushed to get the site up so there were several areas where shortcuts had to be taken. This was one of them).
Did you find what the header type was to do this? So that it indented <h3>s inside <h2>s?
Read above :)
-Jeff C.
--- You are currently subscribed to farcry-dev as: [email protected] To unsubscribe send a blank email to [EMAIL PROTECTED] Aussie Macromedia Developers: http://lists.daemon.com.au/
