Commit 36d0c096 authored by Jérome Perrin's avatar Jérome Perrin

update static version

parent be772200
......@@ -67,11 +67,11 @@
<h1>Dream Simulation</h1>
<div data-role="controlgroup" data-type="horizontal" class="ui-btn-right">
<a data-icon="forward"
class="next_step_link ui-btn ui-icon-forward ui-btn-icon-right">Continue</a>
<!-- Next button to cycle through the results, similar to ERP5 navigation -->
<a data-icon="forward"
style="display: none"
style="display: none"
class="next_link ui-btn ui-icon-forward ui-btn-icon-right">Next</a>
</div>
......
......@@ -103,6 +103,17 @@
return gadget.aq_pleasePublishMyState(forward_kw);
});
}
function getNextStepLink(gadget, portal_type, options) {
if (options.action === "view_machine_shift_spreadsheet") {
var forward_kw = {
action: "view_run_simulation",
id: options.id
};
return gadget.aq_pleasePublishMyState(forward_kw);
} else {
return false;
}
}
function getTitle(gadget, portal_type, options) {
var title;
if (portal_type === "Input Module") {
......@@ -330,7 +341,7 @@
return page_gadget.render(options);
}
}).push(function() {
return RSVP.all([ page_gadget.getElement(), calculateNavigationHTML(gadget, portal_type, options), gadget.aq_pleasePublishMyState(back_kw), getTitle(gadget, portal_type, options), getNextLink(gadget, portal_type, options) ]);
return RSVP.all([ page_gadget.getElement(), calculateNavigationHTML(gadget, portal_type, options), gadget.aq_pleasePublishMyState(back_kw), getTitle(gadget, portal_type, options), getNextLink(gadget, portal_type, options), getNextStepLink(gadget, portal_type, options) ]);
}).push(function(result_list) {
var nav_html = result_list[1], page_element = result_list[0];
// Update title
......@@ -358,6 +369,25 @@
}
element.appendChild(page_element);
$(element).trigger("create");
return result_list[5];
}).push(function(next_step_link) {
var button = gadget.props.element.getElementsByClassName("next_step_link")[0];
$(button).hide();
var idle_timer;
function resetTimer() {
clearTimeout(idle_timer);
idle_timer = setTimeout(function() {
$(button).show();
}, idle_seconds * 1);
}
if (next_step_link !== false) {
button.href = next_step_link;
var idle_seconds = 10;
$(document.body).on("keydown click", resetTimer);
resetTimer();
} else {
$(document.body).off("keydown click", resetTimer);
}
// XXX RenderJS hack to start sub gadget services
// Only work if this gadget has no parent.
if (page_gadget.startService !== undefined) {
......
......@@ -117,6 +117,7 @@
edge_data.destination = getNodeId(gadget, connection.targetId);
gadget.props.data.graph.edge[connection.id] = edge_data;
}
checkNodeConstraint(gadget, getNodeId(gadget, connection.targetId));
gadget.notifyDataChanged();
}
function convertToAbsolutePosition(gadget, x, y) {
......@@ -217,6 +218,20 @@
});
gadget.notifyDataChanged();
}
function checkNodeConstraint(gadget, node_id) {
var element_id = gadget.props.node_id_to_dom_element_id[node_id], element = $(gadget.props.element).find("#" + element_id), jsplumb_instance = gadget.props.jsplumb_instance, node_class = gadget.props.data.graph.node[node_id]._class;
if (jsplumb_instance.getConnections({
target: element_id
}).length === 0 && node_class.toLowerCase().search("source") === -1) {
var warning = $("<div></div>").attr({
"class": "alert_no_input ui-btn-icon-notext ui-icon-alert",
title: "No input defined!"
});
element.append(warning);
} else {
element.find(".alert_no_input").remove();
}
}
function updateElementData(gadget, node_id, data) {
var element_id = gadget.props.node_id_to_dom_element_id[node_id], new_id = data.id;
$(gadget.props.element).find("#" + element_id).text(data.data.name || new_id).attr("title", data.data.name || new_id).append('<div class="ep"></div></div>');
......@@ -638,6 +653,9 @@
$.each(this.props.data.graph.edge, function(key, value) {
addEdge(gadget, key, value);
});
$.each(this.props.data.graph.node, function(key, value) {
checkNodeConstraint(gadget, key);
});
return RSVP.all([ waitForDrop(gadget), waitForConnection(gadget), waitForConnectionDetached(gadget), waitForConnectionClick(gadget), gadget.props.nodes_click_monitor ]);
});
})(RSVP, rJS, $, jsPlumb, Handlebars, loopEventListener, promiseEventListener, DOMParser);
\ No newline at end of file
/*!
* QUnit 1.17.1
* QUnit 1.18.0
* http://qunitjs.com/
*
* Copyright jQuery Foundation and other contributors
* Released under the MIT license
* http://jquery.org/license
*
* Date: 2015-01-20T19:39Z
* Date: 2015-04-03T10:23Z
*/
/** Font Family and Sizes */
......@@ -116,7 +116,13 @@
#qunit-tests.hidepass li.running,
#qunit-tests.hidepass li.pass {
display: none;
visibility: hidden;
position: absolute;
width: 0px;
height: 0px;
padding: 0;
border: 0;
margin: 0;
}
#qunit-tests li strong {
......@@ -132,6 +138,11 @@
color: #C2CCD1;
text-decoration: none;
}
#qunit-tests li p a {
padding: 0.25em;
color: #6B6464;
}
#qunit-tests li a:hover,
#qunit-tests li a:focus {
color: #000;
......
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment