.avada-db-table ol { margin-top: 0px; margin-bottom: 0px; } .avada-db-table tr textarea { width: 100%; height: 150px; } .awb-critical-hero { display: flex; align-items: center; } .awb-critical-hero form { width: 33.33%; flex-shrink: 0; padding-left: 2.8em; position: relative; } .awb-critical-hero form select, .awb-critical-hero form input { width: 100% !important; } .awb-critical-hero form select { margin: 0 0 1em 0 !important; } .avada-db-create-form .pyre_desc { display: none; } .avada-db-create-form .pyre_field { width: 100% !important; float: none !important; } .pyre_metabox_field { display: none; border: none !important; } .awb-critical-hero .pyre_field .select2-selection--multiple .select2-search__field { margin-bottom: 5px; padding-left: 7px; } .awb-critical-hero .pyre_field .select2-container .select2-selection > .select2-selection__rendered { margin-right: 0; } .awb-critical-hero .pyre_field .select2-selection--multiple { display: flex; } .awb-critical-hero .pyre_metabox_field { padding-top: 0; } .awb-critical-loader { align-items: center; display: none; } .awb-critical-loader .loading-message { margin-left: 0.7em; } .awb-critical-loader .avada-db-loader { display: block; } input[type="submit"].processing { display: none; } input[type="submit"].processing + .awb-critical-loader { display: flex; } #awb-critical-css .wp-list-table tr.processing { opacity: 0.5; pointer-events: none; } /* Regenerate button */ .awb-update-row .awb-spinner { display: inline-block; margin-right: 5px; background: none; flex-shrink: 0; margin-top: 0; border-radius: 50%; line-height: 1 !important; border: none; width: 1em; height: 1em; box-sizing: border-box; } .awb-update-row .awb-spinner i { font-size: 0.85em; } .awb-update-row.processing .awb-spinner { border: 3px solid rgba(0, 0, 0, 0.2); border-bottom: 3px solid #333; animation: avada-rotate 0.8s infinite linear; } .awb-update-row.processing .awb-spinner i{ visibility: hidden; } /* Modal */ #wpwrap .avada-db-critical .awb-admin-modal-wrap { top: 40%; transform: translateY(-50%); } .awb-admin-modal-wrap .awb-admin-modal-content { padding: 20px 20px 30px 20px; } .awb-admin-modal-wrap .awb-critical-css-modal-title { margin-bottom: 20px; } .awb-admin-modal-wrap .awb-critical-css-modal-title i { margin-right: 10px; color: #198fd9; } .awb-admin-modal-wrap .awb-critical-css-modal-text { line-height: 1.7; } .awb-admin-modal-wrap .awb-admin-modal-corner-close { border: 1px solid #e8e8e8; }import React, { useEffect, useState } from 'react' import InputWithButton from './InputWithButton' import verifyExtensionsToken from '../../api/verifyExtensionsToken' import ButtonActionProvider from '../Actions/ButtonActionProvider' import { tokenUrl } from '../../utils/linkGenerator' import useGlobalConfig from '../Contexts/useGlobalConfig' import Button from '../Buttons/Button' import styles from './ExtensionsToken.module.scss' /** * Generates a form allowing the user to input an Extensions API token * * @param trackingParams * @param customActionHook * @param completedCallback * @returns {*} * @constructor */ const ExtensionsToken = ({ trackingParams = {}, customActionHook = null, completedCallback = null }) => { const [token, setToken] = useState('') const [error, setError] = useState(null) const [saved, setSaved] = useState(false) const { setSubscriptionStatus } = useGlobalConfig() // Call our completedCallback() after our "saved" state variable is set to true: useEffect(() => { if (saved) { if (completedCallback) { completedCallback() } } }, [saved]) useEffect(() => { // each time our local project name changes we update our saved state to false. setSaved(false) setError(null) }, [token]) const tokenIsCorrectLength = token.length === 36 return ( { // Update local token state value: setToken(e.target.value) }} className={`${styles.input} ${tokenIsCorrectLength ? styles.success : ''}`} spellCheck='false' autoComplete='false' placeholder='Enter token here' /> )} Button={( } LoadingButton={ close
play_arrow

Pa Social Stories

Caterina Perniconi – PA Social Academy

Saverio Cuoghi 5 Settembre 2019 738


Background
share close

Caterina Perniconi, responsabile Formazione Associazione PA Social.
Con Caterina, in occasione della prima giornata di lancio della seconda edizione di PA Social Academy, abbiamo parlato del percorso formativo di quest’anno, ricchissimo di contenuti, tecnici, tecnologici e metodologici sul tema della comunicazione digitale,
L’Academy che vedrà in aula esperti dei diversi temi, caratterizzati da un approccio eternamente pratico e da una conoscenza diretta ed esperienziale dei temi trattati, ha luogo ogni martedì, fino a dicembre, al Binario F di Facebook, a Stazione Termini a Roma.
per info e iscrizioni
Pa Social Academy Seconda Edizione

Rate it
Previous episode
Post comments (0)

Leave a reply