Kod
function replaceSelects(){
$('.pretty-select.draft-documents').select2({
width: '100%',
multiple: true,
ajax: {
url: Routing.generate('get_documents_json'),
dataType: 'json',
quietMillis: 100,
data: function (term) {
return {
term: term
};
},
results: function (data) {
var results = [];
$.each(data, function(index, item){
results.push({
id: item.id,
text: item.name
});
});
return {
results: results
};
}
}
});
$('.pretty-select.draft-documents').on('change', function(e){
if($(this).select2('data').length > 0){
$('a.draft-documents').show();
}
if($(this).select2('data')){
var select = $('<input type="text" multiple="multiple" class="input-row"/>');
$('.input-row-container').html(select);
var preload_data = $(this).select2('data');
$.each($('body').data('average-data'), function(index, item){ //dodanie dokumentów do data body
var element = $('body').data('average-data')[index];
var tempArray = new Array();
tempArray = preload_data;
element['documents'] = tempArray;
});
$('.input-row').select2({
multiple: true,
width: '100%',
query: function (query){
var data = {results: []};
$.each(preload_data, function(){
data.results.push({id: this.id, text: this.text });
});
query.callback(data);
}
});
$('.input-row').select2('data', preload_data);
$('.input-row').on('select2-removed', function(e){
var studentId = $(e.target).closest('.average-row').data('student-id');
var removeIndex = '';
$.each($('body').data('average-data')[studentId]['documents'], function(index, item){
if(item.id == e.val){
removeIndex = index;
}
});
if(typeof removeIndex == 'number'){
console.log(removeIndex);
$('body').data('average-data')[studentId]['documents'].splice(removeIndex, 0);
}
});
}
});
}
$(document).ready(function(){
$("#wizard").steps({
headerTag: "h2",
bodyTag: "section",
transitionEffect: "slideLeft",
onStepChanging: function (event, currentIndex, newIndex) {
if(currentIndex == 0 && newIndex == 1){
var data = $('#wizard').data();
data.steps[1]['contentUrl'] = Routing.generate('student_count_average', {'step': 2, 'specialityId': $('.select-speciality').val()})
}
if(currentIndex == 1 && newIndex == 2){
$.ajax({
url: Routing.generate('student_count_average'),
type: "POST",
data: $('.count-average-form').serialize() + '&step=' + encodeURIComponent(3) + '&specialityId=' + encodeURIComponent($('.select-speciality').val())
}).done(function(data){
$('.third-step').html(data);
var avgData = {};
var temp = {};
$('.average-row').each(function(index, item){ //dodanie średnich i id studentów do data body
temp['average'] = $(item).data('student-average');
temp['selector'] = $(item);
avgData[$(item).data('student-id')] = temp;
temp = {};
});
$('body').data('average-data', avgData);
replaceSelects();
})
}
return true;
}
});
});