MBC Computer Solutions Ltd.

  • Subscribe to our RSS feed.
  • Twitter
  • StumbleUpon
  • Reddit
  • Facebook
  • Digg

Tuesday, 22 July 2008

Popup Window Manager

Posted on 13:59 by Unknown

I was just reading a post by Rick Strahl about managing popup windows in the browser.  I actually authored a mini popup window manager a while back that tracks windows, allows you to easily close them, and most importantly (for my app I suppose), can prevent the same window from being opened twice, and if encountered, will simply focus that window.

The code is for MS AJAX but could easily be adopted for other platforms.

To use it, you need to register it globally via the pages Load event:

Sys.Application.add_load(function(sender, args) {
                window.popupWindowManager = new Mbccs.Psp.Web.Manager.PopupWindowManager(); 
            });

And to open a window (using the default height and width):

window.popupWindowManager.openWindow('myPage.aspx', false);

If you want to override the width/height:

window.popupWindowManager.openWindow('mypage.aspx', false, 800, 800)

The code looks like:

Mbccs.Psp.Web.Manager.PopupWindow = function Mbccs$Psp$Web$Manager$PopupWindow(url, handle, allowDuplicates) {
    this._url = url || null;
    this._handle = handle || null;
    this._allowDuplicates = allowDuplicates;
}

Mbccs.Psp.Web.Manager.PopupWindow.prototype = {
    get_url : function Mbccs$Psp$Web$Manager$PopupWindow$get_url() {
        return this._url;
    },
    get_handle : function Mbccs$Psp$Web$Manager$PopupWindow$get_handle() {
        return this._handle;
    },
    get_allowDuplicates : function Mbccs$Psp$Web$Manager$PopupWindow$get_allowDuplicates() {
        return this._allowDuplicates;
    }
}
Mbccs.Psp.Web.Manager.PopupWindow.registerClass('Mbccs.Psp.Web.Manager.PopupWindow');

Mbccs.Psp.Web.Manager.PopupWindowManager = function Mbccs$Psp$Web$Manager$PopupWindowManager() {   
    this._windows = [];   
}

Mbccs.Psp.Web.Manager.PopupWindowManager.prototype = {
    openWindow : function Mbccs$Psp$Web$Manager$PopupWindowManager$openWindow(url, allowDuplicates, width, height) {
        var allowOpen = true;
        var previousWindow = null;
        var previousWindowIndex = -1;
        var windows = this._windows;
        // Check for existing
        for(i = 0; i < windows.length; i++) {
            if(windows[i].get_url() == url) {
                allowOpen = windows[i].get_allowDuplicates();
                previousWindow = windows[i];
                previousWindowIndex = i;
                break;
            }
        }       
        if(!allowOpen) {
            if(previousWindow.get_handle().closed) {
                Array.removeAt(this._windows, previousWindowIndex);
                allowOpen = true;
            }
        }
        if(allowOpen) {
            var _width = width || 750;
            var _height = height || 700;
            var winName = 'win' + Math.floor(Math.random() * 100 + 1);
            var curWin = window.open(url, winName, 'width=' + _width + ',height=' + _height + ',resizable=yes,scrollbars=yes');                   
            var win = new Mbccs.Psp.Web.Manager.PopupWindow(url, curWin, allowDuplicates);                       
            this._windows.push(win);
            return win;
        } else {
            previousWindow.get_handle().focus();
            return previousWindow;
        }
    },
    closeAll : function Mbccs$Psp$Web$Manager$PopupWindowManager$closeAll() {
        var curWin = this._windows.pop();
        while(curWin != null) {
            curWin.get_handle().close();
            curWin = this._windows.pop();
        }
    }   
}

Read More
Posted in | No comments

Monday, 7 July 2008

Using Virtual Machine Manager 2008 to manage Virtual Server 2005

Posted on 16:13 by Unknown

I was trying to add a Virtual Server 2005 host to a Virtual Machine Manager 2008 Beta and I kept receiving the following error:

Error (421)
Agent installation failed on MBC02.mbccs.internal because of a WS-Management configuration error. 

Recommended Action
See the Virtual Machine Manager Help for information about configuring WS-Management.

 

Of course, being a beta product, that help section didn't exist and a search for "WS-Management" didn't yield anything.  WS-Management is installed by adding "Hardware Management" from Windows Components > Management and Monitoring tools (WinRM service), and this was installed on my server so I was pretty confused as to why I was receiving this message.

It turns out that you need to install WS-Management v1.1 which is provided as a hotfix from Microsoft.  You can download it from http://www.microsoft.com/downloads/details.aspx?FamilyID=845289ca-16cc-4c73-8934-dd46b5ed1d33&displaylang=en.

 

Hope this helps!

Read More
Posted in | No comments
Newer Posts Older Posts Home
Subscribe to: Comments (Atom)

Popular Posts

  • How to change the temperature scale on a Honeywell T6575 Thermostat
    [The complete documentation can be found at http://customer.honeywell.ca/techlit/pdf/95c-00000s/95c-10897.pdf ]   This was bugging me fo...
  • C# – Converting IP’s to Numbers and Numbers to IP’s in 2 lines of code
    I don’t know why everywhere I searched had such complex implementation of this, but converting from a dotted IP to a number (integer) and ba...
  • Why does iTunes setup need to close Outlook?!
    Everytime I update iTunes I remember why I left it so long - the install process is quite annoying! Can someone please explain to me why it...
  • Mac OSX 10.5.2 Freezing Intermittently
    I've been having an issue with my MacBook (you know, that computer I hide under my desk most of the time) where intermittently, the UI w...
  • ScottGu’s Color Scheme for Visual Studio 2010
    ScottGu was nice enough to provide the world with his awesome Visual Studio 2008 color scheme.  I’ve been using this for many years now an...
  • Don’t forget about the defer attribute for non-essential external scripts
    I was recently reviewing a customers eCommerce site and I noticed that the “Please Wait” page that occurs after completing an order but befo...
  • Windows Search 4.0 Released .....and searching finally works!
    I've been dealing with Outlook 2007's search problems since installing it way back then.  Most frequently, I'd search a keyword;...
  • Recursively finding controls - where to start?
    I love hearing about bugs and problems in components I have authored.  Most people hate hearing about bugs (I assume because they like to th...
  • Dell PowerEdge & Broadcom Issues
    For some time now we've been experiencing a problem across the board with Dell PowerEdge 2900/2950 servers equipped with Broadcom Gigabi...
  • Popup Window Manager
    I was just reading a post by Rick Strahl about managing popup windows in the browser.  I actually authored a mini popup window manager a wh...

Blog Archive

  • ►  2012 (1)
    • ►  February (1)
  • ►  2010 (1)
    • ►  April (1)
  • ►  2009 (7)
    • ►  December (1)
    • ►  November (1)
    • ►  October (1)
    • ►  July (1)
    • ►  April (2)
    • ►  February (1)
  • ▼  2008 (36)
    • ►  November (3)
    • ►  October (2)
    • ►  September (1)
    • ►  August (1)
    • ▼  July (2)
      • Popup Window Manager
      • Using Virtual Machine Manager 2008 to manage Virtu...
    • ►  June (6)
    • ►  May (4)
    • ►  April (1)
    • ►  March (4)
    • ►  February (7)
    • ►  January (5)
  • ►  2007 (35)
    • ►  December (1)
    • ►  November (9)
    • ►  October (3)
    • ►  September (6)
    • ►  August (7)
    • ►  July (9)
  • ►  2006 (3)
    • ►  May (3)
Powered by Blogger.

About Me

Unknown
View my complete profile