{"version":3,"sources":["assets/images/MLL_logo_nettisivuille.png","hoc/logo/Logo.js","hoc/titlebar/TitleBar.js","hoc/Layout/Layout.js","urlPaths.js","hoc/wrapper/Wrapper.js","hoc/FormComponents/Progressbar.js","hoc/FormComponents/AlertMessage.js","hoc/FormComponents/Toimintamuotoinfo.js","components/Yhdistys/ToimintamuotoLista/ToimintamuotoOtsikko/ToimintamuotoOtsikko.js","components/Yhdistys/ToimintamuotoLista/ToimintamuotoLista.js","hoc/FormComponents/Modal.js","hoc/FormComponents/Tooltip.js","components/Yhdistys/Toimintamuodot.js","components/Piiri/Seurantamerkinta/SeurantamerkintaValinta/SeurantamerkintaLista/SeurantamerkintaLista.js","hoc/FormComponents/Piiri/Monivalinta.js","hoc/FormComponents/Piiri/Otsikko.js","hoc/FormComponents/Piiri/Vaittama.js","hoc/FormComponents/Piiri/Lisatieto.js","components/Piiri/Seurantamerkinta/SeurantamerkintaLomake/IndikaattoriLomake/IndikaattoriLomake.js","hoc/FormComponents/Common/CommonLabeledNumberPicker.js","hoc/FormComponents/LabeledDecimalPicker.js","components/Piiri/Seurantamerkinta/SeurantamerkintaLomake/TilastoLomake/TilastoLomakeEditori.js","components/Piiri/Seurantamerkinta/SeurantamerkintaLomake/Yhdistysvalinta/Yhdistysvalinta.js","hoc/FormComponents/LabeledInput.js","components/Piiri/Seurantamerkinta/SeurantamerkintaLomake/SeurantaMerkintaEdit.js","components/Piiri/Yhdistykset.js","components/Piiri/PiiriSivu.js","components/Yhdistys/Toimintamuoto/Toimintaryhma/ToimintaryhmaLomake/ToimintaryhmaRiviReduced.js","components/Yhdistys/Toimintamuoto/Toimintaryhmat/Toimintaryhmatlista.js","components/Yhdistys/Toimintamuoto/Toimintamuoto.js","components/Yhdistys/Toimintamuoto/ToimintamuotoLomake/ToimintamuotoLomake.js","components/Yhdistys/Toimintamuoto/ToimintamuodonAloitus/ToimintamuodonAloitus.js","components/Yhdistys/Toimintamuoto/Tapahtuma/TapahtumaLista/TapahtumaListaRivi/TapahtumaListaRivi.js","components/Yhdistys/Toimintamuoto/Tapahtuma/TapahtumaLista/TapahtumienSelausLista.js","components/Yhdistys/Toimintamuoto/Tapahtuma/Tapahtuma.js","components/Yhdistys/Toimintamuoto/Tapahtuma/TapahtumaLomake/TapahtumanLisays.js","components/Yhdistys/Toimintamuoto/Tapahtuma/TapahtumaLomake/TapahtumanMuokkaus.js","components/Yhdistys/Toimintamuoto/Toimintaryhma/ToimintaryhmaLomake/ToimintaryhmaLomake.js","components/Yhdistys/Toimintamuoto/Toimintaryhma/Toimintaryhma.js","components/Yhdistys/Toimintamuoto/Toimintaryhma/ToimintaryhmaLomake/ToimintaryhmaInsertLomake.js","containers/Home/Home.js","App.js","registerServiceWorker.js","indexApp.js","adalConfig.js","index.js"],"names":["module","exports","__webpack_require__","p","Logo","paivita","window","location","reload","_this2","this","react_default","a","createElement","className","src","Logoimg","height","alt","onClick","Component","titleBar","props","es","fluid","Header","logo_Logo","Layout","_Component","_getPrototypeOf2","_this","Object","classCallCheck","_len","arguments","length","args","Array","_key","possibleConstructorReturn","getPrototypeOf","call","apply","concat","displayName","name","inherits","createClass","key","value","TitleBar","children","apiBaseUrl","authString","localStorage","getItem","wrapper","progressBar","active","now","alertMessage","bsStyle","alertStyle","message","details","Toimintamuotoinfo","ohjeteksti","style","margin","trigger","placement","overlay","id","title","glyph","ToimintamuotoOtsikko","data","modify","onkoToimintaa","handleDataAndGoTo","toimintamuoto_Id","otsikko","handleData","showModal","FormComponents_Toimintamuotoinfo","content","toggleVari","Wrapper","bsClass","ToimintamuotoLista","toimintamuotootsikot","renderOtsikot","map","ToimintamuotoLista_ToimintamuotoOtsikko_ToimintamuotoOtsikko","toimintamuotoid","fieldStyle","borderTop","padding","width","textAlign","color","CustomModal","show","container","onHide","aria-labelledby","closeButton","Title","Body","AlertMessage","messageStyle","askEndDate","type","placeholder","onChange","moment","format","Footer","withCancelButton","withCancel","onCancel","buttonStyle","buttonText","Tooltip","state","getOhjeteksti","axios","get","headers","Content-Type","Authorization","idteksti","ohjetekstinimi","crossdomain","then","response","ohjetekstiData","setState","console","log","catch","error","errorMessage","naytalaatikkonasivulla","Toimintamuodot","loading","Pvm_loppu","handleEditClick","handlePvmChange","e","target","handleInputChange","event","dateFieldName","dateValue","defineProperty","haeToimintaMuotoOtsikot","organisaatioid","organisaatioId","otsikot","rajatutArvot","overrideMode","kayttajaTyyppi","forEach","yhdistyksen","push","piirin","handleArrayData","toimintamuotoId","handleCancel","handleRemove","lopetaToimintamuoto","goTo","pvmLoppu","post","responseData","modal","Modal","Toimintamuotootsikot","Progressbar","Yhdistys_ToimintamuotoLista_ToimintamuotoLista","debug","yhdistysNimi","FormComponents_Tooltip","SeurantamerkintaLista","seurantamerkinnat","perheKahvilaSuodatus","yhdistysSuodatus","kuntaSuodatus","omaSuodatus","selectedid","haeSeurantaMerkinnat","luokkaId","org","cnt","suodatus","userid","kayttajaId","kayttajatyyppi","editSeurantamerkinta","seurantamerkintaId","setSeurantamerkintaId","handlenakyma","onDelete","poistaTapahtuma","componentDidMount","handleButtonClick","naytaKaikki","Merkintanakyma","merkinnat","merk","apuotsake","organisaatiot","lyhytnimi","lisatieto","seurantamerkintaotsikko","date","pvm","omaotsikko","kirjaaja","merkintaotsikko","paddingBottom","bsSize","Monivalinta","valitut","handleBoxClick","valintaId","Number","valinnat","includes","i","splice","moniValinnat","valinta","smiid","ohjausmerkinta","vid","arvo","monivalintavastaukset","lisaaVastaus","monivalinnat","v","Valinnat","mv","checked","teksti","kuvaus","tarkennukset","Vaittama","valittu","vastaus","render","Lisatieto","tekstiMuuttui","liitaVastaus","maxLength","onBlur","defaultValue","IndikaattoriLomake","kaikkiOhjausindikaattorit","ohjausindikaattorit","indikaattoritLuotu","ohjetekstit","haeOhjausIndikaattorit","seurantamerkintatyyppi","suodataIndikaattorit","suodatetut","indikaattorit","ind","oi","oiid","sort","b","filter","kysyttavat","luoIndikaattorit","indikaattori","smid","numero","indtyyppi","monivalinta","ohjausindikaattori","seurantamerkinta","smedit","handleIndikaattoritChange","OhjausIndikaattorit","Otsikko","Piiri_Vaittama","Piiri_Lisatieto","Piiri_Monivalinta","CommonLabeledNumberPicker","context","handleChangePlus","newvalue","parseInt","handleChangeMinus","handleChange","parsed","bind","assertThisInitialized","tip","tooltip","rowStyle","LabeledDecimalPicker","addHourHandler","parseFloat","subtractHourHandler","addMinutesHandler","subtractMinutesHandler","xs","md","TilastoLomakeEditori","Common_CommonLabeledNumberPicker","vapaaehtoisia","aikuisia","lapsia","FormComponents_LabeledDecimalPicker","tyoaikaa","Yhdistysvalinta","yhdistykset","naytettavatyhdistykset","yhdistyshaku","noudaYhdistykset","Accept","piiriid","noudaKunnat","noudaKaikkiYhdistykset","noudaKaikkiKunnat","kasitteleHaku","suodataYhdistykset","kasitteleNapinPainallus","valittuId","yhdistys","yhd","lisaaYhdistys","kasittelePoisto","yhdistysId","poistaYhdistys","y","lyhytNimi","toLowerCase","luokkaid","yhdistysListaus","cvalitutYhdistykset","valitutyhdistykset","yhdistysvalintaClick","LabeledInput","handleStyle","formcontrol","SeurantaMerkintaEdit","selectedosaalue","loadingseurantamerkinta","loadingorganisaatiot","loadingotsikot","loadingosaalueet","errormessage","success","kayttajaid","kirjauspvm","lisatietoa","luokka","muutosaika","organsations","osaalue","osaalueid","Date","seurantamerkintaindikaattorit","seurantamerkintaotsikotid","toimintamuoto","vapehttuntejaperkerta","yhdistyslkm","naytatilastot","naytaindikaattorit","naytayhdistysvalinta","osaalueet","haeOtsikko","objekti","R","handleTitleChange","kasittelePvm","lisaaIndikaattorit","index","indexOf","titlename","updateobjectname","seurantamerkintauusi","objectSpread","handleSubInputChange","master","sub","masterObject","handleTextChange","kentta","attributes","nodeValue","lahetaVastaukset","obj","label","part","handleOsaAlueChange","handleHide","seurantamerkintaid","haeSeurantamerkinta","haeOtsikot","haeOsaAlueet","merkkaaladatuksi","_this3","_this4","_this5","valittuOSAalue","create","haeSeurantamerkinnanOrganisaatiot","_this6","options","selOsaAlue","tallennusactive","modalContent","puoli","Otsikot","eventKey","onSelect","OtsikonValinta","oValitutYhdistykset","minka","moodi","moodi2","infoteksti","tilastolomakeeditori","react_select_esm","TilastoLomake_TilastoLomakeEditori","vapEhtTunteja","piirinimi","FormComponents_LabeledInput","SeurantamerkintaLomake_Yhdistysvalinta_Yhdistysvalinta","SeurantamerkintaLomake_IndikaattoriLomake_IndikaattoriLomake","disabled","Yhdistykset","selectedOption","yhdistysHaku","piiriId","yhdistysOverride","pitkaNimi","PiiriSivu","naytayhdistys","naytaperhekahvila","naytakunta","naytapiirisivu","naytalomake","smEdit","handleRaporttinakyma","open","nakymanimi","haePiiri","piiriNimi","nimi","pageContent","toimintaNappi","isDisabled","linkkinappiluokka","organisaatioOverrideId","yhdistystenohjausnappi","perhekahviloidenohjausnappi","kuntienohjausnappi","SeurantamerkintaValinta_SeurantamerkintaLista_SeurantamerkintaLista","rajaus","Piiri_Yhdistykset","SeurantamerkintaLomake_SeurantaMerkintaEdit","yhdistysnimi","formatDate","ToimintaryhmaRiviReduced","toimintaryhma","viewDetails","pvmloppu","handleTapahtumaClick","handleToimintaryhmaIdAndNimi","toimintaryhmaid","toimintaryhmanimi","handleTapahtumaTasoAndGoTo","handleRefreshToimintaryhmalista","refreshToimintaryhmanimet","handleMuokkaaClick","poistaToimintaryhma","handleRowClick","cursor","in","pvmalku","missatoimintaaon","tilanne","saanayttaa","border","Toimintaryhmatlista","toimintaryhmanimet","maara","haeToimintaRyhmaNimet","organisaatio","sisalto","filteredByID","ryhma","ToimintaryhmaLomake_ToimintaryhmaRiviReduced","lomakeauki","Toimintamuoto","toimintamuotoinfo","Toimintaryhmat_Toimintaryhmatlista","luoUusi","lisaaRyhma","ToimintamuotoLomake","toimintamuotoupdate","muokkaaToimintamuoto","preventDefault","toimintamuotoObjekti","newToimintamuotoData","getToimintamuoto","toimintamuotoData","onSubmit","pvm_alku","ToimintamuodonAloitus","Id","ToimintamuotootsikkoId","toimintamuotootsikkoId","Pvm_alku","Onkotoimintaa","Toimintaryhmienlukumaara","Kokoontumisiavuodessa","Aikuisiavuodessa","Lapsiavuodessa","Vapaaehtoisia","Palkallisia","Vapaaehtoistentuntejaperkokoontumiskertakeskimaarin","Tilanne","Lisatietoa","lisaaToimintamuoto","JSON","stringify","React","TapahtumaListaRivi","deleting","poistettavaId","toggleGoTo","taso","handleTapahtumaId","tapahtuma","showModaali","fontSize","alkupvm","loppupvm","tapahtumaTaso","toimintaryhmia","tapahtumia","vapehttuntejayht","vapehtperkerta","TapahtumienSelausLista","tapahtumat","filteredTapahtumat","haeTapahtumat","filtered","filterTapahtumat","slice","tyyppi","toimintaryhmaId","TapahtumaLista_TapahtumaListaRivi_TapahtumaListaRivi","delete","orgId","Tapahtuma","toimintaryhmaNimi","TapahtumaLista_TapahtumienSelausLista","TapahtumanLisays","setDefaultFields","Aikuisia","KayttajaId","Lapsia","OrganisaatioId","Paikka","Palaute","PvmTapahtuma","ToimintamuotoId","ToimintaryhmaId","Tyyppi","tapahtumaupdate","lisaaTapahtuma","tapahtumaData","tallennaNappi","TapahtumanMuokkaus","muokkaaTapahtuma","newTapahtumaData","getTapahtuma","tapahtumaId","ToimintaryhmaLomake","Muokkaa","toim_ryhma","tallenna","toimintaryhmadata","haeToimintaRyhma","showmodal","Feedback","Toimintaryhma","Toimintaryhma_ToimintaryhmaLomake_ToimintaryhmaLomake","ToimintaryhmaInsertLomake","uusiToimintaRyhma","handleClickHeader","Home","kayttajaTiedot","organisaatioOverrideNimi","kayttajaNimi","viewName","url","getOrganisation","item3","piiriID","item4","item2","item1","item5","goToHandler","array","handlePiiriDataAndGoTo","urli","href","debuginfo","Yhdistys_Toimintamuodot","piiri","Piiri_PiiriSivu","Yhdistys_Toimintamuoto_Toimintamuoto","toimintamuotolomake","Toimintamuoto_ToimintamuotoLomake_ToimintamuotoLomake","toimintamuodonaloitus","Toimintamuoto_ToimintamuodonAloitus_ToimintamuodonAloitus","Toimintamuoto_Tapahtuma_Tapahtuma","tapahtumanlisays","TapahtumaLomake_TapahtumanLisays","tapahtumanmuokkaus","TapahtumaLomake_TapahtumanMuokkaus","Toimintamuoto_Toimintaryhma_Toimintaryhma","toimintaryhmalomake","toimintaryhmainsertlomake","ToimintaryhmaLomake_ToimintaryhmaInsertLomake","piirisivu","App","Layout_Layout","containers_Home_Home","isLocalhost","Boolean","hostname","match","registerValidSW","swUrl","navigator","serviceWorker","register","registration","onupdatefound","installingWorker","installing","onstatechange","controller","baseUrl","document","getElementsByTagName","getAttribute","rootElement","getElementById","ReactDOM","BrowserRouter","basename","App_App","URL","process","origin","addEventListener","fetch","status","ready","unregister","checkValidServiceWorker","registerServiceWorker","adalConfig","tenant","clientId","endpoints","api","redirectUri","cacheLocation","authContext","AuthenticationContext","withAdalLogin","runWithAdal","require"],"mappings":"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","file":"static/js/main.dd478718.chunk.js","sourcesContent":["module.exports = __webpack_public_path__ + \"static/media/MLL_logo_nettisivuille.a5480d11.png\";","import React, { Component } from 'react';\nimport Logoimg from '../../assets/images/MLL_logo_nettisivuille.png';\n\nclass Logo extends Component {\n componentDidMount() {}\n\n paivita = () => {\n window.location.reload();\n };\n\n render() {\n return (\n
\n this.paivita()}\n />\n
\n );\n }\n}\nexport default Logo;\n","import React from 'react';\nimport { Navbar } from 'react-bootstrap';\nimport Logo from '../logo/Logo';\n\nconst titleBar = props => (\n
\n \n \n \n \n \n
\n );\n\nexport default titleBar;\n","import React, { Component } from 'react';\nimport { Grid, Row } from 'react-bootstrap';\nimport TitleBar from '../titlebar/TitleBar';\n\nexport class Layout extends Component {\n displayName = Layout.name;\n\n render() {\n return (\n \n \n \n \n {this.props.children}\n \n );\n }\n}\n","//API URL (DEV)\n\nexport const apiBaseUrl = 'https://seurantamll.azurewebsites.net/api/MLLData/';\n\n// PÄÄSIVU\n\nexport const homeUrl = '/';\n\n// YHDISTYS\n\nexport const yhdistysBaseUrl = '/yhdistys';\nexport const toimintamuotoUrl = '/toimintamuoto';\nexport const toimintaryhmaUrl = '/lisaatoimintaryhma';\nexport const tapahtumaUrl = '/lisaatapahtuma';\nexport const tapahtumienSelausUrl = '/tapahtumienSelaus';\nexport const aloitaToimintamuotoUrl = '/aloitatoimintamuoto';\n\n// PIIRI\n\nexport const piiriBaseUrl = '/piiri';\nexport const yhdistysvalintaUrl = '/yhdistysvalinta';\nexport const seurantamerkintavalintaUrl = '/merkintavalinta';\nexport const seurantamerkintaUrl = '/seurantamerkinta';\n\n// AUTHENTICATION\n\nexport const authString = () => { return 'Bearer '.concat(localStorage.getItem('adal.idtoken')); }\n","const wrapper = props => props.children;\n\nexport default wrapper;\n","import React from 'react';\nimport { ProgressBar } from 'react-bootstrap';\n\nconst progressBar = () => ;\n\nexport default progressBar;\n","import React from 'react';\nimport { Alert } from 'react-bootstrap';\nimport PropTypes from 'prop-types';\n\nconst alertMessage = props => (\n \n

