mirror of
https://we.phorge.it/source/phorge.git
synced 2024-12-27 16:00:59 +01:00
0569218201
Summary: If `jsxmin` is not available, use a pure PHP implementation instead (JsShrink). Test Plan: - Ran `arc lint --lintall` on all JS and fixed every relevant warning. - Forced minification on and browsed around the site using JS behaviors. Didn't hit anything problematic. Reviewers: vrana, btrahan Reviewed By: vrana CC: aran, Korvin Differential Revision: https://secure.phabricator.com/D5670
48 lines
1.1 KiB
JavaScript
48 lines
1.1 KiB
JavaScript
/**
|
|
* @provides javelin-behavior-releeph-preview-branch
|
|
* @requires javelin-behavior
|
|
* javelin-dom
|
|
* javelin-uri
|
|
* javelin-request
|
|
*/
|
|
|
|
JX.behavior('releeph-preview-branch', function(config) {
|
|
|
|
var uri = JX.$U(config.uri);
|
|
for (var param_name in config.params.static) {
|
|
var value = config.params.static[param_name];
|
|
uri.setQueryParam(param_name, value);
|
|
}
|
|
|
|
var output = JX.$(config.outputID);
|
|
|
|
var dynamics = config.params.dynamic;
|
|
|
|
function renderPreview() {
|
|
for (var param_name in dynamics) {
|
|
var node_id = dynamics[param_name];
|
|
var input = JX.$(node_id);
|
|
uri.setQueryParam(param_name, input.value);
|
|
}
|
|
var request = new JX.Request(uri, function(response) {
|
|
JX.DOM.setContent(output, JX.$H(response.markup));
|
|
});
|
|
request.send();
|
|
}
|
|
|
|
renderPreview();
|
|
|
|
for (var ii in dynamics) {
|
|
var node_id = dynamics[ii];
|
|
var input = JX.$(node_id);
|
|
JX.DOM.listen(
|
|
input,
|
|
['keyup', 'click', 'change'],
|
|
null,
|
|
function(e) {
|
|
renderPreview();
|
|
}
|
|
);
|
|
}
|
|
|
|
});
|