{"version":3,"sources":["webpack:///./Scripts/Components/PconModal.js","webpack:///./Scripts/Containers/PconModal.container.js"],"names":["PconModal","Component","_this$props","this","props","handleLoad","src","togglePcon","react_default","a","createElement","className","translate","onClick","onLoad","frameBorder","id","PconModalContainer","_this","PconModal_container_classCallCheck","_super","call","state","isLoaded","showModal","bind","PconModal_container_assertThisInitialized","document","getElementById","addEventListener","$","on","pconModal","newVariantId","attr","newurl","replace","updatePcon","iframe","parent","remove","append","setState","nextProps","url","_this2","event","target","style","display","addFromPcon","setTimeout","Components_PconModal","connect","pcon","dispatch","updatePconUrl"],"mappings":"q5CA8BeA,oPA3BSC,oQACX,IAAAC,EACiCC,KAAKC,MAApCC,EADFH,EACEG,WAAYC,EADdJ,EACcI,IAAKC,EADnBL,EACmBK,WAExB,OACIC,EAAAC,EAAAC,cAAA,OAAKC,UAAU,iBACXH,EAAAC,EAAAC,cAAA,OAAKC,UAAU,gBACfH,EAAAC,EAAAC,cAAA,UAAKE,YAAU,iCACfJ,EAAAC,EAAAC,cAAA,QAAMG,QAASN,EAAYI,UAAU,eAArC,MAEAH,EAAAC,EAAAC,cAAA,OAAKC,UAAU,cACfH,EAAAC,EAAAC,cAAA,UACII,OAAQT,EACRM,UAAU,cACVI,YAAY,IACZC,GAAG,iBACHV,IAAKA,IAETE,EAAAC,EAAAC,cAAA,UAAQM,GAAG,eACNJ,YAAU,oxCCfzBK,oPAA2BhB,2BAC/B,SAAAgB,EAAYb,GAAO,IAAAc,EAAA,mGAAAC,CAAAhB,KAAAc,IACjBC,EAAAE,EAAAC,KAAAlB,KAAMC,IACDkB,OACHC,UAAU,EACVjB,IAAKF,EAAME,IACXkB,WAAW,GAEbN,EAAKb,WAAaa,EAAKb,WAAWoB,KAAhBC,EAAAR,IAClBA,EAAKX,WAAaW,EAAKX,WAAWkB,KAAhBC,EAAAR,IAECS,SAASC,eAAe,aAChCC,iBAAiB,QAASX,EAAKX,YAE1CuB,IAAE,4BAA4BC,GAAG,QAAS,WACxC,IAAIC,EAAYF,IAAE,gBAEdG,EADcH,IAAE,aACWI,KAAK,0BAEpCF,EAAUE,KAAK,kBAAmBD,GAClC,IACIE,EADUH,EAAUE,KAAK,YACRE,QAAQ,eAAgB,KAAOH,EAAe,MAEnE7B,EAAMiC,WAAWF,GACjB,IAAIG,EAASR,IAAE,mBACXS,EAASD,EAAOC,SACpBA,EAAOC,OAAOF,GACdC,EAAOE,OAAOH,KA1BCpB,8FA+BjBf,KAAKuC,UAAUnB,UAAU,EAAOC,WAAYrB,KAAKmB,MAAME,0DAGnCmB,GAIpB,MAHsB,KAAlBA,EAAUC,KAAcD,EAAUC,MAAQzC,KAAKmB,MAAMhB,KACvDH,KAAKuC,UAAWpC,IAAKqC,EAAUC,OAE1B,uCAGI,IAAAC,EAAA1C,MACOwB,SAASC,eAAe,cAChCC,iBAAiB,QAAS,SAACiB,GAAkC,cAAnBA,EAAMC,OAAO/B,IAAoB6B,EAAKtC,eAEtFJ,KAAKmB,MAAMC,WACEI,SAASC,eAAe,eAChCoB,MAAMC,QAAU,UACvB9C,KAAKC,MAAM8C,cACXC,WAAW,WACTN,EAAKH,UAAUnB,UAAU,KACxB,MAEHpB,KAAKuC,UAAWnB,UAAU,qCAK5B,OAAGpB,KAAKmB,MAAME,UAEVhB,EAAAC,EAAAC,cAAA,OAAKM,GAAG,aAAaL,UAAU,cAC3BH,EAAAC,EAAAC,cAAC0C,GAAU9C,IAAKH,KAAKmB,MAAMhB,IAAKD,WAAYF,KAAKE,WAAYE,WAAYJ,KAAKI,cAI/EC,EAAAC,EAAAC,cAAA,qBAqBI2C,sBAjBS,SAAA/B,GACtB,OACEsB,IAAKtB,EAAMgC,KAAKV,MAIO,SAAAW,GACzB,OACEL,YAAa,WACXK,EAASL,gBAEXb,WAAY,SAAAO,GACVW,EAASC,YAAcZ,OAKdS,CAA6CpC","file":"11.b4d6ad3d3ad7ddbbe211.js","sourcesContent":["import React, {Component} from 'react';\r\nimport { translate } from '../Services/translation';\r\n\r\nclass PconModal extends Component {\r\n render() {\r\n const {handleLoad, src, togglePcon} = this.props;\r\n \r\n return (\r\n <div className=\"modal-content\">\r\n <div className=\"modal-header\">\r\n <h5>{translate('product.customizeyourproduct')}</h5>\r\n <span onClick={togglePcon} className=\"modal-close\">×</span>\r\n </div>\r\n <div className=\"modal-body\">\r\n <iframe\r\n onLoad={handleLoad}\r\n className=\"pcon-iframe\"\r\n frameBorder=\"0\"\r\n id=\"pcon-ui-iframe\"\r\n src={src}\r\n ></iframe>\r\n <dialog id=\"pcon-dialog\">\r\n {translate('product.addedtocart')}\r\n </dialog>\r\n </div>\r\n </div>\r\n )\r\n }\r\n}\r\n\r\nexport default PconModal;","import React, { Component } from 'react';\r\nimport { connect } from 'react-redux';\r\nimport { addFromPcon } from '../Actions/Cart.action';\r\nimport { updatePconUrl } from '../Actions/Pcon.action';\r\nimport $ from 'jquery';\r\nimport PconModal from '../Components/PconModal';\r\n\r\nclass PconModalContainer extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n isLoaded: false,\r\n src: props.src,\r\n showModal: false\r\n };\r\n this.handleLoad = this.handleLoad.bind(this);\r\n this.togglePcon = this.togglePcon.bind(this);\r\n\r\n const openButton = document.getElementById(\"open-pcon\");\r\n openButton.addEventListener(\"click\", this.togglePcon);\r\n\r\n $('.product-variant-list li').on('click', function () {\r\n let pconModal = $('#pcon-modals'); // current iframe\r\n let currentItem = $('#variants'); // selected item\r\n let newVariantId = currentItem.attr('data-selected-pcon-nbr');\r\n\r\n pconModal.attr('data-variant-id', newVariantId); // Update item\r\n let pconUrl = pconModal.attr('data-src');\r\n let newurl = pconUrl.replace(/(ban=).*?(&)/, '$1' + newVariantId + '$2');\r\n\r\n props.updatePcon(newurl);\r\n let iframe = $('#pcon-ui-iframe');\r\n let parent = iframe.parent();\r\n parent.remove(iframe);\r\n parent.append(iframe);\r\n });\r\n }\r\n\r\n togglePcon() {\r\n this.setState({isLoaded: false, showModal: !this.state.showModal})\r\n }\r\n\r\n shouldComponentUpdate(nextProps) {\r\n if (nextProps.url !== '' && nextProps.url !== this.state.src)\r\n this.setState({ src: nextProps.url });\r\n\r\n return true;\r\n }\r\n\r\n handleLoad() {\r\n const pconModal = document.getElementById(\"pcon-modal\");\r\n pconModal.addEventListener(\"click\", (event) => { if(event.target.id == \"pcon-modal\") this.togglePcon() })\r\n\r\n if (this.state.isLoaded) {\r\n const dialog = document.getElementById(\"pcon-dialog\");\r\n dialog.style.display = 'inherit';\r\n this.props.addFromPcon();\r\n setTimeout(() => {\r\n this.setState({isLoaded: false});\r\n }, 1000);\r\n } else {\r\n this.setState({ isLoaded: true });\r\n }\r\n }\r\n\r\n render() {\r\n if(this.state.showModal) {\r\n return (\r\n <div id=\"pcon-modal\" className=\"pcon-modal\">\r\n <PconModal src={this.state.src} handleLoad={this.handleLoad} togglePcon={this.togglePcon} />\r\n </div>\r\n );\r\n }\r\n return <div></div>\r\n }\r\n}\r\n\r\nconst mapStateToProps = state => {\r\n return {\r\n url: state.pcon.url,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = dispatch => {\r\n return {\r\n addFromPcon: () => {\r\n dispatch(addFromPcon());\r\n },\r\n updatePcon: url => {\r\n dispatch(updatePconUrl(url));\r\n },\r\n };\r\n};\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(PconModalContainer);\r\n"],"sourceRoot":""}