diff --git a/.gitignore b/.gitignore index 4dad45d1..4abf770b 100755 --- a/.gitignore +++ b/.gitignore @@ -73,6 +73,10 @@ dist/ /blast/static/blast/css/colReorder.dataTables.css /blast/static/blast/css/dataTables.bootstrap.css /blast/static/blast/css/jquery.dataTables.css +/blast/static/blast/css/images/ui-icons_* +/blast/static/blast/css/images/ui-bg_g* +/blast/static/blast/css/images/ui-bg_h* +/blast/static/blast/css/images/ui-bg_d* /hmmer/static/hmmer/scripts/jquery.hoverIntent.js /hmmer/static/hmmer/scripts/jquery.validate.js diff --git a/app/admin.py b/app/admin.py index c9261792..a5fd9acc 100644 --- a/app/admin.py +++ b/app/admin.py @@ -30,9 +30,9 @@ def short_description(self, obj): class Media: css = { - 'all': ('blast/css/organism-admin.css',) + 'all': ('app/css/organism-admin.css',) } - js = ('blast/scripts/organism-admin.js',) + js = ('app/scripts/organism-admin.js',) admin.site.register(Organism, OrganismAdmin) diff --git a/blast/static/blast/css/organism-admin.css b/app/static/app/css/organism-admin.css similarity index 100% rename from blast/static/blast/css/organism-admin.css rename to app/static/app/css/organism-admin.css diff --git a/blast/static/blast/scripts/organism-admin.js b/app/static/app/scripts/organism-admin.js similarity index 100% rename from blast/static/blast/scripts/organism-admin.js rename to app/static/app/scripts/organism-admin.js diff --git a/blast/static/blast/css/Bootstrap/editor.png b/blast/static/blast/css/Bootstrap/editor.png new file mode 100644 index 00000000..456f9c51 Binary files /dev/null and b/blast/static/blast/css/Bootstrap/editor.png differ diff --git a/blast/static/blast/css/Bootstrap/imagebrowser.png b/blast/static/blast/css/Bootstrap/imagebrowser.png new file mode 100644 index 00000000..210cf495 Binary files /dev/null and b/blast/static/blast/css/Bootstrap/imagebrowser.png differ diff --git a/blast/static/blast/css/Bootstrap/indeterminate.gif b/blast/static/blast/css/Bootstrap/indeterminate.gif new file mode 100644 index 00000000..34f4609c Binary files /dev/null and b/blast/static/blast/css/Bootstrap/indeterminate.gif differ diff --git a/blast/static/blast/css/Bootstrap/loading-image.gif b/blast/static/blast/css/Bootstrap/loading-image.gif new file mode 100644 index 00000000..8a6503fc Binary files /dev/null and b/blast/static/blast/css/Bootstrap/loading-image.gif differ diff --git a/blast/static/blast/css/Bootstrap/loading.gif b/blast/static/blast/css/Bootstrap/loading.gif new file mode 100644 index 00000000..86e6ad70 Binary files /dev/null and b/blast/static/blast/css/Bootstrap/loading.gif differ diff --git a/blast/static/blast/css/Bootstrap/loading_2x.gif b/blast/static/blast/css/Bootstrap/loading_2x.gif new file mode 100644 index 00000000..4e37faa3 Binary files /dev/null and b/blast/static/blast/css/Bootstrap/loading_2x.gif differ diff --git a/blast/static/blast/css/Bootstrap/markers.png b/blast/static/blast/css/Bootstrap/markers.png new file mode 100644 index 00000000..1747607d Binary files /dev/null and b/blast/static/blast/css/Bootstrap/markers.png differ diff --git a/blast/static/blast/css/Bootstrap/markers_2x.png b/blast/static/blast/css/Bootstrap/markers_2x.png new file mode 100644 index 00000000..28c0c62e Binary files /dev/null and b/blast/static/blast/css/Bootstrap/markers_2x.png differ diff --git a/blast/static/blast/css/Bootstrap/slider-h.gif b/blast/static/blast/css/Bootstrap/slider-h.gif new file mode 100644 index 00000000..188e80ed Binary files /dev/null and b/blast/static/blast/css/Bootstrap/slider-h.gif differ diff --git a/blast/static/blast/css/Bootstrap/slider-v.gif b/blast/static/blast/css/Bootstrap/slider-v.gif new file mode 100644 index 00000000..d5c2e215 Binary files /dev/null and b/blast/static/blast/css/Bootstrap/slider-v.gif differ diff --git a/blast/static/blast/css/Bootstrap/sprite.png b/blast/static/blast/css/Bootstrap/sprite.png new file mode 100644 index 00000000..9c130e1a Binary files /dev/null and b/blast/static/blast/css/Bootstrap/sprite.png differ diff --git a/blast/static/blast/css/Bootstrap/sprite_2x.png b/blast/static/blast/css/Bootstrap/sprite_2x.png new file mode 100644 index 00000000..edfaba33 Binary files /dev/null and b/blast/static/blast/css/Bootstrap/sprite_2x.png differ diff --git a/blast/static/blast/css/Bootstrap/sprite_kpi.png b/blast/static/blast/css/Bootstrap/sprite_kpi.png new file mode 100644 index 00000000..8b15ccda Binary files /dev/null and b/blast/static/blast/css/Bootstrap/sprite_kpi.png differ diff --git a/blast/static/blast/css/Bootstrap/sprite_kpi_2x.png b/blast/static/blast/css/Bootstrap/sprite_kpi_2x.png new file mode 100644 index 00000000..89bfe372 Binary files /dev/null and b/blast/static/blast/css/Bootstrap/sprite_kpi_2x.png differ diff --git a/blast/static/blast/css/blast-results.css b/blast/static/blast/css/blast-results.css index 58aed88e..106d5779 100755 --- a/blast/static/blast/css/blast-results.css +++ b/blast/static/blast/css/blast-results.css @@ -3,13 +3,13 @@ top: 0; width: 12px; border-width: 0; - background: #efefef url('images/handle.svg') no-repeat center; + background: #efefef; } .k-ghost-splitbar-vertical, .k-splitbar-vertical { left: 0; height: 12px; border-width: 0; - background: #efefef url('images/handle-h.svg') no-repeat center; + background: #efefef; } .k-splitbar:hover { background-color: #ddd; diff --git a/blast/static/blast/css/images/ui-bg_flat_0_aaaaaa_40x100.png b/blast/static/blast/css/images/ui-bg_flat_0_aaaaaa_40x100.png new file mode 100644 index 00000000..a2e6bfc0 Binary files /dev/null and b/blast/static/blast/css/images/ui-bg_flat_0_aaaaaa_40x100.png differ diff --git a/blast/static/blast/css/images/unchecked.gif b/blast/static/blast/css/images/unchecked.gif new file mode 100644 index 00000000..5d5b85f4 Binary files /dev/null and b/blast/static/blast/css/images/unchecked.gif differ diff --git a/blast/static/blast/css/jquery-ui-custom.css b/blast/static/blast/css/jquery-ui-custom.css index 63fa3be7..af8c8292 100755 --- a/blast/static/blast/css/jquery-ui-custom.css +++ b/blast/static/blast/css/jquery-ui-custom.css @@ -630,7 +630,7 @@ .ui-widget-shadow { margin: -5px 0 0 -5px; padding: 5px; - background: #000000 url("images/ui-bg_flat_10_000000_40x100.png") 50% 50% repeat-x; + background: #000000; opacity: .2; filter: Alpha(Opacity=20); /* support: IE8 */ border-radius: 5px; diff --git a/blast/static/blast/scripts/blast-results.js b/blast/static/blast/scripts/blast-results.js index b19f9116..c2083a09 100755 --- a/blast/static/blast/scripts/blast-results.js +++ b/blast/static/blast/scripts/blast-results.js @@ -40,8 +40,6 @@ $(function () { // document ready ////////////////// // Prepare Data // ////////////////// - // convert arrays to objects - //var results_db = _.map(results_data, function (row) { return _.object(results_col_names, row); }); var col_idx = _.object(results_col_names, _.range(results_col_names.length)); ///////////////////////// // Hover and Selection // @@ -67,12 +65,6 @@ $(function () { // document ready } }); var s = new State; - s.on('change:hover', function (model, value, options) { - //console.log('change:hover - ' + value); - }); - s.on('change:selected', function (model, value, options) { - //console.log('change:selected - ' + value); - }); ////////////////// // BLAST Report // ////////////////// @@ -105,7 +97,6 @@ $(function () { // document ready cm_blast_report.curOp.cursorActivityHandlers = false; // don't fire event }); cm_blast_report.operation(function () { - //$('.CodeMirror')[0].CodeMirror.scrollTo(0, 2976+551/2-42) var info = cm_blast_report.getScrollInfo(); cm_blast_report.scrollTo(0, info.top + info.clientHeight / 2 - 42); cm_blast_report.curOp.cursorActivityHandlers = false; // don't fire event @@ -167,17 +158,7 @@ $(function () { // document ready return fasta_loading[sseqid]; } } - s.on('change:hover', function (model, value, options) { - //if (options.set_by == this) - // return; - //if (value != null) - // cm_fasta_viewer_load_fasta(value); - //else { - // selected = s.get('selected') - // if (selected.length > 0) - // cm_fasta_viewer_load_fasta(selected[0]); - //} - }, cm_fasta_viewer); + s.on('change:hover', function (model, value, options) {}, cm_fasta_viewer); s.on('change:selected', function (model, row_indexes, options) { if (options.set_by == this) return; @@ -218,10 +199,6 @@ $(function () { // document ready '<"' + toolbar_prefix + 'tl ui-corner-tr"Rifr>' + 't' + '<"' + toolbar_prefix + 'bl ui-corner-br"<"btn-download btn-group dropup">T>S', - //dom: 'Rifrt<"btn-group dropup">S', - //"dom": 'T<"clear">lfrtip', - //deferRender: true, - //bJQueryUI: true, tableTools: { sRowSelect: "os", aButtons: [], @@ -903,7 +880,6 @@ $(function () { // document ready var r = color_scale.invertExtent(c); return Math.round(r[0]); }); - //$('.score-to-color-text').text('Dynamic'); updateAlignmentGraph(); } else { // static @@ -937,12 +913,6 @@ $(function () { // document ready .style('background', function (c) { return c[0]; }) - /* - linear-gradient(60deg, rgba(30,87,153,1) 0%,rgba(0,0,0,0) 100%), - linear-gradient(120deg, rgba(131,179,211,1) 0%,rgba(0,0,0,0) 100%), - linear-gradient(60deg, rgba(0,0,0,0) 0%,rgba(136,216,144,1) 100%), - linear-gradient(120deg, rgba(0,0,0,0) 0%,rgba(0,109,7,1) 100%); - */ .style('background', function (c) { return '-moz-linear-gradient(top, ' + c[0] + ' 0%, ' + c[1] + ' 100%)'; }) //-moz-linear-gradient(top, #1e5799 0%, #7db9e8 100%); @@ -1042,7 +1012,6 @@ $(function () { // document ready var start = Math.floor(filtered_rows.indexOf(focus_row_index) / graph_page_size) * graph_page_size; var paged_filtered_rows = filtered_rows.toArray().slice(start, start + graph_page_size); // Sort data ascending by coordinate for draw order - //var sorted_data = _.sortBy(filtered_data, function (row) { return -row['bitscore']; }); // Set name text $('#' + canvas_name + '-name').text(focus_row_data[rseqid] + ', BLAST Hits ' + (start + 1) + '-' + (start + paged_filtered_rows.length)); diff --git a/filebrowser/static/filebrowser/img/glyphicons-halflings.png b/filebrowser/static/filebrowser/img/glyphicons-halflings.png new file mode 100644 index 00000000..f43139a4 Binary files /dev/null and b/filebrowser/static/filebrowser/img/glyphicons-halflings.png differ diff --git a/package-lock.json b/package-lock.json index d50618c5..93234392 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2678,11 +2678,21 @@ } } }, + "jquery-ui": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/jquery-ui/-/jquery-ui-1.12.1.tgz", + "integrity": "sha1-vLQEXI3QU5wTS8FIjN0+dop6nlE=" + }, "jquery-ui-dist": { "version": "1.12.0", "resolved": "https://registry.npmjs.org/jquery-ui-dist/-/jquery-ui-dist-1.12.0.tgz", "integrity": "sha1-Cpnq8uNBDez4AoGV6QwblroMeRI=" }, + "jquery-ui-themes": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/jquery-ui-themes/-/jquery-ui-themes-1.12.0.tgz", + "integrity": "sha1-pXugrZaADYRSL+dok//L3mcIHVE=" + }, "jquery-validation": { "version": "1.14.0", "resolved": "https://registry.npmjs.org/jquery-validation/-/jquery-validation-1.14.0.tgz", diff --git a/package.json b/package.json index 381a82ea..1b451512 100644 --- a/package.json +++ b/package.json @@ -38,6 +38,7 @@ "jquery": "^1.11.1", "jquery-hoverintent": "^1.9.0", "jquery-ui-dist": "^1.12.0", + "jquery-ui-themes": "^1.12.0", "jquery-validation": "^1.14.0", "jquery.dragscrollable": "^1.0.0", "marked": "^0.3.19", diff --git a/webpack.config.js b/webpack.config.js index 62f0a8ab..dd518dff 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -38,6 +38,7 @@ const appScriptConfig = { const blastScripts = path.resolve(__dirname, 'blast/static/blast/scripts'); const blastStyles = path.resolve(__dirname, 'blast/static/blast/css'); +const blastImages = path.resolve(__dirname, 'blast/static/blast/css/images'); const blastScriptConfig = { entry: path.join(nodeModules, '/jquery-validation/dist/jquery.validate.js'), // Just a fake entry, we only copy files here output: { @@ -66,6 +67,25 @@ const blastScriptConfig = { { from: path.join(nodeModules, '/datatables.net-colreorder-dt/css/colReorder.dataTables.css'), to: blastStyles}, { from: path.join(nodeModules, '/datatables.net-bs/css/dataTables.bootstrap.css'), to: blastStyles}, { from: path.join(nodeModules, '/datatables.net-dt/css/jquery.dataTables.css'), to: blastStyles}, + { from: path.join(nodeModules, '/jquery-ui-dist/images/ui-icons_444444_256x240.png'), to: blastImages}, + { from: path.join(nodeModules, '/jquery-ui-dist/images/ui-icons_777620_256x240.png'), to: blastImages}, + { from: path.join(nodeModules, '/jquery-ui-dist/images/ui-icons_cc0000_256x240.png'), to: blastImages}, + { from: path.join(nodeModules, '/jquery-ui-dist/images/ui-icons_555555_256x240.png'), to: blastImages}, + { from: path.join(nodeModules, '/jquery-ui-dist/images/ui-icons_777777_256x240.png'), to: blastImages}, + { from: path.join(nodeModules, '/jquery-ui-dist/images/ui-icons_ffffff_256x240.png'), to: blastImages}, + { from: path.join(nodeModules, '/jquery-ui-themes/themes/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png'), to: blastImages}, + { from: path.join(nodeModules, '/jquery-ui-themes/themes/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png'), to: blastImages}, + { from: path.join(nodeModules, '/jquery-ui-themes/themes/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png'), to: blastImages}, + { from: path.join(nodeModules, '/jquery-ui-themes/themes/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png'), to: blastImages}, + { from: path.join(nodeModules, '/jquery-ui-themes/themes/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png'), to: blastImages}, + { from: path.join(nodeModules, '/jquery-ui-themes/themes/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png'), to: blastImages}, + { from: path.join(nodeModules, '/jquery-ui-themes/themes/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png'), to: blastImages}, + { from: path.join(nodeModules, '/jquery-ui-themes/themes/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png'), to: blastImages}, + { from: path.join(nodeModules, '/jquery-ui-themes/themes/ui-lightness/images/ui-icons_222222_256x240.png'), to: blastImages}, + { from: path.join(nodeModules, '/jquery-ui-themes/themes/ui-lightness/images/ui-icons_228ef1_256x240.png'), to: blastImages}, + { from: path.join(nodeModules, '/jquery-ui-themes/themes/ui-lightness/images/ui-icons_ef8c08_256x240.png'), to: blastImages}, + { from: path.join(nodeModules, '/jquery-ui-themes/themes/ui-lightness/images/ui-icons_ffd27a_256x240.png'), to: blastImages}, + { from: path.join(nodeModules, '/jquery-ui-themes/themes/ui-lightness/images/ui-icons_ffffff_256x240.png'), to: blastImages}, ]) ], module: {