{props.message}

\n

{props.details}

\n
\n );\nalertMessage.propTypes = {\n message: PropTypes.string,\n details: PropTypes.string\n};\n\nexport default alertMessage;\n","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport {\n OverlayTrigger,\n Button,\n Popover,\n Glyphicon\n} from 'react-bootstrap';\n\nclass Toimintamuotoinfo extends Component {\n render() {\n let ohjeteksti = this.props.ohjeteksti;\n if (typeof(this.props.ohjeteksti) == 'undefined') {\n ohjeteksti = 'Ohjeteksti puuttuu tietokannasta';\n }\n return (\n \n {ohjeteksti}\n \n }\n >\n \n \n );\n }\n}\n\nToimintamuotoinfo.propTypes = {\n placement: PropTypes.string,\n title: PropTypes.string.isRequired,\n naytalaatikkonasivulla: PropTypes.bool,\n ohjeteksti: PropTypes.string,\n};\n\nexport default Toimintamuotoinfo;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Button, Glyphicon, Row, Col } from 'react-bootstrap';\nimport '../../../../styles/yhdistys.css';\nimport Wrapper from '../../../../hoc/wrapper/Wrapper';\nimport Toimintamuotoinfo from '../../../../hoc/FormComponents/Toimintamuotoinfo';\n\nconst ToimintamuotoOtsikko = props => {\n const toggleVari = value => {\n switch (value) {\n case null:\n return 'EiToimintaValintaa';\n case 0:\n return 'EiToimintaa';\n case 1:\n return 'OnToimintaa';\n default:\n return 'EitoimintaValintaa';\n }\n };\n\n const handleDataAndOpenModal = () => {\n props.handleData(\n props.data.id,\n props.data.toimintamuoto_Id,\n props.data.otsikko\n );\n props.showModal(props.data.id);\n };\n\n return (\n
\n \n \n {props.modify && props.data.onkoToimintaa !== 1 ? (\n \n props.handleDataAndGoTo(\n props.data.id,\n props.data.toimintamuoto_Id,\n props.data.otsikko,\n 'ToimintamuodonAloitus'\n )\n }\n >\n \n
\n ) : null\n }\n {props.modify && props.data.onkoToimintaa !== null ? (\n \n \n \n ) : null\n }\n \n \n \n \n \n props.modify === false &&\n props.data.onkoToimintaa !== 0 &&\n props.data.onkoToimintaa !== null &&\n props.data.onkoToimintaa === 1\n ? props.handleDataAndGoTo(\n props.data.id,\n props.data.toimintamuoto_Id,\n props.data.otsikko,\n 'Toimintamuoto'\n )\n : null\n }\n >\n \n
\n {props.data.otsikko}\n
\n \n \n {props.modify &&\n props.data.onkoToimintaa !== 0 &&\n props.data.onkoToimintaa !== null ? (\n \n \n \n props.handleDataAndGoTo(\n props.data.id,\n props.data.toimintamuoto_Id,\n props.data.otsikko,\n 'ToimintamuotoLomake'\n )\n }\n bsStyle='warning'\n name='Muokkaa'\n >\n \n \n \n \n ) : (\n \n props.handleDataAndGoTo(\n props.data.id,\n props.data.toimintamuoto_Id,\n props.data.otsikko,\n 'Toimintamuoto'\n )\n }\n >\n \n {props.data.onkoToimintaa === 1 ? (\n \n ) : null}\n \n \n )}\n \n \n );\n};\n\nexport default ToimintamuotoOtsikko;\n\nToimintamuotoOtsikko.propTypes = {\n modify: PropTypes.bool.isRequired,\n data: PropTypes.object,\n handleDataAndGoTo: PropTypes.func.isRequired\n};\n","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport '../../../styles/yhdistys.css';\nimport ToimintamuotoOtsikko from './ToimintamuotoOtsikko/ToimintamuotoOtsikko';\n\nclass ToimintamuotoLista extends Component {\n render() {\n if (this.props.toimintamuotootsikot === null) {\n return (null);\n }\n const renderOtsikot = this.props.toimintamuotootsikot.map(data => (\n \n ));\n return (\n
\n {renderOtsikot}\n
\n );\n }\n}\nexport default ToimintamuotoLista;\n\nToimintamuotoLista.propTypes = {\n toimintamuotootsikot: PropTypes.array,\n modify: PropTypes.bool.isRequired,\n handleDataAndGoTo: PropTypes.func.isRequired\n};\n","import React, { Component } from 'react';\nimport { Button, Modal, Panel, FormControl, Row, ControlLabel } from 'react-bootstrap';\nimport AlertMessage from './AlertMessage';\nimport moment from 'moment';\n\nconst style = value => {\n switch (value) {\n case 'success':\n return 'success';\n case 'danger':\n return 'danger';\n default:\n return 'primary';\n }\n};\n\nconst withCancelButton = value => {\n if (!value) {\n return false;\n }\n return true;\n};\n\nconst fieldStyle = {\n margin: '15px auto',\n borderTop: 'solid gray',\n padding: '15px',\n width: '250px',\n textAlign: 'center',\n color: 'black'\n};\n\nconst handleDate = value => moment(value).format('YYYY-MM-DD');\nclass CustomModal extends Component {\n render() {\n return (\n
\n \n \n {this.props.title}\n \n \n \n \n {this.props.askEndDate ? (\n \n {this.props.title}\n \n \n ) : null}\n \n \n {withCancelButton(this.props.withCancel) ? (\n \n ) : null}\n \n \n \n
\n );\n }\n}\nexport default CustomModal;\n","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport {\n OverlayTrigger,\n Button,\n Popover,\n Glyphicon,\n Row,\n Col\n} from 'react-bootstrap';\nimport axios from 'axios';\nimport { apiBaseUrl, authString } from '../../urlPaths';\n\nclass Tooltip extends Component {\n state = {\n ohjeteksti: null\n };\n\n componentDidMount() {\n if (this.state.ohjeteksti === null) {\n this.getOhjeteksti();\n }\n }\n\n getOhjeteksti() {\n axios\n .get(`${apiBaseUrl}HaeOhjeTekstiNimella`, {\n headers: {\n 'Content-Type': 'application/json',\n Authorization: authString(),\n idteksti: this.props.ohjetekstinimi\n },\n crossdomain: true\n })\n .then(response => {\n const ohjetekstiData = response.data !== null ? response.data : 'Ohjetta ' + this.props.ohjetekstinimi + 'ei löytynyt';\n this.setState({ ohjeteksti: ohjetekstiData });\n console.log(ohjetekstiData);\n })\n .catch(error => {\n this.setState({\n error: true,\n errorMessage: error.message\n });\n });\n };\n\n render() {\n\n if (this.state.ohjeteksti === null) return (null);\n // Etusivulle laatikkona, muuten Popover.\n if (this.props.naytalaatikkonasivulla === true) {\n return (\n
\n \n \n

{this.state.ohjeteksti}

\n \n
\n
\n );\n }\n // Popover - muutsivut\n return (\n \n {this.state.ohjeteksti}\n \n }\n >\n \n \n );\n }\n}\n\nTooltip.propTypes = {\n placement: PropTypes.string,\n title: PropTypes.string.isRequired,\n ohjetekstinimi: PropTypes.string.isRequired,\n naytalaatikkonasivulla: PropTypes.bool\n};\n\nexport default Tooltip;\n","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { Glyphicon, Button, Row, Col, Panel } from 'react-bootstrap';\nimport axios from 'axios';\nimport '../../styles/yhdistys.css';\nimport { apiBaseUrl, authString } from '../../urlPaths';\nimport ProgressBar from '../../hoc/FormComponents/Progressbar';\nimport AlertMessage from '../../hoc/FormComponents/AlertMessage';\nimport ToimintamuotoLista from './ToimintamuotoLista/ToimintamuotoLista';\nimport Modal from '../../hoc/FormComponents/Modal';\nimport Tooltip from '../../hoc/FormComponents/Tooltip';\n\nclass Toimintamuodot extends Component {\n state = {\n loading: false,\n error: false,\n modify: false,\n errorMessage: null,\n showModal: false,\n Pvm_loppu: ''\n };\n\n componentDidMount() {\n this.setState({ loading: true });\n this.haeToimintaMuotoOtsikot();\n }\n\n handleEditClick = () => {\n if (!this.state.modify) {\n this.setState({ modify: true });\n } else {\n this.setState({ modify: false });\n }\n };\n\n handlePvmChange = e => {\n this.setState({ Pvm_loppu: e.target.value });\n };\n\n handleInputChange = event => {\n const target = event.target;\n const name = target.dateFieldName;\n const value = name.dateValue;\n this.setState({\n [name]: value\n });\n };\n\n haeToimintaMuotoOtsikot = () => {\n axios\n .get(`${apiBaseUrl}HaeOrganisaationToimintaMuotoOtsikot`, {\n headers: {\n organisaatioid: this.props.organisaatioId,\n Authorization: authString()\n }\n })\n .then(response => {\n const otsikot = response.data;\n const rajatutArvot = [];\n if (this.props.overrideMode === false) {\n if (this.props.kayttajaTyyppi === 1) {\n otsikot.forEach(data => {\n if (data.yhdistyksen === true) {\n rajatutArvot.push(data);\n }\n });\n }\n if (this.props.kayttajaTyyppi !== 1) {\n otsikot.forEach(data => {\n if (data.piirin === true) {\n rajatutArvot.push(data);\n }\n });\n }\n } else {\n otsikot.forEach(data => {\n if (data.yhdistyksen === true) {\n rajatutArvot.push(data);\n }\n });\n }\n this.setState({\n loading: false\n });\n this.props.handleArrayData(rajatutArvot);\n console.log(response.data);\n })\n .catch(error => {\n this.setState({\n error: true,\n loading: false,\n errorMessage: error.message\n });\n console.log(`error${error}`);\n });\n };\n\n showModal = toimintamuotoId => {\n this.setState({ showModal: true, toimintamuotoId });\n };\n\n handleCancel = () => {\n this.setState({ showModal: false });\n };\n\n handleRemove = () => {\n this.lopetaToimintamuoto();\n this.setState(\n {\n showModal: false\n },\n () => {\n this.props.goTo('Yhdistys');\n }\n );\n };\n\n lopetaToimintamuoto = () => {\n const headers = {\n 'Content-Type': 'application/json',\n Authorization: authString(),\n organisaatioId: this.props.organisaatioId,\n toimintamuotoId: this.props.toimintamuotoId,\n pvmLoppu: this.state.Pvm_loppu\n };\n axios\n .post(`${apiBaseUrl}PoistaToimintaMuotoKaytosta`, null, {\n headers\n })\n .then(response => {\n const responseData = response.data;\n this.haeToimintaMuotoOtsikot();\n console.log(responseData);\n })\n .catch(error => {\n console.log(error);\n });\n };\n\n render() {\n const modal = (\n \n );\n let Toimintamuotootsikot = null;\n const otsikot = this.props.toimintamuotootsikot;\n if (this.state.error) {\n Toimintamuotootsikot = (\n \n );\n } else if (this.state.loading) {\n Toimintamuotootsikot = (\n \n

Haetaan...

