/**
*
* generic person list - used by perms. and staff lists.
+ *
+ * -- this is probably depreciated now..
*
*/
{
center: {
- autoScroll:true,
+ autoScroll:false,
hideTabs: true
}
}
- this.tab = parentLayout.add(region, new Roo.NestedLayoutPanel(
- this.layout, {title: this.title, background: true, controller : this}));
+ this.tab = parentLayout.add(region,
+ new Roo.NestedLayoutPanel(
+ this.layout, {
+ title: this.title,
+ background: true,
+ controller : this
+ }));
this.tab.on('activate', function() {
_this.delayedCreate();
ds: new Roo.data.Store({
// load using HTTP
proxy: new Roo.data.HttpProxy({
- url: baseURL + '/Roo/Person.html',
+ url: baseURL + '/Roo/core_person',
method: 'GET'
}),
- reader: Pman.Readers.Person,
+ reader: new Roo.data.JsonReader({}, []),
remoteSort: true,
listeners : {
// only used to change active status.
new Pman.Request({
- url : baseURL + '/Roo/Person.php',
+ url : baseURL + '/Roo/core_person',
method :'POST',
params : {
id : record.data.id,
},
cellclick : function (_self, rowIndex, columnIndex, e)
- {
+ {
var di = this.colModel.getDataIndex(columnIndex);
if (di != 'active') {
return;
}
-
- var rec = _this.grid.ds.getAt(rowIndex);
+ var rec = _this.grid.ds.getAt(rowIndex);
+ var is_active = rec.data.active;
rec.set('active', rec.data.active ? 0 : 1);
rec.commit();
-
+ // only hide if viewing active members...
+ if (is_active) {
+ var el = Roo.select('.x-grid-row-selected').item(3);
+ el.addClass('x-grid-row-fadeout');
+ el.on('transitionend',function(){
+ _this.grid.ds.remove(rec);
+ },this,{single:true});
+ }
}
});
this.panel = this.layout.add('center', new Roo.GridPanel(this.grid , {
fitToframe: true,
- fitContainer: true,
+ fitContainer: true,
+ //background : false,
id: this.id,
title: this.title || "Staff",
controller : this
Roo.Ajax.request({
- url: baseURL + '/Roo/Person.html',
+ url: baseURL + '/Roo/core_person',
method: 'GET',
params: {
_toggleActive : r.join(',')
hidden : !Pman.hasPerm(_this.permName, 'D'),
icon: rootURL + '/Pman/templates/images/trash.gif',
handler : function(){
- Pman.genericDelete(_this, 'Person');
+ //Pman.genericDelete(_this, 'Person');
+
+ var rec = _this.grid.ds.getAt(_this.grid.selModel.last);
+
+ var rec_id = rec.id;
+
+ if (rec_id * 1 < 1) {
+ Roo.MessageBox.alert("Error", "Select row to delete");
+ return;
+ }
+
+ Roo.MessageBox.confirm(
+ "Confirm",
+ "Confirm Deletion of selected row (some rows can not be deleted if they are referenced elsewhere",
+ function(res) {
+ if(res != 'yes') {
+ return;
+ }
+ new Pman.Request({
+ method : 'POST',
+ url : baseURL + '/Roo/core_person',
+ params : {
+ _delete : rec_id
+ },
+ success : function() {
+ _this.paging.onClick('refresh');
+ //_this.grid.footer.onClick('refresh');
+ }
+ });
+ }
+ );
+
+
+
+
}
} ,
header : "Name",
dataIndex : 'name',
sortable : true,
+ renderer : function(v,p,r) {
+ if(r.data.active != 1){
+ return String.format('<div style="text-decoration:line-through">{0}</div>', v);
+ }
+ return String.format('{0}', v);
+ }
// width : 150
}, cfg);
},
+
+ c_group_membership : function(cfg) {
+ cfg = cfg || {};
+ return Roo.apply({
+ // id : (this.id + '-name').toLowerCase(),
+ header : "Group Membership",
+ dataIndex : 'member_of',
+ sortable : false,
+ renderer : function(v,p,r) {
+ if(r.data.active != 1){
+ return String.format('<div style="text-decoration:line-through">{0}</div>', v).split("\n").join("<br/>");
+ }
+ return String.format('{0}', v).split("\n").join("<br/>");
+ },
+ width : 150
+ }, cfg);
+ },
+
c_company_id_comptype : function(cfg) {
cfg = cfg || {};
return Roo.apply({