4 * This is the main Pman class [for bootstrap]
6 * In theory it's lighter than the original, as no BC concerns..
16 Pman = new Roo.Document(
19 // Tab not needed, as that's now our top level UI element..
23 rightNames: { }, /// register right names here - so they can be translated and rendered.
25 * @property {Roo.menu.Menu} pulldownMenu - the 'add menu pulldown, you can use it to add items..
31 buildCompleted : false, // flag to say if we are building interface..
33 'beforeload' : true, // fired after page ready, before module building.
34 'load' : true, // fired after module building
35 'authrefreshed' : true // fire on auth updated?? - should be on Login?!?!?
38 onBuildComplete : function ()
41 this.building = false;
42 //this.layout.getRegion('center').showPanel(0);
43 //this.layout.endUpdate();
44 //this.addTopToolbar();
46 this.fireEvent('load',this);
55 // kludge to fix firebug debugger
56 if (typeof(console) == 'undefined') {
57 console = { log : function() { } };
61 if (Roo.get('loading')) {
62 Roo.get('loading').remove();
65 Roo.state.Manager.setProvider(new Roo.state.CookieProvider());
66 Roo.bootstrap.Tooltip.init();
71 if (showNewPass.length) {
72 Pman.PasswordChange.show( { passwordReset : showNewPass },
74 // fail and success we do a load...
86 if (Roo.get('loading-logo-tile')) {
87 Roo.get('loading-logo-tile').remove();
89 if (Roo.get('loading-logo-tile-top')) {
90 Roo.get('loading-logo-tile-top').remove();
92 if (Roo.get('loading-logo-bottom')) {
93 Roo.get('loading-logo-bottom').remove();
95 if (Roo.get('loading-logo-center')) {
96 Roo.get('loading-logo-center').remove();
101 loadUserInterface : function()
104 if (this.buildCompleted) { // it get's called from auth checking.. no need to build again..
107 // triggers after authentication verified...
109 if (Roo.get('loading')) {
110 Roo.get('loading').remove();
112 if (Roo.get('loading-mask')) {
113 Roo.get('loading-mask').show();
115 var au = Pman.Login.authUser;
116 document.title = appName + ' v' + AppVersion + ' - ' + au.company_id_name;
124 Pman.building = true;
126 Roo.XComponent.on('buildcomplete', this.onBuildComplete, this);
127 Roo.XComponent.build();
132 finalize : function() {
136 window.onbeforeunload = function(e) {
137 e = e || window.event;
138 var r = "Closing this window will loose changes, are you sure you want to do that?";
140 // For IE and Firefox
150 Roo.bootstrap.MessageBox.hide();
152 if (Roo.get('loading-mask')) {
153 Roo.get('loading-mask').remove();
157 this.buildCompleted = true; // now we can force refreshes on everything..
160 // does the URL indicate we want to see a system..
168 genericDelete : function(tab,tbl) {
173 var s = tab.grid.selModel.getSelections();
175 Roo.MessageBox.alert("Error", "Select at least one Row to delete" );
178 //var reader = tab.grid.reader || tab.grid.ds.reader;
179 for(var i = 0; i < s.length; i++) {
180 r.push(s[i].json.id);
183 Roo.MessageBox.confirm("Confirm", "Are you sure you want to delete that?",
188 //tab.grid.mask("Deleting");
190 url: baseURL + '/Roo/'+tbl+'.php',
194 _delete : r.join(',')
196 success: function(response) {
199 tab.paging.onClick('refresh');
200 } else if (tab.grid.footer && tab.grid.footer.onClick) {
201 // new xtype built grids
202 tab.grid.footer.onClick('refresh');
203 } else if (tab.refresh) {
204 tab.refresh(); // this might cause problems as panels have a refresh method?
206 tab.grid.store.load();
212 failure: function(act) {
218 msg = "Error deleting";
221 Roo.MessageBox.alert("Error", msg);