\n \n
\n );\n } else {\n Toimintamuotootsikot = (\n
\n \n
\n );\n }\n let organisaatioid = null;\n if (this.props.debug === true) {\n organisaatioid = 'Org:' + this.props.organisaatioId;\n }\n const tapahtumat = null; /*(\n \n \n this.props.handleTapahtumaTasoAndGoTo(\n 'Organisaatio',\n 'Tapahtuma'\n )}\n >\n Tapahtumat\n \n \n );*/\n return (\n
\n {this.state.showModal ? modal : null}\n \n \n \n \n \n

\n {organisaatioid} {this.props.yhdistysNimi}\n

\n \n \n \n \n
\n \n {tapahtumat}\n \n

Toimintamuodot

\n \n \n \n \n
\n \n \n \n
\n \n \n
\n {Toimintamuotootsikot}\n
\n );\n }\n}\n\nexport default Toimintamuodot;\n\nToimintamuodot.propTypes = {\n handleDataAndGoTo: PropTypes.func.isRequired,\n toimintamuotootsikot: PropTypes.array.isRequired,\n handleArrayData: PropTypes.func.isRequired,\n kayttajaTyyppi: PropTypes.number.isRequired,\n overrideMode: PropTypes.bool\n};\n","import React, { Component } from 'react';\nimport { Button, Row, Col, Panel, Glyphicon } from 'react-bootstrap';\nimport axios from 'axios';\nimport PropTypes from 'prop-types';\nimport '../../../../../styles/seurantamerkintalista.css';\nimport { apiBaseUrl, authString } from '../../../../../urlPaths';\nimport moment from 'moment';\nimport Modal from '../../../../../hoc/FormComponents/Modal';\nimport AlertMessage from '../../../../../hoc/FormComponents/AlertMessage';\nimport ProgressBar from '../../../../../hoc/FormComponents/Progressbar';\n\nconst formatDate = date => moment(date).format('D.M.YYYY');\nclass SeurantamerkintaLista extends Component {\n state = {\n seurantamerkinnat: null,\n perheKahvilaSuodatus: false,\n yhdistysSuodatus: false,\n kuntaSuodatus: false,\n omaSuodatus: false,\n loading: true,\n error: false,\n errorMessage: null,\n showModal: false,\n selectedid: null\n };\n\n componentDidMount() {\n this.haeSeurantaMerkinnat(this.props.luokkaId);\n }\n\n //toteuta tähän vielä userid suodatus - this.state.omaSuodatus -> lähetä id\n haeSeurantaMerkinnat = (luokkaId) => {\n axios\n .get(`${apiBaseUrl}HaeSeurantamerkinnat`, {\n headers: {\n Authorization: authString(),\n org: this.props.organisaatioId,\n cnt: 200,\n suodatus: luokkaId,\n //perhe: kahvilasuodatus,\n //yhdistys: yhdistyssuodatus,\n userid: this.props.kayttajaId,\n kayttajatyyppi: this.props.kayttajaTyyppi,\n }\n })\n .then(response => {\n this.setState({ seurantamerkinnat: response.data, loading: false });\n })\n .catch(error => {\n this.setState({\n error: true,\n loading: false,\n errorMessage: error.message\n });\n });\n this.setState({ loading: true });\n };\n\n editSeurantamerkinta = seurantamerkintaId => {\n this.props.setSeurantamerkintaId(seurantamerkintaId);\n this.props.handlenakyma('seurantamerkintaedit');\n };\n\n\n showModal = (id) => {\n this.setState({ showModal: true, selectedid: id });\n }\n\n onDelete = () => {\n this.poistaTapahtuma();\n this.props.goTo('Piiri');\n this.setState({ showModal: false });\n }\n\n onCancel = () => {\n this.setState({ showModal: false });\n }\n\n poistaTapahtuma = () => {\n const headers = {\n Authorization: authString(),\n id: this.state.selectedid,\n };\n axios\n .get(`${apiBaseUrl}PoistaSeurantamerkinta`, { headers })\n .then(response => {\n this.componentDidMount(); // Luo ruudun uudelleen poiston jälkeen\n })\n .catch(error => {\n this.componentDidMount(); // Luo ruudun uudelleen poiston jälkeen\n });\n };\n\n\n handleButtonClick = event => {\n switch (event.target.name) {\n case 'kaikki':\n this.setState({\n perheKahvilaSuodatus: false,\n omaSuodatus: false,\n yhdistysSuodatus: false\n });\n break;\n case 'perhekahvilat':\n this.setState({\n naytaKaikki: false,\n perheKahvilaSuodatus: !this.state.perheKahvilaSuodatus\n });\n break;\n case 'yhdistykset':\n this.setState({\n naytaKaikki: false,\n yhdistysSuodatus: !this.state.yhdistysSuodatus\n });\n break;\n case 'kunnat':\n this.setState({\n naytaKaikki: false,\n kuntaSuodatus: !this.state.kuntaSuodatus\n });\n break;\n case 'omat':\n this.setState({\n naytaKaikki: false,\n omaSuodatus: !this.state.omaSuodatus\n });\n break;\n default:\n break;\n }\n this.haeSeurantaMerkinnat();\n };\n\n render() {\n \n if (this.state.showModal === true) {\n return (\n \n );\n }\n let Merkintanakyma = null;\n\n if (this.state.error) {\n Merkintanakyma = (\n \n );\n return Merkintanakyma;\n };\n\n if (this.state.loading) {\n Merkintanakyma = (\n \n

Haetaan...

\n \n
\n );\n return Merkintanakyma;\n } \n\n // Tiedot ladattu. Kehitellään näkymää\n let merkinnat = [];\n this.state.seurantamerkinnat.forEach(merk => {\n let apuotsake = '';\n if (merk.organisaatiot.length > 0) apuotsake = merk.organisaatiot[0].lyhytnimi; // lisätään lyhytnimi jos on\n if (merk.organisaatiot.length > 1) {\n apuotsake = 'Useita organisaatioita';\n }\n merk.lisatieto = apuotsake; // Viedään lisätietokenttään niin ei tarvitse ropata rakennetta. Tällä ei listanäkymässä ole muuta käyttöä..\n merkinnat.push(merk);\n\n });\n\n // Merkintanakyma = this.state.seurantamerkinnat.map(merk => (\n Merkintanakyma = merkinnat.map(merk => (\n\n
\n \n \n \n {merk.seurantamerkintaotsikko}\n \n \n {formatDate(merk.pvm)}\n \n \n {merk.omaotsikko}\n {merk.lisatieto}\n \n \n {merk.kirjaaja}\n \n \n \n this.editSeurantamerkinta(merk.id)}\n >\n Muokkaa\n \n this.showModal(merk.id)}\n >\n Poista\n \n \n \n \n\n\n
\n ));\n\n let merkintaotsikko = '';\n switch (this.props.luokkaId) {\n case 1:\n merkintaotsikko = (

Yhdistyksen ohjaus

);\n break;\n case 2:\n merkintaotsikko = (

Perhekahvilan ohjaus

);\n break;\n case 3:\n merkintaotsikko = (

Muut merkinnät

);\n break;\n default: {\n merkintaotsikko = (

Merkintäluokka puuttuu. Ilmoita kehittäjälle!

);\n }\n }\n return (\n
\n \n \n \n {merkintaotsikko}\n \n \n \n {this.props.luokkaId === 3 ? (\n \n ) : (\n {this.props.yhdistysNimi}\n )}\n \n\n \n \n \n \n \n this.props.handlenakyma('seurantamerkintanew')}\n >\n Lisää Uusi\n \n \n \n {Merkintanakyma}\n
\n );\n }\n}\n\nSeurantamerkintaLista.propTypes = {\n luokkaId: PropTypes.number,\n organisaatioId: PropTypes.number,\n kayttajaId: PropTypes.number,\n handlenakyma: PropTypes.func,\n yhdistysNimi: PropTypes.string,\n setSeurantamerkintaId: PropTypes.func,\n goTo: PropTypes.func.isRequired,\n kayttajaTyyppi: PropTypes.number,\n};\n\nexport default SeurantamerkintaLista;\n","import React, { Component } from 'react';\nimport { Checkbox } from 'react-bootstrap';\nimport '../../../styles/indikaattorilomake.css';\nimport PropTypes from 'prop-types';\n\nclass Monivalinta extends Component {\n state = {\n valitut: []\n };\n\n componentDidMount() {\n const valinnat = [];\n this.props.monivalinnat.forEach(v => {\n valinnat.push(v.vid);\n });\n this.setState({\n valitut: valinnat\n });\n }\n\n handleBoxClick = event => {\n const valintaId = Number(event.target.id);\n const valinnat = this.state.valitut;\n if (valinnat.includes(valintaId)) {\n for (let i = valinnat.length - 1; i >= 0; i--) {\n if (valinnat[i] === valintaId) {\n valinnat.splice(i, 1);\n }\n }\n } else {\n valinnat.push(valintaId);\n }\n this.setState({ valitut: valinnat });\n const moniValinnat = [];\n valinnat.forEach(valinta =>\n moniValinnat.push({\n smiid: this.props.ohjausmerkinta.id,\n vid: valinta,\n arvo: true\n })\n );\n this.props.ohjausmerkinta.monivalintavastaukset = moniValinnat;\n this.props.lisaaVastaus(this.props.ohjausmerkinta);\n };\n\n render() {\n const Valinnat = this.props.ohjausmerkinta.monivalinnat.map(mv => {\n let checked = false;\n this.state.valitut.forEach(v => {\n if (v === mv.id) {\n checked = true;\n }\n });\n return (\n \n {mv.teksti}\n \n );\n });\n return (\n
\n {this.props.ohjausmerkinta.kuvaus}\n

{this.props.ohjausmerkinta.tarkennukset}

\n {Valinnat}\n
\n );\n }\n}\n\nMonivalinta.propTypes = {\n ohjausmerkinta: PropTypes.object,\n lisaaVastaus: PropTypes.func.isRequired\n};\n\nexport default Monivalinta;\n","import React from 'react';\nimport '../../../styles/indikaattorilomake.css';\nimport PropTypes from 'prop-types';\n\nconst otsikko = props => (\n
\n

{props.ohjausmerkinta.kuvaus}

\n

{props.ohjausmerkinta.tarkennukset}

\n
\n);\n\notsikko.propTypes = {\n ohjausmerkinta: PropTypes.object\n};\n\nexport default otsikko;\n","import React, { Component } from 'react';\nimport { Row, Button } from 'react-bootstrap';\nimport '../../../styles/indikaattorilomake.css';\nimport PropTypes from 'prop-types';\n\nclass Vaittama extends Component {\n state = {\n valittu: this.props.vastaus\n };\n\n handleButtonClick = event => {\n const valittu = Number(event.target.id);\n if (this.state.valittu === valittu) {\n this.setState({ valittu: null });\n this.props.ohjausmerkinta.vastaus = null;\n } else {\n this.setState({ valittu });\n this.props.ohjausmerkinta.vastaus = valittu;\n }\n this.render();\n this.props.lisaaVastaus(this.props.ohjausmerkinta);\n };\n\n render() {\n return (\n
\n {this.props.ohjausmerkinta.kuvaus}\n

{this.props.ohjausmerkinta.tarkennukset}

\n \n {this.state.valittu === 1 ? (\n \n 1\n \n ) : (\n \n 1\n \n )}\n {this.state.valittu === 2 ? (\n \n 2\n \n ) : (\n \n 2\n \n )}\n {this.state.valittu === 3 ? (\n \n 3\n \n ) : (\n \n 3\n \n )}\n \n
\n );\n }\n}\n\nVaittama.propTypes = {\n ohjausmerkinta: PropTypes.object,\n lisaaVastaus: PropTypes.func.isRequired\n};\n\nexport default Vaittama;\n","import React, { Component } from 'react';\nimport '../../../styles/indikaattorilomake.css';\nimport PropTypes from 'prop-types';\n\nclass Lisatieto extends Component {\n state = {\n teksti: ''\n };\n\n tekstiMuuttui = event => {\n this.setState({ teksti: event.target.value });\n };\n\n liitaVastaus = () => {\n this.props.ohjausmerkinta.vastaus = this.state.teksti;\n this.props.lisaaVastaus(this.props.ohjausmerkinta);\n };\n\n render() {\n return (\n
\n {this.props.ohjausmerkinta.kuvaus}\n

{this.props.ohjausmerkinta.tarkennukset}

\n \n
\n );\n }\n}\n\nLisatieto.propTypes = {\n lisaaVastaus: PropTypes.func.isRequired,\n ohjausmerkinta: PropTypes.object\n};\n\nexport default Lisatieto;\n","import React, { Component } from 'react';\nimport { Row, Col, Button, Panel } from 'react-bootstrap';\nimport axios from 'axios';\nimport PropTypes from 'prop-types';\nimport '../../../../../styles/indikaattorilomake.css';\nimport Monivalinta from '../../../../../hoc/FormComponents/Piiri/Monivalinta';\nimport Otsikko from '../../../../../hoc/FormComponents/Piiri/Otsikko';\nimport Vaittama from '../../../../../hoc/FormComponents/Piiri/Vaittama';\nimport Lisatieto from '../../../../../hoc/FormComponents/Piiri/Lisatieto';\nimport { apiBaseUrl, authString } from '../../../../../urlPaths';\nimport ProgressBar from '../../../../../hoc/FormComponents/Progressbar';\n\nclass IndikaattoriLomake extends Component {\n state = {\n kaikkiOhjausindikaattorit: [],\n ohjausindikaattorit: [],\n indikaattoritLuotu: false,\n ohjetekstit: [],\n naytaKaikki: false,\n loading: true\n };\n\n componentDidMount() {\n this.haeOhjausIndikaattorit();\n if (this.props.indikaattorit.length > 0) {\n this.setState({ indikaattoritLuotu: true });\n }\n }\n\n haeOhjausIndikaattorit = () => {\n axios\n .get(`${apiBaseUrl}HaeOhjausIndikaattorit`, {\n headers: {\n Authorization: authString(),\n seurantamerkintatyyppi: this.props.luokkaId // LuokkaId 1 on yhdistys, 2= Perhekahvila\n }\n })\n .then(response => {\n this.setState({\n kaikkiOhjausindikaattorit: response.data\n });\n this.suodataIndikaattorit();\n })\n .catch(error => {\n console.log(error);\n });\n };\n\n suodataIndikaattorit = () => {\n let suodatetut = [];\n if (this.props.indikaattorit.length > 0) {\n this.props.indikaattorit.forEach(ind => {\n this.state.kaikkiOhjausindikaattorit.forEach(oi => {\n // BackEnd returns sometimes oiId instead of OiId\n if (oi.id === ind.oiid) {\n suodatetut.push(oi);\n }\n });\n });\n suodatetut.sort((a, b) => (a.id > b.id ? 1 : b.id > a.id ? -1 : 0));\n this.setState({\n ohjausindikaattorit: suodatetut,\n loading: false\n });\n } else if (this.state.kaikkiOhjausindikaattorit !== null) {\n suodatetut = this.state.kaikkiOhjausindikaattorit.filter(\n ind => ind.seurantamerkintatyyppi === this.props.luokkaId\n );\n if (this.state.naytaKaikki === false) {\n suodatetut = suodatetut.filter(ind => ind.kysyttavat !== 3);\n } else if (this.state.naytaKaikki === true) {\n suodatetut = suodatetut.filter(ind => ind.kysyttavat !== 2);\n }\n this.setState({\n ohjausindikaattorit: suodatetut,\n loading: false\n });\n }\n };\n\n handleButtonClick = event => {\n this.setState({ loading: true });\n if (event.target.name === 'kaikki') {\n this.setState({ naytaKaikki: true }, () => this.suodataIndikaattorit());\n }\n if (event.target.name === 'kokonais') {\n this.setState({ naytaKaikki: false }, () => this.suodataIndikaattorit());\n }\n };\n\n luoIndikaattorit = () => {\n const indikaattorit = [];\n this.state.ohjausindikaattorit.forEach(i => {\n const indikaattori = {\n oiid: i.id,\n smid: 0,\n numero: i.indtyyppi === 1 ? i.vastaus : null,\n vastaus: i.indtyyppi === 2 ? i.vastaus : '',\n monivalinta: i.indtyyppi >= 3 ? true : false,\n ohjausindikaattori: i,\n seurantamerkinta: [],\n monivalintavastaukset: i.indtyyppi < 3 ? [] : i.monivalintavastaukset\n };\n indikaattorit.push(indikaattori);\n });\n this.setState({ indikaattoritLuotu: true });\n return indikaattorit;\n };\n\n lisaaVastaus = ind => {\n let indikaattorit = [];\n if (!this.props.smedit) {\n indikaattorit = this.luoIndikaattorit();\n } else if (this.props.smedit && !this.state.indikaattoritLuotu) {\n indikaattorit = this.luoIndikaattorit();\n } else {\n indikaattorit = this.props.indikaattorit;\n indikaattorit.forEach((indikaattori, i) => {\n \n if (indikaattori.oiid === ind.id ) {\n if (ind.indtyyppi === 1) {\n indikaattorit[i].numero = ind.vastaus;\n }\n if (ind.indtyyppi === 2) {\n indikaattorit[i].vastaus = ind.vastaus;\n }\n if (ind.indtyyppi > 2) {\n indikaattorit[i].monivalintavastaukset = ind.monivalintavastaukset;\n }\n }\n });\n }\n this.props.handleIndikaattoritChange(indikaattorit);\n };\n\n render() {\n let OhjausIndikaattorit = null;\n if (this.state.loading === true) {\n OhjausIndikaattorit = (\n \n

Haetaan...

\n \n
\n );\n return (\n
\n {OhjausIndikaattorit}\n
\n );\n } else {\n const indikaattorit = this.props.indikaattorit;\n OhjausIndikaattorit = this.state.ohjausindikaattorit.map(ind => {\n let indikaattori = null;\n indikaattorit.forEach(i => {\n // BackEnd returns sometimes oiId instead of OiId\n if (i.oiid === ind.id ) {\n indikaattori = i;\n }\n });\n switch (ind.indtyyppi) {\n case 0:\n return ;\n case 1:\n return (\n \n );\n case 2:\n return (\n \n );\n case 3:\n return (\n \n );\n case 4:\n return (\n \n );\n case 5:\n return (\n \n );\n case 6:\n return (\n \n );\n default:\n return null;\n }\n });\n }\n\n return (\n
\n {this.props.indikaattorit.length > 0 ? null : (\n \n \n \n Kokonaistilanne\n \n \n \n \n Kaikki indikaattorit\n \n \n \n )}\n\n {OhjausIndikaattorit}\n
\n );\n }\n}\n\nIndikaattoriLomake.propTypes = {\n lisaaIndikaattorit: PropTypes.func.isRequired,\n handleIndikaattoritChange: PropTypes.func.isRequired,\n luokkaId: PropTypes.number,\n indikaattorit: PropTypes.array,\n smedit: PropTypes.bool\n};\n\nexport default IndikaattoriLomake;\n","/* Lisää kutsuvaan ohjelmaan, jossa statea ylläpidetään, tällainen inputhandler:\n\n handleInputChange = (updateobjectname, value) => {\n const toim_ryhma = {...this.state.toimintaryhma };\n toim_ryhma[updateobjectname] = value;\n this.setState({toimintaryhma: toim_ryhma})\n };\n\n kutsu sieltä tätä komponenttia näin:\n \n\n */\n\nimport React, { Component } from 'react';\nimport { ControlLabel, Button, Row, Col, FormControl } from 'react-bootstrap';\nimport PropTypes from 'prop-types';\nimport '../../../styles/tilastolomake.css';\nimport Tooltip from '../Tooltip';\n\nconst style = {\n margin: '5px',\n borderTop: 'solid gray',\n padding: '5px'\n};\n\nclass CommonLabeledNumberPicker extends Component {\n constructor(props, context) {\n super(props, context);\n this.handleChange = this.handleChange.bind(this); // Käsin muutos\n this.handleChangePlus = this.handleChangePlus.bind(this); // Nappi\n this.handleChangeMinus = this.handleChangeMinus.bind(this); // Nappi\n }\n\n handleChangePlus = e => {\n const newvalue = parseInt(this.props.value, 10) + 1;\n this.props.onChange(e.target.name, newvalue);\n }\n\n handleChangeMinus = e => {\n const newvalue =\n this.props.value > 0 ? parseInt(this.props.value, 10) - 1 : 0;\n this.props.onChange(e.target.name, newvalue);\n }\n\n handleChange = e => {\n var parsed = parseInt(e.target.value, 10);\n this.props.onChange(e.target.name, parsed);\n }\n\n \n\n render() {\n\n let tip = null;\n\n if (typeof(this.props.tooltip) != 'undefined') {\n tip = \n \n \n }\n else {\n tip = \n }\n\n return (\n
\n \n \n {this.props.title}\n

{this.props.tarkennukset}

\n \n
\n \n {tip}\n \n \n -\n \n \n \n \n \n \n \n \n +\n \n \n \n
\n );\n }\n}\n\nCommonLabeledNumberPicker.propTypes = {\n value: PropTypes.number,\n title: PropTypes.string,\n tarkennukset: PropTypes.string,\n name: PropTypes.string,\n tooltip: PropTypes.string\n};\nexport default CommonLabeledNumberPicker;\n","import React, { Component } from 'react';\nimport { ControlLabel, Button, Col, Row } from 'react-bootstrap';\nimport '../../styles/tilastolomake.css';\nimport Tooltip from '../FormComponents/Tooltip';\n\nconst rowStyle = {\n width: '250px'\n};\n\nconst fieldStyle = {\n width: '100px'\n};\n\nclass LabeledDecimalPicker extends Component {\n constructor(props, context) {\n super(props, context);\n this.handleChange = this.handleChange.bind(this);\n this.addHourHandler = this.addHourHandler.bind(this);\n this.subtractHourHandler = this.subtractHourHandler.bind(this);\n this.addMinutesHandler = this.addMinutesHandler.bind(this);\n this.subtractMinutesHandler = this.subtractMinutesHandler.bind(this);\n }\n\n addHourHandler = event => {\n const newvalue = parseFloat(this.props.value, 10) + 1;\n this.props.onChange(event.target.name, newvalue);\n };\n\n subtractHourHandler = event => {\n let newvalue = this.props.value > 0 ? parseFloat(this.props.value, 10) - 1 : 0;\n if (newvalue < 0) {\n newvalue = 0;\n }\n this.props.onChange(event.target.name, newvalue);\n };\n\n addMinutesHandler = event => {\n const newvalue = parseFloat(this.props.value, 10) + 0.25;\n this.props.onChange(event.target.name, newvalue);\n };\n\n subtractMinutesHandler = event => {\n let newvalue = this.props.value > 0 ? parseFloat(this.props.value, 10) - 0.25 : 0;\n if (newvalue < 0) {\n newvalue = 0;\n }\n this.props.onChange(event.target.name, newvalue);\n };\n\n handleChange = event => {\n this.props.onChange(event.target.name, parseFloat(event.target.value, 10));\n };\n\n render() {\n let tip = null;\n\n if (typeof(this.props.tooltip) != 'undefined') {\n tip = \n \n \n }\n else {\n tip = \n }\n\n return (\n \n {this.props.title}\n

{this.props.tarkennukset}

\n \n \n \n -\n \n \n \n \n \n +\n \n \n \n \n \n {tip}\n \n \n \n \n \n \n \n \n -\n \n \n \n \n +\n \n \n \n
\n );\n }\n}\n\nexport default LabeledDecimalPicker;\n","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport '../../../../../styles/tilastolomake.css';\nimport Wrapper from '../../../../../hoc/wrapper/Wrapper';\nimport CommonLabeledNumberPicker from '../../../../../hoc/FormComponents/Common/CommonLabeledNumberPicker';\nimport LabeledDecimalPicker from '../../../../../hoc/FormComponents/LabeledDecimalPicker';\n\nclass TilastoLomakeEditori extends Component {\n render() {\n return (\n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n \n \n
\n
\n );\n }\n}\n\nTilastoLomakeEditori.propTypes = {\n handleInputChange: PropTypes.func.isRequired\n};\n\nexport default TilastoLomakeEditori;\n/*\n \n */","import React, { Component } from 'react';\nimport { Row, Col, Button, Glyphicon } from 'react-bootstrap';\nimport axios from 'axios';\nimport PropTypes from 'prop-types';\nimport '../../../../../styles/yhdistysvalinta.css';\nimport { apiBaseUrl, authString } from '../../../../../urlPaths';\n\nclass Yhdistysvalinta extends Component {\n state = {\n yhdistykset: [],\n naytettavatyhdistykset: [],\n yhdistyshaku: ''\n };\n\n componentDidMount() {\n // Käyttäjätyyppi = 2 Piirikäyttäjä\n if (this.props.kayttajatyyppi === 2) {\n switch (this.props.luokkaid) {\n case 3: {\n this.noudaKunnat();\n break;\n }\n default:\n this.noudaYhdistykset();\n }\n } else\n // Käyttäjätyyppi = 3 MLL / LIITTOKÄYTTÄJÄ\n if (this.props.kayttajatyyppi === 3) {\n switch (this.props.luokkaid) {\n case 3: {\n this.noudaKaikkiKunnat();\n break;\n }\n default:\n this.noudaKaikkiYhdistykset();\n }\n \n }\n }\n\n // Yhdistysten haku Piiri - käyttäjälle\n noudaYhdistykset = () => {\n const headers = {\n Accept: 'application/json',\n 'Content-Type': 'application/json',\n Authorization: authString(),\n };\n const piiriid = this.props.piiriid;\n axios\n .post(`${apiBaseUrl}HaePiirinOrganisaatiot`, piiriid, {\n headers\n })\n .then(response => {\n this.setState({\n yhdistykset: response.data,\n naytettavatyhdistykset: response.data\n });\n })\n .catch(error => {\n console.log(error);\n });\n }\n\n // Kuntien haku piirikäyttäjä\n noudaKunnat = () => {\n const headers = {\n Accept: 'application/json',\n 'Content-Type': 'application/json',\n Authorization: authString(),\n };\n const piiriid = this.props.piiriid;\n axios\n .post(`${apiBaseUrl}HaePiirinKunnat`, piiriid, {\n headers\n })\n .then(response => {\n this.setState({\n yhdistykset: response.data,\n naytettavatyhdistykset: response.data\n });\n })\n .catch(error => {\n console.log(error);\n });\n }\n\n // Kaikkien yhdistysten haku MLL - käyttäjälle\n noudaKaikkiYhdistykset = () => {\n const headers = {\n Accept: 'application/json',\n 'Content-Type': 'application/json',\n Authorization: authString(),\n };\n axios\n .get(`${apiBaseUrl}HaeKaikkiOrganisaatiot`, {\n headers\n })\n .then(response => {\n this.setState({\n yhdistykset: response.data,\n naytettavatyhdistykset: response.data\n });\n })\n .catch(error => {\n console.log(error);\n });\n }\n\n // Kaikkien kuntien haku\n noudaKaikkiKunnat = () => {\n const headers = {\n Accept: 'application/json',\n 'Content-Type': 'application/json',\n Authorization: authString(),\n };\n axios\n .get(`${apiBaseUrl}HaeKaikkiKunnat`, {\n headers\n })\n .then(response => {\n this.setState({\n yhdistykset: response.data,\n naytettavatyhdistykset: response.data\n });\n })\n .catch(error => {\n console.log(error);\n });\n }\n\n kasitteleHaku = event => {\n this.setState({ yhdistyshaku: event.target.value });\n this.suodataYhdistykset(event.target.value);\n };\n\n kasitteleNapinPainallus = event => {\n const valittuId = Number(event.target.id);\n const yhdistys = this.state.yhdistykset.filter(yhd => yhd.id === valittuId);\n this.props.lisaaYhdistys(yhdistys[0]);\n };\n\n kasittelePoisto = event => {\n const yhdistysId = Number(event.target.id);\n this.props.poistaYhdistys(yhdistysId);\n };\n\n suodataYhdistykset = value => {\n //lisää tähän suodatus, joka poistaa jo valitut yhdistykset listalta!\n const suodatetut = this.state.yhdistykset.filter(y =>\n y.lyhytNimi.toLowerCase().includes(value.toLowerCase())\n );\n this.setState({ naytettavatyhdistykset: suodatetut });\n };\n\n render() {\n const yhdistysListaus = this.state.naytettavatyhdistykset.map(yhdistys => (\n \n \n

{yhdistys.lyhytNimi}

\n \n
\n ));\n\n const cvalitutYhdistykset = this.props.valitutyhdistykset.map(valittu => (\n \n \n

{valittu.lyhytNimi}

\n \n \n \n \n \n \n
\n ));\n\n return (\n
\n {this.props.valitutyhdistykset.length > 0 ? (\n
\n \n Valmis\n \n

Valitut yhdistykset:

\n {cvalitutYhdistykset}\n
\n ) : null}\n \n

Hae:

\n \n
\n {yhdistysListaus}\n
\n );\n }\n}\n\nYhdistysvalinta.propTypes = {\n lisaaYhdistys: PropTypes.func.isRequired,\n poistaYhdistys: PropTypes.func.isRequired,\n valitutyhdistykset: PropTypes.array,\n yhdistysvalintaClick: PropTypes.func.isRequired,\n luokkaid: PropTypes.number\n};\n\nexport default Yhdistysvalinta;\n","import React from 'react';\nimport { ControlLabel, FormControl, Row, Col } from 'react-bootstrap';\nimport moment from 'moment';\nimport PropTypes from 'prop-types';\nimport Tooltip from '../FormComponents/Tooltip';\n\nconst LabeledInput = props => {\n const handleStyle = props => {\n let style = null;\n if (props.type === 'text') {\n style = {\n margin: '15px',\n borderTop: 'solid gray',\n padding: '15px'\n };\n } else if (props.type === 'date') {\n style = {\n margin: '15px auto',\n borderTop: 'solid gray',\n padding: '15px',\n width: '300px',\n textAlign: 'center'\n };\n }\n return style;\n };\n\n const handleDate = value => moment(value).format('YYYY-MM-DD');\n \n const formcontrol = (\n \n );\n\n // If we send tooltip here, let's build it. \n if (typeof(props.tooltip) != 'undefined') {\n return (\n \n \n \n \n \n {props.title}\n \n \n \n \n \n \n \n {formcontrol}\n \n \n \n \n \n );\n }\n\n\n return (\n \n {props.title}\n {formcontrol}\n \n );\n};\n\nLabeledInput.propTypes = {\n type: PropTypes.string,\n title: PropTypes.string,\n placeholder: PropTypes.string,\n name: PropTypes.string,\n onBlur: PropTypes.func,\n onChange: PropTypes.func,\n value: PropTypes.string,\n tooltip: PropTypes.string,\n maxLength: PropTypes.string,\n};\n\nexport default LabeledInput;\n","import React, { Component } from 'react';\nimport {\n Row,\n MenuItem,\n DropdownButton,\n Button,\n Glyphicon,\n Col\n} from 'react-bootstrap';\nimport axios from 'axios';\nimport PropTypes from 'prop-types';\nimport Select from 'react-select';\nimport * as R from 'ramda';\nimport '../../../../styles/seurantamerkintalomake.css';\nimport Wrapper from '../../../../hoc/wrapper/Wrapper';\nimport IndikaattoriLomake from './IndikaattoriLomake/IndikaattoriLomake';\nimport TilastoLomakeEditori from './TilastoLomake/TilastoLomakeEditori';\nimport Yhdistysvalinta from './Yhdistysvalinta/Yhdistysvalinta';\nimport { apiBaseUrl, authString } from '../../../../urlPaths';\nimport LabeledInput from '../../../../hoc/FormComponents/LabeledInput';\nimport Tooltip from '../../../../hoc/FormComponents/Tooltip';\nimport Modal from '../../../../hoc/FormComponents/Modal';\nimport '../../../../styles/yhdistysvalinta.css';\nimport moment from 'moment';\n\n\nclass SeurantaMerkintaEdit extends Component {\n state = {\n selectedosaalue: null,\n loadingseurantamerkinta: true,\n loadingorganisaatiot: true,\n loadingotsikot: true,\n loadingosaalueet: true,\n error: false,\n errormessage: null,\n show: false,\n success: false,\n seurantamerkinta: {\n aikuisia: 0,\n id: 0,\n kayttajaid: this.props.kayttajaid,\n kirjauspvm: '',\n kysyttavat: 0,\n lapsia: 0,\n lisatietoa: '',\n luokka: '',\n luokkaid: this.props.luokkaid,\n muutosaika: '',\n omaotsikko: '',\n organsations: [],\n osaalue: '',\n osaalueid: 1,\n pvm: moment(Date()).format('YYYY-MM-DD'),\n seurantamerkintaindikaattorit: [],\n seurantamerkintaotsikotid: 0,\n toimintamuoto: 0,\n tyoaikaa: 0,\n vapaaehtoisia: 0,\n vapehttuntejaperkerta: 0,\n yhdistyslkm: 0\n }, // Tämä sisältää seurantamerkinnän tiedot\n naytatilastot: false,\n naytaindikaattorit: false,\n otsikot: [],\n otsikko: '',\n valitutyhdistykset: [],\n naytayhdistysvalinta: false,\n osaalueet: null\n };\n\n componentDidMount() {\n if (this.props.seurantamerkintaid !== 0) {\n this.haeSeurantamerkinta(this.props.seurantamerkintaid);\n this.haeOtsikot(false);\n } else {\n this.haeOsaAlueet();\n this.haeOtsikot(true);\n }\n }\n\n haeOsaAlueet() {\n axios\n .get(`${apiBaseUrl}HaeOsaAlueet`, {\n headers: {\n Authorization: authString(),\n 'Content-Type': 'application/json'\n }\n })\n .then(response => {\n this.setState({ osaalueet: response.data, loadingosaalueet: false });\n })\n .catch(error => {\n console.log(error);\n });\n }\n\n haeOtsikot(merkkaaladatuksi) {\n axios\n .get(`${apiBaseUrl}HaeSeurantaMerkintaOtsikot`, {\n headers: {\n Authorization: authString(),\n 'Content-Type': 'application/json'\n }\n })\n .then(response => {\n if (merkkaaladatuksi === false) {\n // Lataukset merkitään pois latausfunkkareissa\n this.setState({ otsikot: response.data, loadingotsikot: false });\n } else {\n // Uutta tehdessä merkitään kaikki ladatuiksi täällä jotta rendaa\n this.setState({\n otsikot: response.data,\n loadingotsikot: false,\n loadingseurantamerkinta: false,\n loadingorganisaatiot: false\n });\n }\n })\n .catch(error => {\n console.log(error);\n });\n }\n\n haeSeurantamerkinnanOrganisaatiot() {\n const seurantamerkintaid = this.state.seurantamerkinta.id;\n axios\n .get(`${apiBaseUrl}HaeSeurantamerkinnanOrganisaatiot`, {\n headers: {\n Authorization: authString(),\n 'Content-Type': 'application/json',\n seurantamerkintaid\n }\n })\n .then(response => {\n this.setState({\n valitutyhdistykset: response.data,\n loadingorganisaatiot: false\n });\n this.haeOsaAlueet();\n })\n .catch(error => {\n console.log(error);\n });\n //this.setState({ loadingOrganisaatiot: true });\n }\n\n haeOtsikko = event => {\n const otsikot = this.state.otsikot;\n const objekti = R.find(R.propEq('id', event))(otsikot);\n this.handleInputChange('seurantamerkintaotsikotid', objekti.id);\n this.handleTitleChange('otsikko', objekti.otsikko);\n };\n\n haeSeurantamerkinta(id) {\n axios\n .get(`${apiBaseUrl}HaeSeurantamerkinta`, {\n headers: {\n Authorization: authString(),\n id\n }\n })\n .then(response => {\n const valittuOSAalue = Object.create({\n value: response.data.osaalueid,\n label: response.data.osaalue\n });\n this.setState({\n seurantamerkinta: response.data,\n loadingseurantamerkinta: false,\n selectedosaalue: valittuOSAalue,\n otsikko: response.data.seurantamerkintaotsikko\n });\n this.haeSeurantamerkinnanOrganisaatiot();\n })\n .catch(error => {\n console.log(error);\n });\n // this.setState({ loading: true });\n }\n\n handleButtonClick = event => {\n if (event.target.id === 'tilastot') {\n this.setState({ naytatilastot: !this.state.naytatilastot });\n } else if (event.target.id === 'indikaattorit') {\n this.setState({ naytaindikaattorit: !this.state.naytaindikaattorit });\n } else if (event.target.id === 'yhdistysvalinta') {\n this.setState({ naytayhdistysvalinta: !this.state.naytayhdistysvalinta });\n }\n };\n\n kasittelePvm = event => {\n this.setState({\n pvm: event.target.value\n });\n };\n\n lisaaIndikaattorit = indikaattorit => {\n this.setState({ indikaattorit });\n };\n\n lisaaYhdistys = yhdistys => {\n const valitut = this.state.valitutyhdistykset;\n const seurantamerkinta = this.state.seurantamerkinta;\n const yhdistykset = [];\n if (!this.state.valitutyhdistykset.includes(yhdistys)) {\n valitut.push(yhdistys);\n valitut.forEach(yhd => yhdistykset.push(yhd.id));\n seurantamerkinta.organsations = yhdistykset;\n seurantamerkinta.yhdistyslkm = seurantamerkinta.yhdistyslkm + 1;\n this.setState({\n valitutyhdistykset: valitut,\n seurantamerkinta\n });\n }\n };\n\n poistaYhdistys = yhdistysId => {\n const organisaatiot = this.state.valitutyhdistykset;\n const seurantamerkinta = this.state.seurantamerkinta;\n const yhdistys = this.state.valitutyhdistykset.filter(\n yhd => yhd.id === yhdistysId\n );\n const yhdistykset = [];\n const index = organisaatiot.indexOf(yhdistys[0]);\n if (index > -1) {\n organisaatiot.splice(index, 1);\n }\n organisaatiot.forEach(yhd => yhdistykset.push(yhd.id));\n seurantamerkinta.organsations = yhdistykset;\n seurantamerkinta.yhdistyslkm = seurantamerkinta.yhdistyslkm - 1;\n this.setState({\n valitutyhdistykset: organisaatiot,\n seurantamerkinta\n });\n };\n\n handleTitleChange = (titlename, value) => {\n const name = titlename;\n this.setState({\n [name]: value\n });\n };\n\n handleInputChange = (updateobjectname, value) => {\n const seurantamerkintauusi = { ...this.state.seurantamerkinta };\n seurantamerkintauusi[updateobjectname] = value;\n this.setState({ seurantamerkinta: seurantamerkintauusi });\n };\n\n handleSubInputChange = (master, sub, value) => {\n const seurantamerkintauusi = { ...this.state.seurantamerkinta };\n const masterObject = seurantamerkintauusi[master];\n masterObject[sub] = value;\n seurantamerkintauusi[master] = masterObject;\n this.setState({ seurantamerkinta: seurantamerkintauusi });\n };\n\n handleIndikaattoritChange = indikaattorit => {\n const seurantamerkintauusi = { ...this.state.seurantamerkinta };\n seurantamerkintauusi.seurantamerkintaindikaattorit = indikaattorit;\n this.setState({\n seurantamerkinta: seurantamerkintauusi\n });\n };\n\n handleTextChange = e => {\n const target = e.target;\n const kentta = target.attributes.name.nodeValue;\n const seurantamerkinta = this.state.seurantamerkinta;\n seurantamerkinta[kentta] = target.value;\n this.setState({ seurantamerkinta });\n };\n\n lahetaVastaukset = () => {\n if (\n (this.state.seurantamerkinta.kirjauspvm !== '',\n this.state.seurantamerkinta.seurantamerkintaotsikotid !== 0)\n ) {\n const obj = this.state.seurantamerkinta;\n if (this.state.selectedosaalue !== null) {\n obj.osaalue = this.state.selectedosaalue.label;\n obj.osaalueid = this.state.selectedosaalue.value;\n }\n if (obj.seurantamerkintaindikaattorit !== null) {\n obj.seurantamerkintaindikaattorit.forEach((part, index) => {\n part.ohjausindikaattori = {};\n part.seurantamerkinta = {};\n });\n }\n\n const headers = {\n Accept: 'application/json',\n 'Content-Type': 'application/json',\n Authorization: authString()\n };\n const org = []; // Tähän array org idistä.\n const body = { obj, org };\n axios\n .post(`${apiBaseUrl}TallennaSeurantamerkinta`, obj, { headers })\n .then(response => {\n this.setState({\n show: true,\n success: true\n });\n })\n .catch(error => {\n this.setState({\n error: true,\n errorMessage: error.message,\n show: true\n });\n });\n } else {\n this.setState({\n error: true,\n errorMessage: 'Täytä vähintään Kirjauspäivämäärä ja joku indikaattori'\n });\n this.showModal();\n }\n };\n\n showModal = () => {\n this.setState({ show: true });\n };\n\n handleOsaAlueChange = selectedosaalue => {\n\n this.setState({ selectedosaalue });\n };\n\n handleHide = () => {\n if (this.state.error) {\n this.setState({\n show: false,\n error: false,\n errorMessage: null,\n success: false\n });\n } else {\n this.setState({ show: false }, () => {\n switch (this.state.seurantamerkinta.luokkaid) {\n case 1:\n this.props.handlenakyma('yhdistys');\n break;\n case 2:\n this.props.handlenakyma('perhekahvilat');\n break;\n case 3:\n this.props.handlenakyma('kunnat');\n break;\n }\n });\n }\n };\n\n render() {\n if (this.state.loadingseurantamerkinta === true) {\n return null;\n }\n if (this.state.loadingorganisaatiot === true) {\n return null;\n }\n if (this.state.loadingotsikot === true) {\n return null;\n }\n if (this.state.loadingosaalueet === true) {\n return null;\n }\n const options = [];\n const selOsaAlue = this.state.selectedosaalue;\n this.state.osaalueet.forEach(data => {\n const value = data.id;\n const label = data.osaalue;\n options.push({\n value: value,\n label: label\n });\n });\n\n let tallennusactive = false;\n if (this.state.otsikko !== '' && this.state.seurantamerkinta.pvm !== \"\" && this.state.valitutyhdistykset.length > 0) tallennusactive = true;\n let modalContent = null;\n if (this.state.show && this.state.error) {\n modalContent = (\n \n );\n } else if (this.state.show && this.state.success) {\n modalContent = (\n \n );\n }\n\n let puoli = null;\n switch (this.state.seurantamerkinta.luokkaid) {\n case 1: {\n puoli = 'yhdistys';\n break;\n }\n case 2: {\n puoli = 'perhekahvilat';\n break;\n }\n case 3: {\n puoli = 'kunnat';\n break;\n }\n\n }\n \n const Otsikot = this.state.otsikot.map(otsikko => (\n \n {otsikko.otsikko}\n \n ));\n const OtsikonValinta = (\n \n {Otsikot}\n \n );\n\n const oValitutYhdistykset = this.state.valitutyhdistykset.map(yhdistys => (\n \n {yhdistys.lyhytNimi}\n \n ));\n\n let minka = '';\n switch (this.props.luokkaid) {\n case 1: {\n minka = 'yhdistyksen';\n break;\n }\n case 2: {\n minka = 'perhekahvilan';\n break;\n }\n case 3: {\n minka = ''; //Välisana pois kunnan tapauksessa. #95 Juuso\n break;\n }\n\n }\n let moodi = 'Muokkaa';\n let moodi2 = 'ohjausmerkintää';\n if (this.state.seurantamerkinta.id === 0) {\n moodi = 'Lisää';\n moodi2 = 'ohjausmerkintä';\n }\n let infoteksti = moodi+' '+minka+' '+moodi2;\n \n const tooltip = (\n \n );\n const tilastolomakeeditori = (\n
\n \n \n
\n );\n return (\n \n {this.state.show ? modalContent : null}\n \n \n \n \n \n

{this.props.piirinimi}

\n \n {tooltip}\n
\n
\n

\n {infoteksti}\n

\n
\n
\n {OtsikonValinta}\n \n \n
\n\n {this.state.naytayhdistysvalinta ? (\n
\n \n \n Valmis\n \n
\n ) : (\n
\n
\n \n Valitse {this.props.luokkaid == 3 ? 'kunnat' : 'yhdistykset'}\n \n {oValitutYhdistykset}\n
\n
\n \n Tilastot\n \n {this.state.naytatilastot ? tilastolomakeeditori : null}\n \n Indikaattorit\n \n {this.state.naytaindikaattorit ? (\n \n ) : null}\n
\n {tallennusactive === true ? (\n ) : (\n \n )\n }\n
\n )}\n
\n );\n }\n}\n\nSeurantaMerkintaEdit.propTypes = {\n luokkaid: PropTypes.number,\n seurantamerkintaid: PropTypes.number,\n kayttajaid: PropTypes.number,\n handlenakyma: PropTypes.func.isRequired,\n piirinimi: PropTypes.string,\n smedit: PropTypes.bool\n};\n\nexport default SeurantaMerkintaEdit;\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport PropTypes from 'prop-types';\nimport { apiBaseUrl, authString } from '../../urlPaths';\nimport '../../styles/yhdistysvalinta.css';\nclass Yhdistykset extends Component {\n state = {\n selectedOption: null,\n yhdistykset: [],\n yhdistysHaku: '',\n };\n\n componentDidMount() {\n if (this.props.kayttajaTyyppi === 2) {\n this.noudaYhdistykset();\n } else\n if (this.props.kayttajaTyyppi === 3) {\n this.noudaKaikkiYhdistykset();\n }\n }\n\n\n // Yhdistysten haku Piiri - k�ytt�j�lle\n noudaYhdistykset = () => {\n const headers = {\n Accept: 'application/json',\n 'Content-Type': 'application/json',\n Authorization: authString(),\n };\n const piiriid = this.props.piiriId;\n axios\n .post(`${apiBaseUrl}HaePiirinOrganisaatiot`, piiriid , {\n headers\n })\n .then(response => {\n this.setState({ yhdistykset: response.data });\n })\n .catch(error => {\n console.log(error);\n });\n }\n\n // Kaikkien yhdistysten haku MLL - k�ytt�j�lle\n noudaKaikkiYhdistykset = () => {\n const headers = {\n Accept: 'application/json',\n 'Content-Type': 'application/json',\n Authorization: authString(),\n };\n axios\n .get(`${apiBaseUrl}HaeKaikkiOrganisaatiot`, {\n headers\n })\n .then(response => {\n this.setState({ yhdistykset: response.data });\n })\n .catch(error => {\n console.log(error);\n });\n }\n\n handleChange = selectedOption => {\n this.setState({ selectedOption });\n this.props.yhdistysOverride(selectedOption.value, selectedOption.label);\n console.log(`Option selected:`, selectedOption);\n }\n\n render() {\n if (this.state.yhdistykset.length === 0) return (null);\n const options = [];\n\n this.state.yhdistykset.forEach(data => {\n const value = data.id;\n const label = data.pitkaNimi;\n options.push({\n value: value,\n label: label,\n }); \n });\n const selectedOption = this.state.selectedOption;\n const yhdistysListaus = (\n
\n \n
\n );\n return (\n
\n {yhdistysListaus}\n
\n );\n }\n}\n\nYhdistykset.propTypes = {\n piiriId: PropTypes.number,\n yhdistysOverride: PropTypes.func,\n yhdistysOverrideKaytossa: PropTypes.bool\n};\n\nexport default Yhdistykset;\n","import React, { Component } from 'react';\nimport axios from 'axios';\nimport PropTypes from 'prop-types';\nimport '../../styles/indikaattorilomake.css';\nimport '../../styles/MLL.css';\nimport Wrapper from '../../hoc/wrapper/Wrapper';\nimport { Row, Col, Button, Glyphicon } from 'react-bootstrap';\nimport { apiBaseUrl, authString } from '../../urlPaths';\nimport SeurantaMerkintaLista from './Seurantamerkinta/SeurantamerkintaValinta/SeurantamerkintaLista/SeurantamerkintaLista';\nimport SeurantamerkintaEdit from './Seurantamerkinta/SeurantamerkintaLomake/SeurantaMerkintaEdit';\nimport Tooltip from '../../hoc/FormComponents/Tooltip';\nimport Yhdistykset from './Yhdistykset';\n\nclass PiiriSivu extends Component {\n state = {\n loading: false,\n seurantamerkinnat: [],\n luokkaId: null,\n naytayhdistys: false,\n naytaperhekahvila: false,\n naytakunta: false,\n naytapiirisivu: true,\n naytalomake: false,\n piirinimi: '',\n seurantamerkintaId: 0,\n smEdit: false\n };\n\n componentDidMount() {\n if (this.props.piiriNimi !== null) {\n this.setState({ piirinimi: this.props.piiriNimi }); // , organisaatioId: this.props.organisaatioId })\n } else {\n this.haePiiri(this.props.piiriId);\n this.setState({\n organisaatioId: this.props.organisaatioId,\n loading: true\n });\n }\n }\n\n handleRaporttinakyma = (e) => {\n window.open(\"http://www.bit.ly/peketoiminta\", \"_blank\");\n }\n\n handlenakyma = nakymanimi => {\n switch (nakymanimi) {\n case 'seurantamerkintaedit':\n this.setState({\n naytayhdistys: false,\n naytaperhekahvila: false,\n naytapiirisivu: false,\n naytakunta: false,\n naytalomake: true,\n smEdit: true\n });\n break;\n case 'yhdistys':\n this.setState({\n naytayhdistys: true,\n naytaperhekahvila: false,\n naytapiirisivu: false,\n naytakunta: false,\n naytalomake: false,\n luokkaId: 1\n });\n break;\n case 'perhekahvilat':\n this.setState({\n naytayhdistys: false,\n naytaperhekahvila: true,\n naytapiirisivu: false,\n naytakunta: false,\n naytalomake: false,\n luokkaId: 2\n });\n break;\n case 'kunnat':\n this.setState({\n naytayhdistys: false,\n naytaperhekahvila: false,\n naytakunta: true,\n naytapiirisivu: false,\n naytalomake: false,\n luokkaId: 3\n });\n break;\n case 'piirisivu':\n this.setState({\n naytapiirisivu: true,\n naytayhdistys: false,\n naytaperhekahvila: false,\n naytakunta: false,\n naytalomake: false\n });\n break;\n case 'seurantamerkintanew':\n this.setState({\n naytayhdistys: false,\n naytaperhekahvila: false,\n naytapiirisivu: false,\n naytakunta: false,\n naytalomake: true,\n seurantamerkintaId: 0,\n smEdit: false\n });\n break;\n default:\n this.setState({\n naytayhdistys: false,\n naytaperhekahvila: false,\n naytakunta: false,\n naytapiirisivu: true,\n naytalomake: false\n });\n break;\n }\n };\n\n haePiiri = piiriId => {\n axios\n .get(`${apiBaseUrl}HaePiiri`, {\n headers: {\n piiriId,\n Authorization: authString()\n }\n })\n .then(response => {\n this.setState({ piiriNimi: response.data.nimi, loading: false });\n })\n .catch(error => {\n console.log(error);\n });\n };\n\n setSeurantamerkintaId = id => {\n this.setState({ seurantamerkintaId: id });\n };\n\n render() {\n if (this.state.loading === true) {\n return null;\n }\n\n if (this.props.kayttajaTyyppi === 1 || this.props.piiriId === null) {\n return (\n
\n \n \n \n \n \n

Oikeustaso puutteellinen!

\n \n
\n
\n );\n }\n let pageContent;\n let toimintaNappi = null;\n let isDisabled = false;\n let linkkinappiluokka = 'LinkkiNappiLevea';\n if (this.props.organisaatioOverrideId > 0) {\n isDisabled = true;\n linkkinappiluokka = 'LinkkiNappiLeveaDisabled';\n } \n let yhdistystenohjausnappi = (\n \n \n this.handlenakyma('yhdistys')}\n >\n Yhdistysten ohjaus\n \n \n );\n let perhekahviloidenohjausnappi = (\n \n \n this.handlenakyma('perhekahvilat')}\n >\n Perhekahviloiden ohjaus\n \n \n );\n let kuntienohjausnappi = (\n \n \n this.handlenakyma('kunnat')}\n >\n Muut merkinnät\n \n \n );\n\n if (this.props.organisaatioOverrideId !== null) {\n toimintaNappi = (\n \n this.props.goTo('Yhdistys')}\n >\n Yhdistyksen toiminta\n \n \n );\n } else {\n toimintaNappi = (\n \n \n \n );\n }\n\n if (this.state.naytayhdistys === true) {\n pageContent = (\n \n );\n } else if (this.state.naytaperhekahvila === true) {\n pageContent = (\n \n );\n } else if (this.state.naytakunta === true) {\n pageContent = (\n \n );\n } else if (this.state.naytapiirisivu === true) {\n pageContent = (\n
\n \n \n \n \n \n

\n Ohjaus {this.props.yhdistysNimi}\n

\n \n \n \n \n
\n {yhdistystenohjausnappi}\n {perhekahviloidenohjausnappi}\n {kuntienohjausnappi}\n \n
\n
\n \n \n \n \n \n \n {toimintaNappi}\n \n \n \n \n
\n );\n } else if (this.state.naytalomake === true) {\n pageContent = (\n \n );\n }\n return {pageContent};\n }\n}\n\nPiiriSivu.propTypes = {\n luokkaId: PropTypes.number,\n yhdistysOverride: PropTypes.func,\n kayttajaTyyppi: PropTypes.number,\n piiriNimi: PropTypes.string,\n piiriId: PropTypes.number,\n organisaatioId: PropTypes.number,\n goTo: PropTypes.func,\n organisaatioOverrideId: PropTypes.number,\n yhdistysNimi: PropTypes.string,\n kayttajaId: PropTypes.number\n};\n\nexport default PiiriSivu;\n","import React, { Component } from 'react';\nimport { Button, Row, Col, Collapse } from 'react-bootstrap';\nimport PropTypes from 'prop-types';\nimport { apiBaseUrl, authString } from '../../../../../urlPaths';\nimport axios from 'axios';\nimport Wrapper from '../../../../../hoc/wrapper/Wrapper';\nimport '../../../../../styles/yhdistys.css';\nimport Modal from '../../../../../hoc/FormComponents/Modal';\nimport moment from 'moment';\n\nconst formatDate = date => moment(date).format('D.M.YYYY');\nclass ToimintaryhmaRiviReduced extends Component {\n state = {\n toimintaryhma: null,\n error: false,\n errorMessage: null,\n success: false,\n showModal: false,\n loading: false,\n pvmLoppu: '',\n viewDetails: false\n };\n\n handlePvmChange = e => {\n this.setState({ pvmloppu: e.target.value });\n };\n\n handleTapahtumaClick = () => {\n this.props.handleToimintaryhmaIdAndNimi(\n this.props.toimintaryhmaid,\n this.props.toimintaryhmanimi\n );\n this.props.handleTapahtumaTasoAndGoTo('Toimintaryhma', 'Tapahtuma');\n };\n\n handleRefreshToimintaryhmalista = () => {\n this.props.refreshToimintaryhmanimet();\n };\n\n handleMuokkaaClick = () => {\n this.props.handleToimintaryhmaIdAndNimi(\n this.props.toimintaryhmaid,\n this.props.toimintaryhmanimi\n );\n this.props.goTo('ToimintaryhmaLomake');\n };\n\n showModal = () => {\n this.setState({ showModal: true });\n };\n\n handleCancel = () => {\n this.setState({ showModal: false });\n };\n\n handleRemove = () => {\n this.poistaToimintaryhma();\n this.setState({\n showModal: false\n });\n };\n\n poistaToimintaryhma = () => {\n const headers = {\n 'Content-Type': 'application/json',\n Authorization: authString(),\n toimintaryhmaid: this.props.toimintaryhmaid,\n pvmloppu: this.state.pvmloppu,\n kayttajaid: this.props.kayttajaid\n };\n axios\n .post(`${apiBaseUrl}PoistaToimintaRyhmaKaytosta`, null, {\n headers\n })\n .then(response => {\n const responseData = response.data;\n this.handleRefreshToimintaryhmalista();\n console.log(responseData);\n })\n .catch(error => {\n console.log(error);\n });\n };\n\n handleRowClick = () => {\n if (!this.state.viewDetails) {\n this.setState({ viewDetails: true });\n } else {\n this.setState({ viewDetails: false });\n }\n };\n\n render() {\n const modal = (\n \n );\n return (\n \n {this.state.showModal ? modal : null}\n \n

\n {this.props.toimintaryhmanimi} \n

\n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n

Nimi

\n \n
\n \n \n

{this.props.toimintaryhmanimi}

\n \n
\n \n

Alkupvm

\n

{formatDate(this.props.pvmalku)}

\n
\n \n

Loppupvm

\n

{formatDate(this.props.pvmloppu)}

\n
\n \n

Missä toimintaa on?

\n

{this.props.missatoimintaaon}

\n
\n \n

Milloin toimintaa on?

\n

{this.props.tilanne}

\n
\n \n

Mistä lisätietoa?

\n

{this.props.lisatietoa}

\n
\n \n

Saako näyttää?

\n

{this.props.saanayttaa == 1 ? 'Kyllä' : 'Ei'}

\n
\n \n

Kirjaus pvm

\n

{formatDate(this.props.pvm)}

\n
\n \n
\n
\n
\n
\n );\n }\n}\n\nToimintaryhmaRiviReduced.propTypes = {\n toimintaryhmaid: PropTypes.number,\n organisaatioid: PropTypes.number,\n kayttajaid: PropTypes.number,\n refreshToimintaryhmanimet: PropTypes.func.isRequired\n};\n\nexport default ToimintaryhmaRiviReduced;\n","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { Panel } from 'react-bootstrap';\nimport axios from 'axios';\nimport { apiBaseUrl, authString } from '../../../../urlPaths';\n//import ToimintaryhmaRivi from '../Toimintaryhma/ToimintaryhmaLomake/ToimintaryhmaRivi';\nimport ToimintaryhmaRiviReduced from '../Toimintaryhma/ToimintaryhmaLomake/ToimintaryhmaRiviReduced';\n\nimport Progressbar from '../../../../hoc/FormComponents/Progressbar';\nimport AlertMessage from '../../../../hoc/FormComponents/AlertMessage';\n\nclass Toimintaryhmatlista extends Component {\n state = {\n loading: false,\n error: false,\n toimintaryhmanimet: [],\n maara: null,\n errorMessage: null\n };\n\n componentDidMount() {\n if (this.state.toimintaryhmanimet.length === 0) {\n this.haeToimintaRyhmaNimet();\n this.setState({ loading: true });\n }\n }\n\n refreshToimintaryhmanimet = () => {\n this.haeToimintaRyhmaNimet();\n this.setState({ loading: true });\n };\n\n haeToimintaRyhmaNimet = () => {\n axios\n .get(`${apiBaseUrl}HaeToimintaRyhmaReducedLista`, {\n headers: {\n Accept: 'application/json',\n 'Content-Type': 'application/json',\n Authorization: authString(),\n organisaatio: this.props.organisaatioid,\n toimintamuotoid: this.props.toimintamuotoid, \n },\n crossdomain: true\n })\n .then(response => {\n this.setState({\n toimintaryhmanimet: response.data,\n loading: false\n });\n })\n .catch(error => {\n console.log(error);\n this.setState({\n error: true,\n loading: false,\n errorMessage: error.message\n });\n });\n };\n\n render() {\n if (\n this.state.loading === true &&\n this.state.toimintaryhmanimet.length < 1\n ) {\n return null;\n }\n let sisalto = null;\n const filteredByID = this.state.toimintaryhmanimet.filter(\n ryhma => ryhma.toimintamuotoid === this.props.toimintamuotoid\n );\n if (this.state.error) {\n sisalto = (\n \n );\n } else if (this.state.loading) {\n sisalto = (\n \n

