CEC-4126-update-manifest-migrate-button (#320)
* CEC-4126-update-manifest-migrate-button * remove comment --------- Co-authored-by: John Wu <76966357+jwu-fisker@users.noreply.github.com>
This commit is contained in:
@@ -7,6 +7,8 @@ import { ManifestsProvider, useManifestsContext } from "../../Contexts/Manifests
|
||||
import { useStatusContext } from "../../Contexts/StatusContext";
|
||||
import { useUserContext } from "../../Contexts/UserContext";
|
||||
import { DropDownList } from "../../Controls/DropDownList";
|
||||
import { RoleWrap } from "../../Controls/RoleWrap";
|
||||
import { Permissions } from "../../../utils/roles";
|
||||
import useStyles from "../../useStyles";
|
||||
|
||||
const manifestTypes = [
|
||||
@@ -37,11 +39,13 @@ const MainForm = () => {
|
||||
const [manifest, setManifest] = useState(null);
|
||||
const [redirect, setRedirect] = useState(null);
|
||||
|
||||
const { getManifest, busy, updateManifest } = useManifestsContext();
|
||||
const { getManifest, busy, migrateManifest, updateManifest } = useManifestsContext();
|
||||
const {
|
||||
token: {
|
||||
idToken: { jwtToken: token },
|
||||
},
|
||||
groups,
|
||||
providers,
|
||||
} = useUserContext();
|
||||
|
||||
const { setMessage, setTitle, setSitePath } = useStatusContext();
|
||||
@@ -86,6 +90,17 @@ const MainForm = () => {
|
||||
}
|
||||
}
|
||||
|
||||
const manifestMigrate = async (e) => {
|
||||
e.preventDefault();
|
||||
try{
|
||||
const result = await migrateManifest(manifest_id, token)
|
||||
if (!result || result.error) return;
|
||||
setMessage(`Manifest Migrated ${manifest_id}`)
|
||||
} catch(e) {
|
||||
setMessage(`Failed to update manifest ${manifest_id}`)
|
||||
}
|
||||
}
|
||||
|
||||
useEffect(() => {
|
||||
(async () => {
|
||||
try {
|
||||
@@ -179,6 +194,24 @@ const MainForm = () => {
|
||||
>
|
||||
{busy ? "Updating..." : "Update"}
|
||||
</Button>
|
||||
<RoleWrap
|
||||
groups={groups}
|
||||
providers={providers}
|
||||
rolesPerProvider={Permissions.ManifestMigration}
|
||||
>
|
||||
<Button
|
||||
type="button"
|
||||
aria-label="migrate manifest"
|
||||
disabled={busy || manifest == null}
|
||||
fullWidth
|
||||
variant="contained"
|
||||
color="secondary"
|
||||
className={classes.submit}
|
||||
onClick={manifestMigrate}
|
||||
>
|
||||
{busy ? "Migrating..." : "Migrate"}
|
||||
</Button>
|
||||
</RoleWrap>
|
||||
|
||||
</FormControl>
|
||||
</div>
|
||||
@@ -191,4 +224,4 @@ const ManifestUpdate = () => (
|
||||
</ManifestsProvider>
|
||||
);
|
||||
|
||||
export default ManifestUpdate;
|
||||
export default ManifestUpdate;
|
||||
|
||||
Reference in New Issue
Block a user