BlindLaby/assets/js/editor.js

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">&nbsp;</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();
});
});