example1.html 11.7 KB
Newer Older
1
2
<!DOCTYPE html>
<html lang="en">
Jerome Mariette's avatar
Jerome Mariette committed
3
4
5
6
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="description" content="">
7

Jerome Mariette's avatar
Jerome Mariette committed
8
    <title>Jflow</title>
9

Jerome Mariette's avatar
Jerome Mariette committed
10
11
12
13
14
15
16
    <!-- Bootstrap core CSS -->
    <link href="css/bootstrap.min.css" rel="stylesheet">
    <!-- Bootstrap theme -->
    <link href="css/bootstrap-theme.min.css" rel="stylesheet">

    <!-- Custom styles for this template -->
    <link href="css/theme.css" rel="stylesheet">
Jerome Mariette's avatar
Jerome Mariette committed
17
	
Jerome Mariette's avatar
Jerome Mariette committed
18
	<!-- jflow css -->
19
	<!-- Production version
Jerome Mariette's avatar
Jerome Mariette committed
20
	<link href="css/jflow.min.css" rel="stylesheet">
21
	<!-- Development version-->
Floreal Cabanettes's avatar
Floreal Cabanettes committed
22
23
24
	<link href="css/handsontable.full.min.css" rel="stylesheet">
	<link href="css/cytoscape.js-panzoom.css" rel="stylesheet">
	<link href="css/datepicker.css" rel="stylesheet">
25
26
	<link href="css/jflow.css" rel="stylesheet">
    <link href="css/jQueryFileTree.min.css" rel="stylesheet">
27

Jerome Mariette's avatar
Jerome Mariette committed
28
29
30
31
32
33
    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
    <!--[if lt IE 9]>
      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
    <![endif]-->
  </head>
34

Jerome Mariette's avatar
Jerome Mariette committed
35
  <body role="document">
36

Philippe Bardou's avatar
Philippe Bardou committed
37
    <!-- Fixed navbar -->
Jerome Mariette's avatar
Jerome Mariette committed
38
39
40
41
42
43
44
45
46
    <div class="navbar navbar-inverse navbar-fixed-top" role="navigation">
      <div class="container">
        <div class="navbar-header">
          <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target=".navbar-collapse">
            <span class="sr-only">Toggle navigation</span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
          </button>
Jerome Mariette's avatar
Jerome Mariette committed
47
          <a class="navbar-brand" href="./index.html">Jflow</a>
Jerome Mariette's avatar
Jerome Mariette committed
48
49
50
        </div>
        <div class="navbar-collapse collapse">
          <ul class="nav navbar-nav">
Jerome Mariette's avatar
Jerome Mariette committed
51
52
53
            <li><a href="./index.html">About</a></li>
            <li><a href="./jflow_install.html">Install</a></li>
            <li><a href="./jflow_quickstart.html">Quick start</a></li>
Jerome Mariette's avatar
Jerome Mariette committed
54
            <li class="dropdown">
Philippe Bardou's avatar
Philippe Bardou committed
55
              <a href="#" class="dropdown-toggle" data-toggle="dropdown">Documentation<span class="caret"></span></a>
Jerome Mariette's avatar
Jerome Mariette committed
56
              <ul class="dropdown-menu" role="menu">
Jerome Mariette's avatar
Jerome Mariette committed
57
58
59
60
61
                <li><a href="./jflow_core_workflow.html">Add a workflow</a></li>
                <li><a href="./jflow_core_component.html">Add a component</a></li>
                <li><a href="./jflow_plugin.html">Plugin insertion</a></li>
                <li><a href="./jflow_type.html">Add a data type</a></li>
                <li><a href="./jflow_format.html">Add a file format</a></li>
Jerome Mariette's avatar
Jerome Mariette committed
62
                <li><a href="./jflow_rule.html">Add a rule</a></li>
Jerome Mariette's avatar
Jerome Mariette committed
63
                <li><a href="./jflow_advanced_configuration.html">Advanced configuration</a></li>
Jerome Mariette's avatar
Jerome Mariette committed
64
65
              </ul>
            </li>
Jerome Mariette's avatar
Jerome Mariette committed
66
			<li class="active"><a href="./example1.html">Example</a></li>
Jerome Mariette's avatar
Jerome Mariette committed
67
68
69
70
71
			<li><a href="mailto:support.genopole@toulouse.inra.fr">Contact</a></li>
          </ul>
        </div><!--/.nav-collapse -->
      </div>
    </div>
