diff --git a/assets/scripts/app/views/log.coffee b/assets/scripts/app/views/log.coffee index 87bf913b..ac68ee1b 100644 --- a/assets/scripts/app/views/log.coffee +++ b/assets/scripts/app/views/log.coffee @@ -1,5 +1,6 @@ require 'log' require 'travis/lines_selector' +require 'travis/log_folder' Log.DEBUG = false Log.LIMIT = 10000 @@ -48,6 +49,7 @@ Travis.reopen @scroll = new Log.Scroll @engine = Log.create(limit: Log.LIMIT, listeners: [@scroll]) @lineSelector = new Travis.LinesSelector(@$().find('#log'), @scroll) + @logFolder = new Travis.LogFolder(@$().find('#log')) @observeParts() observeParts: -> @@ -76,11 +78,6 @@ Travis.reopen Travis.tailing.toggle() event.preventDefault() - click: (event) -> - target = $(event.target) - if target.prop('tagName') == 'P' - target.closest('.fold').toggleClass('open') - actions: toTop: () -> $(window).scrollTop(0) diff --git a/assets/scripts/lib/travis/log_folder.coffee b/assets/scripts/lib/travis/log_folder.coffee new file mode 100644 index 00000000..42506d3e --- /dev/null +++ b/assets/scripts/lib/travis/log_folder.coffee @@ -0,0 +1,8 @@ +class Travis.LogFolder + constructor: (@element) -> + @element.on 'click', '.fold', (event) => + target = $(event.target).closest('.fold') + target.toggleClass('open') + + event.preventDefault() + false diff --git a/assets/scripts/spec/unit/log_folder_spec.coffee b/assets/scripts/spec/unit/log_folder_spec.coffee new file mode 100644 index 00000000..e3d1fccd --- /dev/null +++ b/assets/scripts/spec/unit/log_folder_spec.coffee @@ -0,0 +1,36 @@ +element = jQuery('
first line
+second line
+third line
+fourth line
+fifth line
+