X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=Pman.js;h=41bad06d3be441a81c615146db5db9abe41d49cb;hb=7e9cdd246cc8bba1ce46a4db263a0f49b7cbc5a0;hp=44dde9372f52d7d18d44ca09125648069dde34c6;hpb=5337c5581829b0a06c19140a0e58d1375674308a;p=Pman.Core diff --git a/Pman.js b/Pman.js index 44dde937..41bad06d 100644 --- a/Pman.js +++ b/Pman.js @@ -19,7 +19,9 @@ if (typeof(_T) == 'undefined') { _T={};} -Roo.XComponent.on('register', function(e) { return Pman.xregister(e); }); +Roo.XComponent.on('register', function(e) { if (typeof(Pman) != 'undefined') { return Pman.xregister(e); } return true; }); +Roo.XComponent.on('beforebuild', function(e) { if (typeof(Pman) != 'undefined') { return Pman.xbeforebuild(e); } return true; }); + Roo.XComponent.on('buildComplete', function() { @@ -116,7 +118,7 @@ Pman = new Roo.Document( }, - fakeRoot : { + fakeRoot : new Roo.XComponent( { modKey : '000', module : 'Pman', region : 'center', @@ -124,8 +126,9 @@ Pman = new Roo.Document( isTop : true, name : "Pman Base", disabled : false, - permname: '' - }, + permname: '' , + render : function (el) { this.el = this.layout; } + }), layout: false, @@ -173,13 +176,14 @@ Pman = new Roo.Document( } }); - - + this.fakeRoot.layout = this.layout; + /* Pman.register( Roo.apply(this.fakeRoot, { layout : this.layout } ) ); + */ // creates all the modules ready to load.. @@ -219,10 +223,8 @@ Pman = new Roo.Document( this.layout.beginUpdate(); Pman.building = true; - - this.buildModules(this, - - ); + Roo.XComponent.build(); + @@ -415,13 +417,14 @@ Pman = new Roo.Document( onLoadTrackCall : function(id,cb, cls) { Roo.get(document.body).mask("Loading Document details"); - Pman.request({ + new Pman.Request({ url: baseURL + '/Roo/Documents.html', params: { _id: id }, method: 'GET', - success : function(data) { + success : function(res) { + var data = res.data; Roo.get(document.body).unmask(); @@ -558,9 +561,9 @@ Pman = new Roo.Document( } // what about the toolbar?? tab.grid.getView().mainWrap.mask("Deleting"); - Pman.request({ + new Pman.Request({ url: baseURL + '/Roo/'+tbl+'.php', - method: 'GET', + method: 'POST', params: { _delete : r.join(',') }, @@ -617,10 +620,13 @@ Pman = new Roo.Document( }, /** * Depreciated - USE new Pman.Request - * + * We need to replace all the uses with this, however the api is slightly different, + * the success argument is res.data, not res.. * */ request : function(c) { + //return new Pman.Request(c); + var r= new Roo.data.Connection({ timeout : typeof(c.timeout) == 'undefined' ? 30000 : c.timeout }); @@ -663,6 +669,7 @@ Pman = new Roo.Document( scope: this }); + }, @@ -794,8 +801,8 @@ Pman = new Roo.Document( { // work out owner.. - if (!this.appModules === false) { - this.appModules = typeof(AppModules ) == 'undefined'? [] : + if (!Pman.appModules === false) { + Pman.appModules = typeof(AppModules ) == 'undefined'? [] : AppModules.split(','); } @@ -810,20 +817,13 @@ Pman = new Roo.Document( // previously we did not a good naming policy for module and parts // most things that are called module here, really are 'parts' // new versions should have 'part' as [ module : part ] - - - if (typeof(obj.part) != 'undefined') { - + if (typeof(obj.part) != 'undefined') { + var permname = obj.part.join('.'); // we now have permission... // obj.moduleOwner '.' lname - - if (this.hasPermExists(permname) && !this.hasPerm(permname,'S')) { - // it's a turned off permission... - Roo.log(permname + " is Disabled for this user"); - obj.disabled = true; - return; - } + + if (appDisabled.indexOf(permname) > -1) { Roo.log(permname + " is Disabled for this site"); obj.disabled = true; @@ -833,13 +833,16 @@ Pman = new Roo.Document( } + + if ( obj.isTop) { // false parent... use it.. return; } - if (obj.parent === Pman) { + if (obj.parent === Pman || obj.parent == 'Pman') { + Roo.log("PARENT OF : " + obj.name + " replacing with fake"); obj.parent = Pman.fakeRoot; } @@ -868,6 +871,39 @@ Pman = new Roo.Document( }, + /** + * fired before building on each compoenent + * used to apply permissions. + */ + + xbeforebuild : function(obj) + { + if (typeof(obj.part) != 'undefined') { + + if (!obj.part[1].length) { + obj.part[1] = obj.part[0]; + } + var permname = obj.part.join('.'); + + Roo.log("CHECKING: "+ permname); + + // we now have permission... + // obj.moduleOwner '.' lname + + if (Pman.hasPermExists(permname) && !Pman.hasPerm(permname,'S')) { + // it's a turned off permission... + Roo.log(permname + " is Disabled for this user"); + obj.disabled = true; + return; + } + + + + } + + + }, + /** * DEPRICATED : use Roo.XComponents now.. * @@ -920,12 +956,15 @@ Pman = new Roo.Document( // honour DEPRICATED permname setings.. // new code should use PART name, and matching permissions. if (this.permname && this.permname.length) { - if (Pman.hasPerm(this.permname, 'S')) { - this.add(this.parent.layout, this.region); + if (!Pman.hasPerm(this.permname, 'S')) { + return; } - return; + } - this.add(this.parent.layout, this.region); + this.add(this.parent.layout, this.region); + this.el = this.layout; + + }; // map some of the standard properties.. @@ -942,121 +981,8 @@ Pman = new Roo.Document( // this will call xregister as it's the on.register handler.. Roo.XComponent.register(obj.isTop ? obj : Roo.apply(obj.module, obj)); - /* - - - if (obj.disabled) { - return; - } - if (!obj.parent.modules) { - obj.parent.modules = new Roo.util.MixedCollection(false, function(o) { return o.modKey }); - } - - obj.parent.modules.add(obj); - */ - }, - - - buildModules : function(parent, onComplete) - { - Roo.XComponent.build(); - /* - var _this = this; - var cmp = function(a,b) { - return String(a).toUpperCase() > String(b).toUpperCase() ? 1 : -1; - - }; - if (!parent.modules) { - return; - } - parent.modules.keySort('ASC', cmp ); - var mods = []; - - - // add modules to their parents.. - var addMod = function(m) { - // console.log(m.modKey); - - mods.push(m); - if (m.module.modules) { - m.module.modules.keySort('ASC', cmp ); - m.module.modules.each(addMod); - } - if (m.finalize) { - m.finalize.name = m.name + " (clean up) "; - mods.push(m.finalize); - } - - } - - parent.modules.each(addMod); - //this.allmods = mods; - //console.log(mods); - //return; - if (!mods.length) { - if (onComplete) onComplete(); - return; - } - // flash it up as modal - so we store the mask!? - Roo.MessageBox.show({ title: 'loading' }); - Roo.MessageBox.show({ - title: "Please wait...", - msg: "Building Interface...", - width:450, - progress:true, - closable:false, - modal: false - - }); - var n = 0; - var progressRun = function() { - - var mod = mods[n]; - - - Roo.MessageBox.updateProgress( - (n+1)/mods.length, "Building Interface " + (n+1) + - " of " + mods.length + - (mod.name ? (' - ' + mod.name) : '') - ); - - - - if (typeof(mod) == 'function') { - mod(); - - } else if (typeof(mod.region) == 'undefined') { - Roo.log("Module does not have region defined, skipping"); - Roo.log(mod); - - } else if (mod.parent.layout && !mod.module.disabled) { - // honour permname setings.. - if (mod.permname && mod.permname.length) { - if (Pman.hasPerm(mod.permname, 'S')) { - mod.module.add(mod.parent.layout, mod.region); - } - } else { - mod.module.add(mod.parent.layout, mod.region); - } - } - - - n++; - if (n >= mods.length) { - onComplete(); - return; - } - - - progressRun.defer(10, Pman); - } - progressRun.defer(1, Pman); - */ - - - }, - + } , invertColor : function(c) { // read..