Fix for Uporzadkuj. edumed
authorRadek Czajka <radekczajka@nowoczesnapolska.org.pl>
Wed, 19 Feb 2014 16:01:51 +0000 (17:01 +0100)
committerRadek Czajka <radekczajka@nowoczesnapolska.org.pl>
Wed, 19 Feb 2014 16:01:51 +0000 (17:01 +0100)
redakcja/static/edumed/js/edumed.coffee
redakcja/static/edumed/js/edumed.js

index fb8ea87..cb51547 100644 (file)
@@ -252,7 +252,7 @@ class Uporzadkuj extends Exercise
 
   check_question: (question) ->
     positions = @get_value_list(question, 'original', true)
-    sorted = positions.sort()
+    sorted = positions.sort (a, b) -> a - b
     pkts = $('.question-piece', question)
 
     correct = 0
@@ -270,19 +270,11 @@ class Uporzadkuj extends Exercise
     return [correct, bad, all]
 
   solve_question: (question) ->
-    positions = @get_value_list(question, 'original', true)
-    sorted = positions.sort()
     pkts = $('.question-piece', question)
-    pkts.sort (a, b) ->
-      q = $(a).data('pos')
-      w = $(b).data('pos')
-      return 1 if q < w
-      return -1 if q > w
-      return 0
-
+    pkts.sort (a, b) -> return $(a).data('pos') - $(b).data('pos')
     parent = pkts.eq(0).parent()
     for p in pkts
-      parent.prepend(p)
+      parent.append(p)
 
 
 # XXX propozycje="1/0"
index 3262cac..68a558b 100644 (file)
@@ -1,4 +1,4 @@
-// Generated by CoffeeScript 1.3.3
+// Generated by CoffeeScript 1.4.0
 (function() {
   var $, Binding, EduModule, Exercise, Luki, PrawdaFalsz, Przyporzadkuj, Uporzadkuj, Wybor, Zastap, exercise,
     __hasProp = {}.hasOwnProperty,
     Uporzadkuj.prototype.check_question = function(question) {
       var all, bad, correct, pkt, pkts, positions, sorted, _i, _ref;
       positions = this.get_value_list(question, 'original', true);
-      sorted = positions.sort();
+      sorted = positions.sort(function(a, b) {
+        return a - b;
+      });
       pkts = $('.question-piece', question);
       correct = 0;
       bad = 0;
     };
 
     Uporzadkuj.prototype.solve_question = function(question) {
-      var p, parent, pkts, positions, sorted, _i, _len, _results;
-      positions = this.get_value_list(question, 'original', true);
-      sorted = positions.sort();
+      var p, parent, pkts, _i, _len, _results;
       pkts = $('.question-piece', question);
       pkts.sort(function(a, b) {
-        var q, w;
-        q = $(a).data('pos');
-        w = $(b).data('pos');
-        if (q < w) {
-          return 1;
-        }
-        if (q > w) {
-          return -1;
-        }
-        return 0;
+        return $(a).data('pos') - $(b).data('pos');
       });
       parent = pkts.eq(0).parent();
       _results = [];
       for (_i = 0, _len = pkts.length; _i < _len; _i++) {
         p = pkts[_i];
-        _results.push(parent.prepend(p));
+        _results.push(parent.append(p));
       }
       return _results;
     };