<style type="text/css">
.suggestions { border: 1px solid gray; background-color: White; position: absolute; padding: 2px; font-family: Arial; font-size: small; visibility: hidden; }
</style>
<script type="text/javascript">
document.onclick = clickHandler;
function clickHandler() {
var div = document.getElementById("suggestions");
if (div.style.visibility == "collapse") {
div.style.visibility = "visible";
} else {
div.style.visibility = "hidden";
}
}
function showSuggestions() {
var div = document.getElementById("suggestions");
if (div.style.visibility != "visible")
div.style.visibility = "collapse";
}
function setSuggestion(span) {
<%
TextBox tb = (TextBox)dvStudent.FindControl("TextBox1");
String id = (tb != null) ? tb.ClientID : "TextBox1";
%>
var tb = document.getElementById('<%= id %>');
tb.value = span.innerHTML;
}
</script>

<asp:TextBox ID="TextBox1" runat="server" onclick="showSuggestions()" ></asp:TextBox>
<div id="suggestions" class="suggestions">
<span style="display:block;width:100%" onmouseover="this.style.backgroundColor='LightBlue';" onmouseout="this.style.backgroundColor='White';" onclick="setSuggestion(this);">A Suggestion</span>
</div>
 
After trying out many Linux distro's on my old laptop I settled for Linux Mint Fluxbox as it is full featured with everything you need on a desktop OS out of the box, and is a bit different and cool.  It runs acceptably on my old laptop, which is better than most that I tried, but is not fast by any means.  Only Slitaz ran fast, but being a light distro didn't have everything you need for day-to-day use.

But now there's a new option, Peppermint One.  It's light enough to run well on my way old laptop, looks nice, and has most of what you need.  It's 'cloud' focused with links to web apps for many things you'd normally use desktop software for, such as office and image editing.  However being based on Ubuntu/Mint you can still install all your favourite software and make use of the great UI.  There is also Peppermint Ice that uses Chrome rather than Firefox if that floats your boat.  I'll be keeping this one for a while.
 
From http://distrowatch.com/weekly.php?issue=20100111:

Restoring GRUB

Can't-boot-any-more asks: Distro hopping wiped out my GRUB. How can I reconstruct it?

DistroWatch answers: Sometimes when making changes to a hard drive, such as installing a new operating system, the disk's master boot record (MBR) will get wiped or corrupted. When that happens, GRUB will no longer function. This has the unfortunate side effect of preventing the user from being able to boot their operating system and, in those cases, it's important to be able to get the system up and running again, preferably without re-installing the operating system(s) from scratch.

The easiest way to get GRUB back on-line is with a live CD. It doesn't really matter which live CD, so long as it comes with a copy of GRUB. Place the live CD into the computer and boot from it. We're then going to venture into command-line territory. The next thing to do is run the "grub" command as root or, if you are running a live CD that uses sudo, run "sudo grub". This will start GRUB and provide us with a prompt.

     grub>

We'll then find out where the GRUB files are located:

     grub> find /boot/grub/stage1

The find command will return a disk location for us. Probably "(hd0,0)" or "(hd0,1)". We now know where the GRUB files are stored. Next, we'll tell GRUB to use this location in the future. In the following step, type "root", followed by the location we were given above. In my case:

     grub> root (hd0,1)

GRUB now knows where its files are located and we need to re-setup GRUB in the master boot record. To do this, we type:

     grub> setup (hd0)

The above step should work for most people, who have GRUB installed in the MBR. For folks who have installed GRUB onto a partition, the "setup" command can be modified to include the partition number. The catch is, you need to know where you originally installed GRUB. In these cases, remember that GRUB starts counting partitions from zero, not one. So, for example, if GRUB was installed on the third partition of the first hard drive, the "setup" command will look like this:

     grub> setup (hd0,2)

When we get back to the prompt again, we can quit GRUB:

     grub> quit

And then reboot the computer. Remove the live CD from the drive and we should be back to normal.

From http://peppermintos.net/viewtopic.php?f=42&t=1292:

Reinstall Grub 2

If you end up with a Mint, Ubuntu, or Peppermint partition that can not be used because Grub has been destroyed (say, by installing a version of Windows and having it overwrite the boot sector) you can reinstall Grub by using the live installation CD. (Assuming the Linux partition is intact except for Grub)

1. Boot the live CD to the desktop.
2. Open a terminal and enter "sudo mount /dev/sda1 /mnt". replacing sda1 with the proper partition number for your Linux / (root) partition.
3.Once the Linux partition is mounted, reinstall Grub by entering "sudo grub-install --root-directory=/mnt/ /dev/sda".
4. Reboot to check that it worked.

