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.

97 lines
2.3 KiB

function whatIsElement(element) {
if (findLogique(element.name) == null) {
return "switch";
} else {
return "logique";
}
}
function setLine(logiqueElement, lineId, lineName) {
logiques.forEach(function (element, index) {
if (element.name === logiqueElement.name) {
Object.keys(element).map(function (objectKey, index) {
if (objectKey == lineId) {
element[objectKey] = lineName;
}
});
}
});
}
function changeLineColor(idLine) {
let line = stage.findOne("#" + idLine);
var colorline = line.stroke() == colorLineActive ? colorLineInnactive : colorLineActive;
line.stroke(colorline);
}
function changeLineColorBlack(idLine) {
let line = stage.findOne("#" + idLine);
line.stroke(colorLineInnactive);
}
function changeLineColorYellow(idLine) {
let line = stage.findOne("#" + idLine);
line.stroke(colorLineActive);
}
function checkAllSortieLogique() {
logiques.forEach(function (element) {
if (element.id3 != null)
checkSortieLogique(element.name);
});
}
function checkSortieLogique(logiqueId) {
let logique = findLogique(logiqueId);
logiques.forEach(function (element, index) {
if (element.name === logique.name) {
let line1State, line2State;
let id1Color = stage.findOne("#" + element.id1).stroke();
let id2Color = stage.findOne("#" + element.id2).stroke();
if (id1Color == colorLineInnactive) {
line1State = false;
} else {
line1State = true;
}
if (id2Color == colorLineInnactive) {
line2State = false;
} else {
line2State = true;
}
switch (logique.type) {
case "et":
if (line1State == true && line2State == true) {
changeLineColorYellow(element.id3);
}
else {
changeLineColorBlack(element.id3);
}
break;
case "ou":
if (line1State == true || line2State == true) {
changeLineColorYellow(element.id3);
}
else {
changeLineColorBlack(element.id3);
}
break;
}
}
});
}
function isElementExisting(elementId) {
if (stage.findOne("#" + elementId) != null) {
return true;
}
return false;
}
function checkLineSwitch(switchId) {
if (stage.findOne("#" + switchId) != null) {
return true;
}
return false;
}