fixesw
This commit is contained in:
@@ -407,8 +407,8 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-2">
|
||||
<i class="fas fa-check-circle" onclick="loadSelectedBagFile()"></i>
|
||||
<i class="fas fa-times-circle" onclick="hideLoadingOptions()"></i>
|
||||
<i class="fas fa-check-circle" onclick="hideLoadingOptions(true)"></i>
|
||||
<i class="fas fa-times-circle" onclick="hideLoadingOptions(false)"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div id="playTagError" class="col-md-10 error"></div>
|
||||
|
||||
@@ -307,7 +307,7 @@ var bagPlayingTopic = new ROSLIB.Topic({
|
||||
});
|
||||
|
||||
bagPlayingTopic.subscribe(function(message) {
|
||||
document.getElementById("lastbagText").innerHTML = message.data
|
||||
//document.getElementById("lastbagText").innerHTML = message.data
|
||||
});
|
||||
|
||||
////////////////////////////////////////////////////////////////
|
||||
@@ -315,8 +315,9 @@ bagPlayingTopic.subscribe(function(message) {
|
||||
////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
function triggerService(serviceName, toSend)
|
||||
{
|
||||
function triggerService(serviceName, toSend, callback) {
|
||||
|
||||
callback = callback || $.noop;
|
||||
|
||||
if(!toSend) {
|
||||
serviceType = 'std_srvs/demobot.Trigger'
|
||||
@@ -359,10 +360,6 @@ function triggerService(serviceName, toSend)
|
||||
var serviceCallTimeStamp = Date.now();
|
||||
var serviceCallReturned = false;
|
||||
service.callService(request, function(result) {
|
||||
console.log('Result for service call on '
|
||||
+ serviceName
|
||||
+ ': '
|
||||
+ result);
|
||||
//check for result.success == false
|
||||
if(result.success == true) {
|
||||
$(document).ready(function(){
|
||||
@@ -377,6 +374,7 @@ function triggerService(serviceName, toSend)
|
||||
delay: 1000
|
||||
});
|
||||
});
|
||||
callback({success : true});
|
||||
} else {
|
||||
$(document).ready(function(){
|
||||
$.notify({
|
||||
@@ -390,10 +388,10 @@ function triggerService(serviceName, toSend)
|
||||
delay: 1000
|
||||
});
|
||||
});
|
||||
callback({success : false});
|
||||
}
|
||||
serviceCallReturned = true;
|
||||
}, function(error){
|
||||
console.log("errored");
|
||||
$(document).ready(function(){
|
||||
$.notify({
|
||||
message: "Something went wrong :( " + serviceName
|
||||
@@ -407,6 +405,7 @@ function triggerService(serviceName, toSend)
|
||||
});
|
||||
});
|
||||
serviceCallReturned = true;
|
||||
callback({success : false})
|
||||
});
|
||||
var responseCheckInterval = setInterval(function() {
|
||||
var timeElapsedSinceServiceCall = Date.now() - serviceCallTimeStamp; // milliseconds elapsed since start
|
||||
@@ -427,29 +426,12 @@ function triggerService(serviceName, toSend)
|
||||
});
|
||||
});
|
||||
clearInterval(responseCheckInterval);
|
||||
callback({success : true})
|
||||
return;
|
||||
}
|
||||
}, 1000);
|
||||
}
|
||||
|
||||
function loadSelectedBagFile() {
|
||||
var selectedBagName = $('#loadBagList').val();
|
||||
var singleArmMode = $('#armMode').val();
|
||||
if (singleArmMode) {
|
||||
singleArmMode = true
|
||||
} else {
|
||||
singleArmMode = false
|
||||
}
|
||||
|
||||
var toSend = {
|
||||
bag_name : selectedBagName,
|
||||
single_arm : singleArmMode
|
||||
}
|
||||
|
||||
triggerService('/aescape/bags/startPlayingRecording', toSend)
|
||||
}
|
||||
|
||||
|
||||
|
||||
document.addEventListener("keydown", invokeSafetyController);
|
||||
function invokeSafetyController(event)
|
||||
|
||||
@@ -12,8 +12,6 @@ function getBagList(callback)
|
||||
var request = new ROSLIB.ServiceRequest({});
|
||||
|
||||
service.callService(request, function(result) {
|
||||
console.log("getBagListResults");
|
||||
console.log(result);
|
||||
callback(JSON.parse(result.message));
|
||||
});
|
||||
}
|
||||
@@ -60,6 +58,8 @@ setTimeout(function(){
|
||||
|
||||
function displayTaggingOptions(mode) {
|
||||
|
||||
hideAllSlidingControllers();
|
||||
|
||||
var modeTag = '#' + mode + 'Tags';
|
||||
var fileNameSelector = '#' + mode + 'BagFileName';
|
||||
var categorySelector = '#' + mode + 'BagCategory';
|
||||
@@ -85,8 +85,8 @@ function displayTaggingOptions(mode) {
|
||||
fileNameSelectize.clearOptions()
|
||||
// /aescape/bags/getBagList
|
||||
getBagList(function(results){
|
||||
fileNameSelectize.addOption(results.map(function(bagName){
|
||||
return {name : bagName}
|
||||
fileNameSelectize.addOption(results.map(function(element){
|
||||
return {name : element.filename}
|
||||
}));
|
||||
})
|
||||
|
||||
@@ -102,8 +102,8 @@ function displayTaggingOptions(mode) {
|
||||
var categoryNameSelectize = $categoryNameSelect[0].selectize;
|
||||
categoryNameSelectize.clearOptions()
|
||||
getBagCategoryList(function(results){
|
||||
categoryNameSelectize.addOption(results.map(function(bagName){
|
||||
return {name : bagName}
|
||||
categoryNameSelectize.addOption(results.map(function(element){
|
||||
return {name : element}
|
||||
}));
|
||||
})
|
||||
|
||||
@@ -120,42 +120,57 @@ function displayTaggingOptions(mode) {
|
||||
var tagSelectize = $tagSelect[0].selectize;
|
||||
tagSelectize.clearOptions()
|
||||
getBagTagList(function(results){
|
||||
tagSelectize.addOption(results.map(function(bagName){
|
||||
return {name : bagName}
|
||||
tagSelectize.addOption(results.map(function(element){
|
||||
return {name : element}
|
||||
}));
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
function hideTaggingOptions(mode, updateValues=false) {
|
||||
if(!mode) {
|
||||
return;
|
||||
}
|
||||
|
||||
var modeTag = '#' + mode + 'Tags';
|
||||
|
||||
if(updateValues) {
|
||||
var fileNameSelector = '#' + mode + 'BagFileName';
|
||||
var categorySelector = '#' + mode + 'BagCategory';
|
||||
var tagSelector = '#' + mode + 'BagTags';
|
||||
var errorSelector = '#' + mode + 'TagError';
|
||||
|
||||
var filename = $(fileNameSelector).val();
|
||||
var category = $(categorySelector).val();
|
||||
var tags = $(tagSelector).val();
|
||||
|
||||
getBagList(function(results){
|
||||
bag_name = results[0].filename
|
||||
if(!(results && results[0] && results[0].filename)) {
|
||||
console.log(results);
|
||||
displayMessage(false, "Could not retrieve the last recorded bag :(");
|
||||
return;
|
||||
}
|
||||
bag_name = results[0].filename;
|
||||
updateBagMetadata(mode, bag_name, filename, category, tags, function(updateError) {
|
||||
if(updateError) {
|
||||
displayMessage(flase, updateError);
|
||||
} else {
|
||||
displayMessage("Bag data saved successfully!");
|
||||
}
|
||||
});
|
||||
})
|
||||
|
||||
updateBagMetadata(mode, bag_name, filename, category, tags)
|
||||
}
|
||||
//TO DO: Wait for the response from the backend before setting the display to none
|
||||
document.querySelector(modeTag).style.overflow = "hidden";
|
||||
document.querySelector(modeTag).classList.remove('open');
|
||||
}
|
||||
|
||||
function updateBagMetadata(mode, bag_name, modified_bag_name, category, tags) {
|
||||
function updateBagMetadata(mode, bag_name, modified_bag_name, category, tags, callback) {
|
||||
if(!mode) {
|
||||
//return //error
|
||||
return callback();
|
||||
}
|
||||
if(!bag_name) {
|
||||
//return // error
|
||||
return callback();
|
||||
}
|
||||
|
||||
var toSend = {
|
||||
@@ -166,11 +181,20 @@ function updateBagMetadata(mode, bag_name, modified_bag_name, category, tags) {
|
||||
tags : tags
|
||||
}
|
||||
|
||||
triggerService('/aescape/bags/updateBagMeta', toSend)
|
||||
triggerService('/aescape/bags/updateBagMeta', toSend, function(result) {
|
||||
if(!result) {
|
||||
return callback("Something went wrong in the backend while updating.");
|
||||
}
|
||||
else {
|
||||
return callback();
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
function displayLoadingOptions() {
|
||||
|
||||
hideAllSlidingControllers();
|
||||
|
||||
selector = "#loadBags";
|
||||
|
||||
document.querySelector(selector).classList.add('open');
|
||||
@@ -219,6 +243,9 @@ function displayLoadingOptions() {
|
||||
});
|
||||
|
||||
getBagList(function(results){
|
||||
if(!results) {
|
||||
displayMessage(false, "Could not fetch a list of recordings :(")
|
||||
}
|
||||
var selectize = $select[0].selectize;
|
||||
selectize.clearOptions();
|
||||
//results = [{filename : 'testfile', category: 'testcategory', tags : ['testtag1', 'testtag2', 'testtag3']}, {filename : 'testfile2', category: 'testcategory2', tags : ['testtag21', 'testtag22', 'testtag23']}]
|
||||
@@ -243,10 +270,80 @@ function displayLoadingOptions() {
|
||||
armSelectize.setValue(false);
|
||||
}
|
||||
|
||||
function hideLoadingOptions() {
|
||||
var selector = '#loadBags';
|
||||
function hideLoadingOptions(loadBag) {
|
||||
var singleArmMode = $('#armMode').val();
|
||||
if (singleArmMode == "1") {
|
||||
singleArmMode = true
|
||||
} else {
|
||||
singleArmMode = false
|
||||
}
|
||||
|
||||
console.log("singleArmMode");
|
||||
console.log(singleArmMode)
|
||||
if(loadBag) {
|
||||
var selectedBagName = $('#loadBagList').val();
|
||||
var singleArmMode = $('#armMode').val();
|
||||
if (singleArmMode) {
|
||||
singleArmMode = true
|
||||
} else {
|
||||
singleArmMode = false
|
||||
}
|
||||
loadSelectedBagFile(selectedBagName, singleArmMode, function(updateError){
|
||||
if(updateError) {
|
||||
displayMessage(false, "Something went wrong in the backend while fetching the bag files :(")
|
||||
} else {
|
||||
displayMessage(true, "Loaded the selected bag file!")
|
||||
}
|
||||
})
|
||||
}
|
||||
var selector = '#loadBags';
|
||||
document.querySelector(selector).style.overflow = "hidden";
|
||||
document.querySelector(selector).classList.remove('open');
|
||||
}
|
||||
|
||||
function loadSelectedBagFile(selectedBagName, singleArmMode, callback) {
|
||||
var toSend = {
|
||||
bag_name : selectedBagName,
|
||||
single_arm : singleArmMode
|
||||
}
|
||||
|
||||
triggerService('/aescape/bags/startPlayingRecording', toSend, function(result) {
|
||||
if(!result) {
|
||||
return callback("Something went wrong in the backend while updating.");
|
||||
}
|
||||
else {
|
||||
return callback();
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
function hideAllSlidingControllers () {
|
||||
document.querySelectorAll('.slider-options').forEach(function(element){
|
||||
element.style.overflow = "hidden";
|
||||
element.classList.remove('open');
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
|
||||
function displayMessage (success, message) {
|
||||
if(success) {
|
||||
type = 'success';
|
||||
} else {
|
||||
type = 'danger';
|
||||
}
|
||||
|
||||
$(document).ready(function(){
|
||||
$.notify({
|
||||
message: message
|
||||
}, {
|
||||
"placement" : {
|
||||
from: "bottom",
|
||||
align: "right"
|
||||
},
|
||||
type: type,
|
||||
delay: 1000
|
||||
});
|
||||
});
|
||||
}
|
||||
Reference in New Issue
Block a user