// Create a namespace for our utilities
var UTIL = UTIL || {};
UTIL.popup = UTIL.popup || {};

/**
 * Open popup window
 * 
 * Opens a popup window using as little as a URL. An optional params object can 
 * be passed.
 * 
 * @param {Object} href
 * @param {Object} params
 * @return {WindowObjectReference}
 */
UTIL.popup.open = function (href, params)
{
    // Defaults (don't leave it to the browser)
    var defaultParams = {
        "width":       "800",   // Window width
        "height":      "600",   // Window height 
        "top":         "0",     // Y offset (in pixels) from top of screen
        "left":        "0",     // X offset (in pixels) from left side of screen
        "directories": "no",    // Show directories/Links bar?
        "location":    "no",    // Show location/address bar?
        "resizable":   "yes",   // Make the window resizable?
        "menubar":     "no",    // Show the menu bar?
        "toolbar":     "no",    // Show the tool (Back button etc.) bar?
        "scrollbars":  "no",   // Show scrollbars?
        "status":      "no"     // Show the status bar?
    };
    
    var windowName = params["windowName"] || "new_window";
    
    var i, useParams = "";
    
    // Override defaults with custom values while we construct the params string
    for (i in defaultParams)
    {
        useParams += (useParams === "") ? "" : ",";
        useParams += i + "=";
        useParams += params[i] || defaultParams[i];
    }
    
    var wo = window.open(href, windowName, useParams);
	wo.focus();
	if (wo.document.readyState==4)
    {
        alert("HEY!!!");
		wo.document.title="HEY!!!";
    }

};



$(function(){ // Run this code when the document's done loading

    // Apply this code to each link with class="popup"
    $("a.popup").each(function (i){
		
		// Add an onClick behavior to this link 
        $(this).click(function(event) {

			// If we already created the popup, just give it focus again
			if ($(this).data("windowObject")) {
				$(this).data("windowObject").focus();
				return;
			}
            
			// Prevent the browser's default onClick handler
            event.preventDefault();
    
            // Grab parameters using jQuery's data() method
            var params = $(this).data("popup") || {};
        
            // Use the target attribute as the window name
            if ($(this).attr("target")) {
                params.windowName = $(this).attr("target");
            }
        
            // Pop up the window
            var windowObject = UTIL.popup.open(this.href, params);
			
            // Save the window object for other code to use
            //$(this).data("windowObject", windowObject);
        });
    });
});