|
@@ -1103,7 +1103,14 @@ ${ hueIcons.symbols() }
|
|
|
<div class="snippet-log-container margin-bottom-10" data-bind="visible: showLogs() && status() != 'ready' && status() != 'loading'" style="display: none;">
|
|
<div class="snippet-log-container margin-bottom-10" data-bind="visible: showLogs() && status() != 'ready' && status() != 'loading'" style="display: none;">
|
|
|
<div data-bind="delayedOverflow, css: resultsKlass" style="margin-top: 5px; position: relative;">
|
|
<div data-bind="delayedOverflow, css: resultsKlass" style="margin-top: 5px; position: relative;">
|
|
|
<ul data-bind="visible: jobs().length > 0, foreach: jobs" class="unstyled jobs-overlay">
|
|
<ul data-bind="visible: jobs().length > 0, foreach: jobs" class="unstyled jobs-overlay">
|
|
|
- <li><a data-bind="text: $.trim($data.name), attr: { href: $data.url }" target="_blank"></a></li>
|
|
|
|
|
|
|
+ <li data-bind="attr: {'id': $data.name.substr(4)}"><a data-bind="text: $.trim($data.name), attr: { href: $data.url }" target="_blank"></a>
|
|
|
|
|
+ <!-- ko if: typeof percentJob !== 'undefined' && percentJob() > -1 -->
|
|
|
|
|
+ <div class="progress-job progress active pull-left" style="background-color: #FFF; width: 100%" data-bind="css: {'progress-warning': percentJob() < 100, 'progress-success': percentJob() === 100}">
|
|
|
|
|
+ <div class="bar" data-bind="style: {'width': percentJob() + '%'}"></div>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <!-- /ko -->
|
|
|
|
|
+ <div class="clearfix"></div>
|
|
|
|
|
+ </li>
|
|
|
</ul>
|
|
</ul>
|
|
|
<pre data-bind="visible: result.logs().length == 0" class="logs logs-bigger">${ _('No logs available at this moment.') }</pre>
|
|
<pre data-bind="visible: result.logs().length == 0" class="logs logs-bigger">${ _('No logs available at this moment.') }</pre>
|
|
|
<pre data-bind="visible: result.logs().length > 0, text: result.logs, logScroller: result.logs, logScrollerVisibilityEvent: showLogs" class="logs logs-bigger logs-populated"></pre>
|
|
<pre data-bind="visible: result.logs().length > 0, text: result.logs, logScroller: result.logs, logScrollerVisibilityEvent: showLogs" class="logs logs-bigger logs-populated"></pre>
|
|
@@ -1722,7 +1729,7 @@ ${ hueIcons.symbols() }
|
|
|
<script type="text/html" id="snippet-execution-status">
|
|
<script type="text/html" id="snippet-execution-status">
|
|
|
<div class="snippet-execution-status" data-bind="clickForAceFocus: ace">
|
|
<div class="snippet-execution-status" data-bind="clickForAceFocus: ace">
|
|
|
<div class="snippet-progress-container">
|
|
<div class="snippet-progress-container">
|
|
|
- <div class="progress active" data-bind="css: {
|
|
|
|
|
|
|
+ <div class="progress-snippet progress active" data-bind="css: {
|
|
|
'progress-starting': progress() == 0 && status() == 'running',
|
|
'progress-starting': progress() == 0 && status() == 'running',
|
|
|
'progress-warning': progress() > 0 && progress() < 100,
|
|
'progress-warning': progress() > 0 && progress() < 100,
|
|
|
'progress-success': progress() == 100,
|
|
'progress-success': progress() == 100,
|
|
@@ -3134,7 +3141,7 @@ ${ hueIcons.symbols() }
|
|
|
|
|
|
|
|
$(document).on("executeStarted", function (e, snippet) {
|
|
$(document).on("executeStarted", function (e, snippet) {
|
|
|
var _el = $("#snippet_" + snippet.id()).find(".resultTable");
|
|
var _el = $("#snippet_" + snippet.id()).find(".resultTable");
|
|
|
- $("#snippet_" + snippet.id()).find(".progress").animate({
|
|
|
|
|
|
|
+ $("#snippet_" + snippet.id()).find(".progress-snippet").animate({
|
|
|
height: "3px"
|
|
height: "3px"
|
|
|
}, 100);
|
|
}, 100);
|
|
|
if (_el.hasClass("dt")) {
|
|
if (_el.hasClass("dt")) {
|
|
@@ -3214,7 +3221,7 @@ ${ hueIcons.symbols() }
|
|
|
$(document).on("progress", function (e, options) {
|
|
$(document).on("progress", function (e, options) {
|
|
|
if (options.data == 100) {
|
|
if (options.data == 100) {
|
|
|
window.setTimeout(function () {
|
|
window.setTimeout(function () {
|
|
|
- $("#snippet_" + options.snippet.id()).find(".progress").animate({
|
|
|
|
|
|
|
+ $("#snippet_" + options.snippet.id()).find(".progress-snippet").animate({
|
|
|
height: "0"
|
|
height: "0"
|
|
|
}, 100, function () {
|
|
}, 100, function () {
|
|
|
options.snippet.progress(0);
|
|
options.snippet.progress(0);
|
|
@@ -3234,12 +3241,34 @@ ${ hueIcons.symbols() }
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
|
|
|
|
|
|
- huePubSub.subscribe('submit.popup.return', function(data){
|
|
|
|
|
|
|
+ huePubSub.subscribe('submit.popup.return', function (data) {
|
|
|
console.log('Job id', data.job_id);
|
|
console.log('Job id', data.job_id);
|
|
|
$.jHueNotify.info('${_('Coordinator submitted.')}');
|
|
$.jHueNotify.info('${_('Coordinator submitted.')}');
|
|
|
$('.submit-modal').modal('hide');
|
|
$('.submit-modal').modal('hide');
|
|
|
});
|
|
});
|
|
|
|
|
|
|
|
|
|
+ huePubSub.subscribe('jobbrowser.data', function (jobs) {
|
|
|
|
|
+ if (jobs.length > 0) {
|
|
|
|
|
+ jobs.forEach(function (job) {
|
|
|
|
|
+ if ($("#" + job.shortId).length > 0) {
|
|
|
|
|
+ var _job = ko.dataFor($("#" + job.shortId)[0]);
|
|
|
|
|
+ if (!isNaN(parseInt(job.mapsPercentComplete))) {
|
|
|
|
|
+ _job.percentJob(parseInt(job.mapsPercentComplete));
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ });
|
|
|
|
|
+ }
|
|
|
|
|
+ else {
|
|
|
|
|
+ if (viewModel.selectedNotebook()) {
|
|
|
|
|
+ viewModel.selectedNotebook().snippets().forEach(function (snippet) {
|
|
|
|
|
+ snippet.jobs().forEach(function (job) {
|
|
|
|
|
+ job.percentJob(100);
|
|
|
|
|
+ });
|
|
|
|
|
+ });
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ });
|
|
|
|
|
+
|
|
|
$(document).on("gridShown", function (e, snippet) {
|
|
$(document).on("gridShown", function (e, snippet) {
|
|
|
window.setTimeout(function () {
|
|
window.setTimeout(function () {
|
|
|
resizeToggleResultSettings(snippet);
|
|
resizeToggleResultSettings(snippet);
|