71 lines
2.0 KiB
JavaScript
71 lines
2.0 KiB
JavaScript
function genereCheckbox(l,h){
|
|
var checkbox = '';
|
|
for(j=0; j<h; j++){
|
|
for(k=0; k<l; k++)
|
|
checkbox += '<input type="checkbox" class="case" name="check'+j+'-'+k+'" id="check'+j+'-'+k+'"/><label for="check'+j+'-'+k+'" class="labelcase"> </label>';
|
|
checkbox += '<br/>';
|
|
}
|
|
return checkbox;
|
|
}
|
|
|
|
$(document).ready(function(){
|
|
var droppableOpts = {
|
|
hoverClass: "flagover",
|
|
drop: function( event, ui ) {
|
|
var drag = ui.draggable;
|
|
if(drag.attr('id') == 'start'){
|
|
if($(this).hasClass('end')){
|
|
alert('Warning : you can\'t have the same starting and ending point');
|
|
}else{
|
|
$('label').removeClass('start');
|
|
$(this).addClass("start");
|
|
$('#startingPoint').val($(this).attr('for'));
|
|
}
|
|
}else if(drag.attr('id') == 'end'){
|
|
if($(this).hasClass('start')){
|
|
alert('Warning : you can\'t have the same starting and ending point');
|
|
}else{
|
|
$('label').removeClass('end');
|
|
$(this).addClass("end");
|
|
$('#endingPoint').val($(this).attr('for'));
|
|
}
|
|
}
|
|
}
|
|
};
|
|
var options = '';
|
|
for(i=5; i<=50; i++) options = options + '<option value="'+i+'">'+i+'</option>';
|
|
$('select').html(options);
|
|
$('fieldset').html(genereCheckbox(5,5));
|
|
$('select').change(function(){
|
|
$('fieldset').html(genereCheckbox($('#largeur').val(),$('#hauteur').val()));
|
|
});
|
|
$('.case').live('change',function(){
|
|
if($(this).is(":checked")){
|
|
$('label[for="'+$(this).attr('id')+'"]').addClass("labelSelected").droppable(droppableOpts);
|
|
}else{
|
|
$('label[for="'+$(this).attr('id')+'"]').removeClass("labelSelected").droppable('destroy');
|
|
}
|
|
});
|
|
|
|
function check(w){
|
|
var hasIt = false;
|
|
$('label').each(function(){
|
|
if($(this).hasClass(w)){
|
|
console.log('has it :D');
|
|
hasIt = true;
|
|
}
|
|
});
|
|
return hasIt;
|
|
}
|
|
|
|
$("#start, #end").draggable({revert: "invalid"});
|
|
$(".labelSelected").droppable(droppableOpts);
|
|
|
|
$('#save').click(function(){
|
|
if(!check('start') || !check('end')){
|
|
alert('We need a starting and a ending point');
|
|
return false;
|
|
}
|
|
$('form').eq(0).submit();
|
|
});
|
|
}); |