2015-08-27 00:02:07 -07:00
|
|
|
$(document).ready(function() {
|
2015-11-19 21:51:38 -08:00
|
|
|
const common = window.common;
|
|
|
|
const { Observable } = window.Rx;
|
|
|
|
const { challengeName, challengeType, challengeTypes } = common;
|
2015-09-09 18:59:56 -07:00
|
|
|
|
2015-09-27 15:58:59 -07:00
|
|
|
common.init.forEach(function(init) {
|
|
|
|
init($);
|
|
|
|
});
|
|
|
|
|
2015-11-19 21:51:38 -08:00
|
|
|
|
|
|
|
common.resetBtn$
|
|
|
|
.doOnNext(() => {
|
|
|
|
common.editor.setValue(common.replaceSafeTags(common.seed));
|
|
|
|
})
|
|
|
|
.flatMap(() => {
|
|
|
|
return common.executeChallenge$();
|
|
|
|
})
|
|
|
|
.subscribe(
|
|
|
|
({ output, original }) => {
|
|
|
|
common.codeStorage.updateStorage(challengeName, original);
|
|
|
|
common.updateOutputDisplay('' + output);
|
|
|
|
},
|
|
|
|
({ err }) => {
|
|
|
|
common.updateOutputDisplay('' + err);
|
|
|
|
}
|
|
|
|
);
|
|
|
|
|
|
|
|
common.submitBtn$
|
|
|
|
.flatMap(() => {
|
|
|
|
return common.executeChallenge$();
|
|
|
|
})
|
|
|
|
.subscribe(
|
2015-11-21 14:44:33 -08:00
|
|
|
({ output, original, tests }) => {
|
2015-11-19 21:51:38 -08:00
|
|
|
common.updateOutputDisplay(output);
|
|
|
|
common.codeStorage.updateStorage(challengeName, original);
|
2015-11-21 14:44:33 -08:00
|
|
|
common.displayTestResults(tests);
|
2015-11-19 21:51:38 -08:00
|
|
|
}
|
|
|
|
);
|
|
|
|
|
2015-08-27 00:15:13 -07:00
|
|
|
var $preview = $('#preview');
|
2015-11-19 21:51:38 -08:00
|
|
|
if ($preview.html()) {
|
2015-08-27 00:15:13 -07:00
|
|
|
$preview.load(function() {
|
2015-11-19 21:51:38 -08:00
|
|
|
common.executeChallenge()
|
|
|
|
.subscribe(
|
|
|
|
({ output = '' }) => {
|
|
|
|
common.updateOutputDisplay(output);
|
|
|
|
},
|
|
|
|
({ err }) => {
|
|
|
|
common.updateOutputDisplay('' + err);
|
|
|
|
}
|
|
|
|
);
|
2015-08-27 00:15:13 -07:00
|
|
|
});
|
2015-11-08 20:04:43 -08:00
|
|
|
} else if (
|
2015-11-19 21:51:38 -08:00
|
|
|
challengeType !== '2' &&
|
|
|
|
challengeType !== '3' &&
|
|
|
|
challengeType !== '4' &&
|
|
|
|
challengeType !== '7'
|
2015-11-08 20:04:43 -08:00
|
|
|
) {
|
2015-11-19 21:51:38 -08:00
|
|
|
common.executeChallenge$()
|
|
|
|
.subscribe(
|
|
|
|
({ original }) => {
|
|
|
|
// common.updateOutputDisplay('' + output);
|
|
|
|
common.codeStorage.updateStorage(challengeName, original);
|
|
|
|
},
|
|
|
|
({ err }) => {
|
|
|
|
if (err.stack) {
|
|
|
|
console.error(err);
|
|
|
|
}
|
|
|
|
common.updateOutputDisplay('' + err);
|
|
|
|
}
|
|
|
|
);
|
2015-08-27 00:15:13 -07:00
|
|
|
}
|
2015-08-23 21:59:29 +01:00
|
|
|
});
|