Fullstack Portal Created by the HCMR for the Marine Strategy Framework Directive Program in order to cover demands and aspects considering extendability and maintainability
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

177 lines
4.5 KiB

2 years ago
var print_template=0;
var print_code="";
var print_btn=[
{xtype: 'tbseparator'},
{
xtype:'button',
id:'print_btn',
iconCls:'maptab_toolbar_general_print',
tooltip:_maptab_toolbar_general_print,
text:_maptab_toolbar_general_print,
handler:function(){
var w=fn_print_window();
w.show();
}
}]
var print_tabpanel=[
{
xtype:'label',
text:_maptab_toolbar_general_print_layout
},
{
xtype:'combobox',
id:'print_choose_template',
store:new Ext.data.SimpleStore({
fields: ['index','template'],
data:[]
}),
editable:false,
queryMode: 'local',
displayField: 'template',
valueField: 'index',
forceSelection: true,
triggerAction: 'all',
selectOnFocus: false,
listeners:{
select:function(combo, record, eOpts)
{
var index = combo.getValue();
print_template=_config_print_layouts[index];
}
}
}]
init_onload_fn.push(init_print);
function init_print()
{
//Ext.getCmp("maptab_toolbar_north").add(print_btn);
var _layout_data=[];
Ext.getCmp("maptab_toolbar_print_tab").add(print_tabpanel);
Ext.getCmp("maptab_toolbar_print_tab").add(print_btn);
var i=0;
Ext.each(_config_print_layouts,function(item)
{
if (item._is_default)
{
Ext.getCmp("print_choose_template").emptyText=[item._print_identifier_title];
print_template=item;
}
_layout_data.push([i,item._print_identifier_title]);
i++;
});
Ext.getCmp("print_choose_template").getStore().loadData(_layout_data);
}
function fn_print()
{
var p=new fn_get();
p._async=true;
p._data=[{
_serviceType:"PRINTCLASS",
_html:print_code
}]
p._timeout=5000;
p._success=function(_response, _opts){
var _response=Ext.JSON.decode(_response.responseText)[0];
window.open(_response._response);
};
p.get();
print_code="";
}
function fn_print_window()
{
var _w_id = Ext.id();
var _url_print=host+"modules/print/print.html";
_url_print.replace('admin/','');
var _w=new Ext.Window({
width:800,
height:600,
id:_w_id,
closeAction:'destroy',
modal:false,
layout:'border',
resizable:{
listeners:{
resize:function()
{
Ext.getCmp('maptab_mapPanel').getEl().unmask();
Ext.get("print_frame_id").setHeight(Ext.getCmp(_w_id).getHeight()-60);
Ext.get("print_frame_id").setWidth(Ext.getCmp(_w_id).getWidth()-15);
},
beforeresize:function()
{
Ext.getCmp('maptab_mapPanel').getEl().mask().dom.style.zIndex = Ext.getCmp(_w_id).getEl().dom.style.zIndex;
}
}
},
minimizable:true,
constrain:true,
tbar:[{
xtype:'button',
iconCls:'maptab_toolbar_general_print',
tooltip:_maptab_toolbar_general_print,
handler:function(){
print_code=window.frames["print_frame"].createCode();
fn_print();
}
}],
listeners:{
destroy:function(){
Ext.getCmp('maptab_mapPanel').getEl().unmask();
},
show: function(window, eOpts) {
window.tools.restore.hide();
Ext.getCmp('maptab_mapPanel').getEl().unmask();
},
"minimize": function (window, opts) {
window.tools.restore.show();
window.tools.minimize.hide();
window.collapse();
Ext.getCmp('maptab_mapPanel').getEl().unmask();
},
},
tools: [{
type: 'restore',
handler: function (evt, toolEl, owner, tool) {
var window = owner.up('window');
window.tools.restore.hide();
window.tools.minimize.show();
window.expand('', false);
}
}],
html:"<iframe width='100%' height='800px' name=\"print_frame\" id=\"print_frame_id\" frameborder='0' src=" + _url_print + "></iframe>"
});
return _w;
}