Philippe Bardou's avatar
Philippe Bardou committed
72
 
Jerome Mariette's avatar
Jerome Mariette committed
73
    <div class="container theme-showcase" role="main">
Jerome Mariette's avatar
Jerome Mariette committed
74

Jerome Mariette's avatar
Jerome Mariette committed
75
76
77
      <!-- Jumbotron -->
      <div class="jumbotron">
        <h1>Hello Jflow!</h1>
Jerome Mariette's avatar
Jerome Mariette committed
78
        <p class="lead">This is a running example for a simple workflow manager website. Use it as a 
Jerome Mariette's avatar
Jerome Mariette committed
79
        	starting point to create something more unique.</p>
Philippe Bardou's avatar
Philippe Bardou committed
80
81
82
83
84
85
        <br/>
		<div style="position:absolute;width:1025px;padding:0px 5px 0 5px;background-color:white;border:1px solid lightgrey;border-radius:5px;">
			<span class="label label-primary" style="position:absolute;top:-10px;left:-10px">How to cite</span>
		    <h6><b>Jérôme Mariette, Frédéric Escudié, Philippe Bardou, Ibouniyamine Nabihoudine, Céline Noirot, Marie-Stéphane Trotard, 
		    	Christine Gaspin, Christophe Klopp. Jflow: a workflow management system for web applications. Bioinformatics. 
		    	2015. doi 10.1093/bioinformatics/btv589. &nbsp;&nbsp; - &nbsp;&nbsp;
Jerome Mariette's avatar
Jerome Mariette committed
86
				<a href="http://bioinformatics.oxfordjournals.org/content/early/2015/11/25/bioinformatics.btv589.full" target="_blank"> Abstract/FREE Full Text </a></b>
Philippe Bardou's avatar
Philippe Bardou committed
87
88
89
			</h6>
		</div>
		<br/>
Jerome Mariette's avatar
Jerome Mariette committed
90
91
92
93
      </div>
    
		<div class="row">
	      	<div class="col-lg-6">
94
95
				<h1 class="page-header">Available workflows <small>to run</small></h1>
				<div id="available-workflows-list"></div>
Jerome Mariette's avatar
Jerome Mariette committed
96
97
	      	</div>
	      	<div class="col-lg-6">
Philippe Bardou's avatar
Philippe Bardou committed
98
	      		<h1 class="page-header">Actives workflows <small>to monitor</small></h1>
Jerome Mariette's avatar
Jerome Mariette committed
99
100
101
102
	      		<div id="active-workflows-list"></div>
	      	</div>
		</div>
		
Jerome Mariette's avatar
Jerome Mariette committed
103
		
Jerome Mariette's avatar
Jerome Mariette committed
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
		<!-- setAndRunModal -->
		<div id="setAndRunModal" class="modal fade bs-example-modal-lg" tabindex="-1" role="dialog" aria-labelledby="setAndRunModalLabel" aria-hidden="true">
			<div class="modal-dialog modal-lg">
				<div class="modal-content">
					<div class="modal-header">
						<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button>
						<h3 class="modal-title" id="setAndRunModalLabel"> </h3>
					</div>
					<div id="setAndRunModalBody" class="modal-body"> </div>
					<div class="modal-footer">
						<div class="btn-group">
							<button id="reset_workflow" type="button" class="btn btn-default"><span class="glyphicon glyphicon-refresh"></span> Reset</button>
							<button id="run_workflow" type="button" class="btn btn-primary"><span class="glyphicon glyphicon-cog"></span> Run</button>
						</div>
					</div>
				</div>
			</div>
		</div>
122
		