Haetaan...

\n \n
\n );\n } else if (filteredByID.length === 0) {\n sisalto = (\n \n

Ei lisättyjä ryhmiä.

\n
\n );\n } else {\n sisalto = filteredByID.map((ryhma, index) => (\n \n ));\n }\n return (\n
\n

Ryhmät ja toiminnot

\n {sisalto}\n
\n );\n }\n}\n\nToimintaryhmatlista.propTypes = {\n organisaatioid: PropTypes.number,\n goTo: PropTypes.func.isRequired,\n toimintamuotoid: PropTypes.number\n};\n\nexport default Toimintaryhmatlista;\n","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Wrapper from '../../../hoc/wrapper/Wrapper';\nimport { Row, Glyphicon, Col, Button } from 'react-bootstrap';\nimport Toimintaryhmatlista from './Toimintaryhmat/Toimintaryhmatlista';\nimport Tooltip from '../../../hoc/FormComponents/Tooltip';\n\nclass Toimintamuoto extends Component {\n state = {\n loading: false,\n error: false\n };\n\n render() {\n let toimintamuotoinfo = null;\n if (this.props.debug === true) {\n toimintamuotoinfo = 'toimintamuotoId: ' + this.props.toimintamuotoId;\n }\n return (\n \n \n \n \n \n \n

{this.props.otsikko}

\n
\n {toimintamuotoinfo} \n
\n \n \n \n \n
\n \n \n this.props.goTo('ToimintaryhmaInsertLomake')}\n >\n Lisää ryhmä tai toiminto\n \n \n \n this.props.handleTapahtumaTasoAndGoTo('Toimintamuoto', 'Tapahtuma')}\n >\n Tilastoi kaikki\n \n \n \n
\n
\n \n
\n );\n }\n}\n\nToimintamuoto.propTypes = {\n organisaatioId: PropTypes.number,\n toimintamuotoId: PropTypes.number,\n goTo: PropTypes.func,\n otsikko: PropTypes.string\n};\n\nexport default Toimintamuoto;\n","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { Button, Row, Col, Glyphicon, Form } from 'react-bootstrap';\nimport '../../../../styles/yhdistys.css';\nimport Wrapper from '../../../../hoc/wrapper/Wrapper';\nimport LabeledInput from '../../../../hoc/FormComponents/LabeledInput';\nimport CommonLabeledNumberPicker from '../../../../hoc/FormComponents/Common/CommonLabeledNumberPicker';\nimport LabeledDecimalPicker from '../../../../hoc/FormComponents/LabeledDecimalPicker';\nimport axios from 'axios';\nimport { apiBaseUrl, authString } from '../../../../urlPaths';\nimport Modal from '../../../../hoc/FormComponents/Modal';\nimport Tooltip from '../../../../hoc/FormComponents/Tooltip';\n\nclass ToimintamuotoLomake extends Component {\n state = {\n toimintamuoto: null,\n loading: true,\n error: false,\n errorMessage: null,\n showModal: false,\n success: false\n };\n\n componentDidMount() {\n if (this.props.toimintamuotoId !== null) {\n this.getToimintamuoto();\n }\n }\n\n handleInputChange = (updateobjectname, value) => {\n const toimintamuotoupdate = { ...this.state.toimintamuoto };\n toimintamuotoupdate[updateobjectname] = value;\n this.setState({ toimintamuoto: toimintamuotoupdate });\n };\n\n handleTextChange = e => {\n const target = e.target;\n const kentta = target.attributes.name.nodeValue;\n const toimintamuoto = this.state.toimintamuoto;\n toimintamuoto[kentta] = target.value;\n this.setState({ toimintamuoto });\n };\n\n muokkaaToimintamuoto = e => {\n e.preventDefault();\n const toimintamuotoObjekti = this.state.toimintamuoto;\n const headers = {\n Authorization: authString(),\n kayttajaId: this.props.kayttajaId,\n organisaatioId: this.props.organisaatioId\n };\n\n axios\n .post(`${apiBaseUrl}TallennaToimintaMuoto`, toimintamuotoObjekti, {\n headers\n })\n\n .then(response => {\n const newToimintamuotoData = response.data;\n console.log(newToimintamuotoData);\n this.setState({\n toimintamuoto: newToimintamuotoData,\n showModal: true,\n success: true\n });\n })\n .catch(error => {\n this.setState({\n error: true,\n errorMessage: error.message,\n showModal: true\n });\n });\n this.showModal();\n };\n\n getToimintamuoto = () => {\n axios\n .get(`${apiBaseUrl}HaeToimintamuoto`, {\n headers: {\n Authorization: authString(),\n id: this.props.toimintamuotoId\n },\n crossdomain: true\n })\n .then(response => {\n // If request is good...\n const toimintamuotoData = response.data[0];\n this.setState({ toimintamuoto: toimintamuotoData, loading: false });\n })\n .catch(error => {\n this.setState({\n error: true,\n errorMessage: error.message\n });\n });\n };\n\n showModal = () => {\n this.setState({ showModal: true });\n };\n\n handleHide = () => {\n if (this.state.error) {\n this.setState({\n showModal: false,\n error: false,\n errorMessage: null,\n success: false\n });\n } else {\n this.setState({ showModal: false }, () => {\n this.props.goTo('Yhdistys');\n });\n }\n };\n\n render() {\n let modalContent;\n if (this.state.loading) {\n return null;\n }\n if (this.state.showModal && this.state.error) {\n modalContent = (\n \n );\n } else if (this.state.showModal && this.state.success) {\n modalContent = (\n \n );\n }\n\n return (\n \n {this.state.showModal ? modalContent : null}\n \n \n \n \n \n

{this.props.otsikko}

\n \n \n \n \n
\n
\n

Muokkaa toimintamuodon tietoja

\n \n \n \n
\n );\n }\n}\nToimintamuotoLomake.propTypes = {\n organisaatioId: PropTypes.number,\n toimintamuotoId: PropTypes.number,\n kayttajaId: PropTypes.number\n};\n\nexport default ToimintamuotoLomake;\n\n/* Kenttäjemma. \n \n \n \n \n \n \n \n \n \n*/\n\n","import React, { Component } from 'react';\nimport { Button, Row, Col, Glyphicon, Form } from 'react-bootstrap';\nimport PropTypes from 'prop-types';\nimport Wrapper from '../../../../hoc/wrapper/Wrapper';\nimport '../../../../styles/yhdistys.css';\nimport '../../../../styles/linkkinappi.css';\nimport axios from 'axios';\nimport { apiBaseUrl, authString } from '../../../../urlPaths';\nimport moment from 'moment';\nimport LabeledInput from '../../../../hoc/FormComponents/LabeledInput';\nimport Modal from '../../../../hoc/FormComponents/Modal';\nimport Tooltip from '../../../../hoc/FormComponents/Tooltip';\n\nclass ToimintamuodonAloitus extends React.Component {\n state = {\n toimintamuoto: {\n Id: 0,\n ToimintamuotootsikkoId: this.props.toimintamuotootsikkoId,\n Pvm_alku: moment(Date()).format('YYYY-MM-DD'),\n Onkotoimintaa: 1,\n Toimintaryhmienlukumaara: 0,\n Kokoontumisiavuodessa: 0,\n Aikuisiavuodessa: 0,\n Lapsiavuodessa: 0,\n Vapaaehtoisia: 0,\n Palkallisia: 0,\n Vapaaehtoistentuntejaperkokoontumiskertakeskimaarin: 0.0,\n Tilanne: '',\n Lisatietoa: ''\n },\n error: false,\n success: false,\n errorMessage: null,\n loading: false,\n show: false\n };\n\n lisaaToimintamuoto = e => {\n if (this.state.toimintamuoto.Pvm_alku !== '') {\n const kayttajaId = this.props.kayttajaId;\n const organisaatioId = this.props.organisaatioId;\n\n const headers = {\n 'Content-Type': 'application/json',\n Authorization: authString(),\n kayttajaId,\n organisaatioId\n };\n axios\n .post(`${apiBaseUrl}TallennaToimintaMuoto`, JSON.stringify(this.state.toimintamuoto), {\n headers\n })\n\n .then(response => {\n const responseData = response.data;\n console.log(responseData);\n this.setState({\n show: true,\n success: true\n });\n this.showModal();\n })\n .catch(error => {\n this.setState({\n error: true,\n errorMessage: error.message,\n show: true\n });\n this.showModal();\n });\n } else {\n this.setState({\n error: true,\n errorMessage: 'Täytä vähintään alkupäivämäärä'\n });\n this.showModal();\n }\n e.preventDefault();\n };\n\n handleInputChange = (updateobjectname, value) => {\n const toimintamuotoupdate = { ...this.state.toimintamuoto };\n toimintamuotoupdate[updateobjectname] = value;\n this.setState({ toimintamuoto: toimintamuotoupdate });\n };\n\n handleTextChange = e => {\n const target = e.target;\n const kentta = target.attributes.name.nodeValue;\n const toimintamuoto = this.state.toimintamuoto;\n toimintamuoto[kentta] = target.value;\n this.setState({ toimintamuoto });\n };\n\n showModal = () => {\n this.setState({ show: true });\n };\n\n handleHide = () => {\n if (this.state.error) {\n this.setState({\n show: false,\n error: false,\n errorMessage: null,\n success: false\n });\n } else {\n this.setState({ show: false }, () => {\n this.props.goTo('Yhdistys');\n });\n }\n };\n\n render() {\n let modalContent;\n if (this.state.show && this.state.error) {\n modalContent = (\n \n );\n } else if (this.state.show && this.state.success) {\n modalContent = (\n \n );\n }\n\n return (\n \n {this.state.show ? modalContent : null}\n \n \n \n \n \n

{this.props.otsikko}

\n \n \n \n \n
\n
\n

Aloita toimintamuoto

\n \n \n \n \n \n
\n );\n }\n}\nexport default ToimintamuodonAloitus;\n\nToimintamuodonAloitus.propTypes = {\n toimintamuotoid: PropTypes.number,\n toimintamuotootsikkoId: PropTypes.number,\n otsikko: PropTypes.string,\n goTo: PropTypes.func.isRequired\n};\n\n/*\n \n \n \n \n \n \n \n \n \n \n * */","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { Col, Row, Button, Glyphicon, Collapse } from 'react-bootstrap';\nimport axios from 'axios';\nimport { apiBaseUrl, authString } from '../../../../../../urlPaths';\nimport '../../../../../../styles/yhdistys.css';\nimport '../../../../../../styles/linkkinappi.css';\nimport Modal from '../../../../../../hoc/FormComponents/Modal';\nimport moment from 'moment';\nimport Wrapper from '../../../../../../hoc/wrapper/Wrapper';\n\nconst formatDate = date => moment(date).format('D.M.YYYY');\n\nclass TapahtumaListaRivi extends Component {\n state = {\n viewDetails: false,\n deleting: false,\n showModal: false,\n poistettavaId: null,\n };\n\n toggleGoTo = taso => {\n switch (taso) {\n case 'Organisaatio':\n this.props.handleTapahtumaId(this.props.tapahtuma.id);\n this.props.handleTapahtumaTasoAndGoTo(taso, 'TapahtumanMuokkaus');\n break;\n case 'Toimintamuoto':\n this.props.handleTapahtumaId(this.props.tapahtuma.id);\n this.props.handleTapahtumaTasoAndGoTo(taso, 'TapahtumanMuokkaus');\n break;\n case 'Toimintaryhma':\n this.props.handleTapahtumaId(this.props.tapahtuma.id);\n this.props.handleTapahtumaTasoAndGoTo(taso, 'TapahtumanMuokkaus');\n break;\n default:\n return null;\n }\n };\n \n showModaali = (id) => {\n this.setState({ showModal: true, poistettavaId: id });\n }\n\n onDelete = () => {\n this.poistaTapahtuma();\n this.props.goTo('Toimintamuoto');\n this.setState({ showModal: false });\n }\n onCancel = () => {\n this.setState({ showModal: false });\n }\n\n poistaTapahtuma =() => {\n const headers = {\n Authorization: authString(),\n id: this.state.poistettavaId,\n };\n axios\n .get(`${apiBaseUrl}PoistaTapahtuma`,{ headers })\n .then(response => {\n // const vastaus = response.data;\n })\n .catch(error => {\n });\n };\n\n handleRowClick = () => {\n if (!this.state.viewDetails && !this.props.modify) {\n this.setState({ viewDetails: true });\n } else {\n this.setState({ viewDetails: false });\n }\n };\n\n render() {\n if (this.state.deleting === true) return (null);\n if (this.state.showModal === true) {\n return (\n \n );\n }\n return (\n \n \n \n \n \n \n

{this.props.tapahtuma.otsikko}

\n \n
\n \n \n

Aikaväli: {formatDate(this.props.tapahtuma.alkupvm)} - {formatDate(this.props.tapahtuma.loppupvm)}

\n \n
\n \n \n

{this.props.tapahtuma.kirjaaja}

\n \n
\n \n \n \n {this.props.modify ? (\n \n this.toggleGoTo(this.props.tapahtumaTaso)}\n bsStyle='warning'\n name='Muokkaa'\n >\n \n \n this.showModaali(this.props.tapahtuma.id)}\n bsStyle='danger'\n name='Poista'\n >\n \n \n \n ) : null}\n \n \n
\n
\n \n
\n \n

Otsikko

\n

{this.props.tapahtuma.otsikko}

\n
\n \n

Aikaväli

\n

{formatDate(this.props.tapahtuma.alkupvm)} - {formatDate(this.props.tapahtuma.loppupvm)}

\n
\n \n

Toimintaryhmien määrä

\n

{this.props.tapahtuma.toimintaryhmia}

\n
\n \n

Kokoontumisten/tapahtumien määrä

\n

{this.props.tapahtuma.tapahtumia}

\n
\n \n

Aikuisten käyntikertoja

\n

{this.props.tapahtuma.aikuisia}

\n
\n \n

Lasten käyntikertoja

\n

{this.props.tapahtuma.lapsia}

\n
\n \n

Vapaaehtoisten tunnit yhteensä

\n

{this.props.tapahtuma.vapehttuntejayht}

\n
\n \n

Vapaaehtoisia per kerta keskimäärin

\n

{this.props.tapahtuma.vapehtperkerta}

\n
\n \n
Kirjaamis Pvm
\n

{formatDate(this.props.tapahtuma.pvm)}

\n
\n \n
\n
\n
\n );\n }\n}\n\nTapahtumaListaRivi.propTypes = {\n goTo: PropTypes.func.isRequired,\n orgId: PropTypes.any\n};\n\nexport default TapahtumaListaRivi;\n","import React, { Component } from 'react';\nimport axios from 'axios';\nimport { Panel, Col, Row } from 'react-bootstrap';\nimport { apiBaseUrl, authString } from '../../../../../urlPaths';\nimport '../../../../../styles/yhdistys.css';\nimport Progressbar from '../../../../../hoc/FormComponents/Progressbar';\nimport AlertMessage from '../../../../../hoc/FormComponents/AlertMessage';\nimport TapahtumaListaRivi from './TapahtumaListaRivi/TapahtumaListaRivi';\n\nclass TapahtumienSelausLista extends Component {\n state = {\n tapahtumat: [],\n filteredTapahtumat: [],\n loading: false,\n error: false,\n errorMessage: null\n };\n\n componentDidMount() {\n if (this.state.tapahtumat.length === 0) {\n this.setState({ loading: true });\n this.haeTapahtumat(this.props.organisaatioId);\n }\n }\n\n haeTapahtumat = org => {\n axios\n .get(`${apiBaseUrl}HaeTapahtumaLista?org=${org}`, {\n headers: { Authorization: authString() }\n })\n .then(response => {\n const tapahtumat = response.data;\n // Ei voi pilkkoa vielä tässä: const slicedTapahtumat = tapahtumat.slice(0, 20);\n this.setState(\n {\n tapahtumat: tapahtumat,\n loading: false\n },\n () => {\n const filtered = this.filterTapahtumat(\n this.props.tapahtumaTaso\n ).slice(0, 30);\n this.setState({\n filteredTapahtumat: filtered\n });\n }\n );\n console.log(this.state.tapahtumat);\n console.log(this.state.filteredTapahtumat);\n })\n .catch(error => {\n this.setState({\n error: true,\n errorMessage: error.message,\n loading: false\n });\n console.log(error);\n });\n };\n\n filterTapahtumat = tapahtumaTaso => {\n let filtered = null;\n if (tapahtumaTaso === 'Organisaatio') {\n filtered = this.state.tapahtumat.filter(\n tapahtuma =>\n tapahtuma.organisaatioId === this.props.organisaatioId &&\n tapahtuma.tyyppi === 0\n );\n } else if (tapahtumaTaso === 'Toimintamuoto') {\n filtered = this.state.tapahtumat.filter(\n tapahtuma =>\n tapahtuma.organisaatioId === this.props.organisaatioId &&\n tapahtuma.toimintamuotoId === this.props.toimintamuotoId &&\n tapahtuma.tyyppi === 1\n );\n } else if (tapahtumaTaso === 'Toimintaryhma') {\n filtered = this.state.tapahtumat.filter(\n tapahtuma =>\n tapahtuma.toimintamuotoId === this.props.toimintamuotoId &&\n tapahtuma.toimintaryhmaId === this.props.toimintaryhmaId &&\n tapahtuma.tyyppi === 2\n );\n }\n return filtered;\n };\n\n render() {\n let pageContent = null;\n\n if (this.state.error) {\n pageContent = (\n \n );\n } else if (this.state.loading) {\n pageContent = (\n \n

Haetaan...

\n \n
\n );\n }\n if (this.state.filteredTapahtumat.length === 0) {\n pageContent = (\n \n

Ei lisättyjä tapahtumia.

\n
\n );\n } else {\n pageContent = (\n
\n \n \n

Tilastomerkinnät

\n \n
\n
\n {this.state.filteredTapahtumat.map((tapahtuma, index) => (\n \n ))}\n
\n );\n }\n return
{pageContent}
;\n }\n}\n\nexport default TapahtumienSelausLista;\n","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Wrapper from '../../../../hoc/wrapper/Wrapper';\nimport { Row, Glyphicon, Col, Button } from 'react-bootstrap';\nimport '../../../../styles/yhdistys.css';\nimport '../../../../styles/linkkinappi.css';\nimport TapahtumienSelausLista from './TapahtumaLista/TapahtumienSelausLista';\nimport Tooltip from '../../../../hoc/FormComponents/Tooltip';\n\nclass Tapahtuma extends Component {\n state = {\n modify: false\n };\n\n toggleGoTo = taso => {\n switch (taso) {\n case 'Organisaatio':\n this.props.handleTapahtumaTasoAndGoTo(taso, 'Yhdistys');\n break;\n case 'Toimintamuoto':\n this.props.handleTapahtumaTasoAndGoTo(taso, 'Toimintamuoto');\n break;\n case 'Toimintaryhma':\n this.props.handleTapahtumaTasoAndGoTo(taso, 'Toimintamuoto');\n break;\n default:\n return null;\n }\n };\n\n handleEditClick = () => {\n if (!this.state.modify) {\n this.setState({ modify: true });\n } else {\n this.setState({ modify: false });\n }\n };\n\n render() {\n let otsikko = null;\n if (this.props.tapahtumaTaso === 'Organisaatio') {\n otsikko = this.props.yhdistysNimi;\n } else if (this.props.tapahtumaTaso === 'Toimintamuoto') {\n otsikko = this.props.otsikko;\n } else if (this.props.tapahtumaTaso === 'Toimintaryhma') {\n otsikko = this.props.toimintaryhmaNimi;\n }\n\n return (\n \n \n \n \n \n \n

{otsikko}

\n \n \n \n \n
\n \n \n \n \n \n \n \n \n \n
\n );\n }\n}\n\nTapahtuma.propTypes = {\n otsikko: PropTypes.string,\n goTo: PropTypes.func\n};\n\nexport default Tapahtuma;\n","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { Button, Row, Col, Glyphicon, Form } from 'react-bootstrap';\nimport '../../../../../styles/yhdistys.css';\nimport Wrapper from '../../../../../hoc/wrapper/Wrapper';\nimport LabeledInput from '../../../../../hoc/FormComponents/LabeledInput';\nimport CommonLabeledNumberPicker from '../../../../../hoc/FormComponents/Common/CommonLabeledNumberPicker';\nimport LabeledDecimalPicker from '../../../../../hoc/FormComponents/LabeledDecimalPicker';\nimport axios from 'axios';\nimport { apiBaseUrl, authString } from '../../../../../urlPaths';\nimport Modal from '../../../../../hoc/FormComponents/Modal';\nimport Tooltip from '../../../../../hoc/FormComponents/Tooltip';\n\nclass TapahtumanLisays extends Component {\n state = {\n tapahtuma: {},\n error: false,\n errorMessage: null,\n showModal: false,\n success: false\n };\n\n componentDidMount() {\n this.setDefaultFields();\n }\n\n setDefaultFields = () => {\n if (this.props.tapahtumaTaso === 'Organisaatio') {\n this.setState({\n tapahtuma: {\n Aikuisia: 0,\n KayttajaId: this.props.kayttajaId,\n Lapsia: 0,\n Lisatietoa: '',\n OrganisaatioId: this.props.organisaatioId,\n Otsikko: '',\n Paikka: '',\n Palaute: '',\n PvmTapahtuma: '',\n ToimintamuotoId: null,\n ToimintaryhmaId: null,\n Tyyppi: 0,\n Vapaaehtoisia: 0,\n alkupvm: '',\n loppupvm: '',\n toimintaryhmia: 0,\n tapahtumia: 0,\n vapehttuntejayht: 0,\n vapehtperkerta: 0\n\n }\n });\n }\n if (this.props.tapahtumaTaso === 'Toimintamuoto') {\n this.setState({\n tapahtuma: {\n Aikuisia: 0,\n KayttajaId: this.props.kayttajaId,\n Lapsia: 0,\n Lisatietoa: '',\n OrganisaatioId: this.props.organisaatioId,\n Otsikko: '',\n Paikka: '',\n Palaute: '',\n PvmTapahtuma: '',\n ToimintamuotoId: this.props.toimintamuotoId,\n ToimintaryhmaId: null,\n Tyyppi: 1,\n Vapaaehtoisia: 0,\n alkupvm: '',\n loppupvm: '',\n toimintaryhmia: 0,\n tapahtumia: 0,\n vapehttuntejayht: 0,\n vapehtperkerta: 0\n }\n });\n }\n if (this.props.tapahtumaTaso === 'Toimintaryhma') {\n this.setState({\n tapahtuma: {\n Aikuisia: 0,\n KayttajaId: this.props.kayttajaId,\n Lapsia: 0,\n Lisatietoa: '',\n OrganisaatioId: this.props.organisaatioId,\n Otsikko: '',\n Paikka: '',\n Palaute: '',\n PvmTapahtuma: '',\n ToimintamuotoId: this.props.toimintamuotoId,\n ToimintaryhmaId: this.props.toimintaryhmaId,\n Tyyppi: 2,\n Vapaaehtoisia: 0,\n alkupvm: '',\n loppupvm: '',\n toimintaryhmia: 0,\n tapahtumia: 0,\n vapehttuntejayht: 0,\n vapehtperkerta: 0\n }\n });\n }\n };\n\n handleInputChange = (updateobjectname, value) => {\n const tapahtumaupdate = { ...this.state.tapahtuma };\n tapahtumaupdate[updateobjectname] = value;\n this.setState({ tapahtuma: tapahtumaupdate });\n };\n\n handleTextChange = e => {\n const target = e.target;\n const kentta = target.attributes.name.nodeValue;\n const tapahtuma = this.state.tapahtuma;\n tapahtuma[kentta] = target.value;\n this.setState({ tapahtuma });\n };\n\n lisaaTapahtuma = e => {\n e.preventDefault();\n\n const tapahtumaData = this.state.tapahtuma;\n\n const headers = {\n 'Content-Type': 'application/json',\n Authorization: authString()\n };\n axios\n .post(`${apiBaseUrl}TallennaTapahtuma`, tapahtumaData, { headers })\n .then(response => {\n const responseData = response.data;\n console.log(responseData);\n this.setState({\n showModal: true,\n success: true\n });\n })\n .catch(error => {\n this.setState({\n error: true,\n errorMessage: error.message,\n showModal: true\n });\n });\n this.showModal();\n };\n\n showModal = () => {\n this.setState({ showModal: true });\n };\n\n handleHide = () => {\n if (this.state.error) {\n this.setState({\n showModal: false,\n error: false,\n errorMessage: null,\n success: false\n });\n } else {\n this.setState({ showModal: false }, () => {\n this.toggleGoTo(this.props.tapahtumaTaso);\n });\n }\n };\n\n toggleGoTo = taso => {\n this.props.handleTapahtumaTasoAndGoTo(taso, 'Tapahtuma');\n };\n\n render() {\n let modalContent;\n if (this.state.showModal && this.state.error) {\n modalContent = (\n \n );\n } else if (this.state.showModal && this.state.success) {\n modalContent = (\n \n );\n }\n let otsikko = null;\n if (this.props.tapahtumaTaso === 'Organisaatio') {\n otsikko = this.props.yhdistysNimi;\n } else if (this.props.tapahtumaTaso === 'Toimintamuoto') {\n otsikko = this.props.otsikko;\n } else if (this.props.tapahtumaTaso === 'Toimintaryhma') {\n otsikko = this.props.toimintaryhmaNimi;\n }\n let tallennaNappi = null;\n const tallennaEnabled = this.state.tapahtuma.loppupvm !== '' ? true : false;\n if (tallennaEnabled === true) {\n tallennaNappi = (\n \n )\n } else {\n tallennaNappi = \n }\n return (\n \n {this.state.showModal ? modalContent : null}\n \n \n \n \n \n

{otsikko}

\n \n \n \n \n
\n
\n

Lisää tilastoja

\n \n {/* */}\n \n \n \n \n \n \n \n \n \n \n \n \n {tallennaNappi}\n \n \n
\n );\n }\n}\nTapahtumanLisays.propTypes = {\n toimintaryhmaId: PropTypes.number,\n OrganisaatioId: PropTypes.number,\n toimintamuototsikotid: PropTypes.number\n};\n\nexport default TapahtumanLisays;\n","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { Button, Row, Col, Glyphicon, Form } from 'react-bootstrap';\nimport '../../../../../styles/yhdistys.css';\nimport Wrapper from '../../../../../hoc/wrapper/Wrapper';\nimport LabeledInput from '../../../../../hoc/FormComponents/LabeledInput';\nimport CommonLabeledNumberPicker from '../../../../../hoc/FormComponents/Common/CommonLabeledNumberPicker';\nimport LabeledDecimalPicker from '../../../../../hoc/FormComponents/LabeledDecimalPicker';\nimport axios from 'axios';\nimport { apiBaseUrl, authString } from '../../../../../urlPaths';\nimport Modal from '../../../../../hoc/FormComponents/Modal';\nimport Tooltip from '../../../../../hoc/FormComponents/Tooltip';\n\nclass TapahtumanMuokkaus extends Component {\n state = {\n tapahtuma: null,\n loading: true,\n error: false,\n errorMessage: null,\n showModal: false,\n success: false\n };\n\n componentDidMount() {\n if (this.props.tapahtumaId !== null) {\n this.getTapahtuma(this.props.tapahtumaId);\n }\n }\n\n handleInputChange = (updateobjectname, value) => {\n const tapahtumaupdate = { ...this.state.tapahtuma };\n tapahtumaupdate[updateobjectname] = value;\n this.setState({ tapahtuma: tapahtumaupdate });\n };\n\n handleTextChange = e => {\n const target = e.target;\n const kentta = target.attributes.name.nodeValue;\n const tapahtuma = this.state.tapahtuma;\n tapahtuma[kentta] = target.value;\n this.setState({ tapahtuma });\n };\n\n muokkaaTapahtuma = e => {\n e.preventDefault();\n const tapahtumaData = this.state.tapahtuma;\n const headers = {\n Authorization: authString()\n };\n\n axios\n .post(`${apiBaseUrl}TallennaTapahtuma`, tapahtumaData, { headers })\n\n .then(response => {\n const newTapahtumaData = response.data;\n console.log(newTapahtumaData);\n this.setState({\n tapahtuma: newTapahtumaData,\n showModal: true,\n success: true\n });\n })\n .catch(error => {\n this.setState({\n error: true,\n errorMessage: error.message,\n showModal: true\n });\n });\n this.showModal();\n };\n\n getTapahtuma = tapahtumaId => {\n axios\n .get(`${apiBaseUrl}HaeTapahtuma`, {\n headers: {\n Authorization: authString(),\n id: tapahtumaId\n },\n crossdomain: true\n })\n .then(response => {\n // If request is good...\n const tapahtumaData = response.data;\n this.setState({ tapahtuma: tapahtumaData, loading: false });\n })\n .catch(error => {\n this.setState({\n error: true,\n errorMessage: error.message\n });\n });\n };\n\n showModal = () => {\n this.setState({ showModal: true });\n };\n\n handleHide = () => {\n if (this.state.error) {\n this.setState({\n showModal: false,\n error: false,\n errorMessage: null,\n success: false\n });\n } else {\n this.setState({ showModal: false }, () => {\n this.toggleGoTo(this.props.tapahtumaTaso);\n });\n }\n };\n\n toggleGoTo = taso => {\n this.props.handleTapahtumaTasoAndGoTo(taso, 'Tapahtuma');\n };\n\n render() {\n let modalContent;\n if (this.state.loading) {\n return null;\n }\n if (this.state.showModal && this.state.error) {\n modalContent = (\n \n );\n } else if (this.state.showModal && this.state.success) {\n modalContent = (\n \n );\n }\n let otsikko = null;\n if (this.props.tapahtumaTaso === 'Organisaatio') {\n otsikko = this.props.yhdistysNimi;\n } else if (this.props.tapahtumaTaso === 'Toimintamuoto') {\n otsikko = this.props.otsikko;\n } else if (this.props.tapahtumaTaso === 'Toimintaryhma') {\n otsikko = this.props.toimintaryhmaNimi;\n }\n return (\n \n {this.state.showModal ? modalContent : null}\n \n \n \n \n \n

{otsikko}

\n \n \n \n \n
\n
\n \n

Muokkaa merkintää

\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n );\n }\n}\nTapahtumanMuokkaus.propTypes = {\n toimintaryhmaId: PropTypes.number,\n OrganisaatioId: PropTypes.number,\n toimintamuototsikotid: PropTypes.number\n};\n\nexport default TapahtumanMuokkaus;\n","import React, { Component } from 'react';\nimport { FormControl, Button, Row, Col, Glyphicon, Checkbox } from 'react-bootstrap';\nimport PropTypes from 'prop-types';\nimport { apiBaseUrl, authString } from '../../../../../urlPaths';\nimport Wrapper from '../../../../../hoc/wrapper/Wrapper';\nimport '../../../../../styles/yhdistys.css';\nimport axios from 'axios';\nimport LabeledInput from '../../../../../hoc/FormComponents/LabeledInput';\nimport CommonLabeledNumberPicker from '../../../../../hoc/FormComponents/Common/CommonLabeledNumberPicker';\nimport LabeledDecimalPicker from '../../../../../hoc/FormComponents/LabeledDecimalPicker';\nimport Modal from '../../../../../hoc/FormComponents/Modal';\nimport Tooltip from '../../../../../hoc/FormComponents/Tooltip';\n\nclass ToimintaryhmaLomake extends Component {\n state = {\n Muokkaa: false,\n toimintaryhma: null,\n toimintamuotoid: this.props.toimintamuotoid,\n loading: false,\n error: false,\n errorMessage: null,\n success: false,\n showModal: false\n };\n\n componentDidMount() {\n console.log('TRLOMAKE');\n if (this.props.toimintaryhmaid !== null) {\n this.haeToimintaRyhma();\n this.setState({ loading: true });\n }\n }\n\n handleInputChange = (updateobjectname, value) => {\n const toim_ryhma = { ...this.state.toimintaryhma };\n toim_ryhma[updateobjectname] = value;\n this.setState({ toimintaryhma: toim_ryhma });\n };\n\n handleTextChange = e => {\n const target = e.target;\n const kentta = target.attributes.name.nodeValue;\n const toimintaryhma = this.state.toimintaryhma;\n toimintaryhma[kentta] = target.value;\n this.setState({ toimintaryhma });\n };\n\n\n handleBoxClick = event => {\n const toim_ryhma = { ...this.state.toimintaryhma };\n if (toim_ryhma.saanayttaa == 1) {\n toim_ryhma.saanayttaa = 0;\n } else {\n toim_ryhma.saanayttaa = 1;\n }\n this.setState({ toimintaryhma: toim_ryhma });\n };\n\n\n tallenna = e => {\n e.preventDefault();\n const data = this.state.toimintaryhma;\n data.kayttajaid = this.props.kayttajaId;\n if (data.nimi !== '' && data.pvmalku) {\n axios\n .post(`${apiBaseUrl}TallennaToimintaRyhmaReduced`, data, {\n headers: {\n Authorization: authString()\n }\n })\n .then(response => {\n const toimintaryhmadata = response.data;\n this.setState({\n toimintaryhma: toimintaryhmadata,\n showModal: true,\n success: true\n });\n this.showModal();\n })\n .catch(error => {\n this.setState({\n error: true,\n errorMessage: error.message,\n showModal: true\n });\n this.showModal();\n });\n } else {\n this.setState({\n error: true,\n errorMessage: 'Täytä vähintään nimi ja aloituspäivämäärä'\n });\n this.showModal();\n }\n };\n\n haeToimintaRyhma = () => {\n axios\n .get(`${apiBaseUrl}HaeToimintaRyhmaReduced`, {\n headers: {\n Authorization: authString(),\n id: this.props.toimintaryhmaid\n },\n crossdomain: true\n })\n .then(response => {\n // If request is good...\n const toimintaryhmadata = response.data;\n this.setState({ toimintaryhma: toimintaryhmadata, loading: false });\n })\n .catch(error => {\n this.setState({\n error: true,\n errorMessage: error.message\n });\n });\n };\n\n showModal = () => {\n this.setState({ show: true });\n };\n\n handleHide = () => {\n if (this.state.error) {\n this.setState({\n show: false,\n error: false,\n errorMessage: null,\n success: false\n });\n } else {\n this.setState({ show: false }, () => {\n this.props.goTo('Toimintamuoto');\n });\n }\n };\n\n render() {\n if (this.state.toimintaryhma === null) {\n return null;\n }\n let modalContent;\n if (this.state.showmodal && this.state.error) {\n modalContent = (\n \n );\n } else if (this.state.showModal && this.state.success) {\n modalContent = (\n \n );\n }\n let checked = false;\n if (this.state.toimintaryhma.saanayttaa == 1) {\n checked = true;\n } else {\n checked = false;\n }\n return (\n \n {this.state.showModal ? modalContent : null}\n \n \n \n \n \n

{this.props.otsikko}

\n \n \n \n \n
\n
\n

Muokkaa toiminnon tietoja

\n \n \n \n \n \n \n \n nämä tiedot saa näyttää MLL nettisivuilla ss\n \n \n \n \n
\n );\n }\n}\n//defaultValue={this.state.toimintaryhma.aikuisiavuodessa}\n//defaultValue={this.state.toimintaryhma.aikuisiaperkerta}\n//defaultValue={this.state.toimintaryhma.lapsiavuodessa}\n//defaultValue={this.state.toimintaryhma.lapsiaperkerta}\n\nToimintaryhmaLomake.propTypes = {\n toimintamuotoid: PropTypes.number,\n toimintaryhmaid: PropTypes.number,\n kayttajaId: PropTypes.number\n};\nexport default ToimintaryhmaLomake;\n","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Wrapper from '../../../../hoc/wrapper/Wrapper';\nimport { Row, Col, Button, Glyphicon } from 'react-bootstrap';\nimport ToimintaryhmaLomake from './ToimintaryhmaLomake/ToimintaryhmaLomake';\n\nclass Toimintaryhma extends Component {\n render() {\n return (\n \n \n \n

{this.props.otsikko}

\n \n \n \n \n
\n \n
\n );\n }\n}\n\nexport default Toimintaryhma;\n\nToimintaryhma.propTypes = {\n otsikko: PropTypes.string,\n organisaatioid: PropTypes.number,\n toimintamuotoid: PropTypes.number,\n goTo: PropTypes.func.isRequired,\n kayttajaId: PropTypes.number\n};\n","import React, { Component } from 'react';\nimport { FormControl, Button, Row, Col, Glyphicon, Checkbox } from 'react-bootstrap';\nimport PropTypes from 'prop-types';\nimport { apiBaseUrl, authString } from '../../../../../urlPaths';\nimport Wrapper from '../../../../../hoc/wrapper/Wrapper';\nimport '../../../../../styles/yhdistys.css';\nimport axios from 'axios';\nimport LabeledInput from '../../../../../hoc/FormComponents/LabeledInput';\n// import LabeledNumberPicker from '../../../../../hoc/FormComponents/LabeledNumberPicker';\nimport CommonLabeledNumberPicker from '../../../../../hoc/FormComponents/Common/CommonLabeledNumberPicker';\nimport LabeledDecimalPicker from '../../../../../hoc/FormComponents/LabeledDecimalPicker';\nimport Modal from '../../../../../hoc/FormComponents/Modal';\nimport Tooltip from '../../../../../hoc/FormComponents/Tooltip';\n\nclass ToimintaryhmaInsertLomake extends Component {\n state = {\n Muokkaa: false,\n toimintaryhma: null,\n toimintamuotoid: this.props.toimintamuotoid,\n loading: false,\n error: false,\n errorMessage: null,\n showModal: false,\n success: false\n };\n\n componentDidMount() {\n console.log('TRINSERTLOMAKE');\n if (this.props.toimintaryhmaid !== null) {\n this.uusiToimintaRyhma();\n this.setState({ loading: true });\n }\n }\n\n handleInputChange = (updateobjectname, value) => {\n const toim_ryhma = { ...this.state.toimintaryhma };\n toim_ryhma[updateobjectname] = value;\n this.setState({ toimintaryhma: toim_ryhma });\n };\n\n handleTextChange = e => {\n const target = e.target;\n const kentta = target.attributes.name.nodeValue;\n const toimintaryhma = this.state.toimintaryhma;\n toimintaryhma[kentta] = target.value;\n this.setState({ toimintaryhma });\n };\n\n\n handleBoxClick = event => {\n const toim_ryhma = { ...this.state.toimintaryhma };\n if (toim_ryhma.saanayttaa == 1) {\n toim_ryhma.saanayttaa = 0;\n } else {\n toim_ryhma.saanayttaa = 1;\n }\n this.setState({ toimintaryhma: toim_ryhma });\n };\n\n\n tallenna = e => {\n e.preventDefault();\n if (\n this.state.toimintaryhma.nimi !== '' &&\n this.state.toimintaryhma.pvmalku\n ) {\n const data = this.state.toimintaryhma;\n data.kayttajaid = this.props.kayttajaId;\n axios\n .post(`${apiBaseUrl}TallennaToimintaRyhmaReduced`, data, {\n headers: {\n Authorization: authString()\n }\n })\n .then(response => {\n const toimintaryhmadata = response.data;\n this.setState({\n toimintaryhma: toimintaryhmadata,\n success: true\n });\n this.showModal();\n })\n .catch(error => {\n this.setState({\n error: true,\n errorMessage: error.message\n });\n });\n } else {\n this.setState({\n error: true,\n errorMessage: 'Täytä vähintään nimi ja aloituspäivämäärä'\n });\n this.showModal();\n }\n };\n\n showModal = () => {\n this.setState({ showModal: true });\n };\n\n handleHide = () => {\n if (this.state.error) {\n this.setState({\n showModal: false,\n error: false,\n errorMessage: null,\n success: false\n });\n } else {\n this.setState({ showModal: false }, () => {\n this.props.goTo('Toimintamuoto');\n });\n }\n };\n\n uusiToimintaRyhma = e => {\n const toimintaryhmadata = {\n //aikuisiaperkerta: 0,\n //aikuisiavuodessa: 0,\n id: 0,\n kayttajaid: this.props.kayttajaId,\n nimi: '',\n missatoimintaaon: '',\n saanayttaa: 1,\n //palkallisia: 0,\n pvm: '',\n pvmalku: '',\n pvmloppu: '',\n //kokoontumisiavuodessa: 0,\n //lapsiavuodessa: 0,\n lisatietoa: '',\n //lapsiaperkerta: 0,\n tilanne: '',\n toimintamuotoid: this.state.toimintamuotoid,\n //vapaaehtoisia: 0,\n //vapehttuntejaperkerta: 0\n };\n this.setState({ toimintaryhma: toimintaryhmadata });\n };\n\n handleClickHeader = event => {\n this.setState({\n Muokkaa: false\n });\n };\n\n render() {\n let modalContent;\n if (this.state.toimintaryhma === null) {\n return null;\n }\n\n if (this.state.showModal && this.state.error) {\n modalContent = (\n \n );\n } else if (this.state.showModal && this.state.success) {\n modalContent = (\n \n );\n }\n console.log('RYHMA');\n console.log(this.state.toimintaryhma);\n\n let checked = false;\n if (this.state.toimintaryhma.saanayttaa == 1) {\n checked = true;\n } else\n {\n checked = false;\n }\n\n return (\n \n {this.state.showModal ? modalContent : null}\n \n \n \n \n \n

