I’m rather new to both javascript and jQuery. I ran into an issue while cloning table rows that had inputs, and jQuery UI datepicker.
The cloned datepicker input would insert the picked date into the original inputs rather than the cloned row.

The inputs in my table rows had no ID’s. So what I found was either jQuery or UI was dynamically creating it’s own DOM id’s for the inputs in the table rows that had the datepicker call. Datepicker also was dynamically inserting a class “hasDatepicker” into the inputs that had the datepicker call.
I resolved this by:
1. Looping through the cloned rows inputs looking for any inputs with the class “hasDatepicker”.
2. Removing the hasDatepicker class from any inputs with that class.
3. Getting that inputs current id, incrementing it by 1, and reassigning it.
4. Re-initializing the datepicker call.
<script type="text/javascript">
$(document).ready(function(){
// -- Clone table rows
$(".cloneTableRows").live('click', function(){
// do the cloning...
// new rows datepicker need to be re-initialized
$(newRow).find("input").each(function(){
// if the current input has the hasDatpicker class
if($(this).hasClass("hasDatepicker")){
var this_id = $(this).attr("id"); // current inputs id
var new_id = this_id +1; // a new id
$(this).attr("id", new_id); // change to new id
$(this).removeClass('hasDatepicker'); // remove hasDatepicker class
$(this).datepicker(); // re-init datepicker
}
});
});
});
</script>
Whats really neat about this particular js, is that you can call it from any table that has an id.
The only thing I have yet to figure out is how to reset the cloned datepicker to use the default class called date format.
winxdvd.com is giving away DVD Authoring, and DVD ripping software between now and October 31, 2009.
I downloaded and installed as soon as darkmoon told me about it. Thanks for the tip. They installed smoothly on my system, and at the price of FREE you can’t go wrong. Go grab your copies!
DVD Authoring: here
DVD Ripping/ Converting: here
So in addition to reformatting friends and relatives computers, about every 2 years I clean out my own. Each time I have, I’ve lost my Notepad++ FTP synchronize settings.
In Vista they can be found in:
C:\Users\AppData\Roaming\Notepad++\plugins\config\FTP_synchronize.ini

Copy them to backup and replace. In case an update gets hosed, or you are re-installing.
Recently I’ve been helping out friends and relations reformat a few computers. They are older, but are speedy enough for their basic needs. One of the sick system hogs (I’ve found) is the adobe update manager.
Most browsers come with update managers, so I feel the update manager is bloated and not necessary. It likes to place its services in the startup causing unneeded processing power.
When it came to reformatting my own laptop, there was no way I was going to install acrobat reader from adobe using their typical download page. Which incidentally, if your not careful will also install a toolbar. You need to uncheck that option.
Adobe does have a page where you can download directly without the ridiculous manager. Hat tip to Walker News, who provided me with the adobe direct download link. (http://get.adobe.com/reader/otherversions/).
UPDATE: This no longer works. I now run older versions from old version.com
I found myself working with text files a little more recently and was looking for a way to tell if a directory was empty. Why? In my case I wanted to check if a directory was empty. If it wasn’t, to grab the data in those files and put them in a database.
What I didn’t want to do was have the expense of connecting to a database if the directory didn’t have any files in it to begin with. After chatting with my good friend TDavid at php-scripts.com, I decide to run with his suggestion…
Fill (or don’t fill) a variable with information if there were files in the directory. Then test the var to confirm or deny if there are files in the directory. It’s really a small bit of code…
//----- Check if ticket dir has files. If it has files,
// set a variable to hold the list of file names.
$dir = "../path/to/my/textfiles"; // set directory
if($handle = opendir($dir)){ // open directory
while(($file = readdir($handle)) !== false){
if($file != "." && $file != ".."){
$file_list[] = $file; // Set file list variable
}
}
closedir($handle); // Close directory
}
If there are files in this directory, the variable $file_list would not only exist, but also contain files. For example…
Array
(
[0] => 195972.txt
[1] => 196027.txt
[2] => 196053.txt
[3] => 196067.txt...
)
If there aren’t any files in this directory, the variable $file_list would not even exist because no $file would be inserted into it. At this point we can check/ test the variable to output or do further processing…
if(isset($file_list)){
echo "This dir has files!";
// perform further processing
// eg: collect each files contents
} else {
echo "This dir has NO files!";
// stop processing
// Not much do do with this since there are no files
}
Of course there are a few ways of checking to see if a directory is empty, but this way seemed to be the most simplistic to me. If you wanted to you could turn the entire lot into a function for reuse, and less script code clutter.
Comments? Questions?
php, empty directory