Commit f49db1df by Valera Rozuvan

Changes to stop displaying conditional content multiple times. Work in progress. Part 2.

parent 2cc90479
...@@ -3,32 +3,27 @@ class @Conditional ...@@ -3,32 +3,27 @@ class @Conditional
constructor: (element) -> constructor: (element) ->
@el = $(element).find('.conditional-wrapper') @el = $(element).find('.conditional-wrapper')
if @el.data('conditional_module_processed') is 'true' @passed = @el.data('passed') is true
console.log 'Conditional already processed this element' if @passed is true
console.log 'Conditional is already passed.'
console.log 'Conditional processing this element for the first time.' return
@el.data 'conditional_module_processed', 'true'
console.log 'Conditional is not passed. Must re-check with server.'
@id = @el.data('problem-id')
@element_id = @el.attr('id')
@url = @el.data('url') @url = @el.data('url')
@render() @render()
$: (selector) -> render: () ->
$(selector, @el)
updateProgress: (response) =>
if response.progress_changed
@el.attr progress: response.progress_status
@el.trigger('progressChanged')
render: (content) ->
if content
@el.append(i) for i in content
XModule.loadModules(@el)
else
$.postWithPrefix "#{@url}/conditional_get", (response) => $.postWithPrefix "#{@url}/conditional_get", (response) =>
console.log response console.log response
@el.append(i) for i in response.html
XModule.loadModules(@el) if ((response.passed is true) && (@passed is false))
console.log '(response.passed is true) && (@passed is false)'
@el.data 'passed', 'true'
@el.append(i) for i in response.html
XModule.loadModules @el
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment