  var refreshTool = {};
  var gearTool = {};
  var pinTool = {};
  var closeTool = {};
  var refreshTool = {};
  var maximizeTool = {};
  var tools = [];
  var toolsError = [];
  var toolsMax = [];
  var singleColumn = [];
  var twoColumnsLeft = [];
  var twoColumnsRight = [];
  var threeColumns = [];
  var threeColumnsMiddle = [];

  function makeSingleColumn(items, columnWidth, style){
    return [{
                columnWidth: columnWidth,
                style: style,
                cls: loggedIn == true?'portalColumn_A x-ColumnHighlight':'portalColumn_A',
                items: items
            }];
  }
  function makeTwoColumns(itemsA, columnWidthA, itemsB, columnWidthB, style){
    return [{
                columnWidth: columnWidthA,
                style: style,
                cls: loggedIn == true?'portalColumn_A x-ColumnHighlight':'portalColumn_A',
                items: itemsA
            },{
                columnWidth: columnWidthB,
                style: style,
                cls: loggedIn == true?'portalColumn_B x-ColumnHighlight':'portalColumn_B',
                items: itemsB
            }];
  }
  function makeThreeColumns(itemsA, columnWidthA, itemsB, columnWidthB, itemsC, columnWidthC, style){
    return [{
                columnWidth: columnWidthA,
                style: style,
                cls: loggedIn == true?'portalColumn_A x-ColumnHighlight':'portalColumn_A',
                items: itemsA
            },{
                columnWidth: columnWidthB,
                style: style,
                cls: loggedIn == true?'portalColumn_B x-ColumnHighlight':'portalColumn_B',
                items: itemsB
            },{
                columnWidth: columnWidthC,
                style: style,
                cls: loggedIn == true?'portalColumn_C x-ColumnHighlight':'portalColumn_C',
                items: itemsC
            }];
  }
  
  Ext.onReady(function(){
    // create some portlet tools using built in Ext tool ids    
    refreshTool = {
                        id:'refresh',
                        qtip: 'Refresh',
                        handler: function(e, target, panel){
                            panel.storeFN(panel);
                        }
                      };
    pinTool = {
                      id:'pin',
                      qtip: 'Widget Style',
                      handler: function(e, target, panel){
                          windowModuleLayout(panel);
                      }
                    };
                    
    gearTool = {
                      id:'gear',
                      qtip:'Config Widget',
                      handler: function(e, target, panel){
                        if(panel.storeParams.keyword=='page'){
                          var dID = panel.storeParams.dataID
                          callEditor({winName : 'page_win_'+dID, editorType: 'page', editorGCDID: '0', editorDataID: dID, titleMaxLen: 40, myPortlet: panel});
                        }else{
                          windowModuleConfig(panel);
                        }
                      }
                    };
    pageTool = {
                    id:'gear',
                    qtip:'Edit Page Widget',
                    handler: function(e, target, panel){
                      if(panel.storeParams.keyword=='page'){
                        var dID = panel.storeParams.dataID
                        callEditor({winName : 'page_win_'+dID, editorType: 'page', editorGCDID: '0', editorDataID: dID, titleMaxLen: 40, myPortlet: panel});
                      }else{
                        windowModuleConfig(panel);
                      }
                    }
    };
    closeTool = {
                      id:'close',
                      qtip: 'Delete Widget',
                      handler: function(e, target, panel){
                          Ext.Msg.show({
                             title:'Delete Widget?',
                             msg: 'You are about to delete a portal widget. Are you sure you want to do this?',
                             buttons: Ext.Msg.YESNO,
                             fn: function(r){
                               if (r=='yes'){
                                Ext.Msg.wait('Please Wait...', 'Deleting Portal');                          
                                Ext.Ajax.request({
                                   url: '/ajax/portals/deletePortal.cfm',
                                   method: 'GET',
                                   'params': { pID: panel.storeParams.portletID},
                                   reader : new Ext.data.JsonReader({
                                    success : '@success'
                                   }),
                                   success: function(response, opts) {
                                      var obj = Ext.decode(response.responseText);
                                      if (obj.success){
                                        Ext.Msg.hide();
                                        panel.ownerCt.remove(panel, true);
                                      }else{
                                        Ext.Msg.alert('Error Creating Portal', 'There was an error creating the specified portal. Please try again.');
                                      }
                                   },
                                   failure: function(response, opts) {
                                    Ext.Msg.alert('Error Creating Portal', 'There was a problem communicating with the server. Please check your internet connection and try again.');
                                   }
                                });   
                               }else{
                               }
                             
                             },
                             animEl: 'elId',
                             icon: Ext.MessageBox.QUESTION
                          });
                      }
                    };
    permsTool = {
                      id:'perms',
                      qtip: 'User Permissions',
                      handler: function(e, target, panel){
                          new windowPermissionUsers(panel);
                      }
                    };
    maximizeTool = {
                          id:'maximize',
                          qtip: 'Maximize',
                          handler: function(e, target, panel){
                              var win = new Ext.Window({
                                  height: 500,
                                  minHeight: 500,
                                  width: 600,
                                  minWidth: 600,
                                  modal: true,
                                  ownerPanel: panel,
                                  layout: 'fit',
                                  maximizable: true,
                                  maximized: false,
                                  title: panel.title,
                                  items: new Ext.Panel({
                                      border: false,
                                      autoScroll: true,
                                      padding: 10,
                                      html: panel.body.dom.innerHTML
                                    }),
                                  buttons: [{text: 'Close', handler: function(p, e){win.close();}}]
                                });
                              win.show();
                              
                            }
                        };
    
    tools = [gearTool,pinTool,closeTool];
    toolsError = [gearTool,closeTool];
    toolsMaxAdmin = [gearTool,pinTool,closeTool];
    toolsMaxAdminPage = [pageTool,pinTool,closeTool];
    toolsMax = [maximizeTool];
    
  });
