diff --git a/synapse_topology/webui/src/js/components/CompleteSetup.jsx b/synapse_topology/webui/src/js/components/CompleteSetup.jsx
index 3fe53c10be..33512e902b 100644
--- a/synapse_topology/webui/src/js/components/CompleteSetup.jsx
+++ b/synapse_topology/webui/src/js/components/CompleteSetup.jsx
@@ -16,17 +16,21 @@ export default ({
onClick,
}) => {
+ const [revProxyDownloaded, setRevProxyDownloaded] = useState(false);
+ const [delegationDownloaded, setDelegationDownloaded] = useState(false);
const revProxyBody = <Card.Body>
- <ReverseProxySampleConfig />
+ <ReverseProxySampleConfig onClick={() => setRevProxyDownloaded(true)} />
<button
+ disabled={!revProxyDownloaded}
onClick={() => setBody(body + 1)}
>Next</button>
</Card.Body >
const delegationBody = <Card.Body>
- <DelegationSampleConfig />
+ <DelegationSampleConfig onClick={() => setDelegationDownloaded(true)} />
<button
+ disabled={!delegationDownloaded}
onClick={() => setBody(body + 1)}
>Next</button>
</Card.Body>
diff --git a/synapse_topology/webui/src/js/components/DelegationSampleConfig.jsx b/synapse_topology/webui/src/js/components/DelegationSampleConfig.jsx
index c58132e75a..6013246464 100644
--- a/synapse_topology/webui/src/js/components/DelegationSampleConfig.jsx
+++ b/synapse_topology/webui/src/js/components/DelegationSampleConfig.jsx
@@ -28,7 +28,7 @@ export default ({
{clientConfig}
</code>
</pre>
- <DownloadOrCopy content={clientConfig} fileName={clientConfigFileName} />
+ <DownloadOrCopy content={clientConfig} fileName={clientConfigFileName} onClick={onClick} />
</ContentWrapper>
} else {
@@ -46,7 +46,7 @@ export default ({
{serverConfig}
</code>
</pre>
- <DownloadOrCopy content={serverConfig} fileName={serverConfigFileName} />
+ <DownloadOrCopy content={serverConfig} fileName={serverConfigFileName} onClick={onClick} />
<p>
You'll also need to host the following at https://{serverName}/.well-known/matrix/client
</p>
@@ -55,7 +55,7 @@ export default ({
{clientConfig}
</code>
</pre>
- <DownloadOrCopy content={clientConfig} fileName={clientConfigFileName} />
+ <DownloadOrCopy content={clientConfig} fileName={clientConfigFileName} onClick={onClick} />
</ContentWrapper>;
}
diff --git a/synapse_topology/webui/src/js/components/ReverseProxySampleConfig.jsx b/synapse_topology/webui/src/js/components/ReverseProxySampleConfig.jsx
index 155ead0bf0..034b79f388 100644
--- a/synapse_topology/webui/src/js/components/ReverseProxySampleConfig.jsx
+++ b/synapse_topology/webui/src/js/components/ReverseProxySampleConfig.jsx
@@ -5,7 +5,7 @@ import ButtonDisplay from './ButtonDisplay';
import DownloadOrCopy from './DownloadOrCopy';
import { REVERSE_PROXY_TYPES } from '../actions/constants';
-export default ({ proxyType, sampleConfig, fileName }) => {
+export default ({ proxyType, sampleConfig, fileName, onClick }) => {
return <ContentWrapper>
<h1>Configure the ReverseProxy</h1>
@@ -30,7 +30,7 @@ export default ({ proxyType, sampleConfig, fileName }) => {
{sampleConfig}
</code>
</pre>
- <DownloadOrCopy content={sampleConfig} fileName={fileName} />
+ <DownloadOrCopy content={sampleConfig} fileName={fileName} onClick={onClick} />
</ContentWrapper>;
}
\ No newline at end of file
diff --git a/synapse_topology/webui/src/js/containers/DelegationSampleConfig.js b/synapse_topology/webui/src/js/containers/DelegationSampleConfig.js
index 430475d0f8..296751d610 100644
--- a/synapse_topology/webui/src/js/containers/DelegationSampleConfig.js
+++ b/synapse_topology/webui/src/js/containers/DelegationSampleConfig.js
@@ -64,8 +64,8 @@ const mapStateToProps = state => ({
serverName: state.baseConfig.servername,
});
-const mapDispatchToProps = dispatch => ({
- onClick: () => dispatch(advanceUI()),
+const mapDispatchToProps = (dispatch, { onClick }) => ({
+ onClick,
});
export default connect(
diff --git a/synapse_topology/webui/src/js/containers/ReverseProxySampleConfig.js b/synapse_topology/webui/src/js/containers/ReverseProxySampleConfig.js
index 694e298682..965fe46443 100644
--- a/synapse_topology/webui/src/js/containers/ReverseProxySampleConfig.js
+++ b/synapse_topology/webui/src/js/containers/ReverseProxySampleConfig.js
@@ -47,8 +47,8 @@ const mapStateToProps = state => ({
fileName: "synapse_reverse_proxy.conf",
});
-const mapDispatchToProps = dispatch => ({
- onClick: () => dispatch(advanceUI()),
+const mapDispatchToProps = (dispatch, { onClick }) => ({
+ onClick,
});
export default connect(
|