X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=Pman.js;h=41bad06d3be441a81c615146db5db9abe41d49cb;hb=7e9cdd246cc8bba1ce46a4db263a0f49b7cbc5a0;hp=21966084dad4a66afafe644f0fb52b390c6ccd48;hpb=5e35829bc0469bb4a64412ed1e14820c6cac9208;p=Pman.Core diff --git a/Pman.js b/Pman.js index 21966084..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.. @@ -413,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(); @@ -556,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(',') }, @@ -615,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 }); @@ -661,6 +669,7 @@ Pman = new Roo.Document( scope: this }); + }, @@ -792,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(','); } @@ -808,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; @@ -831,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; } @@ -866,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.. * @@ -918,10 +956,10 @@ 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.el = this.layout;