Blog   About   Contact

IE auto content fit IFrame HACK

I ran into 'another' strange IE-browser behavior yesterday. It took me an hour of two to solve this iframe-height-problem.

If you call this.document.body.scrollHeight in an iframe twice, the first value is wrong, but the second value is okay.

Look at the example below:


    function autoFitIFrame(elementId){
        if (!window.opera && !document.mimeType && document.all && document.getElementById){
            parent.document.getElementById(elementId).style.height=this.document.body.offsetHeight+"px";
        }
        else if(document.getElementById) {
            // ErnestoZ HACK: if you call scrollHeight TWICE, the second value is the real height of the iframe
            var scrollHeightWrong = this.document.body.scrollHeight;
            var scrollHeight = this.document.body.scrollHeight;
            alert(scrollHeightWrong);
            alert(scrollHeight);
            parent.document.getElementById(elementId).style.height = scrollHeight+"px";
        }
    }

OFC-CFC: Open Flash Chart - Coldfusion CFC Library

I just released version 1.0 of OFC-CFC on Google Code.

OFC-CFC is a Coldfusion CFC Library which produces JSON-data for Open Flash Chart version 2.0

The real power of Open Flash Chart is, you can update charts using JSON-data. Which means. update your charts using e.g. JQuery or Spry, without reloading a page.

So you can create charts like:

barchartAnimated

Please let me know if you have any questions or remarks.

ColdDoc, created by Mark Mandel, ROCKS!

In case you missed it, check out http://colddoc.riaforge.org/

Another piece of magic by Mark Mandel. It creates docs of your cfcs in JavaDoc-style and most important, it shows inherited methods too!

What do you think...? MySQL Toad

I just came across Toad for MySQL

 image

Please let me know if you think it's worth a try and if it's a good replacement for MySQL WorkBench (which contains more bugs after every update!)

WHOIS your Daddy?

I was playing around with querying a whois server. Actually I didn't know it was that easy...

Here's the code:


<cffunction name="getWhoisData" access="public" returntype="string" hint="I return data from a whois server">
    <cfargument name="whoisQuery" type="string" required="true" hint="e.g. 'domain microsoft' or '?' to show whois server help-commands">
    <cfargument name="whoisServer" type="string" required="false" hint="e.g. whois.ripe.net. Default server is whois.internic.net">

    <cfscript>
        var whoisData = '';
        var whoisClient = createObject("java","org.apache.commons.net.WhoisClient");
        
        // use default whois server?
        if ( not isDefined("arguments.whoisServer") ){
            arguments.whoisServer = whoisClient.DEFAULT_HOST;
        }    
        
        try {
            whoisClient.connect(arguments.whoisServer);
            whoisData = whoisClient.query(arguments.whoisQuery);
            whoisClient.disconnect();
        } catch (Any exception) {
            whoisData = exception.message;
        }

        return whoisData;
    
</cfscript>
</cffunction>

Some examples:


<cfoutput>
    <h1>? [whois.internic.net]</h1>
    <pre>#getWhoisData('?')#</pre>    
    <h1>domain microsoft.com [whois.internic.net]</h1>
    <pre>#getWhoisData('domain microsoft.com')#</pre>
    <h1>=microsoft.com [whois.internic.net]</h1>
    <pre>#getWhoisData('=microsoft.com')#</pre>    
    <h1>registrar TUCOWS INC. [whois.internic.net]</h1>
    <pre>#getWhoisData('registrar TUCOWS INC.')#</pre>    
    <h1>-G -B 192.113.224.88 [whois.ripe.net]</h1>
    <pre>#getWhoisData('-G -B 192.113.224.88','whois.ripe.net')#</pre>    
</cfoutput>

ColdBox Training Seminar, 14-15 March in Ontario

ColdBox Training Seminar will be held in Ontario, California on March 14-15th, 2009.

It is a 2-day hands on intense training on our flagship course: CBOX-101.

Check our press release

It only takes three minutes...

We need some input about our new ColdBox CBOX 101 course.

It only takes three minutes to complete the ColdBox CBOX 101 Training Seminar Survey

Thanks!

JS Calendar - ColdBox plugin

I've created a ColdBox plugin which makes use of JS Calendar of Dynarch.

 

datepicker

 

LIVE SAMPLE (requested by Sana):

JS Calendar Sample

Usage:


<!--- input field 1 --->
<input type="text" id="startDate" name="startDate" value="" />
<img src="includes/img/icons/calendar.gif"
    id="startDate_trigger" style="cursor:pointer;" title="Date selector" />


<!--- input field 2 --->
<input type="text" id="endDate" name="endDate" value="" />
<img src="includes/img/icons/calendar.gif"
    id="endDate_trigger" style="cursor:pointer;" title="Date selector" />

    
<!--- Setup Calender --->
<cfset calendar = getPlugin("Calendar",1)>
<cfset calendar.setInputField('startDate','startDate_trigger','T1')>
<cfset calendar.setInputField('endDate','endDate_trigger')>

<cfoutput>#calendar.render()#</cfoutput>

Downloads:

JS Calendar (unzip and place it in your includes directory. It should look like this: {YOURAPP}/includes/jscalendar/..)

ColdBox Plugin (without JS Calendar!)

ColdBox Spry Plugin 2.0 Released

I've updated the ColdBox Spry Plugin to version 2.0

spryexample

New implementations due many user requests:

  • TextField Validation
  • TextArea Validation
  • Radio Validation
  • Checkbox Validation
  • Select Validation
  • Password Validation
  • Confirm Validation

I also added effect examples to the Spry live sample application.

Download Spry Plugin + Sample App

Finally Bought a REAL Keyboard: 'Das Keyboard'

Remember those keyboards from the old days, like the IBM Model M?
Just bought it and I can't wait for delivery.

daskeyboard

Das Keyboard

More Entries

BlogCFC was created by Raymond Camden. This blog is running version 5.9.004.