code-snippets
/
js
/
components
/
EditMenu
/
EditorSidebar
/
controls
/
MultisiteSharingSettings.tsx
MultisiteSharingSettings.tsx in Code Snippets 3.10.0-beta.1, at js/components/EditMenu/EditorSidebar/controls/MultisiteSharingSettings.tsx
| 1 | import React from 'react' |
| 2 | import { __ } from '@wordpress/i18n' |
| 3 | import { useSnippetForm } from '../../SnippetForm/WithSnippetFormContext' |
| 4 | import { Tooltip } from '../../../common/Tooltip' |
| 5 | |
| 6 | export const MultisiteSharingSettings: React.FC = () => { |
| 7 | const { snippet, setSnippet, isReadOnly } = useSnippetForm() |
| 8 | |
| 9 | return ( |
| 10 | <div className="inline-form-field activation-switch-container"> |
| 11 | <label htmlFor="snippet_sharing" id="snippet-sharing-label"> |
| 12 | {__('Share with Subsites', 'code-snippets')} |
| 13 | </label> |
| 14 | |
| 15 | <Tooltip inline start> |
| 16 | {__('Instead of running on every site, allow this snippet to be activated on individual sites on the network.', 'code-snippets')} |
| 17 | </Tooltip> |
| 18 | |
| 19 | <span className="sharing-status-text"> |
| 20 | {snippet.shared_network |
| 21 | ? __('Enabled', 'code-snippets') |
| 22 | : __('Disabled', 'code-snippets')} |
| 23 | </span> |
| 24 | |
| 25 | <input |
| 26 | id="snippet_sharing" |
| 27 | name="snippet_sharing" |
| 28 | type="checkbox" |
| 29 | className="switch" |
| 30 | checked={!!snippet.shared_network} |
| 31 | disabled={isReadOnly} |
| 32 | aria-labelledby="snippet-sharing-label" |
| 33 | onChange={event => |
| 34 | setSnippet(previous => ({ |
| 35 | ...previous, |
| 36 | active: false, |
| 37 | shared_network: event.target.checked |
| 38 | }))} |
| 39 | /> |
| 40 | </div> |
| 41 | ) |
| 42 | } |
| 43 |