Tuesday, October 27, 2009

Open a new browser tab from ASP.NET control

To open a new browser tab from ASP.NET control client side scripting must be used (not ASP.NET OnClick). There are few answers on the web how to do that. Some don't work & some are incomplete. The following works with any browser version I've checked:

button.Attributes.Add("onclick", "javascript: window.open('your_url','',''); return false;");

This add a client side event handler "onclick", which overrides the ASP.NET OnClick event. If you put both ASP.NET OnClick event handler & this "onlick" client side handler, only the client side will be executed. You may choose if to add the client side handler at run-time.

Saturday, September 5, 2009

Configuring Option GlobeSurfer II

For some reason it's hard to find some configurations in this router, here goes for what I needed:
Port Forwarding: Connection Settings -> Security -> Port Forwarding
Static Addresses: Advanced -> IP Address Distribution -> Connection List

Wednesday, August 26, 2009

SharePoint writes 'Unknown Error'

The following post was very helpful:
http://koenvosters.wordpress.com/2009/08/06/showing-the-real-error-message-in-sharepoint/ - It Shows how to set the IIS to display the full stack trace.

Monday, August 24, 2009

ASP.NET Error: The resource cannot be found

Check the following:

1. Check that the target resource exists.

2. Check that ASP.NET is enabled on the IIS:
A. Open: Administrative Tools => Internet Information Service (IIS) Manager
B. Expand the server, click on 'Web Service Extension'
C. Verify that ASP.NET is set as 'Allowed'. If not, change it.

Sunday, August 16, 2009

Using multiple JavaScript libraries (Prototype, MooTools, jQuery)

I'm a fan of MooTools (a JavaScript library), and most of the tools I use are based on this library. That said, one of the best JS around is LightBox, which is based on Prototype. However, when I tried using both MooTools & Prototype libraries in the same webpage it failed. I was sure there's a solution so I kept digging in, but I couldn't find any.

Another JS library - jQuery has a special computability function called noConflict which solves those problems, but both MooTools & Prototype lack that functionality.

The only solution I could find: Choose one library - MooTools or Prototype, and use only that library. There are similar implementation of most tools in both libraries.

Sunday, July 19, 2009

Cannot resolve the collation conflict between XXXXXXX and YYYYYYYYY in the equal to operation

This error indicated that the strings in the join operation are from fields created in different collation. In general, it's better to recreate the fields with the same collation definition, but if you're just too lazy, and want to get things done, just cast to problematic field (in this example it's to 'SQL_Latin1_General_CP1_CI_AS'):

SELECT *
FROM A, B
WHERE A.F1 = B.F1 COLLATE SQL_Latin1_General_CP1_CI_AS

Monday, July 13, 2009

WordPress & GoDaddy Windows shared hosting

Wordpress works just fine in GoDaddy shared Windows hosting (IIS7), however when trying to install a plugin I get:

Downloading install package from http://downloads.wordpress.org/plugin/XXXXXX.zip.

Warning: touch() [function.touch]: Unable to create file D:\Hosting\XXXXX\html\XXXXXX.com\blog/wp-content/XXXXXX.zip because Permission denied in D:\Hosting\2804923\html\spassets.com\blog\wp-admin\includes\file.php on line 175

Download failed. Could not create Temporary file

Solution: since no solution can be found on the web, I used the good old method - manual install:
* Download the package from wordpress
* Uncompress and upload to /wp-content/plugins (I just copied from another wordpress I have).

And it works!