mirror of
https://github.com/flynx/ImageGrid.git
synced 2026-01-09 20:01:08 +00:00
tweaking...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
This commit is contained in:
parent
ebb6d282f1
commit
6abd1ed3e0
@ -113,6 +113,9 @@ var MetadataReaderActions = actions.Actions({
|
|||||||
- force is true
|
- force is true
|
||||||
|
|
||||||
|
|
||||||
|
NOTE: this will read metadata from both the image file as well as sidecar
|
||||||
|
(xmp) files, if available
|
||||||
|
NOTE: sidecar metadata fields take precedence over image metadata.
|
||||||
NOTE: also see: .cacheMetadata(..)
|
NOTE: also see: .cacheMetadata(..)
|
||||||
`,
|
`,
|
||||||
core.sessionQueueHandler('Read image metadata',
|
core.sessionQueueHandler('Read image metadata',
|
||||||
@ -142,29 +145,8 @@ var MetadataReaderActions = actions.Actions({
|
|||||||
//var full_path = path.normalize(img.base_path +'/'+ img.path)
|
//var full_path = path.normalize(img.base_path +'/'+ img.path)
|
||||||
var full_path = this.getImagePath(gid)
|
var full_path = this.getImagePath(gid)
|
||||||
|
|
||||||
var readers = []
|
|
||||||
|
|
||||||
// XMP sidecar files...
|
var readers = []
|
||||||
for(var ext of ['xmp', 'XMP']){
|
|
||||||
var xmp_path = full_path.replace(/\.[a-zA-Z0-9]*$/, '.'+ ext)
|
|
||||||
if(fs.existsSync(xmp_path)){
|
|
||||||
console.log("@@@@", xmp_path)
|
|
||||||
readers.push(new Promise(function(resolve, reject){
|
|
||||||
fs.readFile(xmp_path, function(err, file){
|
|
||||||
if(err){
|
|
||||||
// XXX log error...
|
|
||||||
resolve({}) }
|
|
||||||
exiftool.metadata(file, function(err, data){
|
|
||||||
if(err){
|
|
||||||
// XXX log error...
|
|
||||||
resolve({})
|
|
||||||
} else if(data.error){
|
|
||||||
// XXX log error...
|
|
||||||
resolve({})
|
|
||||||
} else {
|
|
||||||
console.log("@@@@", data)
|
|
||||||
resolve(data) } }) }) }))
|
|
||||||
break } }
|
|
||||||
// main image...
|
// main image...
|
||||||
readers.push(new Promise(function(resolve, reject){
|
readers.push(new Promise(function(resolve, reject){
|
||||||
fs.readFile(full_path, function(err, file){
|
fs.readFile(full_path, function(err, file){
|
||||||
@ -191,6 +173,27 @@ var MetadataReaderActions = actions.Actions({
|
|||||||
reject(data)
|
reject(data)
|
||||||
} else {
|
} else {
|
||||||
resolve(data) } }) }) }) )
|
resolve(data) } }) }) }) )
|
||||||
|
// XMP sidecar files...
|
||||||
|
// NOTE: sidecar files take precedence over image metadata...
|
||||||
|
for(var ext of ['xmp', 'XMP']){
|
||||||
|
var xmp_path = full_path.replace(/\.[a-zA-Z0-9]*$/, '.'+ ext)
|
||||||
|
if(fs.existsSync(xmp_path)){
|
||||||
|
readers.push(new Promise(function(resolve, reject){
|
||||||
|
fs.readFile(xmp_path, function(err, file){
|
||||||
|
if(err){
|
||||||
|
// XXX log error...
|
||||||
|
resolve({}) }
|
||||||
|
exiftool.metadata(file, function(err, data){
|
||||||
|
if(err){
|
||||||
|
// XXX log error...
|
||||||
|
resolve({})
|
||||||
|
} else if(data.error){
|
||||||
|
// XXX log error...
|
||||||
|
resolve({})
|
||||||
|
} else {
|
||||||
|
console.log("@@@@", data)
|
||||||
|
resolve(data) } }) }) }))
|
||||||
|
break } }
|
||||||
|
|
||||||
// merge the data...
|
// merge the data...
|
||||||
return Promise.all(readers)
|
return Promise.all(readers)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user