diff --git a/panoramix/__init__.py b/panoramix/__init__.py index ca909882ed7..02b4820ec5b 100644 --- a/panoramix/__init__.py +++ b/panoramix/__init__.py @@ -1,7 +1,8 @@ import logging import os -from flask import Flask +from flask import Flask, redirect from flask.ext.appbuilder import SQLA, AppBuilder, IndexView +from flask.ext.appbuilder.baseviews import expose from flask.ext.migrate import Migrate from panoramix import config @@ -20,7 +21,9 @@ migrate = Migrate(app, db, directory=APP_DIR + "/migrations") class MyIndexView(IndexView): - index_template = 'panoramix/featured_datasets.html' + @expose('/') + def index(self): + return redirect('/panoramix/featured') appbuilder = AppBuilder( app, db.session, diff --git a/panoramix/assets/html/featured.html b/panoramix/assets/html/featured.html new file mode 100644 index 00000000000..cd8b034a385 --- /dev/null +++ b/panoramix/assets/html/featured.html @@ -0,0 +1,45 @@ +{% extends "refactor/basic.html" %} +{% block body %} +
+
+

Featured Datasets

+
+
+ + + + + + + + + + + {% for dataset in featured_datasets %} + + + + + + + {% endfor %} + + +
+
+{% endblock %} + +{% block head_css %} +{{ super() }} + +{% endblock %} + +{% block tail_js %} + {{ super() }} + +{% endblock %} diff --git a/panoramix/assets/javascripts/featured.js b/panoramix/assets/javascripts/featured.js new file mode 100644 index 00000000000..c8e542c2076 --- /dev/null +++ b/panoramix/assets/javascripts/featured.js @@ -0,0 +1,14 @@ +var $ = window.$ = require('jquery'); +var jQuery = window.jQuery = $; +require('datatables'); +require('datatables-bootstrap3-plugin'); +require('bootstrap'); + +$(document).ready(function() { + $('#dataset-table').DataTable({ + "bPaginate": false, + "order": [[ 1, "asc" ]] + }); + $('#dataset-table_info').remove(); + $('#dataset-table').show(); +} ); diff --git a/panoramix/assets/javascripts/sql.js b/panoramix/assets/javascripts/sql.js index 508163fdf4f..ab238662948 100644 --- a/panoramix/assets/javascripts/sql.js +++ b/panoramix/assets/javascripts/sql.js @@ -2,6 +2,7 @@ var $ = window.$ = require('jquery'); var jQuery = window.jQuery = $; require('select2'); require('datatables'); +require('bootstrap'); var ace = require('brace'); require('brace/mode/sql'); diff --git a/panoramix/assets/package.json b/panoramix/assets/package.json index 627fec4bf52..6596847757e 100644 --- a/panoramix/assets/package.json +++ b/panoramix/assets/package.json @@ -46,6 +46,7 @@ "d3-tip": "^0.6.7", "d3.layout.cloud": "^1.2.0", "datatables": "^1.10.9", + "datatables-bootstrap3-plugin": "^0.4.0", "exports-loader": "^0.6.3", "font-awesome": "^4.5.0", "gridster": "^0.5.6", diff --git a/panoramix/assets/webpack.config.js b/panoramix/assets/webpack.config.js index a2d97f51efa..5aff4c3797e 100644 --- a/panoramix/assets/webpack.config.js +++ b/panoramix/assets/webpack.config.js @@ -10,6 +10,7 @@ var config = { //dashboard: APP_DIR + '/javascripts/dist/dashboard.js', explore: APP_DIR + '/javascripts/explore.js', sql: APP_DIR + '/javascripts/sql.js', + featured: APP_DIR + '/javascripts/featured.js', }, output: { path: BUILD_DIR, diff --git a/panoramix/templates/panoramix/featured_datasets.html b/panoramix/templates/panoramix/featured_datasets.html deleted file mode 100644 index 84731062775..00000000000 --- a/panoramix/templates/panoramix/featured_datasets.html +++ /dev/null @@ -1,54 +0,0 @@ -{% extends "panoramix/base.html" %} -{% block content %} -
-

Featured Datasets

-
-
- - - - - - - - - - - {% for dataset in featured_datasets %} - - - - - - - {% endfor %} - - -
-{% endblock %} - -{% block head_css %} -{{ super() }} - -{% endblock %} - -{% block tail_js %} -{{ super() }} - - - -{% endblock %} diff --git a/panoramix/views.py b/panoramix/views.py index 5c3d5764f33..f55bc378884 100644 --- a/panoramix/views.py +++ b/panoramix/views.py @@ -64,7 +64,7 @@ appbuilder.add_view_no_menu(TableColumnInlineView) appbuilder.add_link( "Featured Datasets", - href='/panoramix/featured_datasets', + href='/panoramix/featured', category='Sources', category_icon='fa-table', icon="fa-star") @@ -703,8 +703,8 @@ class Panoramix(BaseView): art=ascii_art.error), 500 @has_access - @expose("/featured_datasets", methods=['GET']) - def featured_datasets(self): + @expose("/featured", methods=['GET']) + def featured(self): session = db.session() datasets_sqla = ( session.query(models.SqlaTable) @@ -718,7 +718,7 @@ class Panoramix(BaseView): ) featured_datasets = datasets_sqla + datasets_druid return self.render_template( - 'panoramix/featured_datasets.html', + 'refactor/featured.html', featured_datasets=featured_datasets, utils=utils)