In the situation described where a Windows installation destroys Grub, you should get the full dual boot menu. If not, but the Linux OS boots, try running "sudo update-grub" to pick up the Windows Partition.

Alternative: Boot with Super Gub2 Disk and 'grub-install /dev/sda'.
 
To get a deployed reports' definition file (.rdl) from SQL Server Reporting Services, go to the Reports site http://server/Reports, select the report, go to the properties tab and select edit, and you can save the .drl file.
 
Adding an animated gif while a slow page is loading is a fairly straightforward, but in ASP.NET when you do a postback the animated gif will freeze. To get around this you need to reset the image src oclient side after the postback has occured, which can be done using the setTimeout command. Add OnClientClick="loadImg();" to the button loading the slow page and add this markup to the same page:

<
img id="loading" src="/images/loading.gif" alt="" style="display:none;"/>

<script type="text/javascript">
function loadImg() {
document.getElementById(
'loading').style.display = "";
setTimeout(
'document.images["loading"].src="/images/loading.gif"', 200);
}
</script>
 
If you have an old laptop sitting around one thing you could use it for is to use it's screen as a second monitor for your main computer.  As laptops don't have any video inputs this is actually harder than it sounds, you need software running on both computers and have them networked.

On Windows there is a commercial option called MaxiVista.  On Linux there is a free option called Xdms.  If you want to do it cross platform, well you can't really but you can do something similar with Synergy by sharing the keyboard and mouse accross the computers.  If your latop is really old and slow you could try a tiny linux distro like Slitaz that runs completely in memory. (tazpkg get-install synergy)
 
If you're trying to revive an old PC by installing Linux, you may find that the newer distros are often as resource hungry as windows, giving poor performance.  I found a fast and very cool looking solution, a window manager called FVWM-Crystal.  Start with a common distro like Ubuntu or Debian to get all the apps you need, then run sudo apt-get install fvwm-crystal.  Once it's done log out and log back in to the FVWM-Crystal window manager (you're old desktop will still be available).

You'll notice a sweet theme with lots of transparency.  It's quite customisable from the menu, play with the recipe's to get a task bar system that suits you, and the window decorations to make your windows look nicer.  I like the Nebulae recipe with Gentoo windows.  To add wallpapers copy images into a folder called ~/wallpapers (~/ means your home directory).  To top it off customise firefox to suit, I like the vista areo theme and island persona.

Some handy shortcuts to know when you select a recipe with no task bars are Alt-menu and alt-right windows key to bring up the crystal and applications menus.

If this doesn't suit your taste, another lightweight window manager you could try is IceWM with the VistaBlack theme to make it familiar to windows users.  Or you could grab the Linux Mint LXDE or Fluxbox versions.

UPDATE: I have found that Ubuntu based distributions even when using light desktops and window managers tend to run slow on limited resources. Even for crunchbang which seems to be the lightest of these options. You could try installing fvwm-crystal on a debian net-install, but I have found Slitaz to be the best option for hardware more than a couple of years old.
 
By default Joomla! 1.5 blocks you from using certain html tags such as embed, objec, iframe etc in article content.  You can allow this for certain levels of user by editing the filters in the article manager parameters.
 
 
When submitting articles through the front end of Joomla they default to the uncategorised section, which is really annoying as users would likely forget to set the section and the article would then seem to dissapear.  What you can do is in your template index.php file add some javascript to set the default section to - Select a section - like this (making sure you have included <?php JHTML::_('behavior.mootools'); ?> to use the domready event):

window.addEvent('domready', function() {
var sectionid = document.getElementById('sectionid');
  var catid = document.getElementById('catid');
  if (location.href.match('submit-an-article') == 'submit-an-article' && sectionid != null && catid != null) {
   sectionid.selectedIndex = 0;
   catid.selectedIndex = -1;
   catid.options.length = 0;
  }
}

Then in components/com_content/views/articlew/tmpl/form.php add this above the catid check to ensure a section is selected:

} else if (form.sectionid && getSelectedValue('adminForm','sectionid') < 0){
  return alert ( "<?php echo JText::_( 'Please select a section', true ); ?>");

Another trick I've used to do with forms in Joomla is when using the mad4joomla mailforms extension edit the form_row function in the file components/com_mad4joomla/mad4joomla.html.php to add the help text as a style tag if it starts with style= to help with form design.