From e1a1998dcf5c4cfc3063a11bd93c2dab49e3e8d7 Mon Sep 17 00:00:00 2001 From: Brian Bolt Date: Sun, 6 Dec 2020 15:25:46 -0800 Subject: [PATCH] initialize options, removing unused routes which dont map to real functions fixing indenting issues prepare module includes comment structure super -> super() fixing winston memory store jquery file upload #TODO: fixing unlink async https://github.com/aguidrevitch/jquery-file-upload-middleware/issues/85 --- app_api_template.coffee | 3 +- app_template.coffee | 26 +- .../src/client/ACASLabelSequences.coffee | 3 +- .../routes/ACASLabelSequencesRoutes.coffee | 1 - .../AdminPanel/src/client/AdminPanel.coffee | 10 +- .../src/server/PrepareModuleIncludes.coffee | 4 +- .../src/server/routes/CmpdRegRoutes.coffee | 1 - .../src/client/AbstractCmpdRegAdmin.coffee | 3 +- .../client/AbstractCmpdRegAdminBrowser.coffee | 3 +- .../routes/CmpdRegBulkLoaderRoutes.coffee | 4 +- .../src/client/AbstractCodeTablesAdmin.coffee | 3 +- .../AbstractCodeTablesAdminBrowser.coffee | 6 +- .../client/ACASFormChemicalStructure.coffee | 3 + .../src/client/ACASFormFields.coffee | 13 +- .../ACASFormMultiCodeValueCheckbox.coffee | 3 +- .../client/ACASFormStateDisplayUpdate.coffee | 18 +- .../src/client/ACASFormStateTable.coffee | 2 +- .../src/client/LSErrorNotification.coffee | 15 +- .../src/client/LSFileChooser.coffee | 3 +- .../Components/src/client/LSFileInput.coffee | 3 +- .../src/client/CurveCurator.coffee | 6 +- .../server/ConsoleLogWinstonOverride.coffee | 6 +- .../Logging/src/server/routes/Logger.coffee | 4 +- .../spec/ModuleLauncherSpec.coffee | 2 +- .../ModuleMenus/src/client/ModuleMenus.coffee | 3 +- ...yPropertyDescriptorsServiceTestJSON.coffee | 396 ++++++++--------- ...ntPropertyDescriptorServiceTestJSON.coffee | 418 +++++++++--------- .../CreateLiveDesignLiveReportForACAS.coffee | 4 +- .../routes/ExperimentServiceRoutes.coffee | 11 +- .../routes/InventoryServiceRoutes.coffee | 65 ++- .../routes/ServerUtilityFunctions.coffee | 12 +- package.json | 4 +- 32 files changed, 543 insertions(+), 515 deletions(-) diff --git a/app_api_template.coffee b/app_api_template.coffee index f770f5630..f188ed1c7 100644 --- a/app_api_template.coffee +++ b/app_api_template.coffee @@ -54,8 +54,7 @@ startApp = -> console.error 'Caught api exception: ' + err.stack return - ###TO_BE_REPLACED_BY_PREPAREMODULEINCLUDES### - + #TO_BE_REPLACED_BY_PREPAREMODULEINCLUDES http.createServer(app).listen(app.get('port'), -> console.log("ACAS API server listening on port " + app.get('port')) diff --git a/app_template.coffee b/app_template.coffee index ae919f224..01b924bc9 100644 --- a/app_template.coffee +++ b/app_template.coffee @@ -15,6 +15,7 @@ startApp = -> logger = require('morgan') methodOverride = require('method-override') session = require('express-session') + MemoryStore = require('memorystore')(session) bodyParser = require('body-parser') # multer = require('multer') errorHandler = require('errorhandler') @@ -71,7 +72,7 @@ startApp = -> # next() loginRoutes = require './routes/loginRoutes' - + sessionStore = new MemoryStore(); global.app = express() app.set 'port', config.all.client.port app.set 'views', __dirname + '/views' @@ -85,10 +86,12 @@ startApp = -> app.use session secret: 'acas needs login' cookie: maxAge: 365 * 24 * 60 * 60 * 1000 + store: sessionStore # MemoryStore is used automatically if no "store" field is set, but we need a handle on the sessionStore object for Socket.IO, so we'll manually create the store so we have a handle on the object + app.use flash() app.use passport.initialize() app.use passport.session pauseStream: true -# app.use express.bodyParser() + # app.use express.bodyParser() app.use(bodyParser.json({limit: '100mb'})) app.use(bodyParser.urlencoded({limit: '100mb', extended: true,parameterLimit: 1000000})) # app.use(multer()) @@ -102,8 +105,8 @@ startApp = -> if not config.all.client.use.ssl - http.createServer(app).listen(app.get('port'), -> - console.log("Express server listening on port " + app.get('port')) + httpServer = http.createServer(app).listen(app.get('port'), -> + console.log("ACAS server listening on port " + app.get('port')) ) else console.log "------ Starting in SSL Mode" @@ -115,12 +118,23 @@ startApp = -> ca: fs.readFileSync config.all.server.ssl.cert.authority.file.path passphrase: config.all.server.ssl.cert.passphrase https.createServer(sslOptions, app).listen(app.get('port'), -> - console.log("Express server listening on port " + app.get('port')) + console.log("ACAS server listening on port " + app.get('port')) ) #TODO hack to prevent bug: https://github.com/mikeal/request/issues/418 process.env.NODE_TLS_REJECT_UNAUTHORIZED = "0" - ###TO_BE_REPLACED_BY_PREPAREMODULEINCLUDES### + io = require('socket.io')(httpServer) + passportSocketIo = require('passport.socketio') + cookieParser = require('cookie-parser') + + io.use(passportSocketIo.authorize({ + key: 'connect.sid', + secret: 'acas needs login', + store: sessionStore, + passport: passport, + cookieParser: cookieParser + })) + #TO_BE_REPLACED_BY_PREPAREMODULEINCLUDES options = if stubsMode then ["stubsMode"] else [] options.push ['--color'] diff --git a/modules/ACASLabelSequences/src/client/ACASLabelSequences.coffee b/modules/ACASLabelSequences/src/client/ACASLabelSequences.coffee index cf68cf9ec..d7e07a44a 100644 --- a/modules/ACASLabelSequences/src/client/ACASLabelSequences.coffee +++ b/modules/ACASLabelSequences/src/client/ACASLabelSequences.coffee @@ -210,7 +210,8 @@ class window.ACASLabelSequenceController extends AbstractFormController "click .bv_save": "handleSaveClicked" "click .bv_cancel": "handleCancelClicked" - initialize: -> + initialize: (options) -> + @options = options if @model? @completeInitialization() else diff --git a/modules/ACASLabelSequences/src/server/routes/ACASLabelSequencesRoutes.coffee b/modules/ACASLabelSequences/src/server/routes/ACASLabelSequencesRoutes.coffee index 9333eab00..fa0c89281 100644 --- a/modules/ACASLabelSequences/src/server/routes/ACASLabelSequencesRoutes.coffee +++ b/modules/ACASLabelSequences/src/server/routes/ACASLabelSequencesRoutes.coffee @@ -1,6 +1,5 @@ exports.setupAPIRoutes = (app) -> app.get '/api/labelSequences', exports.getAllLabelSequences - app.get '/api/labelSequences/reagents/codename', exports.getReagentByCodename app.post '/api/labelSequences/jsonArray', exports.saveLabelSequenceArray exports.setupRoutes = (app, loginRoutes) -> diff --git a/modules/AdminPanel/src/client/AdminPanel.coffee b/modules/AdminPanel/src/client/AdminPanel.coffee index 6956305e2..986aeee9e 100644 --- a/modules/AdminPanel/src/client/AdminPanel.coffee +++ b/modules/AdminPanel/src/client/AdminPanel.coffee @@ -45,11 +45,11 @@ class window.AdminPanelController extends AbstractFormController recursivelyIterateAndDisplayValues = (dict) -> keys = Object.keys dict _.each(keys, (key) -> - if isObject dict[key] - recursivelyIterateAndDisplayValues dict[key] - else - unless typeof dict[key] is "object" - @$('.bv_configProperties').append("" + key + ": " + dict[key] + "
") + if isObject dict[key] + recursivelyIterateAndDisplayValues dict[key] + else + unless typeof dict[key] is "object" + @$('.bv_configProperties').append("" + key + ": " + dict[key] + "
") ) #TODO add full paths - Matt diff --git a/modules/BuildUtilities/src/server/PrepareModuleIncludes.coffee b/modules/BuildUtilities/src/server/PrepareModuleIncludes.coffee index 64c3c8af7..82aad2912 100644 --- a/modules/BuildUtilities/src/server/PrepareModuleIncludes.coffee +++ b/modules/BuildUtilities/src/server/PrepareModuleIncludes.coffee @@ -121,6 +121,6 @@ prepRouteIncludes = (apiMode) -> routeLines routeLines = prepRouteIncludes(false) -insertToLayoutTemplate " /*TO_BE_REPLACED_BY_PREPAREMODULEINCLUDES */", routeLines, "#{ACAS_HOME}/app_template.js", "#{ACAS_HOME}/app.js" +insertToLayoutTemplate "//TO_BE_REPLACED_BY_PREPAREMODULEINCLUDES", routeLines, "#{ACAS_HOME}/app_template.js", "#{ACAS_HOME}/app.js" routeLines = prepRouteIncludes(true) -insertToLayoutTemplate " /*TO_BE_REPLACED_BY_PREPAREMODULEINCLUDES */", routeLines, "#{ACAS_HOME}/app_api_template.js", "#{ACAS_HOME}/app_api.js" +insertToLayoutTemplate "//TO_BE_REPLACED_BY_PREPAREMODULEINCLUDES", routeLines, "#{ACAS_HOME}/app_api_template.js", "#{ACAS_HOME}/app_api.js" diff --git a/modules/CmpdReg/src/server/routes/CmpdRegRoutes.coffee b/modules/CmpdReg/src/server/routes/CmpdRegRoutes.coffee index e00c913b2..5d54308e6 100644 --- a/modules/CmpdReg/src/server/routes/CmpdRegRoutes.coffee +++ b/modules/CmpdReg/src/server/routes/CmpdRegRoutes.coffee @@ -1,5 +1,4 @@ exports.setupAPIRoutes = (app) -> - app.post '/api/cmpdReg', exports.postAssignedProperties app.get '/cmpdReg/scientists', exports.getScientists app.get '/cmpdReg/metalots/corpName/[\\S]*', exports.getMetaLot app.post '/cmpdReg/metalots', exports.metaLots diff --git a/modules/CmpdRegAdmin/src/client/AbstractCmpdRegAdmin.coffee b/modules/CmpdRegAdmin/src/client/AbstractCmpdRegAdmin.coffee index bcd18b0de..a73e3eeaf 100644 --- a/modules/CmpdRegAdmin/src/client/AbstractCmpdRegAdmin.coffee +++ b/modules/CmpdRegAdmin/src/client/AbstractCmpdRegAdmin.coffee @@ -18,7 +18,8 @@ class window.AbstractCmpdRegAdminController extends AbstractFormController "click .bv_cancelClear": "handleCancelClearClicked" "click .bv_confirmClear": "handleConfirmClearClicked" - initialize: -> + initialize: (options) -> + @options = options console.log "initializing Abstract Controller" if @model? @completeInitialization() diff --git a/modules/CmpdRegAdmin/src/client/AbstractCmpdRegAdminBrowser.coffee b/modules/CmpdRegAdmin/src/client/AbstractCmpdRegAdminBrowser.coffee index 56b3474ba..0304b5c52 100644 --- a/modules/CmpdRegAdmin/src/client/AbstractCmpdRegAdminBrowser.coffee +++ b/modules/CmpdRegAdmin/src/client/AbstractCmpdRegAdminBrowser.coffee @@ -19,7 +19,8 @@ class window.CmpdRegAdminSimpleSearchController extends AbstractFormController Instantiating controller must provide urlRoot and toDisplay in options ### - initialize: -> + initialize: (options) -> + @options = options @searchUrl = "" @searchUrl = @options.urlRoot + '/search/' diff --git a/modules/CmpdRegBulkLoader/src/server/routes/CmpdRegBulkLoaderRoutes.coffee b/modules/CmpdRegBulkLoader/src/server/routes/CmpdRegBulkLoaderRoutes.coffee index 8263a4cae..c83d0afe0 100644 --- a/modules/CmpdRegBulkLoader/src/server/routes/CmpdRegBulkLoaderRoutes.coffee +++ b/modules/CmpdRegBulkLoader/src/server/routes/CmpdRegBulkLoaderRoutes.coffee @@ -1,7 +1,6 @@ path = require 'path' -exports.setupAPIRoutes = (app) -> - app.post '/api/cmpdRegBulkLoader', exports.postAssignedProperties +exports.setupAPIRoutes = (app, loginRoutes) -> app.post '/api/cmpdRegBulkLoader/registerCmpds', exports.registerCmpds app.post '/api/cmpdRegBulkLoader/validateCmpds', exports.validateCmpds app.post '/api/cmpdRegBulkLoader/validationProperties', exports.validationProperties @@ -17,7 +16,6 @@ exports.setupRoutes = (app, loginRoutes) -> app.post '/api/cmpdRegBulkLoader/saveTemplate', loginRoutes.ensureAuthenticated, exports.saveTemplate app.post '/api/cmpdRegBulkLoader/registerCmpds', loginRoutes.ensureAuthenticated, exports.registerCmpds app.post '/api/cmpdRegBulkLoader/validateCmpds', loginRoutes.ensureAuthenticated, exports.validateCmpds - app.post '/api/cmpdRegBulkLoader', loginRoutes.ensureAuthenticated, exports.postAssignedProperties app.post '/api/cmpdRegBulkLoader/checkFileDependencies', loginRoutes.ensureAuthenticated, exports.checkFileDependencies app.post '/api/cmpdRegBulkLoader/purgeFile', loginRoutes.ensureAuthenticated, exports.purgeFile diff --git a/modules/CodeTablesAdmin/src/client/AbstractCodeTablesAdmin.coffee b/modules/CodeTablesAdmin/src/client/AbstractCodeTablesAdmin.coffee index 517c09d60..0b3e35db4 100644 --- a/modules/CodeTablesAdmin/src/client/AbstractCodeTablesAdmin.coffee +++ b/modules/CodeTablesAdmin/src/client/AbstractCodeTablesAdmin.coffee @@ -25,7 +25,8 @@ class window.AbstractCodeTablesAdminController extends AbstractFormController "click .bv_cancelClear": "handleCancelClearClicked" "click .bv_confirmClear": "handleConfirmClearClicked" - initialize: -> + initialize: (options) -> + @options = options console.log "initializing Abstract Controller" if @model? @completeInitialization() diff --git a/modules/CodeTablesAdmin/src/client/AbstractCodeTablesAdminBrowser.coffee b/modules/CodeTablesAdmin/src/client/AbstractCodeTablesAdminBrowser.coffee index cc5dfa18a..0b356ba60 100644 --- a/modules/CodeTablesAdmin/src/client/AbstractCodeTablesAdminBrowser.coffee +++ b/modules/CodeTablesAdmin/src/client/AbstractCodeTablesAdminBrowser.coffee @@ -21,7 +21,8 @@ class window.CodeTablesAdminSimpleSearchController extends AbstractFormControlle Instantiating controller must provide urlRoot and toDisplay in options ### - initialize: -> + initialize: (options) -> + @options = options @searchUrl = "" @searchUrl = @options.urlRoot + '/search/' @@ -111,7 +112,8 @@ class window.CodeTablesAdminRowSummaryController extends Backbone.View ############################################################################ class window.CodeTablesAdminSummaryTableController extends Backbone.View - initialize: -> + initialize: (options) -> + @options = options if @options.showIgnore? @showIgnore = @options.showIgnore else diff --git a/modules/Components/src/client/ACASFormChemicalStructure.coffee b/modules/Components/src/client/ACASFormChemicalStructure.coffee index 70f857464..58a15f25e 100644 --- a/modules/Components/src/client/ACASFormChemicalStructure.coffee +++ b/modules/Components/src/client/ACASFormChemicalStructure.coffee @@ -68,6 +68,9 @@ class window.ACASFormChemicalStructureController extends Backbone.View tagName: "DIV" template: _.template($("#ACASFormChemicalStructureControllerView").html()) + initialize: (options) -> + @options = options + render: => $(@el).empty() $(@el).html @template() diff --git a/modules/Components/src/client/ACASFormFields.coffee b/modules/Components/src/client/ACASFormFields.coffee index 3606f3a61..bb65cdc5f 100644 --- a/modules/Components/src/client/ACASFormFields.coffee +++ b/modules/Components/src/client/ACASFormFields.coffee @@ -28,7 +28,8 @@ class window.ACASFormAbstractFieldController extends Backbone.View "mouseover .label-tooltip": "handleToolTipMouseover" "mouseoff .label-tooltip": "handleToolTipMouseoff" - initialize: -> + initialize: (options) -> + @options = options @modelKey = @options.modelKey @thingRef = @options.thingRef @errorSet = false @@ -331,7 +332,7 @@ class window.ACASFormLSCodeValueFieldController extends ACASFormAbstractFieldCon Do whatever else is required or optional in ACASFormAbstractFieldController ### events: -> - _.extend {}, super, + _.extend {}, super(), "change select": "handleInputChanged" template: _.template($("#ACASFormLSCodeValueFieldView").html()) @@ -437,9 +438,11 @@ class window.ACASFormLSThingInteractionFieldController extends ACASFormAbstractF Do whatever else is required or optional in ACASFormAbstractFieldController ### events: -> - _.extend {}, super, + _.extend {}, super(), "change select": "handleInputChanged" + initialize: (options) -> + @options = options template: _.template($("#ACASFormLSThingInteractionFieldView").html()) applyOptions: -> @@ -642,7 +645,7 @@ class window.ACASFormLSDateValueFieldController extends ACASFormAbstractFieldCon template: _.template($("#ACASFormLSDateValueFieldView").html()) events: -> - _.extend {}, super, + _.extend {}, super(), "change input": "handleInputChanged" "click .bv_dateIcon": "handleDateIconClicked" @@ -693,7 +696,7 @@ class window.ACASFormLSFileValueFieldController extends ACASFormAbstractFieldCon template: _.template($("#ACASFormLSFileValueFieldView").html()) events: -> - _.extend {}, super, + _.extend {}, super(), "click .bv_deleteSavedFile": "handleDeleteSavedFile" applyOptions: -> diff --git a/modules/Components/src/client/ACASFormMultiCodeValueCheckbox.coffee b/modules/Components/src/client/ACASFormMultiCodeValueCheckbox.coffee index bbde5a18d..19d6bb1b9 100644 --- a/modules/Components/src/client/ACASFormMultiCodeValueCheckbox.coffee +++ b/modules/Components/src/client/ACASFormMultiCodeValueCheckbox.coffee @@ -8,7 +8,8 @@ class window.ACASFormCodeValueCheckboxController extends ACASFormAbstractFieldCo events: -> "change input": "handleInputChanged" - initialize: -> + initialize: (options) -> + @options = options @stateRef = @options.stateRef @thingRef = @options.thingRef @keyBase = @options.keyBase diff --git a/modules/Components/src/client/ACASFormStateDisplayUpdate.coffee b/modules/Components/src/client/ACASFormStateDisplayUpdate.coffee index e97be7080..ca37f2c26 100644 --- a/modules/Components/src/client/ACASFormStateDisplayUpdate.coffee +++ b/modules/Components/src/client/ACASFormStateDisplayUpdate.coffee @@ -7,6 +7,9 @@ class window.ACASFormStateDisplayUpdateHeaderRowController extends Backbone.View tagName: 'tr' + initialize: (options) -> + @options = options + render: => for val in @options.tableDef.values displayName = val.fieldSettings.formLabel @@ -23,6 +26,9 @@ class window.ACASFormStateDisplayUpdateCellController extends Backbone.View events: -> "click": "handleCellClicked" + initialize: (options) -> + @options = options + render: => $(@el).empty() if @collection.length == 0 @@ -52,6 +58,9 @@ class window.ACASFormStateDisplayUpdateCellController extends Backbone.View class window.ACASFormStateDisplayUpdateRowController extends Backbone.View tagName: 'tr' + initialize: (options) -> + @options = options + render: => for valDef in @options.tableDef.values vals = @collection.where lsKind: valDef.modelDefaults.kind @@ -69,7 +78,8 @@ class window.ACASFormStateDisplayUpdateController extends Backbone.View rowNumberKind: 'row number' template: _.template($("#ACASFormStateDisplayUpdateView").html()) - initialize: -> + initialize: (options) -> + @options = options @thingRef = @options.thingRef @tableDef = @options.tableDef @tableSetupComplete = false @@ -218,6 +228,9 @@ class window.ACASFormStateDisplayOldValueController extends Backbone.View tagName: 'tr' template: _.template($("#ACASFormStateDisplayOldValueView").html()) + initialize: (options) -> + @options = options + render: => value = @model.get(@model.get('lsType')) if @options.valueDef.displayOverride? @@ -258,7 +271,8 @@ class window.ACASFormStateDisplayValueEditController extends Backbone.View "click .bv_cancelBtn": "handleCancelClicked" "click .bv_saveBtn": "handleSaveClicked" - initialize: -> + initialize: (options) -> + @options = options @tableDef = @options.tableDef for valDef in @tableDef.values if valDef.modelDefaults.kind == @collection.at(0).get('lsKind') diff --git a/modules/Components/src/client/ACASFormStateTable.coffee b/modules/Components/src/client/ACASFormStateTable.coffee index 7f15e9108..61df6849f 100644 --- a/modules/Components/src/client/ACASFormStateTable.coffee +++ b/modules/Components/src/client/ACASFormStateTable.coffee @@ -223,7 +223,7 @@ class window.ACASFormStateTableController extends Backbone.View columns: @colDefs search: @tableDef.search currentRowClassName: 'bv_stateDisplayCurrentRow', - currentColClassName: 'bv_stateDisplayCurrentColumn' + currentColClassName: 'bv_stateDisplayCurrentColumn' cells: (row, col, prop) => cellProperties = {} if @tableReadOnly diff --git a/modules/Components/src/client/LSErrorNotification.coffee b/modules/Components/src/client/LSErrorNotification.coffee index de6b77b30..ca8b28aa5 100644 --- a/modules/Components/src/client/LSErrorNotification.coffee +++ b/modules/Components/src/client/LSErrorNotification.coffee @@ -15,7 +15,8 @@ class window.LSAbstractNotificationCounterController extends Backbone.View container: null notificationsList: null - initialize: -> + initialize: (options) -> + @options = options _.bindAll(@, 'render') @notificationsList = @.options.notificationsList @@ -66,7 +67,8 @@ class window.LSErrorController extends Backbone.View notificationsList: null badgeEl: null - initialize: -> + initialize: (options) -> + @options = options _.bindAll(@, 'render') @notificationsList = @.options.notificationsList @@ -88,7 +90,8 @@ class window.LSWarningController extends Backbone.View notificationsList: null badgeEl: null - initialize: -> + initialize: (options) -> + @options = options _.bindAll(@, 'render') @notificationsList = @.options.notificationsList @@ -110,7 +113,8 @@ class window.LSInfoController extends Backbone.View notificationsList: null badgeEl: null - initialize: -> + initialize: (options) -> + @options = options _.bindAll(@, 'render') @notificationsList = @.options.notificationsList @@ -139,7 +143,8 @@ class window.LSNotificationController extends Backbone.View events: 'click .bv_notificationCountContainer': 'toggleShowNotificationMessages' - initialize: -> + initialize: (options) -> + @options = options _.bindAll(@, 'render', 'addError', diff --git a/modules/Components/src/client/LSFileChooser.coffee b/modules/Components/src/client/LSFileChooser.coffee index c289b4946..2504660e5 100644 --- a/modules/Components/src/client/LSFileChooser.coffee +++ b/modules/Components/src/client/LSFileChooser.coffee @@ -28,7 +28,8 @@ class window.LSFileChooserController extends Backbone.View requiresValidation: true hideDelete: false #for hiding delete button after successful file upload - initialize: -> + initialize: (options) -> + @options = options _.bindAll(@, 'render', 'handleDragOverDocument', diff --git a/modules/Components/src/client/LSFileInput.coffee b/modules/Components/src/client/LSFileInput.coffee index cbee38724..ba327376f 100644 --- a/modules/Components/src/client/LSFileInput.coffee +++ b/modules/Components/src/client/LSFileInput.coffee @@ -12,7 +12,8 @@ class window.LSFileInputController extends Backbone.View allowedFileTypes: ['xls', 'rtf', 'pdf', 'txt', 'csv', 'sdf', 'xlsx', 'doc', 'docx', 'png', 'gif', 'jpg'] - initialize: -> + initialize: (options) -> + @options = options _.bindAll(@, 'render', 'handleFileChooserUploadComplete', diff --git a/modules/CurveAnalysis/src/client/CurveCurator.coffee b/modules/CurveAnalysis/src/client/CurveCurator.coffee index cf74ab694..3a80aab88 100644 --- a/modules/CurveAnalysis/src/client/CurveCurator.coffee +++ b/modules/CurveAnalysis/src/client/CurveCurator.coffee @@ -313,9 +313,9 @@ class window.DoseResponsePlotController extends AbstractFormController selection = brd.elementsByName.selection selection.update() selectionCoords = [selection.vertices[0].coords.usrCoords, - selection.vertices[1].coords.usrCoords, - selection.vertices[2].coords.usrCoords, - selection.vertices[3].coords.usrCoords] + selection.vertices[1].coords.usrCoords, + selection.vertices[2].coords.usrCoords, + selection.vertices[3].coords.usrCoords] #Sort by response desc (south is on the top) sorted = _.sortBy selection.vertices.slice(0,4), (vertex) -> vertex.coords.usrCoords[2] #Sort north and south by response (order will then be 0 = west 1 = east) diff --git a/modules/Logging/src/server/ConsoleLogWinstonOverride.coffee b/modules/Logging/src/server/ConsoleLogWinstonOverride.coffee index de790695d..db8ee7eac 100644 --- a/modules/Logging/src/server/ConsoleLogWinstonOverride.coffee +++ b/modules/Logging/src/server/ConsoleLogWinstonOverride.coffee @@ -1,7 +1,7 @@ ACAS_HOME="../../.." util = require('util') winston = require('winston') -logger = new (winston.Logger) +logger = winston.createLogger({}) config = require "#{ACAS_HOME}/conf/compiled/conf.js" shouldWarn = false @@ -9,7 +9,7 @@ warningMessage = "" if config.all.server.log?.level? logLevel = config.all.server.log.level.toLowerCase() - allowedLevels = Object.keys(winston.levels) + allowedLevels = Object.keys(winston.config.syslog) if logLevel not in allowedLevels shouldWarn = true warningMessage = "log level '#{logLevel}' not in #{"'"+allowedLevels.join("','")+"'"}, setting to 'info'" @@ -23,7 +23,7 @@ else formatArgs = (args) -> [ util.format.apply(util.format, Array::slice.call(args)) ] -logger.add winston.transports.Console, +logger.add new winston.transports.Console colorize: true timestamp: true level: logLevel diff --git a/modules/Logging/src/server/routes/Logger.coffee b/modules/Logging/src/server/routes/Logger.coffee index dbf03c626..f41d3c5df 100644 --- a/modules/Logging/src/server/routes/Logger.coffee +++ b/modules/Logging/src/server/routes/Logger.coffee @@ -9,9 +9,9 @@ if config.all.logging.usemongo db = require("mongojs").connect(config.all.logging.database, ["logs"]) db.createCollection("logs") winstonLoggingOptions = {db: config.all.logging.database} - winston.add(winston.transports.MongoDB, winstonLoggingOptions) + winston.add(new winston.transports.MongoDB(winstonLoggingOptions)) else - winston.add(winston.transports.File, { filename: 'acas.log', json: false } ) + winston.add(new winston.transports.File({ filename: 'acas.log', json: false } )) exports.writeToLog = (logLevel, application, action, data, user, transactionId) -> diff --git a/modules/ModuleMenus/spec/ModuleLauncherSpec.coffee b/modules/ModuleMenus/spec/ModuleLauncherSpec.coffee index b8ef8e32b..01f16e46f 100644 --- a/modules/ModuleMenus/spec/ModuleLauncherSpec.coffee +++ b/modules/ModuleMenus/spec/ModuleLauncherSpec.coffee @@ -43,7 +43,7 @@ describe "Module Menu System Testing", -> expect(@gotTrigger).toBeTruthy() ########################################## - describe "Module Launcher List Testing", -> + describe "Module Launcher List Testing", -> beforeEach -> @modLauncherList = new ModuleLauncherList(window.moduleMenusTestJSON.testMenuItems) diff --git a/modules/ModuleMenus/src/client/ModuleMenus.coffee b/modules/ModuleMenus/src/client/ModuleMenus.coffee index e0f3d2804..97a9e8965 100644 --- a/modules/ModuleMenus/src/client/ModuleMenus.coffee +++ b/modules/ModuleMenus/src/client/ModuleMenus.coffee @@ -8,8 +8,9 @@ class window.ModuleMenusController extends Backbone.View 'change .bv_fastUserSelect': 'handleLoginUserChange' # 'click .bv_showModuleMenuControl': "handleShowMenus" - initialize: -> window.onbeforeunload = @handleBeforeUnload + initialize: (options) -> + @options = options $(@el).html @template() if window.conf.moduleMenus.menuConfigurationSettings? diff --git a/modules/ServerAPI/spec/testFixtures/EntityPropertyDescriptorsServiceTestJSON.coffee b/modules/ServerAPI/spec/testFixtures/EntityPropertyDescriptorsServiceTestJSON.coffee index 0532eb245..69a94a237 100644 --- a/modules/ServerAPI/spec/testFixtures/EntityPropertyDescriptorsServiceTestJSON.coffee +++ b/modules/ServerAPI/spec/testFixtures/EntityPropertyDescriptorsServiceTestJSON.coffee @@ -12,204 +12,204 @@ } }, { - 'valueDescriptor': { - 'name': 'FORMULA', - 'prettyName': 'Molecular Formula', - 'description': 'Property for Molecular Formula Calculation', - 'valueType': { 'name': 'STRING' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'MONOISOTOPIC_MASS', - 'prettyName': 'Monoisotopic Mass', - 'description': 'Property for Monoisotopic Mass Calculation', - 'valueType': { 'name': 'DOUBLE' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'ELEMENTAL_COMPOSITION', - 'prettyName': 'Elemental Composition', - 'description': 'Property for Elemental Composition Calculation', - 'valueType': { 'name': 'STRING' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'CLOGP', - 'prettyName': 'ClogP', - 'description': 'Property for ClogP Calculation', - 'valueType': { 'name': 'DOUBLE' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'LOGD_7_4', - 'prettyName': 'logD (7.4)', - 'description': 'Property for logD (7.4) Calculation', - 'valueType': { 'name': 'DOUBLE' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'TPSA_7_4', - 'prettyName': 'TPSA (7.4)', - 'description': 'Property for TPSA (7.4) Calculation', - 'valueType': { 'name': 'DOUBLE' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'CHARGE_7_4', - 'prettyName': 'Charge (7.4)', - 'description': 'Property for Charge (7.4) Calculation', - 'valueType': { 'name': 'DOUBLE' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'PKA_ACID_1', - 'prettyName': 'Strongest Acidic pKa', - 'description': 'Property for Strongest Acidic pKa Calculation', - 'valueType': { 'name': 'DOUBLE' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'PKA_ACID_2', - 'prettyName': 'Second Strongest Acidic pKa', - 'description': 'Property for Second Strongest Acidic pKa Calculation', - 'valueType': { 'name': 'DOUBLE' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'PKA_BASE_1', - 'prettyName': 'Strongest Basic pKa', - 'description': 'Property for Strongest Basic pKa Calculation', - 'valueType': { 'name': 'DOUBLE' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'PKA_BASE_2', - 'prettyName': 'Second Strongest Basic pKa', - 'description': 'Property for Second Strongest Basic pKa Calculation', - 'valueType': { 'name': 'DOUBLE' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'HBA_ATOM_COUNT_PARENT', - 'prettyName': 'HBA atoms (parent)', - 'description': 'Property for HBA atoms (parent) Calculation', - 'valueType': { 'name': 'INT' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'HBA_ATOM_COUNT_7_4', - 'prettyName': 'HBA atoms (7.4)', - 'description': 'Property for HBA atoms (7.4) Calculation', - 'valueType': { 'name': 'INT' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'HBD_COUNT_PARENT', - 'prettyName': 'HBDs (parent)', - 'description': 'Property for HBDs (parent) Calculation', - 'valueType': { 'name': 'INT' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'HBD_COUNT_7_4', - 'prettyName': 'HBDs (7.4)', - 'description': 'Property for HBDs (7.4) Calculation', - 'valueType': { 'name': 'INT' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'ROTATABLE_BOND_COUNT', - 'prettyName': 'Rotatable Bonds', - 'description': 'Property for Rotatable Bonds Calculation', - 'valueType': { 'name': 'INT' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'N_COUNT', - 'prettyName': 'N count', - 'description': 'Property for N count Calculation', - 'valueType': { 'name': 'INT' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'O_COUNT', - 'prettyName': 'O count', - 'description': 'Property for O count Calculation', - 'valueType': { 'name': 'INT' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'N_O_COUNT', - 'prettyName': 'N+O count', - 'description': 'Property for N+O count Calculation', - 'valueType': { 'name': 'INT' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'HEAVY_ATOM_COUNT', - 'prettyName': 'Heavy Atom count', - 'description': 'Property for Heavy Atom count Calculation', - 'valueType': { 'name': 'INT' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'SMILES', - 'prettyName': 'SMILES', - 'description': 'Property for SMILES Calculation', - 'valueType': { 'name': 'SMILES' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'IUPAC', - 'prettyName': 'IUPAC Name', - 'description': 'Property for IUPAC Name Calculation', - 'valueType': { 'name': 'STRING' }, - 'multivalued': false, - } - } - ] + 'valueDescriptor': { + 'name': 'FORMULA', + 'prettyName': 'Molecular Formula', + 'description': 'Property for Molecular Formula Calculation', + 'valueType': { 'name': 'STRING' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'MONOISOTOPIC_MASS', + 'prettyName': 'Monoisotopic Mass', + 'description': 'Property for Monoisotopic Mass Calculation', + 'valueType': { 'name': 'DOUBLE' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'ELEMENTAL_COMPOSITION', + 'prettyName': 'Elemental Composition', + 'description': 'Property for Elemental Composition Calculation', + 'valueType': { 'name': 'STRING' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'CLOGP', + 'prettyName': 'ClogP', + 'description': 'Property for ClogP Calculation', + 'valueType': { 'name': 'DOUBLE' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'LOGD_7_4', + 'prettyName': 'logD (7.4)', + 'description': 'Property for logD (7.4) Calculation', + 'valueType': { 'name': 'DOUBLE' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'TPSA_7_4', + 'prettyName': 'TPSA (7.4)', + 'description': 'Property for TPSA (7.4) Calculation', + 'valueType': { 'name': 'DOUBLE' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'CHARGE_7_4', + 'prettyName': 'Charge (7.4)', + 'description': 'Property for Charge (7.4) Calculation', + 'valueType': { 'name': 'DOUBLE' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'PKA_ACID_1', + 'prettyName': 'Strongest Acidic pKa', + 'description': 'Property for Strongest Acidic pKa Calculation', + 'valueType': { 'name': 'DOUBLE' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'PKA_ACID_2', + 'prettyName': 'Second Strongest Acidic pKa', + 'description': 'Property for Second Strongest Acidic pKa Calculation', + 'valueType': { 'name': 'DOUBLE' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'PKA_BASE_1', + 'prettyName': 'Strongest Basic pKa', + 'description': 'Property for Strongest Basic pKa Calculation', + 'valueType': { 'name': 'DOUBLE' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'PKA_BASE_2', + 'prettyName': 'Second Strongest Basic pKa', + 'description': 'Property for Second Strongest Basic pKa Calculation', + 'valueType': { 'name': 'DOUBLE' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'HBA_ATOM_COUNT_PARENT', + 'prettyName': 'HBA atoms (parent)', + 'description': 'Property for HBA atoms (parent) Calculation', + 'valueType': { 'name': 'INT' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'HBA_ATOM_COUNT_7_4', + 'prettyName': 'HBA atoms (7.4)', + 'description': 'Property for HBA atoms (7.4) Calculation', + 'valueType': { 'name': 'INT' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'HBD_COUNT_PARENT', + 'prettyName': 'HBDs (parent)', + 'description': 'Property for HBDs (parent) Calculation', + 'valueType': { 'name': 'INT' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'HBD_COUNT_7_4', + 'prettyName': 'HBDs (7.4)', + 'description': 'Property for HBDs (7.4) Calculation', + 'valueType': { 'name': 'INT' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'ROTATABLE_BOND_COUNT', + 'prettyName': 'Rotatable Bonds', + 'description': 'Property for Rotatable Bonds Calculation', + 'valueType': { 'name': 'INT' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'N_COUNT', + 'prettyName': 'N count', + 'description': 'Property for N count Calculation', + 'valueType': { 'name': 'INT' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'O_COUNT', + 'prettyName': 'O count', + 'description': 'Property for O count Calculation', + 'valueType': { 'name': 'INT' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'N_O_COUNT', + 'prettyName': 'N+O count', + 'description': 'Property for N+O count Calculation', + 'valueType': { 'name': 'INT' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'HEAVY_ATOM_COUNT', + 'prettyName': 'Heavy Atom count', + 'description': 'Property for Heavy Atom count Calculation', + 'valueType': { 'name': 'INT' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'SMILES', + 'prettyName': 'SMILES', + 'description': 'Property for SMILES Calculation', + 'valueType': { 'name': 'SMILES' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'IUPAC', + 'prettyName': 'IUPAC Name', + 'description': 'Property for IUPAC Name Calculation', + 'valueType': { 'name': 'STRING' }, + 'multivalued': false, + } + } + ] batch: [ { 'valueDescriptor': { diff --git a/modules/ServerAPI/spec/testFixtures/ParentPropertyDescriptorServiceTestJSON.coffee b/modules/ServerAPI/spec/testFixtures/ParentPropertyDescriptorServiceTestJSON.coffee index 98ef11296..9c2f37ea2 100644 --- a/modules/ServerAPI/spec/testFixtures/ParentPropertyDescriptorServiceTestJSON.coffee +++ b/modules/ServerAPI/spec/testFixtures/ParentPropertyDescriptorServiceTestJSON.coffee @@ -1,212 +1,212 @@ ((exports) -> exports.parentPropertyDescriptors = [ - { - 'valueDescriptor': { - 'name': 'MOLWEIGHT', - 'prettyName': 'Molecular Weight', - 'description': 'Property for Molecular Weight Calculation', - 'valueType': - 'name': 'DOUBLE' , - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'FORMULA', - 'prettyName': 'Molecular Formula', - 'description': 'Property for Molecular Formula Calculation', - 'valueType': { 'name': 'STRING' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'MONOISOTOPIC_MASS', - 'prettyName': 'Monoisotopic Mass', - 'description': 'Property for Monoisotopic Mass Calculation', - 'valueType': { 'name': 'DOUBLE' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'ELEMENTAL_COMPOSITION', - 'prettyName': 'Elemental Composition', - 'description': 'Property for Elemental Composition Calculation', - 'valueType': { 'name': 'STRING' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'CLOGP', - 'prettyName': 'ClogP', - 'description': 'Property for ClogP Calculation', - 'valueType': { 'name': 'DOUBLE' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'LOGD_7_4', - 'prettyName': 'logD (7.4)', - 'description': 'Property for logD (7.4) Calculation', - 'valueType': { 'name': 'DOUBLE' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'TPSA_7_4', - 'prettyName': 'TPSA (7.4)', - 'description': 'Property for TPSA (7.4) Calculation', - 'valueType': { 'name': 'DOUBLE' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'CHARGE_7_4', - 'prettyName': 'Charge (7.4)', - 'description': 'Property for Charge (7.4) Calculation', - 'valueType': { 'name': 'DOUBLE' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'PKA_ACID_1', - 'prettyName': 'Strongest Acidic pKa', - 'description': 'Property for Strongest Acidic pKa Calculation', - 'valueType': { 'name': 'DOUBLE' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'PKA_ACID_2', - 'prettyName': 'Second Strongest Acidic pKa', - 'description': 'Property for Second Strongest Acidic pKa Calculation', - 'valueType': { 'name': 'DOUBLE' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'PKA_BASE_1', - 'prettyName': 'Strongest Basic pKa', - 'description': 'Property for Strongest Basic pKa Calculation', - 'valueType': { 'name': 'DOUBLE' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'PKA_BASE_2', - 'prettyName': 'Second Strongest Basic pKa', - 'description': 'Property for Second Strongest Basic pKa Calculation', - 'valueType': { 'name': 'DOUBLE' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'HBA_ATOM_COUNT_PARENT', - 'prettyName': 'HBA atoms (parent)', - 'description': 'Property for HBA atoms (parent) Calculation', - 'valueType': { 'name': 'INT' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'HBA_ATOM_COUNT_7_4', - 'prettyName': 'HBA atoms (7.4)', - 'description': 'Property for HBA atoms (7.4) Calculation', - 'valueType': { 'name': 'INT' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'HBD_COUNT_PARENT', - 'prettyName': 'HBDs (parent)', - 'description': 'Property for HBDs (parent) Calculation', - 'valueType': { 'name': 'INT' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'HBD_COUNT_7_4', - 'prettyName': 'HBDs (7.4)', - 'description': 'Property for HBDs (7.4) Calculation', - 'valueType': { 'name': 'INT' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'ROTATABLE_BOND_COUNT', - 'prettyName': 'Rotatable Bonds', - 'description': 'Property for Rotatable Bonds Calculation', - 'valueType': { 'name': 'INT' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'N_COUNT', - 'prettyName': 'N count', - 'description': 'Property for N count Calculation', - 'valueType': { 'name': 'INT' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'O_COUNT', - 'prettyName': 'O count', - 'description': 'Property for O count Calculation', - 'valueType': { 'name': 'INT' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'N_O_COUNT', - 'prettyName': 'N+O count', - 'description': 'Property for N+O count Calculation', - 'valueType': { 'name': 'INT' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'HEAVY_ATOM_COUNT', - 'prettyName': 'Heavy Atom count', - 'description': 'Property for Heavy Atom count Calculation', - 'valueType': { 'name': 'INT' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'SMILES', - 'prettyName': 'SMILES', - 'description': 'Property for SMILES Calculation', - 'valueType': { 'name': 'SMILES' }, - 'multivalued': false, - } - }, - { - 'valueDescriptor': { - 'name': 'IUPAC', - 'prettyName': 'IUPAC Name', - 'description': 'Property for IUPAC Name Calculation', - 'valueType': { 'name': 'STRING' }, - 'multivalued': false, - } - } - ] + { + 'valueDescriptor': { + 'name': 'MOLWEIGHT', + 'prettyName': 'Molecular Weight', + 'description': 'Property for Molecular Weight Calculation', + 'valueType': + 'name': 'DOUBLE' , + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'FORMULA', + 'prettyName': 'Molecular Formula', + 'description': 'Property for Molecular Formula Calculation', + 'valueType': { 'name': 'STRING' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'MONOISOTOPIC_MASS', + 'prettyName': 'Monoisotopic Mass', + 'description': 'Property for Monoisotopic Mass Calculation', + 'valueType': { 'name': 'DOUBLE' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'ELEMENTAL_COMPOSITION', + 'prettyName': 'Elemental Composition', + 'description': 'Property for Elemental Composition Calculation', + 'valueType': { 'name': 'STRING' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'CLOGP', + 'prettyName': 'ClogP', + 'description': 'Property for ClogP Calculation', + 'valueType': { 'name': 'DOUBLE' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'LOGD_7_4', + 'prettyName': 'logD (7.4)', + 'description': 'Property for logD (7.4) Calculation', + 'valueType': { 'name': 'DOUBLE' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'TPSA_7_4', + 'prettyName': 'TPSA (7.4)', + 'description': 'Property for TPSA (7.4) Calculation', + 'valueType': { 'name': 'DOUBLE' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'CHARGE_7_4', + 'prettyName': 'Charge (7.4)', + 'description': 'Property for Charge (7.4) Calculation', + 'valueType': { 'name': 'DOUBLE' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'PKA_ACID_1', + 'prettyName': 'Strongest Acidic pKa', + 'description': 'Property for Strongest Acidic pKa Calculation', + 'valueType': { 'name': 'DOUBLE' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'PKA_ACID_2', + 'prettyName': 'Second Strongest Acidic pKa', + 'description': 'Property for Second Strongest Acidic pKa Calculation', + 'valueType': { 'name': 'DOUBLE' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'PKA_BASE_1', + 'prettyName': 'Strongest Basic pKa', + 'description': 'Property for Strongest Basic pKa Calculation', + 'valueType': { 'name': 'DOUBLE' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'PKA_BASE_2', + 'prettyName': 'Second Strongest Basic pKa', + 'description': 'Property for Second Strongest Basic pKa Calculation', + 'valueType': { 'name': 'DOUBLE' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'HBA_ATOM_COUNT_PARENT', + 'prettyName': 'HBA atoms (parent)', + 'description': 'Property for HBA atoms (parent) Calculation', + 'valueType': { 'name': 'INT' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'HBA_ATOM_COUNT_7_4', + 'prettyName': 'HBA atoms (7.4)', + 'description': 'Property for HBA atoms (7.4) Calculation', + 'valueType': { 'name': 'INT' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'HBD_COUNT_PARENT', + 'prettyName': 'HBDs (parent)', + 'description': 'Property for HBDs (parent) Calculation', + 'valueType': { 'name': 'INT' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'HBD_COUNT_7_4', + 'prettyName': 'HBDs (7.4)', + 'description': 'Property for HBDs (7.4) Calculation', + 'valueType': { 'name': 'INT' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'ROTATABLE_BOND_COUNT', + 'prettyName': 'Rotatable Bonds', + 'description': 'Property for Rotatable Bonds Calculation', + 'valueType': { 'name': 'INT' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'N_COUNT', + 'prettyName': 'N count', + 'description': 'Property for N count Calculation', + 'valueType': { 'name': 'INT' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'O_COUNT', + 'prettyName': 'O count', + 'description': 'Property for O count Calculation', + 'valueType': { 'name': 'INT' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'N_O_COUNT', + 'prettyName': 'N+O count', + 'description': 'Property for N+O count Calculation', + 'valueType': { 'name': 'INT' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'HEAVY_ATOM_COUNT', + 'prettyName': 'Heavy Atom count', + 'description': 'Property for Heavy Atom count Calculation', + 'valueType': { 'name': 'INT' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'SMILES', + 'prettyName': 'SMILES', + 'description': 'Property for SMILES Calculation', + 'valueType': { 'name': 'SMILES' }, + 'multivalued': false, + } + }, + { + 'valueDescriptor': { + 'name': 'IUPAC', + 'prettyName': 'IUPAC Name', + 'description': 'Property for IUPAC Name Calculation', + 'valueType': { 'name': 'STRING' }, + 'multivalued': false, + } + } + ] ) (if (typeof process is "undefined" or not process.versions) then window.parentPropertyDescriptorsTestJSON = window.parentPropertyDescriptorsTestJSON or {} else exports) diff --git a/modules/ServerAPI/src/server/routes/CreateLiveDesignLiveReportForACAS.coffee b/modules/ServerAPI/src/server/routes/CreateLiveDesignLiveReportForACAS.coffee index f014409c1..1f922e75d 100644 --- a/modules/ServerAPI/src/server/routes/CreateLiveDesignLiveReportForACAS.coffee +++ b/modules/ServerAPI/src/server/routes/CreateLiveDesignLiveReportForACAS.coffee @@ -26,13 +26,13 @@ exports.redirectToNewLiveDesignLiveReportForExperiment = (req, resp) -> exptCode = req.params.experimentCode username = req.session.passport.user.username exports.getUrlForNewLiveDesignLiveReportForExperimentInternal exptCode, username, (url) -> - resp.redirect url + resp.redirect url exports.getUrlForNewLiveDesignLiveReportForExperiment = (req, resp) -> exptCode = req.params.experimentCode username = req.session.passport.user.username exports.getUrlForNewLiveDesignLiveReportForExperimentInternal exptCode, (url) -> - resp.json {url: url} + resp.json {url: url} exports.getUrlForNewLiveDesignLiveReportForExperimentInternal = (exptCode, username, callback) -> exec = require('child_process').exec diff --git a/modules/ServerAPI/src/server/routes/ExperimentServiceRoutes.coffee b/modules/ServerAPI/src/server/routes/ExperimentServiceRoutes.coffee index 8fad63944..b083aec7f 100644 --- a/modules/ServerAPI/src/server/routes/ExperimentServiceRoutes.coffee +++ b/modules/ServerAPI/src/server/routes/ExperimentServiceRoutes.coffee @@ -560,10 +560,7 @@ exports.resultViewerURLFromExperimentCodeName = (codeName, callback) -> # Error callback should be json _ = require '../public/lib/underscore.js' config = require '../conf/compiled/conf.js' - if config.all.client.service.result && config.all.client.service.result.viewer and - config.all.client.service.result.viewer.experimentPrefix? and - config.all.client.service.result.viewer.protocolPrefix? and - config.all.client.service.result.viewer.experimentNameColumn? + if config.all.client.service.result && config.all.client.service.result.viewer and config.all.client.service.result.viewer.experimentPrefix? and config.all.client.service.result.viewer.protocolPrefix? and config.all.client.service.result.viewer.experimentNameColumn? serverUtilityFunctions = require './ServerUtilityFunctions.js' baseurl = config.all.client.service.persistence.fullpath+"experiments/codename/"+codeName request = require 'request' @@ -601,9 +598,9 @@ exports.resultViewerURLFromExperimentCodeName = (codeName, callback) -> preferredProtocolLabelText = preferredProtocolLabel[0].labelText callback null, resultViewerURL: config.all.client.service.result.viewer.protocolPrefix + - encodeURIComponent(preferredProtocolLabelText) + - config.all.client.service.result.viewer.experimentPrefix + - encodeURIComponent(experimentName) + encodeURIComponent(preferredProtocolLabelText) + + config.all.client.service.result.viewer.experimentPrefix + + encodeURIComponent(experimentName) else console.log error console.log response diff --git a/modules/ServerAPI/src/server/routes/InventoryServiceRoutes.coffee b/modules/ServerAPI/src/server/routes/InventoryServiceRoutes.coffee index f4f2333b8..627711b59 100644 --- a/modules/ServerAPI/src/server/routes/InventoryServiceRoutes.coffee +++ b/modules/ServerAPI/src/server/routes/InventoryServiceRoutes.coffee @@ -55,7 +55,6 @@ exports.setupAPIRoutes = (app) -> app.post '/api/createTube', exports.createTube app.post '/api/createTubes', exports.createTubes app.post '/api/throwInTrash', exports.throwInTrash - app.post '/api/updateContainerHistoryLogs', exports.updateContainerHistoryLogs app.post '/api/getContainerInfoFromBatchCode', exports.getContainerInfoFromBatchCode app.post '/api/getContainerStatesByContainerValue', exports.getContainerStatesByContainerValue app.post '/api/getContainerLogsByContainerCodes', exports.getContainerLogsByContainerCodes @@ -119,7 +118,6 @@ exports.setupRoutes = (app, loginRoutes) -> app.post '/api/createTube', loginRoutes.ensureAuthenticated, exports.createTube app.post '/api/createTubes', loginRoutes.ensureAuthenticated, exports.createTubes app.post '/api/throwInTrash', loginRoutes.ensureAuthenticated, exports.throwInTrash - app.post '/api/updateContainerHistoryLogs', loginRoutes.ensureAuthenticated, exports.updateContainerHistoryLogs app.post '/api/getTubesFromBatchCode', loginRoutes.ensureAuthenticated, exports.getTubesFromBatchCode app.post '/api/loadParentVialsFromCSV', loginRoutes.ensureAuthenticated, exports.loadParentVialsFromCSV app.post '/api/loadDaughterVialsFromCSV', loginRoutes.ensureAuthenticated, exports.loadDaughterVialsFromCSV @@ -163,7 +161,7 @@ exports.getContainersInLocation = (req, resp) -> console.error json console.error response resp.end JSON.stringify "getContainersInLocation failed" - ) + ) exports.getContainersInLocationWithTypeAndKind = (req, resp) -> req.setTimeout 86400000 @@ -428,7 +426,7 @@ exports.getWellCodesByPlateBarcodes = (req, resp) -> console.error json console.error response resp.end JSON.stringify "getWellCodesByPlateBarcodes failed" - ) + ) exports.getWellCodesByPlateBarcodesInternal = (plateBarcodes, callback) -> if global.specRunnerTestmode @@ -489,7 +487,7 @@ exports.getWellContentInternal = (wellCodeNames, callback) -> console.error json console.error response callback JSON.stringify "getWellContent failed" - ) + ) exports.getContainerAndDefinitionContainerByContainerLabel = (req, resp) -> req.setTimeout 86400000 @@ -1977,9 +1975,8 @@ exports.getContainerLogsByContainerCodesInternal = (containerCodes, callback) => response = [] for getContainer in containersByCodeNamesResponse lsLabels = getContainer.container.lsLabels - preferredLabelObject = _.filter(lsLabels, (label) -> - label.preferred == true - ) + preferredLabelObject = _.filter lsLabels, (label) -> + label.preferred == true codeName = getContainer.container.codeName responseObject = label: preferredLabelObject[0].labelText @@ -2576,37 +2573,27 @@ exports.getTubesFromBatchCodeInternal = (input, callback) => queryPayload = { - "lsType": "container" , - "lsKind": "tube", -# "values":[ -# { -# "stateType":"metadata", -# "stateKind":"information", -# "valueType": "codeValue", -# "valueKind": "status", -# "operator": "!=", -# "value":"expired" -# } -# ], - "secondInteractions":[ - { - "interactionType": "has member", - "interactionKind": "container_well", - "thingType": "well", - "thingKind": "default", - "thingValues":[ - { - "stateType":"status", - "stateKind":"content", - "valueType": "codeValue", - "valueKind": "batch code", - "operator": "=", - "value":batchCode - } - ] - } - ] - } + "lsType": "container" , + "lsKind": "tube", + "secondInteractions":[ + { + "interactionType": "has member", + "interactionKind": "container_well", + "thingType": "well", + "thingKind": "default", + "thingValues":[ + { + "stateType":"status", + "stateKind":"content", + "valueType": "codeValue", + "valueKind": "batch code", + "operator": "=", + "value":batchCode + } + ] + } + ] + } config = require '../conf/compiled/conf.js' baseurl = config.all.client.service.persistence.fullpath+"containers/advancedSearchContainers?with=codeTable&labelType=barcode" diff --git a/modules/ServerAPI/src/server/routes/ServerUtilityFunctions.coffee b/modules/ServerAPI/src/server/routes/ServerUtilityFunctions.coffee index 9c44ac7d6..0a088b2b6 100644 --- a/modules/ServerAPI/src/server/routes/ServerUtilityFunctions.coffee +++ b/modules/ServerAPI/src/server/routes/ServerUtilityFunctions.coffee @@ -1460,9 +1460,9 @@ class Container extends Backbone.Model lsStates.forEach (lsState) => additionalValues = lsState.get('lsValues').filter (value) -> (!value.get('ignored')) and - !((value.get('lsType')=='stringValue') and (value.get('lsKind')=='location')) and - !((value.get('lsType')=='codeValue') and (value.get('lsKind')=='moved by')) and - !((value.get('lsType')=='dateValue') and (value.get('lsKind')=='moved date')) + !((value.get('lsType')=='stringValue') and (value.get('lsKind')=='location')) and + !((value.get('lsType')=='codeValue') and (value.get('lsKind')=='moved by')) and + !((value.get('lsType')=='dateValue') and (value.get('lsKind')=='moved date')) responseObject = codeName: @get('codeName') recordedBy: lsState.get('recordedBy') @@ -1481,9 +1481,9 @@ class Container extends Backbone.Model lsStates.forEach (lsState) => additionalValues = lsState.get('lsValues').filter (value) -> (!value.get('ignored')) and - !((value.get('lsType')=='stringValue') and (value.get('lsKind')=='location')) and - !((value.get('lsType')=='codeValue') and (value.get('lsKind')=='moved by')) and - !((value.get('lsType')=='dateValue') and (value.get('lsKind')=='moved date')) + !((value.get('lsType')=='stringValue') and (value.get('lsKind')=='location')) and + !((value.get('lsType')=='codeValue') and (value.get('lsKind')=='moved by')) and + !((value.get('lsType')=='dateValue') and (value.get('lsKind')=='moved date')) responseObject = codeName: @get('codeName') recordedBy: lsState.get('recordedBy') diff --git a/package.json b/package.json index f8c7c4238..e4c1fea09 100644 --- a/package.json +++ b/package.json @@ -32,6 +32,7 @@ "errorhandler": "^1.5.1", "express": "^4.17.1", "express-session": "^1.17.1", + "memorystore": "1.6.4", "extract-text-webpack-plugin": "3.0.0", "file-loader": "6.2.0", "flat": "5.0.2", @@ -41,14 +42,13 @@ "jasmine-core": "^3.6.0", "jasmine-jquery": "^2.1.1", "jquery": "^3.5.1", - "jquery-file-upload-middleware": "git+https://github.com/mcneilco/jquery-file-upload-middleware.git", + "jquery-file-upload-middleware": "0.1.8", "json2csv": "^5.0.5", "jszip": "3.5.0", "less": "^3.12.2", "lodash": "^4.17.20", "marked": "1.2.5", "method-override": "^3.0.0", - "mkdirp": "1.0.4", "mocha": "8.2.1", "mochawesome": "^6.2.1", "mongojs": "3.1.0",