diff --git a/app/locale/en.coffee b/app/locale/en.coffee index 2766dda9c..9c8008b9e 100644 --- a/app/locale/en.coffee +++ b/app/locale/en.coffee @@ -271,6 +271,7 @@ module.exports = nativeDescription: "English", englishDescription: "English", tr body: "Body" version: "Version" commit_msg: "Commit Message" + version_history: "Version History" version_history_for: "Version History for: " results: "Results" description: "Description" diff --git a/app/locale/nl.coffee b/app/locale/nl.coffee index f4c45edc5..5a6f17e8c 100644 --- a/app/locale/nl.coffee +++ b/app/locale/nl.coffee @@ -265,6 +265,7 @@ module.exports = nativeDescription: "Nederlands", englishDescription: "Dutch", t body: "Inhoud" version: "Versie" commit_msg: "Commit Bericht" + version_history: "Versie geschiedenis" version_history_for: "Versie geschiedenis voor: " results: "Resultaten" description: "Beschrijving" diff --git a/app/templates/editor/level/edit.jade b/app/templates/editor/level/edit.jade index 4166c81a1..10ba52c17 100644 --- a/app/templates/editor/level/edit.jade +++ b/app/templates/editor/level/edit.jade @@ -38,9 +38,11 @@ block outer_content li.dropdown a.dropdown-toggle(href='#', data-toggle='dropdown') - | Help + | More b.caret ul.dropdown-menu + li#version-history-button + a(href='#') Version History li a(href='https://github.com/codecombat/codecombat/wiki/Artisan-Home') Wiki li diff --git a/app/templates/editor/level/versions.jade b/app/templates/editor/level/versions.jade new file mode 100644 index 000000000..b40c7b6f0 --- /dev/null +++ b/app/templates/editor/level/versions.jade @@ -0,0 +1,11 @@ +extends /templates/modal/modal_base +include /templates/kinds/versions + +block modal-header-content + h3(data-i18n="general.version_history") Version History + +block modal-body-content + if dataList + +version-history-body() + +block modal-footer-content \ No newline at end of file diff --git a/app/templates/kinds/versions.jade b/app/templates/kinds/versions.jade index 274e91513..a7db6039f 100755 --- a/app/templates/kinds/versions.jade +++ b/app/templates/kinds/versions.jade @@ -1,19 +1,24 @@ extends /templates/base +mixin version-history-title() + h3(data-i18n="general.version_history_for") Version History for: #{dataList[0]} + +mixin version-history-body() + table.table + tr + th(data-i18n="general.name") Name + th(data-i18n="general.version") Version + th(data-i18n="general.commit_msg") Commit Message + for data in dataList + tr + td + a(href="/editor/#{page}/#{data.slug || data._id}") + | #{data.name} + td #{data.version.major}.#{data.version.minor} + td #{data.commitMessage} + block content if dataList - h3(data-i18n="general.version_history_for") Version History for: "#{dataList[0].name}" + +version-history-title() - table.table - tr - th(data-i18n="general.name") Name - th(data-i18n="general.version") Version - th(data-i18n="general.commit_msg") Commit Message - - for data in dataList - tr - td - a(href="/editor/#{page}/#{data.slug || data._id}") - | #{data.name} - td #{data.version.major}.#{data.version.minor} - td #{data.commitMessage} + +version-history-body() \ No newline at end of file diff --git a/app/views/editor/level/edit.coffee b/app/views/editor/level/edit.coffee index 962db3fac..4f1ceee85 100644 --- a/app/views/editor/level/edit.coffee +++ b/app/views/editor/level/edit.coffee @@ -12,6 +12,7 @@ ComponentsTabView = require './components_tab_view' SystemsTabView = require './systems_tab_view' LevelSaveView = require './save_view' LevelForkView = require './fork_view' +VersionHistoryView = require './versions_view' module.exports = class EditorLevelView extends View id: "editor-level-view" @@ -23,6 +24,7 @@ module.exports = class EditorLevelView extends View 'click #play-button': 'onPlayLevel' 'click #commit-level-start-button': 'startCommittingLevel' 'click #fork-level-start-button': 'startForkingLevel' + 'click #version-history-button': 'showVersionHistory' constructor: (options, @levelID) -> super options @@ -102,3 +104,8 @@ module.exports = class EditorLevelView extends View levelForkView = new LevelForkView level: @level @openModalView levelForkView Backbone.Mediator.publish 'level:view-switched', e + + showVersionHistory: (e) -> + versionHistoryView = new VersionHistoryView level:@level, @levelID + @openModalView versionHistoryView + Backbone.Mediator.publish 'level:view-switched', e \ No newline at end of file diff --git a/app/views/editor/level/versions_view.coffee b/app/views/editor/level/versions_view.coffee new file mode 100644 index 000000000..39af46ae4 --- /dev/null +++ b/app/views/editor/level/versions_view.coffee @@ -0,0 +1,30 @@ +VersionsView = require 'views/kinds/VersionsView' +ModalView = require 'views/kinds/ModalView' +template = require 'templates/editor/level/versions' + +module.exports = class ModalVersionsView extends VersionsView + id: 'version-history-modal' + url: "/db/level/" + page: "level" + template: template + + className: "modal fade" + closeButton: true + closesOnClickOutside: true + modalWidthPercent: null + + shortcuts: + 'esc': 'hide' + + constructor: (options, @ID) -> + super options, ID, require 'models/Level' + _.extend @, ModalView + ModalView.prototype.constructor options + + getRenderData: (context={}) -> + context = super(context) + context.closeButton = true + context + + hide: -> + @$el.removeClass('fade').modal "hide" \ No newline at end of file