1 jls.loader.provide('jls.util.Exif');
  2 
  3 jls.loader.requireLibrary('jls_exif');
  4 
  5 /**
  6  * @class This class provides various EXIF functions.
  7  */
  8 jls.util.Exif = jls.lang.Class.create({});
  9 
 10 Object.extend(jls.util.Exif, /** @lends jls.util.Exif */
 11 {
 12     /**
 13      * Extracts EXIF.
 14      * 
 15      * @param {String} filename The image to process.
 16      * @returns {Object} The EXIF info.
 17      */
 18     extract : function(filename) {
 19         return _native.exif.read(filename);
 20     },
 21     /**
 22      * Parses an EXIF date field as a local date.
 23      * EXIF dates are formatted like "2011:03:10 16:41:24".
 24      * 
 25      * @param {String} str The date as a string .
 26      * @returns {Date} The date.
 27      */
 28     parseDate : function(str) {
 29     	//2011:03:10 16:41:24
 30     	var fields = str.match(/^(\d+):(\d+):(\d+) (\d+):(\d+):(\d+)$/);
 31     	return new Date(parseInt(fields[1], 10), parseInt(fields[2], 10) - 1, parseInt(fields[3], 10),
 32     			parseInt(fields[4], 10), parseInt(fields[5], 10), parseInt(fields[6], 10));
 33     }
 34 });
 35 
 36