BUG 9626 Simple Reports Permissions SOLVED

- According to the specifications.
- Was add the list for add/remove permissions.
This commit is contained in:
Marco Antonio Nina
2012-09-07 16:15:56 -04:00
parent 820deb7d7a
commit 06b44cd6d5
2 changed files with 64 additions and 30 deletions

View File

@@ -169,10 +169,27 @@ class pmTables extends Controller
break;
}
}
return $repTabPluginPermissions;
}
/**
* reportPermissionForm pmtable
* @param string $httpData->ADD_TAB_UID
* @param string $httpData->ADD_TAB_NAME
*/
public function rptPermissionList($httpData)
{
$this->setJSVar('ADD_TAB_NAME', $httpData->ADD_TAB_NAME);
$this->setJSVar('ADD_TAB_UID', $httpData->ADD_TAB_UID);
$this->setJSVar('PRO_UID', $httpData->PRO_UID);
$this->includeExtJS('pmReports/rptPermissionList', false);
$this->includeExtJS('pmReports/reportPermissionForm', false);
$this->setView('pmReports/reportPermissionForm');
$this->setView('pmReports/rptPermissionList');
G::RenderPage('publish', 'extJs');
}
}

View File

@@ -15,6 +15,7 @@ var smodel;
var rowsSelected;
var importOption;
var externalOption;
var externalPermissions;
var currentSelectedRow = -1;
Ext.onReady(function(){
@@ -115,15 +116,25 @@ Ext.onReady(function(){
contextMenuItems.push(exportButton);
if (_PLUGIN_SIMPLEREPORTS !== false) {
externalOption = new Ext.Action({
text:'',
handler: function() {
updateTag('plugin@simplereport');
},
disabled: false
});
contextMenuItems.push(externalOption);
externalOption = new Ext.Action({
text:'',
iconCls: 'x-btn-text button_menu_ext ss_sprite ss_report_picture',
handler: function() {
updateTag('plugin@simplereport');
},
disabled: false
});
externalPermissions = new Ext.Action({
text: _('ID_PERMISSIONS'),
iconCls: 'x-btn-text button_menu_ext ss_sprite ss_key_add',
handler: function() {
updateTagPermissions('plugin@simplereport');
},
disabled: false
});
contextMenuItems.push('-');
contextMenuItems.push(externalOption);
contextMenuItems.push(externalPermissions);
}
contextMenu = new Ext.menu.Menu({
@@ -343,28 +354,30 @@ Ext.onReady(function(){
})
});
infoGrid.on('rowcontextmenu',
function (grid, rowIndex, evt) {
var sm = grid.getSelectionModel();
sm.selectRow(rowIndex, sm.isSelected(rowIndex));
infoGrid.on('rowcontextmenu', function (grid, rowIndex, evt) {
var sm = grid.getSelectionModel();
sm.selectRow(rowIndex, sm.isSelected(rowIndex));
var rowsSelected = Ext.getCmp('infoGrid').getSelectionModel().getSelections();
tag = rowsSelected[0].get('ADD_TAB_TAG');
text = (tag) ? _('ID_CONVERT_NATIVE_REP_TABLE') : _('ID_CONVERT_SIMPLE_REPORT');
var rowsSelected = Ext.getCmp('infoGrid').getSelectionModel().getSelections();
if (externalOption) {
if (externalOption) {
tag = rowsSelected[0].get('ADD_TAB_TAG');
if (tag) {
text = _('ID_CONVERT_NATIVE_REP_TABLE');
externalPermissions.setDisabled(false);
} else {
text = _('ID_CONVERT_SIMPLE_REPORT');
externalPermissions.setDisabled(true);
}
externalOption.setText(text);
if (rowsSelected[0].get('PRO_UID')) {
externalOption.setDisabled(false);
externalOption.setDisabled(false);
} else {
externalOption.setDisabled(true);
externalOption.setDisabled(true);
}
externalOption.setHidden((rowsSelected[0].get("TYPE") != "CLASSIC" && rowsSelected[0].get("DBS_UID") == "workflow")? false : true);
}
},
this
);
}
},this);
infoGrid.on('contextmenu', function(evt){evt.preventDefault();}, this);
infoGrid.addListener('rowcontextmenu',onMessageContextMenu, this);
@@ -515,10 +528,6 @@ ImportPMTable = function(){
fieldLabel: '',
boxLabel: _('ID_OVERWRITE_EXIST'), // 'Overwrite if exists?',
name: 'form[OVERWRITE]'
}, {
xtype: "hidden",
name: "form[PRO_UID]",
value: (typeof PRO_UID == "string" && PRO_UID != "")? PRO_UID : ""
}],
buttons: [{
text: _('ID_UPLOAD'),
@@ -696,6 +705,14 @@ function updateTag(value)
});
}
function updateTagPermissions(){
var rowsSelected = Ext.getCmp('infoGrid').getSelectionModel().getSelections();
if (rowsSelected){
console.info(rowsSelected);
location.href = 'pmTables/rptPermissionList?ADD_TAB_NAME='+ rowsSelected[0].get('ADD_TAB_NAME') +'&ADD_TAB_UID='+ rowsSelected[0].get('ADD_TAB_UID')+'&PRO_UID='+PRO_UID;
}
};
function PopupCenter(pageURL, title,w,h) {
var left = (Ext.getBody().getViewSize().width/3);
var top = (Ext.getBody().getViewSize().height/3);