DUPE check in javascript

This commit is contained in:
Sebastian Lohff 2017-01-21 00:53:00 +01:00
parent 20f4c203f0
commit 8d716f1a8b
2 changed files with 31 additions and 2 deletions

4
TODO
View File

@ -1,8 +1,6 @@
- after registration direct login! - after registration direct login!
- call dupe check mit tastypie based on call+band
- call dupe validation könnte ins model wandern - call dupe validation könnte ins model wandern
- help text for QSO adding "achtung die no könnte schon vergeben sein wenn ihr zu mehreren drauf loggt" - help text for QSO adding "achtung die no könnte schon vergeben sein wenn ihr zu mehreren drauf loggt"
- forms müssen crispy! oderso. sollen schöner
- qsoform muss den report richtig parsen, gucken ob es [0-5][0-9] ist (blöden validator adden) - qsoform muss den report richtig parsen, gucken ob es [0-5][0-9] ist (blöden validator adden)
- bastla will die passwort regeln einfacher haben - bastla will die passwort regeln einfacher haben
@ -16,3 +14,5 @@
- bastla hat das layout der rufzeichen geändert. jetzt darf ich das nochmal neu machen mit den regexes DN1FTW-1/p soll auch im log gehen, DN1FTW-1 ist dann z.B. ein SWL call - bastla hat das layout der rufzeichen geändert. jetzt darf ich das nochmal neu machen mit den regexes DN1FTW-1/p soll auch im log gehen, DN1FTW-1 ist dann z.B. ein SWL call
- die blöden linkss oben sollten noch anzeigen wo man ist in der navbar - die blöden linkss oben sollten noch anzeigen wo man ist in der navbar
- forms müssen crispy! oderso. sollen schöner
- call dupe check mit tastypie based on call+band

View File

@ -80,7 +80,36 @@ $(document).ready(function() {
// set focus to fucking call field // set focus to fucking call field
// ...i hate javascript so much. // ...i hate javascript so much.
$('#id_call').focus(); $('#id_call').focus();
var log = [{% for qso in qsos %}{call: "{{ qso.call }}", band: "{{ qso.band }}"}{% if not forloop.last %}, {% endif %}{% endfor %}];
function checkForDupes(e) {
var call = $("#id_call").val();
var band = $("#id_band :selected").text();
var dupe = false;
for(var i=0; i<log.length; i++) {
if(call == log[i].call && band == log[i].band) {
dupe = true;
break;
}
}
if(dupe) {
console.log("DUPE");
$("#id_call").css('background-color', 'red');
$("#id_band").css('background-color', 'red');
} else {
$("#id_call").css('background-color', 'white');
$("#id_band").css('background-color', 'white');
}
}
$("#id_call").on("input", checkForDupes);
$("#id_band").change(checkForDupes);
}); });
</script> </script>
{% endblock %} {% endblock %}