From f6ece2d63e5fb4cdce89c57b19d347565a88459d Mon Sep 17 00:00:00 2001 From: Ruben Vereecken <rubenvereecken@gmail.com> Date: Mon, 10 Mar 2014 12:16:08 +0100 Subject: [PATCH 1/3] Created a modal version of Version History --- app/templates/editor/level/edit.jade | 4 ++- app/templates/editor/level/versions.jade | 15 ++++++++++ app/templates/kinds/versions.jade | 33 ++++++++++++--------- app/views/editor/level/edit.coffee | 7 +++++ app/views/editor/level/versions_view.coffee | 9 ++++++ 5 files changed, 53 insertions(+), 15 deletions(-) create mode 100644 app/templates/editor/level/versions.jade create mode 100644 app/views/editor/level/versions_view.coffee diff --git a/app/templates/editor/level/edit.jade b/app/templates/editor/level/edit.jade index 7d2c7ac66..ef788fe3e 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..652a6b7c5 --- /dev/null +++ b/app/templates/editor/level/versions.jade @@ -0,0 +1,15 @@ +extends /templates/modal/modal_base +include /templates/kinds/versions + +prepend modal-header + - var closeButton = true + +block modal-header-content + h3 Version History + +block modal-body-content + if dataList + +version-history-body() + +block modal-footer-content + button.close.btn(data-dismiss="modal", data-i18n="common.cancel") Cancel \ 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..4fb2b3690 --- /dev/null +++ b/app/views/editor/level/versions_view.coffee @@ -0,0 +1,9 @@ +SuperVersionsView = require './versions' +template = require 'templates/editor/level/versions' + +module.exports = class ModalVersionsView extends SuperVersionsView + id: 'version-history-modal' + template: template + + constructor: (options, @ID) -> + super options, ID \ No newline at end of file From 06ae06fa340078fa249047e7384447726b391b1c Mon Sep 17 00:00:00 2001 From: Ruben Vereecken <rubenvereecken@gmail.com> Date: Mon, 10 Mar 2014 19:08:53 +0100 Subject: [PATCH 2/3] Used mix-ins to combine Modal and VersionView --- app/templates/editor/level/versions.jade | 6 +---- app/views/editor/level/versions_view.coffee | 27 ++++++++++++++++++--- 2 files changed, 25 insertions(+), 8 deletions(-) diff --git a/app/templates/editor/level/versions.jade b/app/templates/editor/level/versions.jade index 652a6b7c5..87748e109 100644 --- a/app/templates/editor/level/versions.jade +++ b/app/templates/editor/level/versions.jade @@ -1,9 +1,6 @@ extends /templates/modal/modal_base include /templates/kinds/versions -prepend modal-header - - var closeButton = true - block modal-header-content h3 Version History @@ -11,5 +8,4 @@ block modal-body-content if dataList +version-history-body() -block modal-footer-content - button.close.btn(data-dismiss="modal", data-i18n="common.cancel") Cancel \ No newline at end of file +block modal-footer-content \ No newline at end of file diff --git a/app/views/editor/level/versions_view.coffee b/app/views/editor/level/versions_view.coffee index 4fb2b3690..39af46ae4 100644 --- a/app/views/editor/level/versions_view.coffee +++ b/app/views/editor/level/versions_view.coffee @@ -1,9 +1,30 @@ -SuperVersionsView = require './versions' +VersionsView = require 'views/kinds/VersionsView' +ModalView = require 'views/kinds/ModalView' template = require 'templates/editor/level/versions' -module.exports = class ModalVersionsView extends SuperVersionsView +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 \ No newline at end of file + 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 From 29901787f73a01e4cc64a1a6fa7d43e89d839d05 Mon Sep 17 00:00:00 2001 From: Ruben Vereecken <rubenvereecken@gmail.com> Date: Mon, 10 Mar 2014 19:11:37 +0100 Subject: [PATCH 3/3] Added i18n for Version History --- app/locale/en.coffee | 1 + app/locale/nl.coffee | 1 + app/templates/editor/level/versions.jade | 2 +- 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/app/locale/en.coffee b/app/locale/en.coffee index 2afc376cd..c4dd578e4 100644 --- a/app/locale/en.coffee +++ b/app/locale/en.coffee @@ -264,6 +264,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 929741d23..831161810 100644 --- a/app/locale/nl.coffee +++ b/app/locale/nl.coffee @@ -264,6 +264,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/versions.jade b/app/templates/editor/level/versions.jade index 87748e109..b40c7b6f0 100644 --- a/app/templates/editor/level/versions.jade +++ b/app/templates/editor/level/versions.jade @@ -2,7 +2,7 @@ extends /templates/modal/modal_base include /templates/kinds/versions block modal-header-content - h3 Version History + h3(data-i18n="general.version_history") Version History block modal-body-content if dataList