// Licensed Materials - Property of IBM // IBM Cognos Products: rs // (C) Copyright IBM Corp. 2015, 2020 // US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. define(['bi/glass/app/plugins/MenuActionInterface', 'bi/authoring/utils/rsOpenHelper'], function(MenuActionInterface, OpenHelper) { 'use strict'; var OutputMenu = MenuActionInterface.extend({ onSelectItem: function(context) { var v_sMenuItem = context.target.itemId; var v_oView = context.glassContext.currentAppView.currentContentView; console.log("rsAppOutputMenu.onSelectItem selected item " + v_sMenuItem); var v_oContent = context.glassContext.currentAppView.currentContentView; var v_oOutputLookup = context.glassContext.currentAppView.currentContentView.outputFormatLookup; var v_oReportProperties = v_oContent.reportProperties; switch( v_sMenuItem ) { case "com.ibm.bi.authoring.run": case "com.ibm.bi.classicviewer.run": OpenHelper.openView({ cmProperties: v_oReportProperties, actionId: "com.ibm.bi.authoring.run", glassContext: context.glassContext, runOptions: {format : (v_oView.cmProperties.format || v_oView.format), prompt : true} }) .catch( function(err){ console.log('rsAppOutputMenuActions.onSelectItem ... FAILED'); }) .done( function(result){ console.log('rsAppOutputMenuActions.onSelectItem ... succeeded'); }); break; default: var v_sPerspective = "classicviewer"; var v_oOutput; switch( v_sMenuItem ) { case "com.ibm.bi.authoring.outputHtml": case "com.ibm.bi.classicviewer.outputHtml": v_oOutput = v_oOutputLookup["HTML"]; if (v_oOutputLookup["HTML"].dataDescriptor.type == "interactive") { v_sPerspective = "authoring"; } break; case "com.ibm.bi.authoring.outputPdf": case "com.ibm.bi.classicviewer.outputPdf": // Viewing saved PDF always uses authoring perspective v_sPerspective = "authoring"; v_oOutput = v_oOutputLookup["PDF"]; break; case "com.ibm.bi.authoring.output_excel2007": case "com.ibm.bi.classicviewer.output_excel2007": v_oOutput = v_oOutputLookup["spreadsheetML"]; break; case "com.ibm.bi.authoring.output_excel2007data": case "com.ibm.bi.classicviewer.output_excel2007data": v_oOutput = v_oOutputLookup["xlsxData"]; break; case "com.ibm.bi.authoring.output_csv": case "com.ibm.bi.classicviewer.output_csv": v_oOutput = v_oOutputLookup["CSV"]; break; case "com.ibm.bi.authoring.output_xml": case "com.ibm.bi.classicviewer.output_xml": v_oOutput = v_oOutputLookup["XML"]; break; } var v_oContent = { reportProperties: v_oReportProperties, type: 'output', cmProperties : v_oOutput, outputFormatLookup : v_oOutputLookup, id: v_oOutput.id }; context.glassContext.openAppView(v_sPerspective , {content: v_oContent } ); break; } }, isItemVisible: function(context) { console.log("cvAppOutputMenu.isItemVisible"); var v_sMenuItem = context.target.itemId; var v_oOutputLookup = context.glassContext.currentAppView.currentContentView.outputFormatLookup; console.log("v_sMenuItem: " + v_sMenuItem); switch(v_sMenuItem) { case "com.ibm.bi.authoring.run": case "com.ibm.bi.classicviewer.run": return false; case "com.ibm.bi.authoring.outputHtml": case "com.ibm.bi.classicviewer.outputHtml": return v_oOutputLookup["HTML"] != undefined; case "com.ibm.bi.authoring.outputPdf": case "com.ibm.bi.classicviewer.outputPdf": return v_oOutputLookup["PDF"] != undefined; case "com.ibm.bi.authoring.output_excel2007": case "com.ibm.bi.classicviewer.output_excel2007": return v_oOutputLookup["spreadsheetML"] != undefined; case "com.ibm.bi.authoring.output_excel2007data": case "com.ibm.bi.classicviewer.output_excel2007data": return v_oOutputLookup["xlsxData"] != undefined; case "com.ibm.bi.authoring.output_csv": case "com.ibm.bi.classicviewer.output_csv": return v_oOutputLookup["CSV"] != undefined; case "com.ibm.bi.authoring.output_xml": case "com.ibm.bi.classicviewer.output_xml": return v_oOutputLookup["XML"] != undefined; default: return true; } } }); return OutputMenu; });