Modify edit release component to update the release without refreshing

feature/appm-store/pbac
Jayasanka 5 years ago
parent 70310c55fb
commit e07197743a

@ -11,23 +11,22 @@ const {Title, Text, Paragraph} = Typography;
class ReleaseView extends React.Component {
render() {
const {app, release} = this.props;
const config = this.props.context;
const app = this.props.app;
const release = (app !== null) ? app.applicationReleases[0] : null;
const {lifecycle, currentLifecycleStatus} = this.props;
if (release == null || lifecycle == null) {
return null;
}
const {isAppUpdatable, isAppInstallable} = lifecycle[currentLifecycleStatus];
console.log(isAppInstallable, isAppUpdatable);
const platform = app.deviceType;
const defaultPlatformIcons = config.defaultPlatformIcons;
let icon = defaultPlatformIcons.default.icon;
let color = defaultPlatformIcons.default.color;
let theme = defaultPlatformIcons.default.theme;
if (defaultPlatformIcons.hasOwnProperty(platform)) {
icon = defaultPlatformIcons[platform].icon;
color = defaultPlatformIcons[platform].color;

@ -94,10 +94,10 @@ class EditReleaseModal extends React.Component {
releaseDescription: {
value: release.description
},
price:{
price: {
value: release.price
},
isSharedWithAllTenants:{
isSharedWithAllTenants: {
value: release.isSharedWithAllTenants
}
});
@ -231,6 +231,9 @@ class EditReleaseModal extends React.Component {
data
).then(res => {
if (res.status === 200) {
const updatedRelease = res.data.data;
this.setState({
loading: false,
visible: false,
@ -241,10 +244,9 @@ class EditReleaseModal extends React.Component {
description:
"Saved!",
});
window.location.reload();
// console.log(updatedRelease);
this.props.updateRelease(updatedRelease);
}
}).catch((error) => {
if (error.hasOwnProperty("response") && error.response.status === 401) {
window.location.href = window.location.origin + '/publisher/login';

@ -8,8 +8,6 @@ import {withConfigContext} from "../../../../context/ConfigContext";
const {Title} = Typography;
class Release extends React.Component {
routes;
@ -38,13 +36,13 @@ class Release extends React.Component {
}
}
changeCurrentLifecycleStatus = (status) =>{
changeCurrentLifecycleStatus = (status) => {
this.setState({
currentLifecycleStatus: status
});
};
updateRelease = (release) =>{
updateRelease = (release) => {
this.setState({
release
});
@ -55,12 +53,12 @@ class Release extends React.Component {
//send request to the invoker
axios.get(
window.location.origin+ config.serverConfig.invoker.uri + config.serverConfig.invoker.publisher + "/applications/release/"+ uuid,
window.location.origin + config.serverConfig.invoker.uri + config.serverConfig.invoker.publisher + "/applications/release/" + uuid,
).then(res => {
if (res.status === 200) {
const app = res.data.data;
const release = (app !== null) ? app.applicationReleases[0] : null;
const currentLifecycleStatus = (release!==null) ? release.currentStatus : null;
const currentLifecycleStatus = (release !== null) ? release.currentStatus : null;
this.setState({
app: app,
release: release,
@ -74,7 +72,7 @@ class Release extends React.Component {
if (error.hasOwnProperty("response") && error.response.status === 401) {
//todo display a popop with error
message.error('You are not logged in');
window.location.href = window.location.origin+ '/publisher/login';
window.location.href = window.location.origin + '/publisher/login';
} else {
notification["error"]({
message: "There was a problem",
@ -92,7 +90,7 @@ class Release extends React.Component {
getLifecycle = () => {
const config = this.props.context;
axios.get(
window.location.origin+ config.serverConfig.invoker.uri + config.serverConfig.invoker.publisher + "/applications/lifecycle-config"
window.location.origin + config.serverConfig.invoker.uri + config.serverConfig.invoker.publisher + "/applications/lifecycle-config"
).then(res => {
if (res.status === 200) {
const lifecycle = res.data.data;
@ -103,7 +101,7 @@ class Release extends React.Component {
}).catch(function (error) {
if (error.hasOwnProperty("response") && error.response.status === 401) {
window.location.href = window.location.origin+ '/publisher/login';
window.location.href = window.location.origin + '/publisher/login';
} else {
notification["error"]({
message: "There was a problem",
@ -135,8 +133,9 @@ class Release extends React.Component {
<Card>
<ReleaseView
app={app}
release={release}
currentLifecycleStatus={currentLifecycleStatus}
lifecycle ={lifecycle}
lifecycle={lifecycle}
updateRelease={this.updateRelease}
/>
</Card>
@ -147,7 +146,7 @@ class Release extends React.Component {
uuid={release.uuid}
currentStatus={release.currentStatus.toUpperCase()}
changeCurrentLifecycleStatus={this.changeCurrentLifecycleStatus}
lifecycle ={lifecycle}
lifecycle={lifecycle}
/>
</Card>
</Col>

Loading…
Cancel
Save