mirror of
https://github.com/Doodle3D/doodle3d-connect.git
synced 2024-12-26 02:23:48 +01:00
added ControlPage.js (work in progress)
This commit is contained in:
parent
e67dc79fb3
commit
06fac06c0d
181
js/ControlPage.js
Normal file
181
js/ControlPage.js
Normal file
@ -0,0 +1,181 @@
|
||||
/*
|
||||
* This file is part of the Doodle3D project (http://doodle3d.com).
|
||||
*
|
||||
* Copyright (c) 2013-2017, Doodle3D
|
||||
* This software is licensed under the terms of the GNU GPL v2 or later.
|
||||
* See file LICENSE.txt or visit http://www.gnu.org/licenses/gpl.html for full license details.
|
||||
*/
|
||||
|
||||
(function (w) {
|
||||
var _page;
|
||||
var _form;
|
||||
var _statusField;
|
||||
var _infoField;
|
||||
var _noRetainCheckbox;
|
||||
var _includeBetasCheckbox;
|
||||
var _submitButton;
|
||||
|
||||
var _updateAPI = new UpdateAPI();
|
||||
var _configAPI = new ConfigAPI();
|
||||
var _printerAPI = new PrinterAPI();
|
||||
var _infoAPI = new InfoAPI();
|
||||
var _pageData = {};
|
||||
var _updateStatus = {};
|
||||
var _title;
|
||||
var endCode;
|
||||
|
||||
var PAGE_ID = "#control";
|
||||
|
||||
var timerObject = {
|
||||
interval_id : null
|
||||
};
|
||||
|
||||
var _self = this;
|
||||
|
||||
$.mobile.document.on( "pageinit", PAGE_ID, function( event, data ) {
|
||||
console.log(PAGE_ID+":pageinit");
|
||||
|
||||
_page = $(this);
|
||||
_title = _page.find(".ui-title");
|
||||
|
||||
d3d.util.showLoader();
|
||||
|
||||
$("#grpStatusAndControl").hide();
|
||||
|
||||
$("#btnSend").on("click", function(data) {
|
||||
console.log("test",$("#gcode").val());
|
||||
$(this).hide();
|
||||
_printerAPI.print({
|
||||
gcode: $("#gcode").val(),
|
||||
start: true,
|
||||
first: true
|
||||
},function(successData) {
|
||||
console.log("success");
|
||||
},function(failData) {
|
||||
console.log("fail");
|
||||
});
|
||||
});
|
||||
/*
|
||||
$("#btnCooldown").button().on("click", function(data) {
|
||||
_printerAPI.print({
|
||||
gcode: "M104 S20",
|
||||
start: true,
|
||||
first: true
|
||||
});
|
||||
});
|
||||
|
||||
$("#btnHeatup").button().on("click", function(data) {
|
||||
_printerAPI.print({
|
||||
gcode: "M104 S180",
|
||||
start: true,
|
||||
first: true
|
||||
});
|
||||
});
|
||||
|
||||
$("#btnHome").button().on("click", function(data) {
|
||||
_printerAPI.print({
|
||||
gcode: "G28",
|
||||
start: true,
|
||||
first: true
|
||||
});
|
||||
});
|
||||
*/
|
||||
$("#btnStop").on("click", function(data) {
|
||||
$(this).hide();
|
||||
|
||||
_configAPI.loadSetting("printer.endcode",function(successData) {
|
||||
console.log('btnStop','endcode',successData);
|
||||
_printerAPI.stop({gcode:successData}, function(successData) {
|
||||
console.log("btnStop success",successData);
|
||||
refreshStatus();
|
||||
},function(failData) {
|
||||
console.log("btnStop fail",failData);
|
||||
});
|
||||
}, function(failData) {
|
||||
console.log('btnStop failed to load endcode',failData);
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
|
||||
});
|
||||
|
||||
function refreshStatus() {
|
||||
d3d.util.showLoader();
|
||||
|
||||
_infoAPI.getStatus(function(successData) {
|
||||
$("#grpStatusAndControl").show();
|
||||
|
||||
if (successData.state==="disconnected" || successData.state==="connecting") {
|
||||
$("#infoState").show();
|
||||
$("#infoState").text("Printer " + successData.state + "...");
|
||||
$("#grpStatusAndControl").hide();
|
||||
} else {
|
||||
$("#infoState").hide();
|
||||
$("#grpStatusAndControl").show();
|
||||
$("#infoNozzleTemperature").html(successData.hotend + " / " + successData.hotend_target + " °C");
|
||||
$("#infoPrinterStatus").text(successData.state);
|
||||
// $("#infoBedTemperature").html(successData.bed + " / " + successData.bed_target + " °C");
|
||||
}
|
||||
|
||||
if (successData.state==="printing") {
|
||||
$("#liPrintingProgress").show();
|
||||
// console.log('printing',d3d.util.formatPercentage(successData.current_line,successData.total_lines));
|
||||
$("#infoPrintingProgress").text(d3d.util.formatPercentage(successData.current_line,successData.total_lines));
|
||||
$("#btnStop").show();
|
||||
// console.log('printing');
|
||||
} else {
|
||||
// console.log('not printing');
|
||||
$("#btnStop").hide();
|
||||
$("#liPrintingProgress").hide();
|
||||
}
|
||||
|
||||
if (successData.state==="idle") {
|
||||
$("#grpCustomGCODE").show();
|
||||
$("#btnSend").show();
|
||||
} else {
|
||||
$("#grpCustomGCODE").hide();
|
||||
}
|
||||
|
||||
// console.log("getStatus success",successData);
|
||||
d3d.util.hideLoader();
|
||||
|
||||
},function(failData) {
|
||||
console.log("getStatus fail");
|
||||
$("#grpStatusAndControl").hide();
|
||||
d3d.util.hideLoader();
|
||||
});
|
||||
}
|
||||
|
||||
$.mobile.document.on("pagebeforeshow", PAGE_ID, function( event, data ) {
|
||||
_pageData = d3d.util.getPageParams(PAGE_ID);
|
||||
|
||||
if(_pageData === undefined) {
|
||||
console.log("ERROR",PAGE_ID,"_pageData undefined");
|
||||
$.mobile.changePage("#boxes");
|
||||
return;
|
||||
}
|
||||
var boxURL = "http://"+_pageData.localip;
|
||||
|
||||
_title.text("Control 3D-printer on " + _pageData.wifiboxid);
|
||||
|
||||
_configAPI.init(boxURL);
|
||||
_printerAPI.init(boxURL);
|
||||
_infoAPI.init(boxURL);
|
||||
|
||||
// refreshSettings();
|
||||
|
||||
timerObject.interval_id = setInterval(function() {refreshStatus(); }, 3000);
|
||||
});
|
||||
|
||||
$.mobile.document.on('pagehide', PAGE_ID, function(){
|
||||
clearInterval(timerObject.interval_id);
|
||||
});
|
||||
|
||||
$.mobile.document.on( "pagebeforehide", PAGE_ID, function( event, data ) {
|
||||
console.log("pagebeforehide");
|
||||
});
|
||||
|
||||
|
||||
})(window);
|
||||
|
Loading…
Reference in New Issue
Block a user