diff --git a/app/collections/ComponentsCollection.coffee b/app/collections/ComponentsCollection.coffee new file mode 100644 index 000000000..d5b2d4837 --- /dev/null +++ b/app/collections/ComponentsCollection.coffee @@ -0,0 +1,7 @@ +LevelComponent = require 'models/LevelComponent' +CocoCollection = require 'models/CocoCollection' + +module.exports = class ComponentsCollection extends CocoCollection + url: '/db/level_component/search' + model: LevelComponent + diff --git a/app/lib/world/world.coffee b/app/lib/world/world.coffee index 1d5b2ee34..f90b79b58 100644 --- a/app/lib/world/world.coffee +++ b/app/lib/world/world.coffee @@ -221,7 +221,7 @@ module.exports = class World channel = 'world:' + channel for script in @scripts continue if script.channel isnt channel - scriptNote = new WorldScriptNote script, event, world + scriptNote = new WorldScriptNote script, event continue if scriptNote.invalid @scriptNotes.push scriptNote return unless @goalManager diff --git a/app/views/editor/component/versions.coffee b/app/views/editor/component/versions.coffee index a0638e26e..7305c29c5 100755 --- a/app/views/editor/component/versions.coffee +++ b/app/views/editor/component/versions.coffee @@ -2,8 +2,8 @@ VersionsView = require 'views/kinds/VersionsView' module.exports = class SuperVersionsView extends VersionsView id: "editor-component-versions-view" - url: "/db/component/" + url: "/db/level.component/" page: "component" constructor: (options, @ID) -> - super options, ID, require 'models/Component' \ No newline at end of file + super options, ID, require 'models/LevelComponent' \ No newline at end of file diff --git a/app/views/editor/components/main.coffee b/app/views/editor/components/main.coffee index 94dda6cbd..87a4ed3b6 100644 --- a/app/views/editor/components/main.coffee +++ b/app/views/editor/components/main.coffee @@ -3,13 +3,9 @@ template = require 'templates/editor/components/main' Level = require 'models/Level' LevelComponent = require 'models/LevelComponent' -CocoCollection = require 'models/CocoCollection' +ComponentsCollection = require 'collections/ComponentsCollection' ComponentConfigView = require './config' -class ComponentsSearchCollection extends CocoCollection - url: '/db/level_component/search' - model: LevelComponent - module.exports = class ThangComponentEditView extends CocoView id: "thang-components-edit-view" template: template @@ -25,7 +21,7 @@ module.exports = class ThangComponentEditView extends CocoView for model in [Level, LevelComponent] (new model()).on 'schema-loaded', @render unless model.schema?.loaded if not @componentCollection - @componentCollection = @supermodel.getCollection new ComponentsSearchCollection() + @componentCollection = @supermodel.getCollection new ComponentsCollection() unless @componentCollection.loaded @componentCollection.once 'sync', @onComponentsSync @componentCollection.fetch() diff --git a/app/views/play/level/tome/spell_toolbar_view.coffee b/app/views/play/level/tome/spell_toolbar_view.coffee index 573689742..16870f85f 100644 --- a/app/views/play/level/tome/spell_toolbar_view.coffee +++ b/app/views/play/level/tome/spell_toolbar_view.coffee @@ -26,7 +26,7 @@ module.exports = class SpellToolbarView extends View return unless total = @callState?.statementsExecuted @statementIndex = Math.min(total - 1, Math.max(0, statementIndex)) @statementRatio = @statementIndex / (total - 1) - @statementTime = @callState.statements[@statementIndex].userInfo.time + @statementTime = @callState.statements[@statementIndex]?.userInfo.time ? 0 @$el.find('.bar').css('width', 100 * @statementRatio + '%') Backbone.Mediator.publish 'tome:spell-statement-index-updated', statementIndex: @statementIndex, ace: @ace @$el.find('.step-backward').prop('disabled', @statementIndex is 0) @@ -83,7 +83,7 @@ module.exports = class SpellToolbarView extends View setCallState: (callState, statementIndex, @callIndex, @metrics) -> return if callState is @callState and statementIndex is @statementIndex return unless @callState = callState - if not @maintainIndexHover and not @maintainIndexScrub and statementIndex? and callState.statements[statementIndex].userInfo.time isnt @statementTime + if not @maintainIndexHover and not @maintainIndexScrub and statementIndex? and callState.statements[statementIndex]?.userInfo.time isnt @statementTime @setStatementIndex statementIndex else @setStatementRatio @statementRatio diff --git a/app/views/play/level/tome/spell_view.coffee b/app/views/play/level/tome/spell_view.coffee index 7d319cef4..f648ab9c8 100644 --- a/app/views/play/level/tome/spell_view.coffee +++ b/app/views/play/level/tome/spell_view.coffee @@ -370,7 +370,7 @@ module.exports = class SpellView extends View #console.log thangID, "got new castAether with raw", aether.raw, "problems", aether.problems spellThang.castAether = aether spellThang.aether = @spell.createAether e.world.getThangByID(thangID) - #console.log thangID, @spell.spellKey, "ran", aether.metrics.callsExecuted, "times over", aether.metrics.statementsExecuted, "statements, with max recursion depth", aether.metrics.maxDepth, "and full flow/metrics", aether.metrics, aether.flow + console.log thangID, @spell.spellKey, "ran", aether.metrics.callsExecuted, "times over", aether.metrics.statementsExecuted, "statements, with max recursion depth", aether.metrics.maxDepth, "and full flow/metrics", aether.metrics, aether.flow @spell.transpile() @updateAether false, false diff --git a/server/models/User.coffee b/server/models/User.coffee index b557dfccd..043f7330a 100644 --- a/server/models/User.coffee +++ b/server/models/User.coffee @@ -45,6 +45,7 @@ UserSchema.statics.updateMailChimp = (doc, callback) -> params.email = if existingProps then {leid:existingProps.leid} else {email:doc.get('email')} params.merge_vars = { groupings: [ {id: MAILCHIMP_GROUP_ID, groups: newGroups} ] } params.update_existing = true + params.double_optin = false onSuccess = (data) -> doc.set('mailChimp', data)