Jerome Mariette's avatar
Jerome Mariette committed
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
		<!-- statusModal -->
		<div id="statusModal" class="modal fade bs-example-modal-lg" tabindex="-1" role="dialog" aria-labelledby="statusModalLabel" aria-hidden="true">
			<div class="modal-dialog modal-lg">
				<div class="modal-content">
					<div class="modal-header">
						<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button>
						<h3 class="modal-title" id="statusModalLabel"> </h3>
					</div>
					<div id="statusModalBody" class="modal-body"> </div>
					<div class="modal-footer">
			    		<div class="btn-group">
			    			<button id="refresh_workflow" class="btn btn-default status-panel"><span class="glyphicon glyphicon-refresh"></span> Refresh</button>
			    			<button id="rerun_workflow" class="btn btn-primary status-panel"><span class="glyphicon glyphicon-cog"></span> ReRun</button>
			    		</div>
						<button id="output_workflow" type="button" class="btn btn-success status-panel"><span class="glyphicon glyphicon-chevron-right"></span> Output</button>
						<button id="back_workflow" type="button" class="btn btn-default" style="display:none"><span class="glyphicon glyphicon-chevron-left"></span> Back</button>
					</div>
				</div>
			</div>
		</div>
	   
      <hr>
      <footer>
      	<div class="container" style="text-align: center;">
Philippe Bardou's avatar
Philippe Bardou committed
147
		  <p>Copyright © 2015, INRA | Designed by <a target="_blank" href="http://bioinfo.genotoul.fr/">GenoToul Bioinfo platform</a> and <a target="_blank" href="http://www.sigenae.org/">Sigenae platform</a>.</p>
Jerome Mariette's avatar
Jerome Mariette committed
148
149
150
151
152
153
154
155
156
157
		</div>
      </footer>
	    
	</div> <!-- /container -->

    <!-- Bootstrap core JavaScript
    ================================================== -->
    <!-- Placed at the end of the document so the pages load faster -->
    <script src="js/jquery.min.js"></script>
    <script src="js/bootstrap.min.js"></script>
158
	<!-- Production version-->
Jerome Mariette's avatar
Jerome Mariette committed
159
    <script src='js/jflow.min.js' type='text/javascript'></script>
Floreal Cabanettes's avatar
Floreal Cabanettes committed
160

161
	<!-- development version
Floreal Cabanettes's avatar
Floreal Cabanettes committed
162
163
164
165
166
167
168
169
170
171
172
173
174
	<script src='js/jquery.tmpl.min.js' type='text/javascript'></script>
	<script src='js/jquery.validate.js' type='text/javascript'></script>
	<script src="js/jquery.ui.widget.js"></script>
	<script src="js/jquery.iframe-transport.js"></script>
	<script src="js/jquery.fileupload.js"></script>
	<script src="js/jquery.fileupload-process.js"></script>
	<script src="js/jquery.fileupload-validate.js"></script>
	<script src='js/cytoscape-2.3.7.js' type='text/javascript'></script>
	<script src='js/cytoscape.js-panzoom.js' type='text/javascript'></script>
	<script src='js/dagre.js' type='text/javascript'></script>

	<script src='js/handsontable.full.min.js' type='text/javascript'></script>

175
176
177
    <script src="js/jQueryFileTree.min.js"></script>

    <script src="js/jflow-browser.js"></script>
Floreal Cabanettes's avatar
Floreal Cabanettes committed
178
179
180
181
182
183
	<script src='js/jflow-activewf.js' type='text/javascript'></script>
	<script src='js/jflow-availablewf.js' type='text/javascript'></script>
	<script src='js/jflow-wfoutputs.js' type='text/javascript'></script>
    <script src='js/jflow-wfform-rules.js' type='text/javascript'></script>
	<script src='js/jflow-wfform.js' type='text/javascript'></script>
	<script src='js/jflow-wfstatus.js' type='text/javascript'></script>
184
	<script src="js/bootstrap-datepicker.js"></script>-->
185
186
187
188
189
190

	<script type="text/javascript">
		$(document.body).on('shown.bs.modal', function () {
		    $(this).find(".modal-body").animate({scrollTop: 0}, 0);
		});
	</script>