{this.props.otsikko}

\n \n \n \n \n
\n
\n

Lisää ryhmä, toiminto tai tapahtuma

\n \n \n \n \n \n \n \n nämä tiedot saa näyttää MLL nettisivuilla\n \n \n\n \n \n
\n );\n }\n}\n//defaultValue={this.state.toimintaryhma.aikuisiavuodessa}\n//defaultValue={this.state.toimintaryhma.aikuisiaperkerta}\n//defaultValue={this.state.toimintaryhma.lapsiavuodessa}\n//defaultValue={this.state.toimintaryhma.lapsiaperkerta}\n\nToimintaryhmaInsertLomake.propTypes = {\n toimintamuotoid: PropTypes.number,\n kayttajaId: PropTypes.number\n};\nexport default ToimintaryhmaInsertLomake;\n\n\n/* POISTETTU TILASTOINTIKENTÄT 3.6.2019 / Tiketti #89\n \n \n \n \n \n \n \n \n \n * */","import React, { Component } from 'react';\nimport { Row, Button } from 'react-bootstrap';\nimport { apiBaseUrl, authString } from '../../urlPaths';\nimport Wrapper from '../../hoc/wrapper/Wrapper';\nimport axios from 'axios';\nimport PropTypes from 'prop-types';\nimport '../../styles/linkkinappi.css';\nimport Toimintamuodot from '../../components/Yhdistys/Toimintamuodot';\nimport PiiriSivu from '../../components/Piiri/PiiriSivu';\nimport Toimintamuoto from '../../components/Yhdistys/Toimintamuoto/Toimintamuoto';\nimport ToimintamuotoLomake from '../../components/Yhdistys/Toimintamuoto/ToimintamuotoLomake/ToimintamuotoLomake';\nimport ToimintamuodonAloitus from '../../components/Yhdistys/Toimintamuoto/ToimintamuodonAloitus/ToimintamuodonAloitus'; // eslint-disable-line\nimport Tapahtuma from '../../components/Yhdistys/Toimintamuoto/Tapahtuma/Tapahtuma';\nimport TapahtumanLisays from '../../components/Yhdistys/Toimintamuoto/Tapahtuma/TapahtumaLomake/TapahtumanLisays';\nimport TapahtumanMuokkaus from '../../components/Yhdistys/Toimintamuoto/Tapahtuma/TapahtumaLomake/TapahtumanMuokkaus';\nimport Toimintaryhma from '../../components/Yhdistys/Toimintamuoto/Toimintaryhma/Toimintaryhma';\nimport ToimintaryhmaLomake from '../../components/Yhdistys/Toimintamuoto/Toimintaryhma/ToimintaryhmaLomake/ToimintaryhmaLomake';\nimport ToimintaryhmaInsertLomake from '../../components/Yhdistys/Toimintamuoto/Toimintaryhma/ToimintaryhmaLomake/ToimintaryhmaInsertLomake';\nimport Tooltip from '../../hoc/FormComponents/Tooltip';\n\nclass Home extends Component {\n displayName = Home.name;\n\n state = {\n debug: false,\n kayttajaTiedot: null,\n organisaatioId: null,\n organisaatioOverrideId: null,\n organisaatioOverrideNimi: null,\n kayttajaTyyppi: null,\n luokkaId: null, // 1 = Yhdistys, 2=Perhekahvila. Piirin etusivun napit p��tt��.\n piiriId: null, // 1 tai 2 kokeillessa\n piiriNimi: null,\n seurantamerkintaId: null,\n kayttajaId: null,\n kayttajaNimi: null,\n viewName: 'Home',\n toimintamuotootsikot: [],\n toimintamuotoid: null,\n toimintamuotootsikkoId: null,\n otsikko: null,\n toimintaryhmaId: null,\n toimintaryhmaNimi: null,\n yhdistysNimi: null,\n tapahtumaTaso: null,\n tapahtumaId: null,\n url: null,\n };\n\n componentDidMount() {\n this.getOrganisation();\n }\n\n getOrganisation = () => {\n axios\n .get(`${apiBaseUrl}HaeKayttajatiedot`, {\n headers: { Authorization: authString() }\n })\n .then(response => {\n const data = response.data;\n this.setState({\n kayttajaTiedot: data,\n yhdistysNimi:\n this.state.organisaatioOverrideId !== null\n ? this.state.organisaatioOverrideNimi\n : data.item3.pitkaNimi,\n organisaatioId:\n this.state.organisaatioOverrideId !== null\n ? this.state.organisaatioOverrideId\n : data.item3.id, // Organisaatio override id piiripuolelta\n piiriId: data.item3.piiriID,\n piiriNimi: data.item4 !== null ? data.item4.piiriNimi : '',\n kayttajaTyyppi: data.item2, // Jos käyttäjätyyppi = 1 kyseessä yhdistyskäyttäjä. Käyttäjätyyppi = 2 Piirikäyttäjä. kt 3=MLL pääkäyttäjä.\n kayttajaId: data.item1,\n kayttajaNimi: data.item5,\n url: data.item3.url,\n });\n console.log(data);\n })\n\n .catch(error => {\n console.log(`error${error}`);\n });\n };\n\n goToHandler = goTo => {\n this.setState({\n viewName: goTo\n });\n };\n\n yhdistysOverride = (yhdistys, nimi) => {\n this.setState({\n organisaatioId: yhdistys,\n organisaatioOverrideId: yhdistys,\n organisaatioOverrideNimi: nimi\n });\n };\n\n handleData = (id, toimintamuotoid, nimi) => {\n this.setState({\n toimintamuotootsikkoId: id,\n toimintamuotoid,\n otsikko: nimi\n });\n };\n\n handleArrayData = array => {\n this.setState({\n toimintamuotootsikot: array\n });\n };\n\n handleTapahtumaTasoAndGoTo = (taso, goTo) => {\n this.setState({\n tapahtumaTaso: taso\n });\n this.goToHandler(goTo);\n };\n\n handleTapahtumaId = value => {\n this.setState({\n tapahtumaId: value\n });\n };\n\n handleToimintaryhmaIdAndNimi = (toimintaryhmaId, toimintaryhmaNimi) => {\n this.setState({\n toimintaryhmaId,\n toimintaryhmaNimi\n });\n };\n\n handleDataAndGoTo = (id, toimintamuotoid, otsikko, goTo) => {\n if (id && otsikko) {\n this.handleData(id, toimintamuotoid, otsikko);\n }\n if (goTo) {\n this.goToHandler(goTo);\n }\n };\n\n handlePiiriDataAndGoTo = (luokkaId, seurantamerkintaId, goTo) => {\n if (luokkaId && goTo) {\n this.setState({ luokkaId }, () => {\n this.goToHandler(goTo);\n });\n }\n if (seurantamerkintaId && goTo) {\n this.setState({ seurantamerkintaId }, () => {\n this.goToHandler(goTo);\n });\n }\n };\n\n render() {\n if (this.state.piiriId === null && this.state.organisaatioId === null) {\n return (\n \n

