Passed
Push — master ( b2d36d...e1a621 )
by Jaisen
02:25
created

app/modules/broadcast.js (3 issues)

1
var exports = module.exports = {};
2
var path = require('path');
3
var exec = require('child_process').exec,
4
    config = require('./config.js');
5
6
// The main process listens for events from the web renderer.
7
// When photos are dragged onto the toolbar and photos are requested to be updated it will fire an 'update-photos' ipc event.
8
// The web renderer will send the list of photos, type of update and new value to apply
9
// Once this main process completes the update it will send a 'update-photos-completed' event back to the renderer with information
10
//  so a proper response can be displayed.
11
12
exports.importPhotos = function(event, args) {
13
  var params = args,
0 ignored issues
show
The variable params seems to be never used. Consider removing it.
Loading history...
14
      normalize;
15
16
  console.log('import-photos');
17
  console.log(args);
18
  if(typeof(args['source']) === 'undefined' || args['source'].length === 0 || typeof(args['destination']) === 'undefined' || args['destination'].length === 0) {
19
    console.log('no source or destination passed in to import-photos');
20
    event.sender.send('update-import-no-photos', null);
21
    return;
22
  }
23
24
  args['source'] = args['source'].normalize();
25
  args['destination'] = args['destination'].normalize();
26
27
  update_command = path.normalize(__dirname + '/../../dist/elodie/elodie') + ' import --source="' + args['source'] +  '" --destination="' + args['destination'] + '"';
28
  //update_command = __dirname + '/../../elodie.py import --source="' + args['source'] +  '" --destination="' + args['destination'] + '"';
29
  
30
  console.log(update_command);
31
  exec(update_command, function(error, stdout, stderr) {
32
    console.log('out ' + stdout);
33
    console.log('err ' + stderr);
34
    /*params['error'] = error
35
    params['stdout'] = '[' + stdout.replace(/\n/g,',').replace(/\,+$/g, '').replace(/\n/g,'') + ']'
36
    params['stderr'] = stderr
37
    console.log('parsed')
38
    console.log(params['stdout'])*/
39
    event.sender.send('update-import-success', args);
40
  });
41
};
42
43
exports.updateConfig = function(event, args) {
44
  var params = args,
45
      status;
46
  status = config.writeConfig(params);
47
  if(status) {
48
    event.sender.send('update-config-status', true);
49
  } else {
50
    event.sender.send('update-config-status', false);
51
  }
52
};
53
54
// When photos are dragged onto the toolbar and photos are requested to be updated it will fire an 'update-photos' ipc event.
55
// The web renderer will send the list of photos, type of update and new value to apply
56
// Once this main process completes the update it will send a 'update-photos-completed' event back to the renderer with information
57
//  so a proper response can be displayed.
58
exports.updatePhotos = function(event, args) {
59
  var params = args,
60
      normalize;
61
62
  console.log('update-photos');
63
  console.log(args);
64
  if(typeof(args['files']) === 'undefined' || args['files'].length === 0) {
65
    console.log('no files passed in to update-photos');
66
    return;
67
  }
68
69
  normalize = function(files) {
70
    for(var i=0; i<files.length; i++) {
71
      files[i] = files[i].normalize()
72
    }
73
    return files
74
  }
75
  files = normalize(args['files'])
76
  elodie_path = path.normalize(__dirname + '/../../dist/elodie/elodie');
77
  update_command = elodie_path +' update'
78
  //update_command = __dirname + '/../../elodie.py update'
79
  if(args['location'].length > 0) {
80
    update_command += ' --location="' + args['location'] + '"';
81
  }
82
  if(args['album'].length > 0) {
83
    update_command += ' --album="' + args['album'] + '"';
84
  }
85
  if(args['datetime'].length > 0) {
86
    update_command += ' --time="' + args['datetime'] + '"';
87
  }
88
  if(args['title'].length > 0) {
89
    update_command += ' --title="' + args['title'] + '"';
90
  }
91
92
  update_command += ' "' + files.join('" "') + '"'
93
  
94
  console.log(update_command)
95
  exec(update_command, function(error, stdout, stderr) {
96
    console.log('out ' + stdout)
97
    console.log('err ' + stderr)
98
    params['error'] = error
99
    params['stdout'] = '[' + stdout.replace(/\n/g,',').replace(/\,+$/g, '').replace(/\n/g,'') + ']'
100
    params['stderr'] = stderr
101
    console.log('parsed')
102
    console.log(params['stdout'])
103
    event.sender.send('update-photos-success', params);
104
  });
105
};
106
107
exports.launchFinder = function(event, path) {
108
  console.log(path);
109
  var shell = require('shell');
110
  shell.showItemInFolder(path);
111
};
112
113
exports.launchUrl = function(event, url) {
114
  console.log(url);
115
  var shell = require('shell');
116
  shell.openExternal(url);
117
};
118
119
exports.programQuit = function(event, path) {
0 ignored issues
show
The parameter path is not used and could be removed.

This check looks for parameters in functions that are not used in the function body and are not followed by other parameters which are used inside the function.

Loading history...
The parameter event is not used and could be removed.

This check looks for parameters in functions that are not used in the function body and are not followed by other parameters which are used inside the function.

Loading history...
120
  console.log('program-quit');
121
  //mb.tray.destroy();
122
  mb.quit();
123
};
124