Jerome Mariette's avatar
Jerome Mariette committed
191
192
193
194
    
	<script type='text/javascript'>
		
		$(document).ready(function(){
Jerome Mariette's avatar
Jerome Mariette committed
195

Jerome Mariette's avatar
Jerome Mariette committed
196
197
198
199
200
			/**
			 * Use the plugins
			 */
			$("#available-workflows-list").availablewf();
			
Jerome Mariette's avatar
Jerome Mariette committed
201
			$("#available-workflows-list").on('select.availablewf', function(event, workflow) {
Jerome Mariette's avatar
Jerome Mariette committed
202
203
204
205
206
207
208
209
210
				$('#setAndRunModal .modal-footer').show();
				$('#setAndRunModalLabel').html(workflow["name"] + " <small>" + workflow["help"] + "</small>");
			    $('#setAndRunModalBody').wfform({
					workflowClass: workflow["class"],
					displayRunButton: false,
					displayResetButton: false
			    });
				$('#setAndRunModal').modal();
			});
211
			
Jerome Mariette's avatar
Jerome Mariette committed
212
			$('#setAndRunModalBody').on('uploading.wfform', function(event, running_wf) {
Jerome Mariette's avatar
Jerome Mariette committed
213
214
215
				$('#setAndRunModal .modal-footer').hide();
			});
			
Jerome Mariette's avatar
Jerome Mariette committed
216
			$('#setAndRunModalBody').on('run.wfform', function(event, running_wf) {
Jerome Mariette's avatar
Jerome Mariette committed
217
218
219
220
221
222
223
224
				$('#setAndRunModal').modal('hide');
			    $('#statusModalLabel').html(running_wf["name"] + " <small>" + running_wf["id"] + "</small>");
			    $('#statusModalBody').wfstatus({
			    	workflowID: running_wf.id,
			    	forceUsingWorkflow: running_wf
			    });
				$('#statusModal').modal();
				$("#active-workflows-list").activewf('reload');
Jerome Mariette's avatar
Jerome Mariette committed
225
226
				$("#output_workflow").unbind('click', outputWFHandler);
				$("#output_workflow").bind('click', {"workflow_id": running_wf.id}, outputWFHandler);
Jerome Mariette's avatar
Jerome Mariette committed
227
228
		    });
		    
Jerome Mariette's avatar
Jerome Mariette committed
229
230
231
232
			$("#refresh_workflow").click(function(){
				$('#statusModalBody').wfstatus('reload');
				$("#active-workflows-list").activewf('reload');
			});
Jerome Mariette's avatar
Jerome Mariette committed
233
234
			$("#rerun_workflow").click(function(){ $('#statusModalBody').wfstatus('rerun'); });
		    $("#reset_workflow").click(function(){ $('#setAndRunModalBody').wfform('reset'); });
Jerome Mariette's avatar
Jerome Mariette committed
235
236
		    $('#setAndRunModal').on('shown.bs.modal', function() {
		    	$('#setAndRunModalBody').wfform('render');
237
238
239
		    });
		    $('#statusModal').on('shown.bs.modal', function() {
		    	$('#statusModalBody').wfstatus('render');
Jerome Mariette's avatar
Jerome Mariette committed
240
241
242
		    });
  			$("#back_workflow").click(function(){
  				$('#statusModalBody').wfstatus('reload');
Jerome Mariette's avatar
Jerome Mariette committed
243
244
				$('#back_workflow').hide();
				$('.status-panel').show();
Jerome Mariette's avatar
Jerome Mariette committed
245
  			});
Jerome Mariette's avatar
Jerome Mariette committed
246
247
248
249
250
251
252
253
254
255
256
257
258
		    $("#run_workflow").click(function(){
		    	$('#setAndRunModalBody').wfform('run');
		    	$('#back_workflow').hide();
				$('.status-panel').show();
		    });				
		    function outputWFHandler(event) {
				$('#statusModalBody').wfoutputs({
					workflowID: event.data.workflow_id
				})
				$('#back_workflow').show();
				$('.status-panel').hide();
		    }
		    $("#active-workflows-list").activewf();
Jerome Mariette's avatar
Jerome Mariette committed
259
			$("#active-workflows-list").on("select.activewf", function(event, workflow) {
Jerome Mariette's avatar
Jerome Mariette committed
260
261
262
				$('#statusModalLabel').html(workflow["name"] + " <small>" + workflow["id"] + "</small>");
			    $('#statusModalBody').wfstatus({
					workflowID: workflow.id
263
			    });
Jerome Mariette's avatar
Jerome Mariette committed
264
265
266
267
268
269
270
271
				$('#statusModal').modal();
				$('#back_workflow').hide();
				$('.status-panel').show();
				$("#output_workflow").unbind('click', outputWFHandler);
				$("#output_workflow").bind('click', {"workflow_id": workflow.id}, outputWFHandler);
			});
			 
		}); 
272

Jerome Mariette's avatar
Jerome Mariette committed
273
	</script>
274
275
276

	</body>
</html>