Ladataan MLL Seurantaa...

\n
\n );\n }\n if (this.state.organisaatioId === 0) {\n return (\n \n

Sinulla ei ole järjestelmän käyttöoikeutta!

\n
\n );\n }\n\n var urli = \"\";\n if (this.state.url !== null) {\n urli = Piirin yhteystiedot\n }\n\n let debuginfo = null;\n const yhdistys = (\n \n );\n const piiri = (\n // Huom! yhdistysOverrideä käytetään Piiripuolella asettamaan organisaatioksi siellä valittu yhdistys.\n \n );\n const toimintamuoto = (\n \n );\n\n const toimintamuotolomake = (\n \n );\n const toimintamuodonaloitus = (\n \n );\n const tapahtuma = (\n \n );\n const tapahtumanlisays = (\n \n );\n\n const tapahtumanmuokkaus = (\n \n );\n\n const toimintaryhma = (\n \n );\n\n const toimintaryhmalomake = (\n \n );\n\n const toimintaryhmainsertlomake = (\n \n );\n\n let content = null;\n let piirisivu = null;\n const infoteksti =\n this.state.viewName === 'Home' ? (\n \n ) : null;\n if (this.state.kayttajaTyyppi > 1) {\n piirisivu = (\n this.goToHandler('Piiri')}\n >\n Ammatillinen ohjaus\n \n );\n }\n\n if (this.state.viewName === 'Yhdistys') {\n content = yhdistys;\n } else if (this.state.viewName === 'Piiri') {\n content = piiri;\n } else if (this.state.viewName === 'Toimintamuoto') {\n content = toimintamuoto;\n } else if (this.state.viewName === 'ToimintamuotoLomake') {\n content = toimintamuotolomake;\n } else if (this.state.viewName === 'ToimintamuodonAloitus') {\n content = toimintamuodonaloitus;\n } else if (this.state.viewName === 'Tapahtuma') {\n content = tapahtuma;\n } else if (this.state.viewName === 'TapahtumanLisays') {\n content = tapahtumanlisays;\n } else if (this.state.viewName === 'TapahtumanMuokkaus') {\n content = tapahtumanmuokkaus;\n } else if (this.state.viewName === 'Toimintaryhma') {\n content = toimintaryhma;\n } else if (this.state.viewName === 'ToimintaryhmaLomake') {\n content = toimintaryhmalomake;\n } else if (this.state.viewName === 'ToimintaryhmaInsertLomake') {\n content = toimintaryhmainsertlomake;\n } else {\n\n content = (\n
\n \n this.goToHandler('Yhdistys')}\n >\n Oma toiminta\n \n \n {piirisivu}\n \n
\n );\n }\n if (this.state.debug === true) {\n debuginfo = (\n
\n KäyttäjäId: {this.state.kayttajaId}\n Käyttäjätyyppi: {this.state.kayttajaTyyppi}\n OrganisaatioId: {this.state.organisaatioId}\n Yhdistysnimi: {this.state.yhdistysNimi}\n PiiriId: {this.state.piiriId}\n PiiriNimi: {this.state.piiriNimi}\n viewName: {this.state.viewName}\n TapahtumaId: {this.state.tapahtumaId}\n \n OrganisaatioOverrideId: {this.state.organisaatioOverrideId}\n \n
\n );\n }\n return (\n \n {content}\n {debuginfo}\n
\n \n {urli}\n \n
\n
\n \n
{this.state.kayttajaNimi}
\n
\n
\n {infoteksti}\n
\n );\n }\n}\n\nHome.propTypes = {\n organisaatioId: PropTypes.number\n};\n\nexport default Home;\n","import React, { Component } from 'react';\nimport { Layout } from './hoc/Layout/Layout';\nimport Home from './containers/Home/Home';\n\nexport default class App extends Component {\n displayName = App.name;\n\n render() {\n return (\n \n \n \n );\n }\n}\n","// In production, we register a service worker to serve assets from local cache.\n\n// This lets the app load faster on subsequent visits in production, and gives\n// it offline capabilities. However, it also means that developers (and users)\n// will only see deployed updates on the \"N+1\" visit to a page, since previously\n// cached resources are updated in the background.\n\n// To learn more about the benefits of this model, read https://goo.gl/KwvDNy.\n// This link also includes instructions on opting out of this behavior.\n\nconst isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n // [::1] is the IPv6 localhost address.\n window.location.hostname === '[::1]' ||\n // 127.0.0.1/8 is considered localhost for IPv4.\n window.location.hostname.match(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n);\n\nexport default function register() {\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\n // The URL constructor is available in all browsers that support SW.\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location);\n if (publicUrl.origin !== window.location.origin) {\n // Our service worker won't work if PUBLIC_URL is on a different origin\n // from what our page is served on. This might happen if a CDN is used to\n // serve assets; see https://github.com/facebookincubator/create-react-app/issues/2374\n return;\n }\n\n window.addEventListener('load', () => {\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\n\n if (isLocalhost) {\n // This is running on localhost. Lets check if a service worker still exists or not.\n checkValidServiceWorker(swUrl);\n } else {\n // Is not local host. Just register service worker\n registerValidSW(swUrl);\n }\n });\n }\n}\n\nfunction registerValidSW(swUrl) {\n navigator.serviceWorker\n .register(swUrl)\n .then(registration => {\n registration.onupdatefound = () => {\n const installingWorker = registration.installing;\n installingWorker.onstatechange = () => {\n if (installingWorker.state === 'installed') {\n if (navigator.serviceWorker.controller) {\n // At this point, the old content will have been purged and\n // the fresh content will have been added to the cache.\n // It's the perfect time to display a \"New content is\n // available; please refresh.\" message in your web app.\n console.log('New content is available; please refresh.');\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a\n // \"Content is cached for offline use.\" message.\n console.log('Content is cached for offline use.');\n }\n }\n };\n };\n })\n .catch(error => {\n console.error('Error during service worker registration:', error);\n });\n}\n\nfunction checkValidServiceWorker(swUrl) {\n // Check if the service worker can be found. If it can't reload the page.\n fetch(swUrl)\n .then(response => {\n // Ensure service worker exists, and that we really are getting a JS file.\n if (\n response.status === 404 ||\n response.headers.get('content-type').indexOf('javascript') === -1\n ) {\n // No service worker found. Probably a different app. Reload the page.\n navigator.serviceWorker.ready.then(registration => {\n registration.unregister().then(() => {\n window.location.reload();\n });\n });\n } else {\n // Service worker found. Proceed as normal.\n registerValidSW(swUrl);\n }\n })\n .catch(() => {\n console.log(\n 'No internet connection found. App is running in offline mode.'\n );\n });\n}\n\nexport function unregister() {\n if ('serviceWorker' in navigator) {\n navigator.serviceWorker.ready.then(registration => {\n registration.unregister();\n });\n }\n}\n","import 'bootstrap/dist/css/bootstrap.css';\nimport 'bootstrap/dist/css/bootstrap-theme.css';\nimport './indexApp.css';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport { BrowserRouter } from 'react-router-dom';\nimport App from './App';\nimport registerServiceWorker from './registerServiceWorker';\n\nconst baseUrl = document.getElementsByTagName('base')[0].getAttribute('href');\nconst rootElement = document.getElementById('root');\n\nReactDOM.render(\n \n \n ,\n rootElement\n);\n\nregisterServiceWorker();\n","import { AuthenticationContext, adalFetch, withAdalLogin } from 'react-adal';\n// ALFAME DEVELOPMENT ASETUKSET\n//export const adalConfig = {\n// tenant: 'alfame.com', // Azure Active Directory -> Properities -> Directory ID\n// clientId: '0c0392e1-98fa-4f40-a6ce-620349fcf427', // Application id\n// endpoints: {\n// api: 'https://alfame.com/83a92f43-d7af-4c58-9378-254a04e1d791/oauth2/v2.0/token' // Url + Directory ID\n// },\n// redirectUri: 'https://seurantamll.azurewebsites.net', // https://localhost:44317 Varmista, että tähän asetettu arvo löytyy azuren redirect urleista\n// cacheLocation: 'localStorage'\n//};\n\n// TUOTANTOASETUKSET\nexport const adalConfig = {\n tenant: 'mll.fi', // Azure Active Directory -> Properities -> Directory ID\n clientId: '4bfd9e1a-513e-40cc-b0b1-df6de745a196', // Application id\n endpoints: {\n api: 'https://mll.fi/c76a02d4-bb26-466d-8b8f-135ed699f407/oauth2/v2.0/token' // Url + Directory ID\n },\n redirectUri: 'https://seurantamll.azurewebsites.net', // TÄHÄN APPLIKAATION URL,\n cacheLocation: 'localStorage'\n};\n\n\n\nexport const authContext = new AuthenticationContext(adalConfig);\nexport const adalApiFetch = (fetch, url, options) =>\n adalFetch(authContext, adalConfig.endpoints.api, fetch, url, options);\n\nexport const withAdalLoginApi = withAdalLogin(authContext, adalConfig.endpoints.api);\n//console.log(authContext.getCachedUser());\nexport const getToken = () =>\n //authContext.getCachedUser().\n authContext.getCachedToken(authContext.config.clientId)\n;\n","//import 'bootstrap/dist/css/bootstrap.css';\n//import 'bootstrap/dist/css/bootstrap-theme.css';\n//import './index.css';\n//import React from 'react';\n//import ReactDOM from 'react-dom';\n//import { BrowserRouter } from 'react-router-dom';\n//import App from './App';\n//import registerServiceWorker from './registerServiceWorker';\n\n//const baseUrl = document.getElementsByTagName('base')[0].getAttribute('href');\n//const rootElement = document.getElementById('root');\n\n//ReactDOM.render(\n// \n// \n// ,\n// rootElement\n//);\n\n//registerServiceWorker();\n\nimport { runWithAdal } from 'react-adal';\nimport { authContext } from './adalConfig';\n\nconst DO_NOT_LOGIN = false;\n\nrunWithAdal(\n authContext,\n () => {\n require('./indexApp.js');\n },\n DO_NOT_LOGIN\n);\n"],"sourceRoot":""}