You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
127 lines
3.7 KiB
127 lines
3.7 KiB
function new_location_entry() {
|
|
|
|
}
|
|
|
|
function init_Location_edit(locationID, name, containerID) {
|
|
$('#save-button').attr("onclick", "saveLocation(" + locationID + ")");
|
|
$('#delete-button').attr("onclick", "deleteLocation(" + locationID + ")");
|
|
$('#location-name-input').val(name);
|
|
if(containerID > 0){
|
|
$("#container-input").val(containerID);
|
|
update_map();
|
|
}
|
|
overlay_in();
|
|
}
|
|
|
|
function update_map() {
|
|
var selected_map_file = $('#container-input').val();
|
|
$('#map').attr('src', 'map/' + selected_map_file);
|
|
}
|
|
|
|
|
|
function saveLocation(locationID) {
|
|
var container_v = $('#container-input').val();
|
|
var name_v = $('#location-name-input').val();
|
|
|
|
if(name_v.length > 100) {
|
|
alert('Name too long (max 100 characters).')
|
|
return;
|
|
}
|
|
var data = new FormData();
|
|
|
|
data.append('container', container_v);
|
|
data.append('name', name_v)
|
|
|
|
$.ajax({
|
|
url: rootURL + 'alterLocation/' + locationID,
|
|
type: 'POST',
|
|
data: data,
|
|
cache: false,
|
|
contentType: false,
|
|
processData: false,
|
|
success: function(data) {
|
|
alert("k.");
|
|
},
|
|
error: function() {
|
|
alert("Couldn't update the part information. Please retry.");
|
|
}
|
|
});
|
|
|
|
end_edit();
|
|
$('#edit-button').click(function() {
|
|
init_edit(partID);
|
|
});
|
|
}
|
|
|
|
|
|
function deleteLocation(locationID) {
|
|
if (locationID < 0){
|
|
alert('Congratulations! You found the secret UI bug easter egg! This button should not be here, yet I left it specifically because I wanted an easter egg and not because of any other reasons! Good for you!')
|
|
return;
|
|
}
|
|
if (!confirm('Delete the selected location? If there are parts there, this will leave a mess in the database and Marek will be very sad.')){
|
|
return;
|
|
}
|
|
$.ajax({
|
|
url: rootURL + 'deleteLocation/' + locationID,
|
|
type: 'GET',
|
|
cache: false,
|
|
contentType: false,
|
|
processData: false,
|
|
success: function() {
|
|
alert("location removed.");
|
|
overlay_out();
|
|
location.reload();
|
|
},
|
|
fail: function() {
|
|
console.log('An error occurred while deleting the entry');
|
|
},
|
|
});
|
|
}
|
|
|
|
function end_edit(){
|
|
//intentionally left blank
|
|
}
|
|
|
|
|
|
function show_location_info(locationID) {
|
|
$.getJSON(rootURL + 'getpartinfo/' + partID, function(data) {
|
|
$('table#details tr#location td p').text(text_filter(data.location_descriptor)); // name is the location friendly name
|
|
$('#location-dropdown').val(data.location_id);
|
|
$('#container-dropdown').val(data.container_id);
|
|
$('table#details tr#partno td p').text(text_filter(data.partno));
|
|
$('table#details tr#partno td input').val(text_filter(data.partno));
|
|
$('table#details tr#description td p').text(text_filter(data.description));
|
|
$('table#details tr#description td input').val(text_filter(data.description));
|
|
container_onchange();
|
|
if (data.datasheet != null) {
|
|
$('tr#datasheet-head').html($('<td>DATASHEET: <a href="/getfile/' + data.datasheet + '"><i class="fa fa-file-text" aria-hidden="true"></i></a></td>'));
|
|
$('#datasheet-input').val(data.datasheet);
|
|
}
|
|
else
|
|
$('tr#datasheet-head td').text('DATASHEET: ');
|
|
$('#edit-button').click(function() {
|
|
init_edit(partID);
|
|
});
|
|
$('#delete-button').click(function() {
|
|
delete_entry(partID);
|
|
});
|
|
overlay_in();
|
|
}).fail(function() {
|
|
console.log( "Fetching part info failed" );
|
|
});
|
|
}
|
|
|
|
function placeMarker(locationID){
|
|
//temporarily not used
|
|
var $img = $('#clickablemap');
|
|
var currentClickPosX = event.pageX - $img.offset().left;
|
|
var currentClickPosY = event.pageY - $img.offset().top;
|
|
|
|
var correctX = (($img.prop('naturalWidth') / $img.width()) * currentClickPosX).toFixed(0);
|
|
var correctY = (($img.prop('naturalHeight') / $img.height()) * currentClickPosY).toFixed(0);
|
|
|
|
// $("#mapURL").html("elab.png?x=" + correctX + "&y=" + correctY);
|
|
$("#clickablemap").attr("src", "map/" + $("#mapfile-input").val() + "?x=" + correctX + "&y=" + correctY);
|
|
}
|