saiku-ui下的/saiku-ui/js/saiku/models/SessionWorkspace.js
此文件为初始化工作区的前端代码:
process_datasources 方法下
将Saiku.tab.add(new 。。。) 注释掉 改为$("#open_query).click(),这样每次刷新或登录后,默认打开的就是"打开查询"的tab页了
去掉“打开查询的”上下问菜单Tab.js,让此tab不能被关闭
menuitems中,可以增加自己的上下文,也可以去掉上下文,Saiku.session.isAdmin 为如果是管理员
template: function() {
// Create tab
return _.template("<a class='saikutab i18n' href='#<%= id %>'><%= caption %></a>" + (this.caption != 'Repository' ? "<span class='close_tab sprite'>Close tab</span>" : "<span class='sprite'> </span>"))
({
id: this.id,
caption: this.caption
});
},
此段代码判断了当前tab 的caption是否是Repository,如果是,则不显示Close tab,否则显示
index.html中;
打开查询的展开全部节点:
class="sprite folder" 为文件夹的样式,去掉collapsed 样式
class="hide folder_content" 去掉hide样式,
这样每次打开都是默认展开节点
var TabSet = Backbone.View.extend({
className: 'tabs',
queryCount: 0,
dashCount: 0,
events: {
'click a.pager': 'togglePager' ,
'click a.new' : 'new_tab'
},
_tabs: [],
/**
* Render the tab containers
* @returns tab_container
*/
render: function() {
/*$(this.el).html('<a href="#pager" class="pager sprite"></a><ul><li class="newtab"><a class="new">+ </a></li></ul>')
.appendTo($('#header'));*/
$(this.el).html('<ul><li class="newtab"><a class="new">+ </a></li></ul>')
.appendTo($('#header'));
this.content = $('<div id="tab_panel">').appendTo($('body'));
this.pager = new TabPager({ tabset: this });
return this;
},
将
<a href="#pager" class="pager sprite"></a>
此标签删除掉。