12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- "use strict";
- /**
- * Licensed Materials - Property of IBM
- * IBM Cognos Products: Cognos Analytics
- * Copyright IBM Corp. 2018
- * US Government Users Restricted Rights -
- * Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
- */
- define(['underscore', 'doT', 'bi/glass/app/ContentView', 'bi/admin/nls/StringResource', 'text!bi/admin/system/templates/PalettesTabTemplate.html', 'react-dom', 'react', 'bi/commons/ui/properties/PropertyUIControl', 'authoring-common'], function (_, dot, BasePane, StringResource, template, ReactDOM, React, PropertyUIControl, authoring) {
- 'use strict'; //NOSONAR: meant to be strict
- var PalettesTab = BasePane.extend({
- init: function init(options) {
- PalettesTab.inherited('init', this, arguments);
- _.extend(this, options);
- },
- _getPublicPalettes: function _getPublicPalettes() {
- return this.glassContext.getSvc('.Palette').then(function (svc) {
- return svc;
- }).then(function (svc) {
- return svc.getPublicPalettes();
- }).then(function (response) {
- return {
- public: response
- };
- });
- },
- _addCreatePaletteHandler: function _addCreatePaletteHandler() {
- var divForPaletteWidget = $("<div>");
- divForPaletteWidget.addClass("createPaletteHook");
- this.$el.append(divForPaletteWidget);
- this.$el.find('.bi-admin-create-global-palette').on("primaryaction", function () {
- this.newPaletteWidget = React.createElement(authoring.CustomPalette, {
- glassContext: this.glassContext,
- userClass: 'admin',
- type: 'global',
- removeDialog: function removeDialog() {
- ReactDOM.unmountComponentAtNode(divForPaletteWidget[0]);
- }
- });
- ReactDOM.render(this.newPaletteWidget, this.$el.find('.createPaletteHook')[0], function () {
- this.openDialog();
- });
- }.bind(this));
- },
- _createChangePaletteView: function _createChangePaletteView(spec) {
- return new authoring.ChangePaletteView(spec);
- },
- render: function render($body) {
- this.$el.html(dot.template(template)({
- 'title': StringResource.get('global'),
- 'createGlobalPaletteLabel': StringResource.get('createGlobalPaletteLabel')
- }));
- this._addCreatePaletteHandler();
- this._changePaletteView = this._createChangePaletteView({
- 'el': this.$el.find('.bi-admin-palettes-content'),
- 'name': 'customPalettes',
- 'glassContext': this.glassContext,
- 'showHeader': false,
- 'useSections': false,
- 'getPalettes': this._getPublicPalettes,
- 'showRecentlyUsed': false,
- 'isAdminUI': true,
- 'menuItems': {
- 'public': ['edit', 'duplicate', 'delete']
- }
- });
- return this._changePaletteView.render();
- }
- });
- return PalettesTab;
- });
|