The blog has moved to http://jessehouse.com/ ... Many google searches point here so I am leaving it operational, but there will be no new posts.

Friday, September 25, 2009

Attribute "target" exists, but can not be used for this element.

These days I am all about valid xhtml and was surprised to receive this validation error when using the target attribute on an anchor tag.
Attribute "target" exists, but can not be used for this element.


I found a nice work around that does not involve window.open, using jquery we can hack the attribute on 'after' the dom has loaded.



Now instead of target='_blank' you can just use class='target-blank', if the browser does not support javascript it will not open in a new window but the link will still work - and we have our valid xhtml.

Resources

Wednesday, September 2, 2009

Procedure sp_droplogin, Line 93 Login is aliased or mapped to a user in one or more database(s)

Trying to remove a MSSQL login from a database server, recieve the following eror

Msg 15175, Level 16, State 1, Procedure sp_droplogin, Line 93
Login 'qa' is aliased or mapped to a user in one or more database(s). Drop the user or alias before dropping the login.

Solution: run this command to determine what alias or groups the login is associated with and then remove those; might be nice if they just added this to the error message?

sp_helpuser 'qa'

Sunday, August 23, 2009

scrolling screen shot on ubuntu

I've been using ubuntu for the last 6 months, really like it! But also really missing SnagIt :(

so far I have come across these screen shot tools

  • built in 'save screen' program - read this post for info about that and others
  • Shutter

but none that I came across would do scrolling screen shots; currently I only needed scrolling screen shots of web pages and I just came across a great tool for that - a firefox add-on called Abduction, it is really easy to use.

For full page screen shots (including all scrollable regions) or for cropped sections of a page. Just right click on the page and select 'Save Page as Image', if you are over an 'element' it will auto select that as the cropped area, you can then adjust the crop and save, if you want the entire page the easiest seems to be right clicking where there are no elements below the mouse and then adjust the fully selected page as needed

The saved png can then be opened in Shutter for applying arrows, boxes, etc...

Friday, August 21, 2009

Ajax error handling with ruby on rails and jquery

This sample is just a slight modification of this post 'Handling AJAX errors and displaying friendly error messages to users'. Basically I wanted to maintain the existing rails error handling for non-ajax pages and then have good handling for errors in both development and production mode; i.e. get errors in the browser when in development mode and show a nice message when in production mode.

Modify /app/controllers/application.rb; add the rescue_from macro and the handler_exception method


Then add a global javascript method for presenting the errors; most likely in application.js

Then a sample usage, jquery making an ajax post to a rails controller action

in development mode the error message is returned in an easier to read view in the firebug console and an alert message is presented that has a truncated version of the error

dev mode

in production mode just a friendly error message.

production mode

Resources

Tuesday, August 4, 2009

Get list of MSSQL jobs that are currently running

The following sql statement will return information about the currently executing MSSQL jobs.
Run it against the msdb database




Saturday, July 18, 2009

replace keyboard on Sony Vaio laptop PCG-K23 (PCG-9RLF)

just replaced the keyboard on my sisters Sony Vaio laptop - on the bottom is says it is a PCG-9RLF, but then it also says it is a PCG-K23? anyhow I had a hard time finding anything on the web, then I finally stumbled on this page which helped alot
http://www.laptoprepair101.com/laptop/2007/08/30/removing-replacing-laptop-keyboard/
  • You don't need to loosen any screws on the bottom - I thought this would be needed and ended up wasting a bit of time going in the wrong direction.
  • At the top of the keyboard is a plate that you need to pry up, there are 4 slots you can stick a flat screw driver under (you can't see them unless you press the keys down), this plate is also part of the screen hinge and the power cord that goes to the screen is attached so be CAREFUL!
  • Then there are 3 screws that hold the keyboard in place, loosen those
  • The keyboard will hinge up from the bottom
  • Then you need to disconnect the cable that goes to the motherboard
  • I ended up pulling this out without much effort
  • but then it was really hard to get the new one back in
  • turns out the slot has an open / closed 'mode', using a small screw driver I was able to get it to open up
  • Then just put everything back, turned out to be relatively easy in the end, I am definitely not an expert when it comes to computer hardware but so far this has been a success!