Handle textarea max_length better in older browsers
authorAleksander Łukasz <aleksander.lukasz@nowoczesnapolska.org.pl>
Mon, 18 Nov 2013 11:02:10 +0000 (12:02 +0100)
committerAleksander Łukasz <aleksander.lukasz@nowoczesnapolska.org.pl>
Wed, 15 Jan 2014 10:28:04 +0000 (11:28 +0100)
wtem/static/wtem/wtem.js
wtem/templates/wtem/exercises/open.html

index 1c61498..a65bb7f 100644 (file)
@@ -56,4 +56,17 @@ $(function() {
         }
     }
 
         }
     }
 
+    var sms_handler = function() {
+        var textarea = $(this),
+            label_suffix = textarea.parent().find('.label_suffix'),
+            left = 140 - textarea.val().length;
+            to_insert = '(pozostało: ' + left + ')';
+        if(left < 0) {
+            to_insert = '<span style="color:red">' + to_insert + '</span>';
+        }
+        label_suffix.html(to_insert);
+    };
+
+    $('#wtem_sms').change(sms_handler).keyup(sms_handler);
+
 });
\ No newline at end of file
 });
\ No newline at end of file
index f12e052..8645d46 100644 (file)
     {% if exercise.fields %}
         {% for field in exercise.fields %}
             <div class="wtem-open-field">
     {% if exercise.fields %}
         {% for field in exercise.fields %}
             <div class="wtem-open-field">
-                <label class="wtem-caption">{{field.caption}}</label>
-                <textarea style="width: 100%;" rows="{{field.rows|default:10}}" data-field-id="{{field.id}}" {% if field.max_length %}maxlength="{{field.max_length}}"{% endif %}></textarea>
+                <label class="wtem-caption">{{field.caption}} <span class="label_suffix"></span></label>
+                <textarea style="width: 100%;" rows="{{field.rows|default:10}}" data-field-id="{{field.id}}" {% if field.max_length %}maxlength="{{field.max_length}}"{% endif %} {% if field.input_id %}id="{{field.input_id}}"{% endif %}></textarea>
             </div>
         {% endfor %}
     {% else %}
             </div>
         {% endfor %}
     {% else %}
-        <textarea style="width: 100%; margin-top:10px;" rows="{{field.rows|default:10}}" {% if field.max_length %}maxlength="{{field.max_length}}"{% endif %}></textarea>
+        <textarea style="width: 100%; margin-top:10px;" rows="{{field.rows|default:10}}" {% if field.max_length %}maxlength="{{field.max_length}}"{% endif %} {% if field.input_id %}id="#{{field.input_id}}"{% endif %}></textarea>
     {% endif %}
 
     {% if exercise.description_after %}
     {% endif %}
 
     {% if exercise.description_after %}