diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/components/WifiCard.js | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/src/components/WifiCard.js b/src/components/WifiCard.js index 35f35a7..6e91be0 100644 --- a/src/components/WifiCard.js +++ b/src/components/WifiCard.js | |||
| @@ -33,14 +33,21 @@ export const WifiCard = (props) => { | |||
| 33 | }; | 33 | }; |
| 34 | 34 | ||
| 35 | useEffect(() => { | 35 | useEffect(() => { |
| 36 | const ssid = escape(props.settings.ssid); | 36 | let opts = {}; |
| 37 | const password = !props.settings.encryptionMode | 37 | |
| 38 | ? '' | 38 | opts.T = props.settings.encryptionMode || 'nopass'; |
| 39 | : escape(props.settings.password); | 39 | if (props.settings.encryptionMode === 'WPA2-EAP') { |
| 40 | const qrval = | 40 | opts.E = props.settings.eapMethod; |
| 41 | props.settings.encryptionMode === 'WPA2-EAP' | 41 | opts.I = props.settings.eapIdentity; |
| 42 | ? `WIFI:T:${props.settings.encryptionMode};S:${ssid};P:${password};H:${props.settings.hiddenSSID};E:${props.settings.eapMethod};I:${props.settings.eapIdentity};;` | 42 | } |
| 43 | : `WIFI:T:${props.settings.encryptionMode};S:${ssid};P:${password};H:${props.settings.hiddenSSID};;`; | 43 | opts.S = escape(props.settings.ssid); |
| 44 | opts.P = escape(props.settings.password); | ||
| 45 | opts.H = props.settings.hiddenSSID; | ||
| 46 | |||
| 47 | let data = ''; | ||
| 48 | Object.entries(opts).forEach(([k, v]) => (data += `${k}:${v};`)); | ||
| 49 | const qrval = `WIFI:${data};`; | ||
| 50 | |||
| 44 | setQrvalue(qrval); | 51 | setQrvalue(qrval); |
| 45 | }, [props.settings]); | 52 | }, [props.settings]); |
| 46 | 53 | ||
