/* * Copyright 2007-2017 Charles du Jeu - Abstrium SAS * This file is part of Pydio. * * Pydio is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * Pydio is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with Pydio. If not, see . * * The latest code can be found at . */ 'use strict'; exports.__esModule = true; var React = require('react'); var PathUtils = require('pydio/util/path'); exports['default'] = { propTypes: { attributes: React.PropTypes.object.isRequired, applyButtonAction: React.PropTypes.func, actionCallback: React.PropTypes.func }, applyAction: function applyAction(callback) { var choicesValue = this.props.attributes['choices'].split(":"); var firstPart = choicesValue.shift(); if (firstPart === "run_client_action" && global.pydio) { global.pydio.getController().fireAction(choicesValue.shift()); return; } if (this.props.applyButtonAction) { var parameters = { get_action: firstPart }; if (choicesValue.length > 1) { parameters['action_plugin_id'] = choicesValue.shift(); parameters['action_plugin_method'] = choicesValue.shift(); } if (this.props.attributes['name'].indexOf("/") !== -1) { parameters['button_key'] = PathUtils.getDirname(this.props.attributes['name']); } this.props.applyButtonAction(parameters, callback); } } }; module.exports = exports['default'];