the reminder not showing content on the card at dashboard view and the quizes are hardcoded must move to the db make api's for it
44 lines
1.2 KiB
JavaScript
44 lines
1.2 KiB
JavaScript
module.exports = command;
|
|
|
|
/**
|
|
* command constructs the executable command to run in a shell including the
|
|
* user script, the command arguments.
|
|
*
|
|
* @param {Object} settings Object as:
|
|
* { execOptions: {
|
|
* exec: String,
|
|
* [script: String],
|
|
* [scriptPosition: Number],
|
|
* [execArgs: Array<string>]
|
|
* }
|
|
* }
|
|
* @return {Object} an object with the node executable and the
|
|
* arguments to the command
|
|
*/
|
|
function command(settings) {
|
|
var options = settings.execOptions;
|
|
var executable = options.exec;
|
|
var args = [];
|
|
|
|
// after "executable" go the exec args (like --debug, etc)
|
|
if (options.execArgs) {
|
|
[].push.apply(args, options.execArgs);
|
|
}
|
|
|
|
// then goes the user's script arguments
|
|
if (options.args) {
|
|
[].push.apply(args, options.args);
|
|
}
|
|
|
|
// after the "executable" goes the user's script
|
|
if (options.script) {
|
|
args.splice((options.scriptPosition || 0) +
|
|
options.execArgs.length, 0, options.script);
|
|
}
|
|
|
|
return {
|
|
executable: executable,
|
|
args: args,
|
|
};
|
|
}
|