";
//html stelle einfügen
html += "";
if ('de' === 'de') { // Assuming 'lang' is a variable in your JavaScript context
html += "Kontakt für Anzeigenschaltung ";
} else {
html += "Contact for job advertisement ";
}
html += "Abteilung Personaladministration und Personalentwicklung " +
"Goßlerstraße 5/7 " +
"37027 Göttingen (37073 Göttingen) " +
"Tel. + 49 (0) 551 39-24932 " +
"Fax + 49 (0) 551 39-25688 " +
"bewerbungen@zvw.uni-goettingen.de " +
"
";
// Sprach änderung
html += "" + "" + "";
$("#main").html(html);
var currentUrl = window.location.href;
console.log(currentUrl);
if (currentUrl.includes('/de')) {
currentUrl = currentUrl.replace('/de', '/en');
} else {
currentUrl = currentUrl.replace('/en', '/de');
}
currentUrl.replace('/de', '/en');
$(".lang-button").attr("href", currentUrl);
$('#vacancyModal').on('hidden.bs.modal', function() {
let query = new URLSearchParams(location.search);
if (query.has('filters')) {
let filterList = JSON.parse(query.get('filters'));
window.history.replaceState('', '', '?filters=' + JSON.stringify(filterList));
}
});
});
}
VacancyManager.prototype.initTable = function(language) {
this.language = language;
let self = this
this.bstable = $(this.tableDOM).bootstrapTable({
locale: language,
classes: 'table-no-bordered',
pagination: true,
sidePagination: 'server',
search: true,
url: this.baseUrl + '&filters=' + JSON.stringify(this.filterList),
method: 'get',
sortName: 'titel' ,
sortOrder: 'asc',
idField: 'id',
uniqueId: 'id',
columns: [{
field: 'id',
sortable: true,
}, {
field: 'titel' ,
sortable: true,
searchable: true
}, {
field: 'institut',
sortable: true,
},{
field: 'besoldGrp',
sortable: true,
}, {
field: 'frist',
sortable: true,
}, {
field: 'besetngsDatum',
sortable: true,
formatter: (value, row, index) => {
if (row.IsNextPossibleDate == true) {
return 'Zum nächstmöglichen Zeitpunkt' } else {
return value
}
}
}, {
field: 'dauer' ,
visible: true
}, {
field: 'arbeitszeit',
visible: false
}],
onLoadSuccess: function() {
//click on vacancy -> show modal
$("#vacancies > tbody > tr").click(function(e) {
let vacancyId = e.currentTarget.dataset["uniqueid"];
self.showModal(vacancyId);
});
}
});
}
/*
*
*/
VacancyManager.prototype.bindEvents = function() {
const self = this;
var searchDebounceTimer = null;
// Handling of free text search
$("#stud-search-input-bounce").on("input", function() {
var searchText = $(this).val();
$(self.tableDOM).bootstrapTable(
'showLoading'); // showing loading screen as soon as user starts entering
if (searchText === "") {
$('#stud-search-clear').addClass('hidden');
$(self.tableDOM).bootstrapTable(
'hideLoading'); // hide loading box manually when no text entered
} else {
$('#stud-search-clear').removeClass('hidden');
}
if (searchDebounceTimer !== null)
clearInterval(searchDebounceTimer);
// Debounce search for 1000ms
searchDebounceTimer = setTimeout(function() {
$(self.tableDOM).bootstrapTable('resetSearch', searchText);
searchDebounceTimer = null;
}, 1000);
});
// Deactivating Enter Key when inside search box to prevent submit action
$("#stud-search-input-bounce").on("keypress", function(e) {
if (e.which == '13')
return false;
});
// handling of adding and removing filter
$('#main .navbar-zsb .dropdown-menu li:not(.divider)').on('click', function(e) {
e.stopPropagation();
let element = $(this);
let filterValue = element.find("a").data("filter");
let category = element.closest('.dropdown').data("category");
// if an already active filter has been selected, interpret as deselection and remove active classes
if (element.hasClass("active")) {
element.removeClass("active");
self.removeFilter(category, filterValue);
} else {
element.addClass('active');
element.closest('.dropdown').addClass('active');
self.addFilter(category, filterValue);
}
// if no filter is selected; remove active from dropdown menu
if (element.parent().find("li.active").length == 0) {
element.closest('.dropdown').removeClass('active');
}
self.filter();
});
//handling of deleting entered text for search
$('#stud-search-clear').on('click', function(e) {
$('#stud-search-input-bounce').val("").trigger('input');
});
}
VacancyManager.prototype.filter = function() {
$(this.tableDOM).bootstrapTable('refresh', {
url: this.baseUrl + '&filters=' + JSON.stringify(this.filterList)
});
window.history.replaceState('', '', '?filters=' + JSON.stringify(this.filterList));
}
/*
*
*/
VacancyManager.prototype.addFilter = function(category, filter) {
if (this.filterList[category] instanceof Array) {
this.filterList[category].push(filter);
} else {
this.filterList[category] = filter;
}
}
VacancyManager.prototype.removeFilter = function(category, filter) {
let valueList = this.filterList[category];
delete valueList[valueList.indexOf(filter)];
// remove empty elements from array to avoid ever growing filterList.
this.filterList[category] = this.filterList[category].filter(function(filter) {
return filter;
})
}
/*
* Main
*/
const language = "de";//window.location.pathname.split("/")[1];
let localeFileUrl = "/resources/bootstrap-table/locale/bootstrap-table-" + language + ".min.js";
$.getScript(localeFileUrl)
.always(function() {
const vacManager = new VacancyManager('#vacancies');
vacManager.initTable(language);
vacManager.bindEvents();
});
ID
Titel
Institut
Entgelt/Besoldung
Bewerbungsfrist
Besetzungsdatum
Befristung
Wir weisen darauf hin, dass die Einreichung der Bewerbung eine datenschutzrechtliche
Einwilligung in die Verarbeitung Ihrer Bewerberdaten durch uns darstellt. Näheres zur
Rechtsgrundlage und Datenverwendung finden Sie im Hinweisblatt
zur Datenschutzgrundverordnung (DSGVO) .
Kontakt für Anzeigenschaltung
Abteilung Personaladministration und Personalentwicklung
Goßlerstraße 5/7
37027 Göttingen (37073 Göttingen)
Tel. + 49 (0) 551 39-24932
Fax + 49 (0) 551 39-25688bewerbungen@zvw.uni-goettingen.de
Kontakt
Georg-August-Universität Göttingen
Wilhelmsplatz 1 (Aula)
37073 Göttingen
Tel. 0551 39-0