{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/components/ClosestEvents.vue?f581","webpack:///./src/App.vue?3d1e","webpack:///./src/components/AdminEditForm.vue?f247","webpack:///./src/components/OperatorSelectCommercial.vue?b771","webpack:///./src/views/SignIn.vue?48d8","webpack:///./src/components/AdminSelectCommercial.vue?def3","webpack:///./src/components/UnavailableForm.vue?67d3","webpack:///./src/components/Table.vue?ac44","webpack:///./src/components/OperatorForm.vue?e3ae","webpack:///./src/App.vue?4eb2","webpack:///./src/App.vue?ec60","webpack:///./src/App.vue?640d","webpack:///./src/App.vue","webpack:///./src/views/Planning.vue?352b","webpack:///./src/components/AdminEditForm.vue?b32a","webpack:///./src/models/CalendarEvent.ts","webpack:///./src/models/FormCalendarEvent.ts","webpack:///./src/data/status.ts","webpack:///./src/utils/getDiffDays.ts","webpack:///./src/data/reasons.ts","webpack:///./src/components/SmoothReflow.vue?ada4","webpack:///src/components/SmoothReflow.vue","webpack:///./src/components/SmoothReflow.vue?b9c9","webpack:///./src/components/SmoothReflow.vue","webpack:///./src/components/Table.vue?79e4","webpack:///./src/components/Table.vue?64db","webpack:///./src/components/Table.vue?e39a","webpack:///./src/components/Table.vue","webpack:///./src/api/http-constants.ts","webpack:///./src/components/AdminEditForm.vue?1a37","webpack:///./src/components/AdminEditForm.vue?4165","webpack:///./src/components/AdminEditForm.vue","webpack:///./src/components/CommercialEditForm.vue?5e06","webpack:///./src/components/CommercialEditForm.vue?b0ec","webpack:///./src/components/CommercialEditForm.vue?ca91","webpack:///./src/components/CommercialEditForm.vue","webpack:///./src/components/Documents.vue?9d07","webpack:///./src/store/index.ts","webpack:///./src/utils/params.ts","webpack:///./src/models/AdminError.ts","webpack:///./src/store/modules/auth.ts","webpack:///./src/api/api.ts","webpack:///./src/store/modules/documents.ts","webpack:///./src/components/Documents.vue?dc07","webpack:///./src/components/Documents.vue?615a","webpack:///./src/components/Documents.vue","webpack:///./src/components/Messages.vue?ae2a","webpack:///./src/components/Messages.vue?ce32","webpack:///./src/components/Messages.vue?a85f","webpack:///./src/components/Messages.vue","webpack:///./src/utils/differenceBetweenObjects.ts","webpack:///./src/utils/nixxis.ts","webpack:///./src/utils/seeasoftware.ts","webpack:///./src/utils/hermes.ts","webpack:///./src/store/modules/calendar.ts","webpack:///./src/components/CommercialShowEvent.vue?66e4","webpack:///./src/utils/format.ts","webpack:///./src/utils/css.ts","webpack:///./src/components/CommercialShowEvent.vue?26f1","webpack:///./src/components/CommercialShowEvent.vue?ed2a","webpack:///./src/components/CommercialShowEvent.vue","webpack:///./src/utils/csv.ts","webpack:///./src/utils/download.ts","webpack:///./src/components/UnavailableForm.vue?7d49","webpack:///./src/components/UnavailableForm.vue?2daa","webpack:///./src/components/UnavailableForm.vue?4fc6","webpack:///./src/components/UnavailableForm.vue","webpack:///./src/store/modules/commercials.ts","webpack:///./src/utils/events.ts","webpack:///./src/components/AdminSelectCommercial.vue?d931","webpack:///./src/components/AdminSelectCommercial.vue?ec67","webpack:///./src/components/AdminSelectCommercial.vue?bf78","webpack:///./src/components/AdminSelectCommercial.vue","webpack:///./src/components/OperatorForm.vue?106e","webpack:///./src/components/OperatorForm.vue?8c3b","webpack:///./src/components/OperatorForm.vue?8ac1","webpack:///./src/components/OperatorForm.vue","webpack:///./src/components/UnavailableRecurrenceForm.vue?fd80","webpack:///./src/components/UnavailableRecurrenceForm.vue?42a8","webpack:///./src/components/UnavailableRecurrenceForm.vue?a9b9","webpack:///./src/components/UnavailableRecurrenceForm.vue","webpack:///./src/components/OperatorSelectCommercial.vue?b44c","webpack:///./src/components/OperatorSelectCommercial.vue?b812","webpack:///./src/components/OperatorSelectCommercial.vue?b349","webpack:///./src/components/OperatorSelectCommercial.vue","webpack:///./src/components/ClosestEvents.vue?7539","webpack:///./src/components/ClosestEvents.vue?ca13","webpack:///./src/components/ClosestEvents.vue?afeb","webpack:///./src/components/ClosestEvents.vue","webpack:///./src/views/Planning.vue?adc9","webpack:///./src/views/Planning.vue?bafd","webpack:///./src/views/Planning.vue","webpack:///./src/views/SignIn.vue?de54","webpack:///./src/views/SignIn.vue?cb91","webpack:///./src/views/SignIn.vue?4637","webpack:///./src/views/SignIn.vue","webpack:///./src/router.ts","webpack:///./src/registerServiceWorker.ts","webpack:///./src/main.ts","webpack:///./src/components/CommercialEditForm.vue?c2f0","webpack:///./src/components/CommercialShowEvent.vue?399a","webpack:///./src/views/Planning.vue?c7b8"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","installedChunks","push","Object","prototype","hasOwnProperty","call","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","app","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_ClosestEvents_vue_vue_type_style_index_0_id_7f5acf56_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_ClosestEvents_vue_vue_type_style_index_0_id_7f5acf56_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default","_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_App_vue_vue_type_style_index_0_id_146041c2_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_App_vue_vue_type_style_index_0_id_146041c2_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default","_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_AdminEditForm_vue_vue_type_style_index_0_id_6b57f963_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_AdminEditForm_vue_vue_type_style_index_0_id_6b57f963_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default","_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_OperatorSelectCommercial_vue_vue_type_style_index_0_id_5c23168a_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_OperatorSelectCommercial_vue_vue_type_style_index_0_id_5c23168a_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default","_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_SignIn_vue_vue_type_style_index_0_id_6adf9d34_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_SignIn_vue_vue_type_style_index_0_id_6adf9d34_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default","_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_AdminSelectCommercial_vue_vue_type_style_index_0_id_86a18a20_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_AdminSelectCommercial_vue_vue_type_style_index_0_id_86a18a20_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default","_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_UnavailableForm_vue_vue_type_style_index_0_id_1cc45ccb_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_UnavailableForm_vue_vue_type_style_index_0_id_1cc45ccb_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default","_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_Table_vue_vue_type_style_index_0_id_11ffc1c7_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_Table_vue_vue_type_style_index_0_id_11ffc1c7_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default","_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_OperatorForm_vue_vue_type_style_index_0_id_24d3a42f_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_OperatorForm_vue_vue_type_style_index_0_id_24d3a42f_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default","Appvue_type_template_id_146041c2_scoped_true_render","_vm","this","_h","$createElement","_c","_self","staticClass","attrs","staticStyle","flex","staticRenderFns","Appvue_type_script_lang_ts_App","_Vue","App","classCallCheck","possibleConstructorReturn","getPrototypeOf","arguments","inherits","vue_property_decorator","tslib_es6","Appvue_type_script_lang_ts_","src_Appvue_type_script_lang_ts_","component","componentNormalizer","src_App","Planningvue_type_template_id_0ed05441_render","display","flex-direction","z-index","color","dark","dense","view","_v","_s","weekNumber","_e","font-size","title","role","commercials","items","item-text","item-value","label","solo-inverted","flat","model","callback","$$v","selectedCommercialID","expression","on","id","onOperatorCommercialID","currentCommercial","bottom","slot","icon","click","$event","preventDefault","onClosestEvents","href","mailContactMedia","target","contact","onSync","class","spinning","syncing","left","large","username","_f","disabled","zoomLevel","zoomMin","zoomOut","zoomMax","zoomIn","toIAgendaV1","route","exact","to","showDocuments","downloadMeetings","addUnavailableRecurrent","logout","overflow","position","planningCSSClass","margin-top","_m","ref","top","width","right","onPrev","round","onToday","onNext","loggedAs","periods","max-width","deleteDialog","onDeleteEvent","editType","fullscreen","editDialog","height","event","currentEvent","save","onSave","cancel","delete","isOpen","show","operatorFormDisabled","showSnackbar","onShowSnackbar","onRecurrentSave","persistent","loadingDialog","indeterminate","column","mt-4","row","showMessages","showMooveComMessage","moveMessage","domProps","innerHTML","content","onCancelMoove","onAcceptMoove","showOperatorErrorMessage","operatorErrorMessage","showHermesDialog","completedFields","totalFields","showNixxisErrorMessage","nixxisErrorMessage","showNixxisDialog","showSeeasoftwareErrorMessage","seeasoftwareErrorMessage","showSeeasoftwareDialog","showSaving","content-class","showClosestEvents","visible","commercialId","calendarUserId","navigateToEvent","close","snackbar","status","timeout","duration","multi-line","$set","message","opened","cssRules","Planningvue_type_template_id_0ed05441_staticRenderFns","AdminEditFormvue_type_template_id_6b57f963_scoped_true_render","submit","valid","grid-list-lg","wrap","xs12","sm6","statusData","hide-details","required","rules","select","change","onStatusChange","scopedSlots","_u","fn","item","size","close-on-content-click","lazy","transition","offset-y","full-width","min-width","startDateMenu","append-icon","readonly","date","start_date","locale","first-day-of-week","input","return-value","hour","update:returnValue","_g","prepend-icon","startDialog","format","allowed-minutes","v","allowed-hours","$refs","end_date","endDialog","reasons","clearable","md4","campaign","indice","prospect","md8","_l","unknownFields","auto-grow","box","justify-space-between","onDelete","type","AdminEditFormvue_type_template_id_6b57f963_scoped_true_staticRenderFns","CalendarEvent_CalendarEvent","CalendarEvent","backendID","text","comment","commercialComment","topage","topfic","campaignNumber","Date","rs","typers","civility","lastname","firstname","address","address2","zip","city","phone","phoneBis","mobile","email","siret","FormCalendarEvent_FormCalendarEvent","FormCalendarEvent","status_status","getDiffDays","from","oneDay","firstDate","secondDate","diffDays","Math","getTime","SmoothReflowvue_type_template_id_2e95a0ec_render","tag","_t","SmoothReflowvue_type_template_id_2e95a0ec_staticRenderFns","SmoothReflowvue_type_script_lang_js_SmoothReflow","mixins","vue_smooth_reflow_min_default","a","props","String","default","options","$smoothReflow","SmoothReflowvue_type_script_lang_js_","SmoothReflow_component","components_SmoothReflow","Tablevue_type_template_id_11ffc1c7_scoped_true_render","index","hide-headers","hide-actions","Tablevue_type_template_id_11ffc1c7_scoped_true_staticRenderFns","Tablevue_type_script_lang_ts_Table","Table","createClass","_this","toConsumableArray","_chunks","nbTables","forceDesktop","$vuetify","breakpoint","nbItems","chunks","chunk_default","pop","Boolean","Tablevue_type_script_lang_ts_","components_Tablevue_type_script_lang_ts_","Table_component","components_Table","getBackendURL","document","location","hostname","backendURL","HERMES_TOTAL_FIELDS","HIDDEN_UNKNOWN_FIELDS","EDITABLE_UNKNOWN_FIELDS","dayjs_min_default","extend","customParseFormat_default","AdminEditFormvue_type_script_lang_ts_AdminEditForm","AdminEditForm","smoothReflowSettings","transitionEvent","selector","propertyName","headers","reason","startHourMenu","startHourMenuTime","endDateMenu","endHourMenu","endHourMenuTime","objectSpread","undefined","menu","$emit","$form","form","validate","startDate","endDate","toDate","endDateClone","setDate","getDate","_items","filter","x","pItems","includes","encodedAddress","encodeURIComponent","concat","deep","immediate","components","SmoothReflow","filters","plurializeOccurence","count","parse_int_default","AdminEditFormvue_type_script_lang_ts_","components_AdminEditFormvue_type_script_lang_ts_","AdminEditForm_component","components_AdminEditForm","CommercialEditFormvue_type_template_id_0b69f2d8_scoped_true_render","grid-list-md","CommercialEditFormvue_type_template_id_0b69f2d8_scoped_true_staticRenderFns","CommercialEditFormvue_type_script_lang_ts_CommercialEditForm","CommercialEditForm","CommercialEditFormvue_type_script_lang_ts_","components_CommercialEditFormvue_type_script_lang_ts_","CommercialEditForm_component","components_CommercialEditForm","Documentsvue_type_template_id_0b41b502_render","documents","two-line","subheader","avatar","url","Documentsvue_type_template_id_0b41b502_staticRenderFns","vue_runtime_esm","use","vuex_esm","store","Store","getLogged","state","auth","logged","watch","dispatch","src_store","parseParams","params","_params","substr","pairs","split","obj","reduce","previousValue","currentValue","pair","decodeURIComponent","stringifyParams","array","keys_default","map","element","query","join","AdminError_AdminError","Error","auth_Auth","_VuexModule","Auth","token","messageAccepted","userID","roles","companyID","initialized","_login2","asyncToGenerator","regeneratorRuntime","mark","_callee","_ref","password","resp1","data1","_context","prev","next","api_login","sent","context","commit","getUser","includes_default","saveToLocalstorage","t0","stop","login","_x","_autoLogin","_callee2","currentURL","newParams","newParamsStr","newPath","_context2","URL","searchParams","search","omit_default","pathname","src_router","replace","path","autoLogin","_getUser2","_callee3","resp","user","_context3","api_getUser","company","loginMessage","_acceptMessage","_callee4","_context4","acceptMessage","_logout","_callee5","_context5","_init","_callee6","_context6","abrupt","restoreFromLocalstorage","console","log","init","_ready","_callee7","_context7","ready","localStorage","setItem","stringify_default","stateStr","getItem","JSON","parse","esm","rawError","dynamic","namespaced","DEV","axiosInstance","axios_default","baseURL","post","getCompanyUsers","getDocuments","getMeetings","postMeetingDefault","req","postMeetingNixxis","postMeetingSeeasoftware","deleteMeeting","meetingID","postUnavailable","postRecurrentUnavailable","deleteRecurrentUnavailable","putMeetingUpdateStatus","put","putMeetingMoove","putMeetingUpdateInformation","putUnavailable","getMeetingsAround","zipCode","userId","getNotificationConfirmation","getNotificationMove","getUsers","getUserByID","getUserByHermesID","hermesID","getNixxisObject","activityID","internalID","postSeeasoftwareObject","getUsersDocuments","getUsersMeetings","getUserGoogleSync","getCampaign","axios_retry_default","retries","interceptors","request","config","Authorization","error","promise_default","reject","response","documents_Documents","Documents","loading","events","_load","_resp","fileName","fileOriginalName","load","_loadFromRoute","_paramID","paramID","isNaN","cleanup","loadFromRoute","_x2","currentRoute","_this2","beforeEach","_x3","_x4","_x5","_cleanup","modules_documents","Documentsvue_type_script_lang_ts_Documents","Documentsvue_type_script_lang_ts_","components_Documentsvue_type_script_lang_ts_","Documents_component","components_Documents","Messagesvue_type_template_id_a3c5ae56_render","grid-gap","border-radius","Messagesvue_type_template_id_a3c5ae56_staticRenderFns","relativeTime_default","Messagesvue_type_script_lang_ts_Messages","Messages","messages","Array","keys","formatDate","Messagesvue_type_script_lang_ts_","components_Messagesvue_type_script_lang_ts_","Messages_component","components_Messages","differenceBetweenObjects","base","changes","transform_default","isEqual_default","isObject_default","cleanupNixxisObj","output","cloneDeep_default","forEach","startsWith","isSeeasoftware","parseIndiceFromSeeasoftwareInternalID","parts","cleanupSeeasoftwareObj","isHermesFinished","_arr","_i","X","keyEl","querySelector","getCompletedFieldsCount","total","_arr2","_i2","parseOperatorParamsFromURL","operatorParams","trim","parseOperatorParams","_arr3","_i3","valueEl","cleanupHermes","_arr4","_i4","el","calendar_Calendar","Calendar","constraints","userInfos","autoValidationDelay","moveMsg","confirmationMsg","pendingUpdate","syncingErrorMessage","hermesFinished","nixxisFinished","seeasoftwareFinished","seeasoftwareInternalID","completedFieldsCount","operatorType","operatorCommercials","errorMessage","_loadEvents","meetings","_events","isOnlyCommercial","memo","startedAt","endedAt","eventId","loadEvents","_loadConstraints","get_default","durationMeeting","durationTravel","maxWeeklyMeeting","loadConstraints","_loadMessages","moveResp","confirmationResp","loadMessages","all","_loadStartDateAndMeetingID","startDateParam","startDateDayJS","meetingIDParam","loadStartDateAndMeetingID","_callee9","_context9","_callee8","hermesIDs","_operatorCommercials","_context8","_ref3","_ref4","compact_default","_loadUser","_callee10","_context10","loadUser","_x6","_this3","interval","setInterval","clearInterval","operatorParamsFromURL","_loadOperatorParamsFromNixxis","_callee11","_context11","campaigndata","PORTABLE","warn","loadOperatorParamsFromNixxis","_loadOperatorParamsFromSeeasoftware","_callee12","_context12","activityId","internalId","loadOperatorParamsFromSeeasoftware","_callee14","_this4","_context14","loadOperatorParamsHERMES","_ref5","_callee13","_context13","_x7","_x8","_x9","_callee15","_context15","_callee16","_context16","_addEvent","_callee18","args","__req","backendEvent","updateEvent","_this5","_context18","_callee17","isOperator","_context17","recurrence","occurrence","t1","addEvent","_x10","_updateEvent","_callee20","_req","diff","diffKeys","isOnlyCommentOrMemo","isOnlyDates","reqOnlyMemoAndComment","reqOnlyDates","_context20","lastEvent","recurrentParent","intersection_default","isOnlyCommentOrMemoKeys","difference_default","inter","_callee19","_context19","_x11","_removeEvent","_callee21","_context21","removeEvent","_x12","_sync","_callee22","_context22","sync","_clearSyncingErrorMessage","_callee23","_context23","clearSyncingErrorMessage","_forceLoadEvents","_callee24","_context24","forceLoadEvents","calendar","CommercialShowEventvue_type_template_id_86117bea_scoped_true_render","font-weight","shrink","statusPrefix","text-align","mapLink","forceReadOnlyAndDesktop","md6","commentWithBR","isReadonly","commentCommercialWithBR","commercialCommentWasEdited","justify-center","onValidate","onReasonClick","validateDialog","confirmationMessage","refuseMessage","saveDialog","refuseSaveDialog","acceptSaveDialog","CommercialShowEventvue_type_template_id_86117bea_scoped_true_staticRenderFns","format_formatStatus","_status","undefinedStatus","statusObj","find","formatReason","_reason","undefinedReason","reasonObj","formatStatusAdvanced","_status2","_reason2","format_formatDate","dateDayjs","formatAutoValidationDate","delay","add","getAllCSS","_stylesTags","getElementsByTagName","stylesTags","styles","CommercialShowEventvue_type_script_lang_ts_CommercialEditForm","val","oldVal","_onPrint","$meetingView","printCSS","allCSS","css","printd","meetingView","$nextTick","print","launchPrint","onPrint","$route","_infos","infos","CommercialShowEventvue_type_script_lang_ts_","components_CommercialShowEventvue_type_script_lang_ts_","CommercialShowEvent_component","CommercialShowEvent","formatDuration","hours","floor","minutes","dataToArray","filteredEvents","orderedEvents","orderBy_default","rows","concat_default","arrayToCSV","csv","accu","escapedRow","downloadFile","filename","header","blob","Blob","isIE","navigator","appName","userAgent","match","msSaveBlob","createObjectURL","createElement","setAttribute","style","body","appendChild","removeChild","UnavailableFormvue_type_template_id_1cc45ccb_scoped_true_render","titre","startTime","endTime","UnavailableFormvue_type_template_id_1cc45ccb_scoped_true_staticRenderFns","UnavailableFormvue_type_script_lang_ts_UnavailableForm","UnavailableForm","UnavailableFormvue_type_script_lang_ts_","components_UnavailableFormvue_type_script_lang_ts_","UnavailableForm_component","components_UnavailableForm","commercials_CommercialsModule","CommercialsModule","loadAllCommercials","loadCompanyCommercials","_loadAllCommercials","usersResp","users","_commercials","filter_default","commercial","_loadCompanyCommercials","modules_commercials","getCountOfEventsPerWeek","first","startOf","last","endOf","filteredEventsBis","inRange_default","AdminSelectCommercialvue_type_template_id_86a18a20_scoped_true_render","suggestedCommercials","persistent-hint","browser-autocomplete","search-input","no-filter","update:searchInput","blur","onBlur","AdminSelectCommercialvue_type_template_id_86a18a20_scoped_true_staticRenderFns","AdminSelectCommercialvue_type_script_lang_ts_AdminSelectCommercial","AdminSelectCommercial","_onBlur","remove_accents_default","toLocaleLowerCase","AdminSelectCommercialvue_type_script_lang_ts_","components_AdminSelectCommercialvue_type_script_lang_ts_","AdminSelectCommercial_component","components_AdminSelectCommercial","OperatorFormvue_type_template_id_24d3a42f_scoped_true_render","onSubmit","refreshCampaign","OperatorFormvue_type_template_id_24d3a42f_scoped_true_staticRenderFns","keyTranslations","RS","TYPERS","SIRET","EMAIL","CIVILITE","NOM","PRENOM","ADR1","ADR2","CP","VILLE","TEL","TEL2","MOBILE","COMMENTAIRES","INDICE","NUM_CAMP_HERMES","TOPAGE","TOPFIC","OperatorFormvue_type_script_lang_ts_OperatorForm","OperatorForm","_refreshCampaign","then","catch","_onShow","translatedKey","onShow","OperatorFormvue_type_script_lang_ts_","components_OperatorFormvue_type_script_lang_ts_","OperatorForm_component","components_OperatorForm","UnavailableRecurrenceFormvue_type_template_id_5d7afb94_render","grid-list-xl","sm7","mandatory","action","xs6","parseDate","startDateFormated","startDateDialog","scrollable","endDateFormated","endDateDialog","startHour","startHourDialog","endHour","endHourDialog","sm5","checkboxError","days","align-end","outline","small","selectAllDays","unselectAllDays","UnavailableRecurrenceFormvue_type_template_id_5d7afb94_staticRenderFns","UnavailableRecurrenceFormvue_type_script_lang_ts_days","monday","tuesday","wednesday","thursday","friday","saturday","sunday","UnavailableRecurrenceFormvue_type_script_lang_ts_UnavailableRecurrenceForm","UnavailableRecurrenceForm","selected","_onSave","isCheckboxValid","_message","validateCheckbox","_date$split","_date$split2","slicedToArray","year","month","day","_date$split3","_date$split4","padStart","UnavailableRecurrenceFormvue_type_script_lang_ts_","components_UnavailableRecurrenceFormvue_type_script_lang_ts_","UnavailableRecurrenceForm_component","components_UnavailableRecurrenceForm","OperatorSelectCommercialvue_type_template_id_5c23168a_scoped_true_render","commercialID","OperatorSelectCommercialvue_type_template_id_5c23168a_scoped_true_staticRenderFns","OperatorSelectCommercialvue_type_script_lang_ts_OperatorSelectCommercial","OperatorSelectCommercial","OperatorSelectCommercialvue_type_script_lang_ts_","components_OperatorSelectCommercialvue_type_script_lang_ts_","OperatorSelectCommercial_component","components_OperatorSelectCommercial","ClosestEventsvue_type_template_id_7f5acf56_scoped_true_render","onClick","distance_km","ClosestEventsvue_type_template_id_7f5acf56_scoped_true_staticRenderFns","ClosestEventsvue_type_script_lang_ts_ClosestEvents","ClosestEvents","_onVisibleChange","eventsData","onVisibleChange","formatHour","formatStatus","out","formatName","ClosestEventsvue_type_script_lang_ts_","components_ClosestEventsvue_type_script_lang_ts_","ClosestEvents_component","components_ClosestEvents","Planningvue_type_script_lang_ts_Planning","Planning","currentEventID","scheduler","operatorEventCreatedID","map_default","eventType","pendingEvents","eventToAccept","dragging","lastClientX","mouseDirection","canShowNixxisDialog","canShowSeeasoftwareDialog","canShowHermesDialog","debouncedSetLoading","debounce_default","setLoading","showLogout","showLogoutTimeout","linkHandlerName","link","limitationTimeout","open","_onSync","setTimeout","_onSelectedCommercialID","onSelectedCommercialID","cascade_event_display","cascade_event_margin","cascade_event_count","profil","details_on_create","edit_on_create","limit_start","limit_end","clearTimeout","max","min","hour_size_px","updateView","$router","setCurrentView","_onDate","focusMeeting","onDate","deleteEvent","getEvent","startLightbox","endLightbox","eventResult","notes","_id","random","$window","openLink","_showEditDialog","showEditDialog","unsetupDragAndDropBetweenWeeks","clearAll","detachAllEvents","e","_loadCurrentCommercial","loadCurrentCommercial","_this6","onConfig","t2","t3","t4","_ref2","_navigateToEvent","$meetingElement","border","_focusMeeting","zIndex","classList","_mounted","setupDragAndDropBetweenWeeks","setupLinkHandler","setupScheduler","mounted","$leftZone","leftZone","$rightZone","rightZone","addEventListener","onMouseEnterLeft","onMouseEnterRight","onMouseMove","removeEventListener","clientX","_setupScheduler","_this7","time_step","drag_resize","drag_create","drag_move","dblclick_create","first_hour","last_hour","labels","drag_to_move","drag_to_create","templates","event_header","start","end","heure","event_date","getEventContent","event_bar_text","event_class","getState","select_id","scroll_hour","getHours","event_text","month_day","dateToStr_func","date_to_str","dateToWeekNum_func","weekDay","isMonday","weekNumberTemplate","attachEvent","onEventAdded","onEventChanged","onEventDeleted","onEventCreated","onBeforeDrag","onBeforeEventChanged","onDragEnd","onLimitViolation","showLightbox","ev","showDeleteDialog","_onEventAdded","originalEvent","_this8","getCurrentID","find_default","removePendingEvent","_callback","newEvents","approveEvent","set","cancelEvent","_onAcceptMoove","continueMoove","_continueMoove","isMove","_onEventDeleted","new_event","_this9","showLimitation","_today","today","_onBeforeDrag","isAuthorized","canResize","canMove","_lastEvent","_this10","_x13","is_new","original","origin","restore","findIndex_default","_showSnackbar","_x14","arg","_onOperatorCommercialID","updateOperatorFormDisabled","_x15","supervisor","admin","operator","pxPerMinute","_pixels","pixels","second","formatRole","Planningvue_type_script_lang_ts_","views_Planningvue_type_script_lang_ts_","Planning_component","views_Planning","SignInvue_type_template_id_6adf9d34_scoped_true_render","fluid","bg","fill-height","text-xs-center","align-center","md5","lg4","xl3","alert","autofocus","autocomplete","showPassword","click:append","showMessage","keypress","accept","SignInvue_type_template_id_6adf9d34_scoped_true_staticRenderFns","SignInvue_type_script_lang_ts_SignIn","SignIn","test","_login","redirect","finish","requestAnimationFrame","$acceptButton","acceptButton","$el","focus","_accept","_redirect","redirect_to","SignInvue_type_script_lang_ts_","views_SignInvue_type_script_lang_ts_","SignIn_component","views_SignIn","siginInGuard","authGuard","commercialGuard","router","fullPath","operatorGuard","vue_router_esm","routes","beforeEnter","register_service_worker","registered","cached","updatefound","updated","offline","_error","productionTip","vuetify_default","lang","locales","fr","current","render","h","$mount","_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_CommercialEditForm_vue_vue_type_style_index_0_id_0b69f2d8_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_CommercialEditForm_vue_vue_type_style_index_0_id_0b69f2d8_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default","_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_CommercialShowEvent_vue_vue_type_style_index_0_id_86117bea_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_CommercialShowEvent_vue_vue_type_style_index_0_id_86117bea_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default","_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_Planning_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_Planning_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_0___default"],"mappings":"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","file":"js/app.831f190f.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ClosestEvents.vue?vue&type=style&index=0&id=7f5acf56&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ClosestEvents.vue?vue&type=style&index=0&id=7f5acf56&lang=scss&scoped=true&\"","import mod from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&id=146041c2&lang=scss&scoped=true&\"; export default mod; export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&id=146041c2&lang=scss&scoped=true&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminEditForm.vue?vue&type=style&index=0&id=6b57f963&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminEditForm.vue?vue&type=style&index=0&id=6b57f963&lang=scss&scoped=true&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OperatorSelectCommercial.vue?vue&type=style&index=0&id=5c23168a&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OperatorSelectCommercial.vue?vue&type=style&index=0&id=5c23168a&lang=scss&scoped=true&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SignIn.vue?vue&type=style&index=0&id=6adf9d34&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SignIn.vue?vue&type=style&index=0&id=6adf9d34&lang=scss&scoped=true&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminSelectCommercial.vue?vue&type=style&index=0&id=86a18a20&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminSelectCommercial.vue?vue&type=style&index=0&id=86a18a20&lang=scss&scoped=true&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnavailableForm.vue?vue&type=style&index=0&id=1cc45ccb&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnavailableForm.vue?vue&type=style&index=0&id=1cc45ccb&lang=scss&scoped=true&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Table.vue?vue&type=style&index=0&id=11ffc1c7&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Table.vue?vue&type=style&index=0&id=11ffc1c7&lang=scss&scoped=true&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OperatorForm.vue?vue&type=style&index=0&id=24d3a42f&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OperatorForm.vue?vue&type=style&index=0&id=24d3a42f&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-app',{staticClass:\"app\"},[_c('transition',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\"}},[_c('router-view',{staticStyle:{\"flex\":\"1\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\nimport { Component, Vue } from 'vue-property-decorator'\n\n@Component({})\nexport default class App extends Vue {}\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--13-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/ts-loader/index.js??ref--13-3!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--13-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/ts-loader/index.js??ref--13-3!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=146041c2&scoped=true&\"\nimport script from \"./App.vue?vue&type=script&lang=ts&\"\nexport * from \"./App.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&id=146041c2&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"146041c2\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticStyle:{\"display\":\"flex\",\"flex-direction\":\"column\"}},[_c('v-toolbar',{staticClass:\"elevation-0\",staticStyle:{\"z-index\":\"99\"},attrs:{\"color\":\"primary\",\"dark\":\"\",\"dense\":\"\"}},[(_vm.view === 'week')?_c('span',{staticClass:\"week-number\"},[_vm._v(_vm._s(_vm.weekNumber))]):_vm._e(),_c('v-toolbar-title',{staticClass:\"hidden-xs-only\",staticStyle:{\"font-size\":\"12pt\"}},[_vm._v(_vm._s(_vm.title))]),_c('v-spacer',{staticClass:\"hidden-xs-only\"}),(_vm.role === 'supervisor' && _vm.commercials.length)?_c('v-select',{staticClass:\"ml-3 fix-select-height fix-select-width\",attrs:{\"items\":_vm.commercials,\"item-text\":\"name\",\"item-value\":\"id\",\"label\":\"Solo field\",\"solo-inverted\":\"\",\"flat\":\"\"},model:{value:(_vm.selectedCommercialID),callback:function ($$v) {_vm.selectedCommercialID=$$v},expression:\"selectedCommercialID\"}}):(_vm.role === 'admin')?_c('AdminSelectCommercial'):(_vm.role === 'operator')?_c('OperatorSelectCommercial',{on:{\"id\":_vm.onOperatorCommercialID}}):_c('v-toolbar-title',{staticStyle:{\"font-size\":\"12pt\"}},[_vm._v(_vm._s(_vm.currentCommercial))]),_c('v-spacer'),_c('v-tooltip',{attrs:{\"bottom\":\"\"}},[_c('v-btn',{attrs:{\"slot\":\"activator\",\"icon\":\"\",\"flat\":\"\"},on:{\"click\":function($event){$event.preventDefault();return _vm.onClosestEvents($event)}},slot:\"activator\"},[_c('v-icon',[_vm._v(\"room\")])],1),_c('span',[_vm._v(\"RDV à proximité\")])],1),_c('v-tooltip',{attrs:{\"bottom\":\"\"}},[_c('v-btn',{attrs:{\"slot\":\"activator\",\"icon\":\"\",\"flat\":\"\",\"href\":_vm.mailContactMedia,\"target\":\"_blank\"},on:{\"click\":function($event){$event.preventDefault();return _vm.contact($event)}},slot:\"activator\"},[_c('v-icon',[_vm._v(\"email\")])],1),_c('span',[_vm._v(\"Contacter Contact Media\")])],1),_c('v-tooltip',{attrs:{\"bottom\":\"\"}},[_c('v-btn',{attrs:{\"slot\":\"activator\",\"icon\":\"\",\"flat\":\"\"},on:{\"click\":_vm.onSync},slot:\"activator\"},[_c('v-icon',{class:{spinning: _vm.syncing}},[_vm._v(\"sync\")])],1),_c('span',[_vm._v(\"Synchroniser\")])],1),_c('v-menu',{attrs:{\"bottom\":\"\",\"left\":\"\"}},[_c('v-btn',{attrs:{\"slot\":\"activator\",\"dark\":\"\",\"icon\":\"\"},slot:\"activator\"},[_c('v-icon',{attrs:{\"dark\":\"\"}},[_vm._v(\"more_vert\")])],1),_c('v-list',[_c('v-list-tile',{staticClass:\"py-2\"},[_c('v-list-tile-avatar',[_c('v-icon',{attrs:{\"large\":\"\"}},[_vm._v(\"account_circle\")])],1),_c('v-list-tile-content',[_c('v-list-tile-title',[_vm._v(_vm._s(_vm.username))]),_c('v-list-tile-sub-title',[_vm._v(_vm._s(_vm._f(\"formatRole\")(_vm.role)))])],1)],1),_c('v-divider'),_c('v-list-tile',[_c('v-list-tile-content',[_c('div',{staticClass:\"mx-auto\"},[_c('v-btn',{attrs:{\"disabled\":_vm.zoomLevel === _vm.zoomMin,\"flat\":\"\"},on:{\"click\":_vm.zoomOut}},[_c('v-icon',[_vm._v(\"zoom_out\")])],1),_c('v-btn',{attrs:{\"disabled\":_vm.zoomLevel === _vm.zoomMax,\"flat\":\"\"},on:{\"click\":_vm.zoomIn}},[_c('v-icon',[_vm._v(\"zoom_in\")])],1)],1)])],1),_c('v-divider'),_c('v-list-tile',{on:{\"click\":_vm.toIAgendaV1}},[_c('v-list-tile-title',[_vm._v(\"iAgenda V1\")])],1),_c('v-divider'),(_vm.route === 'compagny')?_c('v-list-tile',{attrs:{\"exact\":\"\",\"to\":{name: 'planning'}}},[_c('v-list-tile-title',[_vm._v(\"Mes rendez-vous\")])],1):[_c('v-list-tile',{on:{\"click\":function($event){_vm.showDocuments = true}}},[_c('v-list-tile-title',[_vm._v(\"Afficher les documents\")])],1)],_c('v-list-tile',{on:{\"click\":_vm.downloadMeetings}},[_c('v-list-tile-title',[_vm._v(\"Télécharger les rendez-vous\")])],1),_c('v-list-tile',{on:{\"click\":_vm.addUnavailableRecurrent}},[_c('v-list-tile-title',[_vm._v(\"Éditer les indisponibilités récurrentes\")])],1),_c('v-list-tile',{on:{\"click\":_vm.logout}},[_c('v-list-tile-title',[_vm._v(\"Se déconnecter\")])],1)],2)],1)],1),_c('div',{staticStyle:{\"flex\":\"1\",\"display\":\"flex\",\"overflow\":\"hidden\",\"position\":\"relative\"}},[_c('div',{staticClass:\"dhx_cal_container\",class:_vm.planningCSSClass,staticStyle:{\"flex\":\"1\",\"margin-top\":\"-60px\"},attrs:{\"id\":\"scheduler_here\"}},[_vm._m(0),_c('div',{staticClass:\"dhx_cal_scale_placeholder\"}),_c('div',{staticClass:\"dhx_cal_header\"}),_c('div',{staticClass:\"dhx_cal_data\"})]),_c('div',{ref:\"leftZone\",staticStyle:{\"position\":\"absolute\",\"top\":\"0\",\"width\":\"30px\",\"bottom\":\"0\",\"left\":\"0\",\"z-index\":\"99999\"}}),_c('div',{ref:\"rightZone\",staticStyle:{\"position\":\"absolute\",\"top\":\"0\",\"width\":\"30px\",\"bottom\":\"0\",\"right\":\"0\",\"z-index\":\"99999\"}})]),_c('v-toolbar',{staticClass:\"elevation-0\",staticStyle:{\"z-index\":\"99\"},attrs:{\"color\":\"primary\",\"dark\":\"\",\"dense\":\"\"}},[_c('v-btn',{attrs:{\"flat\":\"\",\"icon\":\"\"},on:{\"click\":_vm.onPrev}},[_c('v-icon',[_vm._v(\"keyboard_arrow_left\")])],1),_c('v-btn',{staticClass:\"mx-0 hidden-xs-only\",attrs:{\"round\":\"\",\"flat\":\"\",\"color\":\"white\"},on:{\"click\":_vm.onToday}},[_vm._v(\"Aujourd'hui\")]),_c('v-tooltip',{staticClass:\"hidden-sm-and-up\",attrs:{\"top\":\"\"}},[_c('v-btn',{attrs:{\"slot\":\"activator\",\"flat\":\"\",\"icon\":\"\"},on:{\"click\":_vm.onToday},slot:\"activator\"},[_c('v-icon',[_vm._v(\"today\")])],1),_c('span',[_vm._v(\"Aujourd'hui\")])],1),_c('v-btn',{attrs:{\"flat\":\"\",\"icon\":\"\"},on:{\"click\":_vm.onNext}},[_c('v-icon',[_vm._v(\"keyboard_arrow_right\")])],1),_c('v-spacer'),(_vm.loggedAs)?_c('v-toolbar-title',{staticClass:\"hidden-xs-only\",staticStyle:{\"font-size\":\"12pt\"}},[_vm._v(_vm._s(_vm.loggedAs))]):_vm._e(),_c('v-spacer'),_c('v-select',{staticClass:\"fix-select-height\",attrs:{\"items\":_vm.periods,\"item-text\":\"title\",\"item-value\":\"value\",\"label\":\"Solo field\",\"solo-inverted\":\"\",\"flat\":\"\"},model:{value:(_vm.view),callback:function ($$v) {_vm.view=$$v},expression:\"view\"}})],1),_c('v-dialog',{attrs:{\"max-width\":\"290\"},model:{value:(_vm.deleteDialog),callback:function ($$v) {_vm.deleteDialog=$$v},expression:\"deleteDialog\"}},[_c('v-card',[_c('v-card-title',{staticClass:\"headline\"},[_vm._v(\"Souhaitez-vous vraiment supprimer cet événement ?\")]),_c('v-card-text',[_vm._v(\"Si vous supprimez un événement, il sera définitivement perdu.\")]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"green darken-1\",\"flat\":\"\"},on:{\"click\":function($event){_vm.deleteDialog = false}}},[_vm._v(\"Annuler\")]),_c('v-btn',{attrs:{\"color\":\"error darken-1\"},on:{\"click\":_vm.onDeleteEvent}},[_vm._v(\"Supprimer\")])],1)],1)],1),_c('v-dialog',{attrs:{\"max-width\":_vm.editType === 'unavailable' ? 500 : 800,\"fullscreen\":_vm.fullscreen},model:{value:(_vm.editDialog),callback:function ($$v) {_vm.editDialog=$$v},expression:\"editDialog\"}},[_c('v-card',[_c('div',{staticStyle:{\"height\":\"10px\"}},[_c('v-btn',{staticStyle:{\"position\":\"absolute\",\"right\":\"0\"},attrs:{\"icon\":\"\"},on:{\"click\":function($event){_vm.editDialog = false}}},[_c('v-icon',[_vm._v(\"close\")])],1)],1),(_vm.editType === 'admin')?_c('AdminEditForm',{attrs:{\"event\":_vm.currentEvent},on:{\"save\":_vm.onSave,\"cancel\":function($event){_vm.editDialog = false},\"delete\":function($event){_vm.deleteDialog = true}}}):_vm._e(),(_vm.editType === 'show')?_c('CommercialShowEvent',{attrs:{\"event\":_vm.currentEvent,\"isOpen\":_vm.editDialog},on:{\"save\":_vm.onSave,\"cancel\":function($event){_vm.editDialog = false},\"delete\":function($event){_vm.deleteDialog = true}}}):_vm._e(),(_vm.editType === 'unavailable')?_c('UnavailableForm',{attrs:{\"event\":_vm.currentEvent},on:{\"save\":_vm.onSave,\"cancel\":function($event){_vm.editDialog = false},\"delete\":function($event){_vm.deleteDialog = true}}}):_vm._e(),(_vm.editType === 'operator')?_c('OperatorForm',{attrs:{\"event\":_vm.currentEvent,\"show\":_vm.editDialog,\"disabled\":_vm.operatorFormDisabled},on:{\"save\":_vm.onSave,\"cancel\":function($event){_vm.editDialog = false},\"delete\":function($event){_vm.deleteDialog = true}}}):_vm._e(),(_vm.editType === 'unavailable-recurrence')?_c('UnavailableRecurrenceForm',{on:{\"cancel\":function($event){_vm.editDialog = false},\"showSnackbar\":_vm.onShowSnackbar,\"save\":_vm.onRecurrentSave}}):_vm._e()],1)],1),_c('v-dialog',{attrs:{\"max-width\":\"600\",\"fullscreen\":_vm.fullscreen},model:{value:(_vm.showDocuments),callback:function ($$v) {_vm.showDocuments=$$v},expression:\"showDocuments\"}},[_c('v-card',[(_vm.fullscreen)?_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){_vm.showDocuments = false}}},[_c('v-icon',[_vm._v(\"close\")])],1):_vm._e(),_c('Documents')],1)],1),_c('v-dialog',{attrs:{\"persistent\":\"\",\"width\":\"300\"},model:{value:(_vm.loadingDialog),callback:function ($$v) {_vm.loadingDialog=$$v},expression:\"loadingDialog\"}},[_c('v-card',{attrs:{\"color\":\"primary\",\"dark\":\"\"}},[_c('v-card-text',[_vm._v(\"\\n Chargement des données\\n \"),_c('v-progress-linear',{staticClass:\"mb-0\",attrs:{\"indeterminate\":\"\",\"color\":\"white\"}}),(_vm.showLogout)?_c('v-layout',{attrs:{\"column\":\"\",\"mt-4\":\"\"}},[_c('v-flex',[_vm._v(\"Il semble qu'une erreur soit survenue\")]),_c('v-flex',[_c('v-layout',{attrs:{\"row\":\"\"}},[_c('v-spacer'),_c('v-btn',{attrs:{\"flat\":\"\"},on:{\"click\":_vm.logout}},[_vm._v(\"Se déconnecter\")])],1)],1)],1):_vm._e()],1)],1)],1),_c('v-dialog',{attrs:{\"max-width\":\"600\",\"fullscreen\":_vm.fullscreen},model:{value:(_vm.showMessages),callback:function ($$v) {_vm.showMessages=$$v},expression:\"showMessages\"}},[_c('v-card',[(_vm.fullscreen)?_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){_vm.showMessages = false}}},[_c('v-icon',[_vm._v(\"close\")])],1):_vm._e(),_c('Messages')],1)],1),_c('v-dialog',{attrs:{\"max-width\":\"700\",\"persistent\":\"\",\"fullscreen\":_vm.fullscreen},model:{value:(_vm.showMooveComMessage),callback:function ($$v) {_vm.showMooveComMessage=$$v},expression:\"showMooveComMessage\"}},[(_vm.moveMessage)?_c('v-card',{staticClass:\"pa-4\"},[_c('v-card-title',{staticClass:\"headline\"},[_vm._v(_vm._s(_vm.moveMessage ? _vm.moveMessage.title : 'Question'))]),_c('v-card-text',{domProps:{\"innerHTML\":_vm._s(_vm.moveMessage ? _vm.moveMessage.content : 'Contenu')}}),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"error\"},on:{\"click\":_vm.onCancelMoove}},[_vm._v(\"Annuler\")]),_c('v-btn',{attrs:{\"color\":\"success\"},on:{\"click\":_vm.onAcceptMoove}},[_vm._v(\"Accepter\")])],1)],1):_vm._e()],1),_c('v-dialog',{attrs:{\"persistent\":\"\",\"width\":\"300\"},model:{value:(_vm.showOperatorErrorMessage),callback:function ($$v) {_vm.showOperatorErrorMessage=$$v},expression:\"showOperatorErrorMessage\"}},[_c('v-card',{attrs:{\"color\":\"red\",\"dark\":\"\"}},[_c('v-card-text',{staticClass:\"font-weight-bold text-uppercase text-xs-center\"},[_vm._v(_vm._s(_vm.operatorErrorMessage))])],1)],1),_c('v-dialog',{attrs:{\"persistent\":\"\",\"width\":\"300\"},model:{value:(_vm.showHermesDialog),callback:function ($$v) {_vm.showHermesDialog=$$v},expression:\"showHermesDialog\"}},[_c('v-card',{attrs:{\"color\":\"primary\",\"dark\":\"\"}},[_c('v-card-text',[_vm._v(\"Hermes en cours d'écriture... (\"+_vm._s(_vm.completedFields)+\"/\"+_vm._s(_vm.totalFields)+\")\")])],1)],1),_c('v-dialog',{attrs:{\"persistent\":\"\",\"width\":\"300\"},model:{value:(_vm.showNixxisErrorMessage),callback:function ($$v) {_vm.showNixxisErrorMessage=$$v},expression:\"showNixxisErrorMessage\"}},[_c('v-card',{attrs:{\"color\":\"red\",\"dark\":\"\"}},[_c('v-card-text',{staticClass:\"font-weight-bold text-uppercase text-xs-center\"},[_vm._v(_vm._s(_vm.nixxisErrorMessage))])],1)],1),_c('v-dialog',{attrs:{\"persistent\":\"\",\"width\":\"300\"},model:{value:(_vm.showNixxisDialog),callback:function ($$v) {_vm.showNixxisDialog=$$v},expression:\"showNixxisDialog\"}},[_c('v-card',{attrs:{\"color\":\"primary\",\"dark\":\"\"}},[_c('v-card-text',[_vm._v(\"Récupération des données depuis Nixxis...\")])],1)],1),_c('v-dialog',{attrs:{\"persistent\":\"\",\"width\":\"300\"},model:{value:(_vm.showSeeasoftwareErrorMessage),callback:function ($$v) {_vm.showSeeasoftwareErrorMessage=$$v},expression:\"showSeeasoftwareErrorMessage\"}},[_c('v-card',{attrs:{\"color\":\"red\",\"dark\":\"\"}},[_c('v-card-text',{staticClass:\"font-weight-bold text-uppercase text-xs-center\"},[_vm._v(_vm._s(_vm.seeasoftwareErrorMessage))])],1)],1),_c('v-dialog',{attrs:{\"persistent\":\"\",\"width\":\"300\"},model:{value:(_vm.showSeeasoftwareDialog),callback:function ($$v) {_vm.showSeeasoftwareDialog=$$v},expression:\"showSeeasoftwareDialog\"}},[_c('v-card',{attrs:{\"color\":\"primary\",\"dark\":\"\"}},[_c('v-card-text',[_vm._v(\"Récupération des données depuis Seeasoftware...\")])],1)],1),_c('v-dialog',{attrs:{\"persistent\":\"\",\"width\":\"300\"},model:{value:(_vm.showSaving),callback:function ($$v) {_vm.showSaving=$$v},expression:\"showSaving\"}},[_c('v-card',{attrs:{\"color\":\"primary\",\"dark\":\"\"}},[_c('v-card-text',[_vm._v(\"\\n Sauvegarde en cours\\n \"),_c('v-progress-linear',{staticClass:\"mb-0\",attrs:{\"indeterminate\":\"\",\"color\":\"white\"}})],1)],1)],1),_c('v-dialog',{attrs:{\"width\":\"400\",\"content-class\":\"closest-event-dialog\"},model:{value:(_vm.showClosestEvents),callback:function ($$v) {_vm.showClosestEvents=$$v},expression:\"showClosestEvents\"}},[_c('v-card',[_c('v-btn',{staticStyle:{\"position\":\"absolute\",\"right\":\"0\"},attrs:{\"icon\":\"\"},on:{\"click\":function($event){_vm.showClosestEvents = false}}},[_c('v-icon',[_vm._v(\"close\")])],1),_c('ClosestEvents',{attrs:{\"event\":_vm.currentEvent,\"visible\":_vm.showClosestEvents,\"commercialId\":_vm.calendarUserId,\"navigateToEvent\":_vm.navigateToEvent},on:{\"close\":function($event){_vm.showClosestEvents = false}}})],1)],1),_c('v-snackbar',{attrs:{\"color\":_vm.snackbar.status,\"timeout\":_vm.snackbar.duration,\"multi-line\":\"\"},model:{value:(_vm.snackbar.opened),callback:function ($$v) {_vm.$set(_vm.snackbar, \"opened\", $$v)},expression:\"snackbar.opened\"}},[_vm._v(\"\\n \"+_vm._s(_vm.snackbar.message)+\"\\n \"),_c('v-btn',{attrs:{\"dark\":\"\",\"flat\":\"\"},on:{\"click\":function($event){_vm.snackbar.opened = false}}},[_vm._v(\"Fermer\")])],1),_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.cssRules)}})],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"dhx_cal_navline\"},[_c('div',{staticClass:\"dhx_cal_prev_button\"},[_vm._v(\" \")]),_c('div',{staticClass:\"dhx_cal_next_button\"},[_vm._v(\" \")]),_c('div',{staticClass:\"dhx_cal_today_button\"}),_c('div',{staticClass:\"dhx_cal_date\"}),_c('div',{staticClass:\"dhx_cal_tab\",attrs:{\"name\":\"day_tab\"}}),_c('div',{staticClass:\"dhx_cal_tab\",attrs:{\"name\":\"week_tab\"}}),_c('div',{staticClass:\"dhx_cal_tab\",attrs:{\"name\":\"month_tab\"}})])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.event)?_c('v-form',{ref:\"form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.onSave($event)}},model:{value:(_vm.valid),callback:function ($$v) {_vm.valid=$$v},expression:\"valid\"}},[_c('v-card-text',{staticClass:\"px-0 pb-0\"},[_c('v-container',{staticClass:\"pa-4 pb-0\",attrs:{\"grid-list-lg\":\"\"}},[_c('v-layout',{attrs:{\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\"}},[_c('v-select',{staticClass:\"pa-0 ma-0 status-select\",attrs:{\"items\":_vm.statusData,\"item-text\":\"title\",\"item-value\":\"value\",\"label\":\"Status\",\"hide-details\":\"\",\"flat\":\"\",\"required\":\"\",\"rules\":_vm.rules.select},on:{\"change\":_vm.onStatusChange},scopedSlots:_vm._u([{key:\"selection\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('v-list-tile',[_c('v-list-tile-avatar',[_c('v-avatar',{class:(\"colors-\" + (item.value)),attrs:{\"size\":\"18\"}})],1),_c('v-list-tile-content',[_c('v-list-tile-title',{domProps:{\"innerHTML\":_vm._s(item.title)}})],1)],1)]}},{key:\"item\",fn:function(data){return [_c('v-list-tile-avatar',[_c('v-avatar',{class:(\"colors-\" + (data.item.value)),attrs:{\"size\":\"18\"}})],1),_c('v-list-tile-content',[_c('v-list-tile-title',{domProps:{\"innerHTML\":_vm._s(data.item.title)}})],1)]}}]),model:{value:(_vm.currentEvent.event.status),callback:function ($$v) {_vm.$set(_vm.currentEvent.event, \"status\", $$v)},expression:\"currentEvent.event.status\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\"}},[_c('v-menu',{attrs:{\"close-on-content-click\":false,\"lazy\":\"\",\"transition\":\"scale-transition\",\"offset-y\":\"\",\"full-width\":\"\",\"min-width\":\"290px\"},model:{value:(_vm.startDateMenu),callback:function ($$v) {_vm.startDateMenu=$$v},expression:\"startDateMenu\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"slot\":\"activator\",\"label\":\"Date\",\"append-icon\":\"event\",\"readonly\":\"\",\"hide-details\":\"\",\"rules\":_vm.rules.date},slot:\"activator\",model:{value:(_vm.currentEvent.start_date.date),callback:function ($$v) {_vm.$set(_vm.currentEvent.start_date, \"date\", $$v)},expression:\"currentEvent.start_date.date\"}}),_c('v-date-picker',{attrs:{\"locale\":\"fr-fr\",\"first-day-of-week\":\"1\"},on:{\"input\":function($event){_vm.startDateMenu = false}},model:{value:(_vm.currentEvent.start_date.date),callback:function ($$v) {_vm.$set(_vm.currentEvent.start_date, \"date\", $$v)},expression:\"currentEvent.start_date.date\"}})],1)],1),(_vm.currentEvent.event.status === 'unavailable')?_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\"}},[_c('v-dialog',{ref:\"startDialog\",attrs:{\"return-value\":_vm.currentEvent.start_date.hour,\"persistent\":\"\",\"lazy\":\"\",\"full-width\":\"\",\"width\":\"290px\"},on:{\"update:returnValue\":function($event){_vm.$set(_vm.currentEvent.start_date, \"hour\", $event)}},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c('v-text-field',_vm._g({staticClass:\"pa-0 ma-0\",attrs:{\"label\":\"Heure de début\",\"prepend-icon\":\"access_time\",\"readonly\":\"\",\"hide-details\":\"\"},model:{value:(_vm.currentEvent.start_date.hour),callback:function ($$v) {_vm.$set(_vm.currentEvent.start_date, \"hour\", $$v)},expression:\"currentEvent.start_date.hour\"}},on))]}}]),model:{value:(_vm.startDialog),callback:function ($$v) {_vm.startDialog=$$v},expression:\"startDialog\"}},[(_vm.startDialog)?_c('v-time-picker',{attrs:{\"full-width\":\"\",\"format\":\"24hr\",\"allowed-minutes\":function (v) { return v % 15 === 0; },\"allowed-hours\":function (v) { return v >= 8 && v <= 20; }},model:{value:(_vm.currentEvent.start_date.hour),callback:function ($$v) {_vm.$set(_vm.currentEvent.start_date, \"hour\", $$v)},expression:\"currentEvent.start_date.hour\"}},[_c('v-spacer'),_c('v-btn',{attrs:{\"flat\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.startDialog = false}}},[_vm._v(\"Cancel\")]),_c('v-btn',{attrs:{\"flat\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.$refs.startDialog.save(_vm.currentEvent.start_date.hour)}}},[_vm._v(\"OK\")])],1):_vm._e()],1)],1):_vm._e(),(_vm.currentEvent.event.status === 'unavailable')?_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\"}},[_c('v-dialog',{ref:\"endDialog\",attrs:{\"return-value\":_vm.currentEvent.end_date.hour,\"persistent\":\"\",\"lazy\":\"\",\"full-width\":\"\",\"width\":\"290px\"},on:{\"update:returnValue\":function($event){_vm.$set(_vm.currentEvent.end_date, \"hour\", $event)}},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c('v-text-field',_vm._g({staticClass:\"pa-0 ma-0\",attrs:{\"label\":\"Heure de fin\",\"prepend-icon\":\"access_time\",\"readonly\":\"\",\"hide-details\":\"\"},model:{value:(_vm.currentEvent.end_date.hour),callback:function ($$v) {_vm.$set(_vm.currentEvent.end_date, \"hour\", $$v)},expression:\"currentEvent.end_date.hour\"}},on))]}}]),model:{value:(_vm.endDialog),callback:function ($$v) {_vm.endDialog=$$v},expression:\"endDialog\"}},[(_vm.endDialog)?_c('v-time-picker',{attrs:{\"full-width\":\"\",\"format\":\"24hr\",\"allowed-minutes\":function (v) { return v % 15 === 0; },\"allowed-hours\":function (v) { return v >= 8 && v <= 20; }},model:{value:(_vm.currentEvent.end_date.hour),callback:function ($$v) {_vm.$set(_vm.currentEvent.end_date, \"hour\", $$v)},expression:\"currentEvent.end_date.hour\"}},[_c('v-spacer'),_c('v-btn',{attrs:{\"flat\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.endDialog = false}}},[_vm._v(\"Cancel\")]),_c('v-btn',{attrs:{\"flat\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.$refs.endDialog.save(_vm.currentEvent.end_date.hour)}}},[_vm._v(\"OK\")])],1):_vm._e()],1)],1):_vm._e(),(_vm.currentEvent.event.status === 'validated_qc' || _vm.currentEvent.event.status === 'not_charged')?_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-select',{staticClass:\"pa-0 ma-0\",attrs:{\"items\":_vm.reasons,\"item-text\":\"title\",\"item-value\":\"value\",\"label\":\"Raison\",\"hide-details\":\"\",\"flat\":\"\",\"clearable\":\"\"},model:{value:(_vm.currentEvent.event.reason),callback:function ($$v) {_vm.$set(_vm.currentEvent.event, \"reason\", $$v)},expression:\"currentEvent.event.reason\"}})],1):_vm._e(),(_vm.currentEvent.event.status === 'unavailable')?[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"label\":\"Titre\",\"hide-details\":\"\"},model:{value:(_vm.currentEvent.event.comment),callback:function ($$v) {_vm.$set(_vm.currentEvent.event, \"comment\", $$v)},expression:\"currentEvent.event.comment\"}})],1)]:[_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"hide-details\":\"\",\"label\":\"Numéro de campagne\",\"required\":\"\",\"rules\":_vm.rules.campaign},model:{value:(_vm.currentEvent.event.campaignNumber),callback:function ($$v) {_vm.$set(_vm.currentEvent.event, \"campaignNumber\", $$v)},expression:\"currentEvent.event.campaignNumber\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0 indice\",attrs:{\"hide-details\":\"\",\"label\":\"Indice\",\"rules\":_vm.rules.indice},model:{value:(_vm.currentEvent.event.indice),callback:function ($$v) {_vm.$set(_vm.currentEvent.event, \"indice\", $$v)},expression:\"currentEvent.event.indice\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"hide-details\":\"\",\"label\":\"RS\"},model:{value:(_vm.currentEvent.event.prospect.rs),callback:function ($$v) {_vm.$set(_vm.currentEvent.event.prospect, \"rs\", $$v)},expression:\"currentEvent.event.prospect.rs\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"hide-details\":\"\",\"label\":\"Typers\"},model:{value:(_vm.currentEvent.event.prospect.typers),callback:function ($$v) {_vm.$set(_vm.currentEvent.event.prospect, \"typers\", $$v)},expression:\"currentEvent.event.prospect.typers\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"hide-details\":\"\",\"label\":\"Civilité\"},model:{value:(_vm.currentEvent.event.prospect.civility),callback:function ($$v) {_vm.$set(_vm.currentEvent.event.prospect, \"civility\", $$v)},expression:\"currentEvent.event.prospect.civility\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"hide-details\":\"\",\"label\":\"Siret\"},model:{value:(_vm.currentEvent.event.prospect.siret),callback:function ($$v) {_vm.$set(_vm.currentEvent.event.prospect, \"siret\", $$v)},expression:\"currentEvent.event.prospect.siret\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"hide-details\":\"\",\"label\":\"Nom\"},model:{value:(_vm.currentEvent.event.prospect.lastname),callback:function ($$v) {_vm.$set(_vm.currentEvent.event.prospect, \"lastname\", $$v)},expression:\"currentEvent.event.prospect.lastname\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"hide-details\":\"\",\"label\":\"Prénom\"},model:{value:(_vm.currentEvent.event.prospect.firstname),callback:function ($$v) {_vm.$set(_vm.currentEvent.event.prospect, \"firstname\", $$v)},expression:\"currentEvent.event.prospect.firstname\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"hide-details\":\"\",\"label\":\"Téléphone\"},model:{value:(_vm.currentEvent.event.prospect.phone),callback:function ($$v) {_vm.$set(_vm.currentEvent.event.prospect, \"phone\", $$v)},expression:\"currentEvent.event.prospect.phone\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"hide-details\":\"\",\"label\":\"Téléphone (bis)\"},model:{value:(_vm.currentEvent.event.prospect.phoneBis),callback:function ($$v) {_vm.$set(_vm.currentEvent.event.prospect, \"phoneBis\", $$v)},expression:\"currentEvent.event.prospect.phoneBis\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"hide-details\":\"\",\"label\":\"Mobile\"},model:{value:(_vm.currentEvent.event.prospect.mobile),callback:function ($$v) {_vm.$set(_vm.currentEvent.event.prospect, \"mobile\", $$v)},expression:\"currentEvent.event.prospect.mobile\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"hide-details\":\"\",\"label\":\"Email\"},model:{value:(_vm.currentEvent.event.prospect.email),callback:function ($$v) {_vm.$set(_vm.currentEvent.event.prospect, \"email\", $$v)},expression:\"currentEvent.event.prospect.email\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"hide-details\":\"\",\"label\":\"Topage\"},model:{value:(_vm.currentEvent.event.topage),callback:function ($$v) {_vm.$set(_vm.currentEvent.event, \"topage\", $$v)},expression:\"currentEvent.event.topage\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"hide-details\":\"\",\"label\":\"Topfic\"},model:{value:(_vm.currentEvent.event.topfic),callback:function ($$v) {_vm.$set(_vm.currentEvent.event, \"topfic\", $$v)},expression:\"currentEvent.event.topfic\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"hide-details\":\"\",\"label\":\"Adresse\"},model:{value:(_vm.currentEvent.event.prospect.address),callback:function ($$v) {_vm.$set(_vm.currentEvent.event.prospect, \"address\", $$v)},expression:\"currentEvent.event.prospect.address\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"hide-details\":\"\",\"label\":\"Adresse 2\"},model:{value:(_vm.currentEvent.event.prospect.address2),callback:function ($$v) {_vm.$set(_vm.currentEvent.event.prospect, \"address2\", $$v)},expression:\"currentEvent.event.prospect.address2\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"hide-details\":\"\",\"label\":\"Code postal\"},model:{value:(_vm.currentEvent.event.prospect.zip),callback:function ($$v) {_vm.$set(_vm.currentEvent.event.prospect, \"zip\", $$v)},expression:\"currentEvent.event.prospect.zip\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md8\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"hide-details\":\"\",\"label\":\"Ville\"},model:{value:(_vm.currentEvent.event.prospect.city),callback:function ($$v) {_vm.$set(_vm.currentEvent.event.prospect, \"city\", $$v)},expression:\"currentEvent.event.prospect.city\"}})],1),_vm._l((_vm.EDITABLE_UNKNOWN_FIELDS),function(item){return _c('v-flex',{key:item,attrs:{\"xs12\":\"\",\"sm6\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"label\":item,\"hide-details\":\"\"},model:{value:(_vm.currentEvent.event.unknownFields[item]),callback:function ($$v) {_vm.$set(_vm.currentEvent.event.unknownFields, item, $$v)},expression:\"currentEvent.event.unknownFields[item]\"}})],1)}),_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('Table',{attrs:{\"items\":_vm.items}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\"}},[_c('v-textarea',{attrs:{\"auto-grow\":\"\",\"label\":\"Mémo\",\"hide-details\":\"\",\"box\":\"\"},model:{value:(_vm.currentEvent.event.text),callback:function ($$v) {_vm.$set(_vm.currentEvent.event, \"text\", $$v)},expression:\"currentEvent.event.text\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\"}},[_c('v-textarea',{attrs:{\"auto-grow\":\"\",\"label\":\"Commentaire (Contact Media)\",\"hide-details\":\"\",\"box\":\"\"},model:{value:(_vm.currentEvent.event.comment),callback:function ($$v) {_vm.$set(_vm.currentEvent.event, \"comment\", $$v)},expression:\"currentEvent.event.comment\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-expansion-panel',{staticClass:\"elevation-2\"},[_c('v-expansion-panel-content',[_c('template',{slot:\"header\"},[_c('div',[_vm._v(\"Commentaire (Commercial)\")])]),_c('v-textarea',{staticClass:\"px-3 textarea\",attrs:{\"box\":\"\"},model:{value:(_vm.currentEvent.event.commercialComment),callback:function ($$v) {_vm.$set(_vm.currentEvent.event, \"commercialComment\", $$v)},expression:\"currentEvent.event.commercialComment\"}})],2)],1)],1)]],2)],1)],1),_c('v-card-actions',{attrs:{\"wrap\":\"\"}},[_c('v-layout',{attrs:{\"wrap\":\"\",\"justify-space-between\":\"\"}},[_c('v-btn',{attrs:{\"flat\":\"\",\"color\":\"error\"},on:{\"click\":function($event){$event.preventDefault();return _vm.onDelete($event)}}},[_vm._v(\"Supprimer\")]),_c('span',[_c('v-btn',{attrs:{\"color\":\"primary\",\"type\":\"submit\"}},[_vm._v(\"Enregistrer\")])],1)],1)],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Prospect from './Prospect'\nimport { Reason } from './Reason'\nimport { Status } from './Status'\n\ntype RecurrenceType = 'once' | 'days' | 'weeks' | 'months'\n\ninterface Recurrence {\n type: RecurrenceType\n occurrence: number\n}\n\nclass CalendarEvent {\n id: number | null\n backendID: number | null\n text: string\n comment: string\n commercialComment: string\n indice: number | null\n campaignNumber: string | null\n topage: string\n topfic: string\n unknownFields: any\n start_date: Date\n end_date: Date\n status: Status | null\n location?: string\n notes?: string\n recurrence?: Recurrence\n prospect: Prospect\n recurrentParent?: number\n lastEvent?: CalendarEvent\n reason?: Reason\n eventId?: string\n\n constructor() {\n this.id = 0\n this.backendID = 0\n this.text = ''\n this.comment = ''\n this.commercialComment = ''\n this.topage = ''\n this.topfic = ''\n this.indice = null\n this.campaignNumber = null\n this.unknownFields = {}\n this.start_date = new Date()\n this.end_date = new Date()\n this.status = null\n this.prospect = {\n rs: '',\n typers: '',\n civility: '',\n lastname: '',\n firstname: '',\n address: '',\n address2: '',\n zip: '',\n city: '',\n phone: '',\n phoneBis: '',\n mobile: '',\n email: '',\n siret: '',\n }\n }\n}\n\nexport { Recurrence, CalendarEvent, RecurrenceType }\n","import { CalendarEvent } from '@/models/CalendarEvent'\n\nexport default class FormCalendarEvent {\n event: CalendarEvent\n start_date: {\n date: string\n hour: string\n }\n end_date: {\n date: string\n hour: string\n }\n\n constructor() {\n this.event = new CalendarEvent()\n this.start_date = {\n date: '',\n hour: '',\n }\n this.end_date = {\n date: '',\n hour: '',\n }\n }\n}\n","import { StatusObject } from '@/models/Status'\n\nconst status: StatusObject[] = [\n { title: 'Indisponible', value: 'unavailable' },\n { title: 'En attente', value: 'pending' },\n { title: 'Moove', value: 'moove' },\n { title: 'Moove Comm', value: 'moove_com' },\n { title: 'À Repositionner', value: 'repositioned' },\n { title: 'Confirmé', value: 'confirmed' },\n { title: 'Validé', value: 'validated' },\n { title: 'Lapin Comm', value: 'bunny_com' },\n { title: 'Validé Hors délai', value: 'out_of_time' },\n { title: 'Contrôle Qualité', value: 'negative' },\n { title: 'Validé CQ', value: 'validated_qc' },\n { title: 'Non facturé', value: 'not_charged' },\n { title: 'Supprimé', value: 'deleted' },\n]\n\nexport { status }\n","function getDiffDays(from: Date, to: Date): number {\n // hours*minutes*seconds*milliseconds\n const oneDay = 24 * 60 * 60 * 1000\n const firstDate = from\n const secondDate = to\n\n const diffDays = Math.round(\n (firstDate.getTime() - secondDate.getTime()) / oneDay\n )\n return diffDays\n}\n\nexport { getDiffDays }\n","import { ReasonObject } from '@/models/Reason'\n\nconst reasons: ReasonObject[] = [\n {\n title: 'Vente',\n value: 'sale',\n },\n {\n title: 'Contact chaud;affaire en cours',\n value: 'hot_contact',\n },\n {\n title: 'Echec',\n value: 'failure',\n },\n {\n title: 'Absent',\n value: 'absent',\n },\n {\n title: 'Refus de recevoir',\n value: 'refusal',\n },\n {\n title: 'Hors cible',\n value: 'off_target',\n },\n // {\n // title: 'Rapport Com Hors Delai',\n // value: 'late_report',\n // },\n // {\n // title: 'Non Facturé',\n // value: 'not_charged',\n // },\n {\n title: 'Rendez-vous 2',\n value: 'meeting',\n },\n]\n\nexport { reasons }\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c(_vm.tag,{tag:\"component\"},[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SmoothReflow.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SmoothReflow.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SmoothReflow.vue?vue&type=template&id=2e95a0ec&\"\nimport script from \"./SmoothReflow.vue?vue&type=script&lang=js&\"\nexport * from \"./SmoothReflow.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.items.length)?_c('v-container',{staticClass:\"pa-0\",attrs:{\"grid-list-lg\":\"\"}},[_c('v-layout',{attrs:{\"wrap\":\"\"}},_vm._l((_vm.itemsTr),function(items,index){return _c('v-flex',{key:index,attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-data-table',{staticClass:\"elevation-2 datatable\",attrs:{\"items\":items,\"hide-headers\":\"\",\"hide-actions\":\"\"},scopedSlots:_vm._u([{key:\"items\",fn:function(props){return [_c('td',{staticClass:\"font-weight-bold py-0\"},[_vm._v(_vm._s(props.item.key))]),_c('td',{staticClass:\"text-xs-right py-0\"},[_vm._v(_vm._s(props.item.value))])]}}])})],1)}),1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Vue, Component, Prop } from 'vue-property-decorator'\nimport chunk from 'lodash/chunk'\n\n@Component({})\nexport default class Table extends Vue {\n @Prop() items: any\n @Prop({ type: Boolean, default: false }) forceDesktop!: boolean\n\n get itemsTr() {\n const items = [...this.items]\n\n if (items.length === 1) {\n return [items]\n }\n\n const nbTables = (() => {\n if (this.forceDesktop) {\n return 3\n }\n\n switch (this.$vuetify.breakpoint.name) {\n case 'xs':\n return 1\n case 'sm':\n return 2\n case 'md':\n return 3\n case 'lg':\n return 3\n case 'xl':\n return 3\n default:\n return 3\n }\n })()\n\n const nbItems = Math.round(items.length / nbTables)\n const chunks = chunk(items, nbItems)\n\n /**\n * Si plus de chunks que de tableaux alors on contactène le dernier avec\n * l'avant dernier.\n */\n if (chunks.length > nbTables) {\n chunks[chunks.length - 2].push(...chunks[chunks.length - 1])\n chunks.pop()\n }\n\n return chunks\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Table.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Table.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Table.vue?vue&type=template&id=11ffc1c7&scoped=true&\"\nimport script from \"./Table.vue?vue&type=script&lang=ts&\"\nexport * from \"./Table.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Table.vue?vue&type=style&index=0&id=11ffc1c7&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"11ffc1c7\",\n null\n \n)\n\nexport default component.exports","function getBackendURL() {\n switch (document.location.hostname) {\n case 'www.iagenda.cloud':\n case 'iagenda.cloud':\n return '//admin.iagenda.cloud'\n case 'contactmedia.maninwan.fr':\n return '//preprod.iagenda.contactmedia.fr'\n case 'preprod.iagenda.cloud':\n return '//preprod.admin.iagenda.cloud'\n default:\n case 'localhost':\n return '//contactmedia.local'\n case '192.168.1.75':\n return '//192.168.1.75:9090'\n }\n}\n\nconst backendURL = getBackendURL()\n\nconst HERMES_TOTAL_FIELDS = 100\n\n// champs cachés au commercial et à l'opérateur\nconst HIDDEN_UNKNOWN_FIELDS = ['CODE OPERATEUR', 'NOM PRENOM OPERATEUR']\n\n// champs éditable par d'admin et l'opérateur\nconst EDITABLE_UNKNOWN_FIELDS = ['DATE DE NAISSANCE', 'EFFECTIF']\n\nexport {\n backendURL,\n HERMES_TOTAL_FIELDS,\n HIDDEN_UNKNOWN_FIELDS,\n EDITABLE_UNKNOWN_FIELDS,\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Prop, Watch, Vue } from 'vue-property-decorator'\nimport { CalendarEvent, RecurrenceType } from '@/models/CalendarEvent'\nimport FormCalendarEvent from '@/models/FormCalendarEvent'\nimport { status } from '@/data/status'\nimport dayjs from 'dayjs'\nimport 'dayjs/locale/fr'\n// @ts-ignore\nimport customParseFormat from 'dayjs/plugin/customParseFormat'\nimport { getDiffDays } from '@/utils/getDiffDays'\nimport { Reason, ReasonObject } from '@/models/Reason'\nimport { reasons } from '@/data/reasons'\nimport SmoothReflow from '@/components/SmoothReflow.vue'\nimport Table from '@/components/Table.vue'\nimport { EDITABLE_UNKNOWN_FIELDS } from '@/api/http-constants'\n\ndayjs.extend(customParseFormat)\ndayjs.locale('fr')\n\n@Component({\n components: {\n SmoothReflow,\n Table,\n },\n filters: {\n plurializeOccurence(value: string) {\n const count = parseInt(value, 10)\n if (count > 0) {\n return 'répétitions'\n }\n return 'répétition'\n },\n },\n})\nexport default class AdminEditForm extends Vue {\n @Prop() event!: CalendarEvent | null\n statusData = status\n startDialog: boolean = false\n endDialog: boolean = false\n\n smoothReflowSettings = {\n transitionEvent: {\n selector: 'div',\n propertyName: 'opacity',\n },\n }\n\n headers = [\n { text: 'Clé', value: 'key' },\n { text: 'Valeur', value: 'value' },\n ]\n\n get EDITABLE_UNKNOWN_FIELDS() {\n return EDITABLE_UNKNOWN_FIELDS\n }\n\n get items() {\n if (!this.event) {\n return []\n }\n\n // On ajoute les champs inconnus\n const _items = []\n const data: any = this.event.unknownFields\n for (const key in data) {\n _items.push({\n key: key,\n value: data[key],\n })\n }\n\n const items = _items.filter(x => x.value)\n\n // on masque les champs inconnus éditables\n const pItems = items.filter(item => {\n return !EDITABLE_UNKNOWN_FIELDS.includes(item.key)\n })\n\n return pItems\n }\n\n get reasons(): ReasonObject[] {\n if (this.currentEvent.event.status === 'not_charged') {\n return reasons.filter(\n r =>\n r.value === 'refusal' ||\n r.value === 'absent' ||\n r.value === 'off_target'\n )\n }\n\n if (this.currentEvent.event.status === 'validated_qc') {\n return reasons.filter(\n r =>\n r.value === 'sale' ||\n r.value === 'hot_contact' ||\n r.value === 'failure'\n )\n }\n\n return reasons\n }\n\n get mapLink(): string | null {\n if (!this.event || !this.event.prospect) {\n return null\n }\n\n const encodedAddress = encodeURIComponent(this.event.prospect.address)\n return `https://www.google.com/maps/search/?api=1&query=${encodedAddress}`\n }\n\n rules = {\n date: [(v: string) => !!v || 'Vous devez spécifier une date'],\n select: [(v: string) => !!v || 'Vous devez spécifier un status'],\n reason: [(v: string) => !!v || 'Vous devez spécifier une raison'],\n campaign: [(v: string) => !!v || 'Le champ campagne ne peut être vide'],\n indice: [(v: string) => !!v || 'Le champ indice ne peut être vide'],\n // indice: [\n // (v: string) =>\n // v === undefined ||\n // v === null ||\n // (v && v.trim && v.trim().length === 0) ||\n // !isNaN(v as any) ||\n // 'Le champ campagne ne peut être vide',\n // ],\n }\n startDateMenu = false\n startHourMenu = false\n startHourMenuTime = ''\n endDateMenu = false\n endHourMenu = false\n endHourMenuTime = ''\n valid = false\n\n currentEvent = new FormCalendarEvent()\n\n @Watch('event', { deep: true, immediate: true })\n onEvent() {\n if (!this.event) {\n return\n }\n\n this.currentEvent.event = {\n ...this.event,\n }\n this.currentEvent.event.unknownFields = {\n ...this.event.unknownFields,\n }\n\n this.currentEvent.start_date = {\n date: this.event.start_date\n ? dayjs(this.event.start_date).format('YYYY-MM-DD')\n : '',\n hour: this.event.start_date\n ? dayjs(this.event.start_date).format('HH:mm')\n : '',\n }\n this.currentEvent.end_date = {\n date: this.event.end_date\n ? dayjs(this.event.end_date).format('YYYY-MM-DD')\n : '',\n hour: this.event.end_date\n ? dayjs(this.event.end_date).format('HH:mm')\n : '',\n }\n this.currentEvent.event.prospect = {\n rs: '',\n typers: '',\n civility: '',\n lastname: '',\n firstname: '',\n address: '',\n address2: '',\n zip: '',\n city: '',\n phone: '',\n phoneBis: '',\n mobile: '',\n email: '',\n siret: '',\n ...this.event.prospect,\n }\n }\n\n onStatusChange() {\n if (!this.currentEvent || !this.currentEvent.event) {\n return\n }\n this.currentEvent.event.reason = undefined\n }\n\n /**\n * Gestion des timers\n */\n @Watch('startHourMenu')\n onStartHourMenu(menu: boolean) {\n if (menu) {\n this.startHourMenuTime = this.currentEvent.start_date.hour\n return\n }\n this.currentEvent.start_date.hour = this.startHourMenuTime\n }\n\n onStartHourMenuTime() {\n this.startHourMenuTime = this.currentEvent.start_date.hour\n }\n\n @Watch('endHourMenu')\n onEndHourMenu(menu: boolean) {\n if (menu) {\n this.endHourMenuTime = this.currentEvent.end_date.hour\n return\n }\n this.currentEvent.end_date.hour = this.endHourMenuTime\n }\n\n onEndHourMenuTime() {\n this.endHourMenuTime = this.currentEvent.end_date.hour\n }\n\n onDelete() {\n this.$emit('delete', this.event)\n }\n\n onCancel() {\n this.$emit('cancel')\n }\n\n onSave() {\n const $form = this.$refs.form as any\n if (!$form.validate()) {\n return\n }\n\n const startDate = dayjs(\n this.currentEvent.start_date.date +\n ' ' +\n this.currentEvent.start_date.hour,\n // @ts-ignore\n 'YYYY-MM-DD HH:mm'\n )\n const endDate = dayjs(\n this.currentEvent.end_date.date +\n ' ' +\n this.currentEvent.end_date.hour,\n // @ts-ignore\n 'YYYY-MM-DD HH:mm'\n )\n\n // On détermine la date de fin afin de garder le même interval que l'event d'origin\n const diffDays = this.event\n ? getDiffDays(startDate.toDate(), this.event.start_date)\n : 0\n const endDateClone = new Date(endDate.toDate())\n endDateClone.setDate(endDateClone.getDate() + diffDays)\n\n const event = this.currentEvent.event\n\n event.start_date = startDate.toDate()\n\n if (event.status === 'unavailable') {\n event.end_date = endDate.toDate()\n } else {\n event.end_date = endDateClone\n }\n\n this.$emit('save', event)\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminEditForm.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminEditForm.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AdminEditForm.vue?vue&type=template&id=6b57f963&scoped=true&\"\nimport script from \"./AdminEditForm.vue?vue&type=script&lang=ts&\"\nexport * from \"./AdminEditForm.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./AdminEditForm.vue?vue&type=style&index=0&id=6b57f963&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6b57f963\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.onSave($event)}},model:{value:(_vm.valid),callback:function ($$v) {_vm.valid=$$v},expression:\"valid\"}},[_c('v-card-text',[_c('v-container',{attrs:{\"grid-list-md\":\"\"}},[_c('v-layout',{attrs:{\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.statusData,\"item-text\":\"title\",\"item-value\":\"value\",\"label\":\"Status\",\"flat\":\"\",\"required\":\"\",\"rules\":_vm.rules.select},scopedSlots:_vm._u([{key:\"selection\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('v-list-tile',[_c('v-list-tile-avatar',[_c('v-avatar',{class:(\"colors-\" + (item.value)),attrs:{\"size\":\"18\"}})],1),_c('v-list-tile-content',[_c('v-list-tile-title',{domProps:{\"innerHTML\":_vm._s(item.title)}})],1)],1)]}},{key:\"item\",fn:function(data){return [_c('v-list-tile-avatar',[_c('v-avatar',{class:(\"colors-\" + (data.item.value)),attrs:{\"size\":\"18\"}})],1),_c('v-list-tile-content',[_c('v-list-tile-title',{domProps:{\"innerHTML\":_vm._s(data.item.title)}})],1)]}}]),model:{value:(_vm.currentEvent.event.status),callback:function ($$v) {_vm.$set(_vm.currentEvent.event, \"status\", $$v)},expression:\"currentEvent.event.status\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-textarea',{attrs:{\"auto-grow\":\"\",\"label\":\"Notes\",\"box\":\"\"},model:{value:(_vm.currentEvent.event.notes),callback:function ($$v) {_vm.$set(_vm.currentEvent.event, \"notes\", $$v)},expression:\"currentEvent.event.notes\"}})],1)],1)],1)],1),_c('v-card-actions',{attrs:{\"wrap\":\"\"}},[_c('v-layout',{attrs:{\"wrap\":\"\",\"justify-space-between\":\"\"}},[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"primary\",\"disabled\":!_vm.valid,\"type\":\"submit\"}},[_vm._v(\"Enregistrer\")])],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Prop, Watch, Vue } from 'vue-property-decorator'\nimport { CalendarEvent } from '@/models/CalendarEvent'\nimport FormCalendarEvent from '@/models/FormCalendarEvent'\nimport { status } from '@/data/status'\nimport dayjs from 'dayjs'\nimport 'dayjs/locale/fr'\n// @ts-ignore\nimport customParseFormat from 'dayjs/plugin/customParseFormat'\n\ndayjs.extend(customParseFormat)\ndayjs.locale('fr')\n\n@Component({})\nexport default class CommercialEditForm extends Vue {\n @Prop() event!: CalendarEvent\n valid = false\n statusData = status\n currentEvent = new FormCalendarEvent()\n rules = {\n select: [(v: string) => !!v || 'Vous devez spécifier un status'],\n }\n\n @Watch('event', { deep: true, immediate: true })\n onEvent() {\n if (!this.event) {\n return\n }\n\n this.currentEvent.event = {\n ...this.event,\n }\n this.currentEvent.start_date = {\n date: this.event.start_date\n ? dayjs(this.event.start_date).format('YYYY-MM-DD')\n : '',\n hour: this.event.start_date\n ? dayjs(this.event.start_date).format('HH:mm')\n : '',\n }\n this.currentEvent.end_date = {\n date: this.event.end_date\n ? dayjs(this.event.end_date).format('YYYY-MM-DD')\n : '',\n hour: this.event.end_date\n ? dayjs(this.event.end_date).format('HH:mm')\n : '',\n }\n }\n\n onDelete() {\n this.$emit('delete', this.event)\n }\n\n onCancel() {\n this.$emit('cancel')\n }\n\n onSave() {\n let startDate = dayjs(\n this.currentEvent.start_date.date +\n ' ' +\n this.currentEvent.start_date.hour,\n // @ts-ignore\n 'YYYY-MM-DD HH:mm'\n )\n let endDate = dayjs(\n this.currentEvent.end_date.date +\n ' ' +\n this.currentEvent.end_date.hour,\n // @ts-ignore\n 'YYYY-MM-DD HH:mm'\n )\n\n const event = this.currentEvent.event\n event.start_date = startDate.toDate()\n event.end_date = endDate.toDate()\n\n this.$emit('save', event)\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CommercialEditForm.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CommercialEditForm.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CommercialEditForm.vue?vue&type=template&id=0b69f2d8&scoped=true&\"\nimport script from \"./CommercialEditForm.vue?vue&type=script&lang=ts&\"\nexport * from \"./CommercialEditForm.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./CommercialEditForm.vue?vue&type=style&index=0&id=0b69f2d8&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"0b69f2d8\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card-text',[(_vm.documents.length)?_c('v-list',{staticClass:\"pa-0\",attrs:{\"two-line\":\"\",\"subheader\":\"\"}},_vm._l((_vm.documents),function(document){return _c('v-list-tile',{key:document.title,attrs:{\"avatar\":\"\",\"href\":document.url,\"target\":\"_blank\"}},[_c('v-list-tile-avatar',[_c('v-icon',{staticClass:\"grey lighten-1 white--text\"},[_vm._v(\"description\")])],1),_c('v-list-tile-content',[_c('v-list-tile-title',[_vm._v(_vm._s(document.title))])],1)],1)}),1):_c('p',{staticClass:\"text-xs-center font-italic ma-4\"},[_vm._v(\"Il n'y a pas de documents à votre disposition\")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Vue from 'vue'\nimport Vuex from 'vuex'\n\nVue.use(Vuex)\n\nconst store = new Vuex.Store({})\n\nfunction getLogged(state: any) {\n return state.auth ? state.auth.logged : null\n}\n\nstore.watch(getLogged, logged => {\n if (logged === null) {\n return\n }\n\n if (!logged) {\n store.dispatch('calendar/cleanup')\n store.dispatch('documents/cleanup')\n store.dispatch('commercials/cleanup')\n }\n})\n\nexport default store\n","interface IObject {\n [key: string]: string\n}\n\nfunction parseParams(params: string): IObject {\n if (!params) {\n return {}\n }\n\n const _params = params[0] === '?' ? params.substr(1) : params\n const pairs = _params.split('&')\n\n const obj = pairs.reduce((previousValue: IObject, currentValue: string) => {\n const pair = currentValue.split('=')\n const key = decodeURIComponent(pair[0])\n const value = decodeURIComponent(pair[1])\n previousValue[key] = value\n return previousValue\n }, {})\n\n return obj\n}\n\nfunction stringifyParams(params: IObject): string {\n const array = Object.keys(params).map(key => {\n return {\n key,\n value: params[key],\n }\n })\n\n const pairs = array.map(element => {\n const key = encodeURIComponent(element.key)\n const value = encodeURIComponent(element.value)\n return `${key}=${value}`\n })\n\n const query = pairs.join('&')\n return query || ''\n}\n\nexport { parseParams, stringifyParams }\n","class AdminError extends Error {}\n\nexport { AdminError }\n","import {\n Module,\n VuexModule,\n Mutation,\n Action,\n getModule,\n} from 'vuex-module-decorators'\nimport store from '@/store'\nimport { login, getUser } from '@/api/api'\nimport router from '@/router'\n// import queryString from 'query-string'\nimport { parseParams, stringifyParams } from '@/utils/params'\nimport omit from 'lodash/omit'\nimport { AdminError } from '@/models/AdminError'\nimport { Role } from '@/models/Role'\nimport includes from 'lodash/includes'\n\ninterface AuthState {\n token: string\n logged: boolean\n messageAccepted: boolean\n message: string\n userID: number\n roles: Role[]\n username: string\n companyID: number | null\n}\n\ntype loginArg = {\n email: string\n password: string\n}\n\n@Module({ dynamic: true, store, name: 'auth', namespaced: true })\nclass Auth extends VuexModule implements AuthState {\n public token = ''\n public logged = false\n public messageAccepted = false\n public message = ''\n public userID = -1\n public roles: Role[] = []\n public username = ''\n public companyID: number | null = null\n\n private initialized = false\n\n @Mutation\n setInitialized() {\n this.initialized = true\n }\n\n @Mutation\n setLogged(value: boolean) {\n this.logged = value\n }\n\n @Mutation\n setMessageAccepted(value: boolean) {\n this.messageAccepted = value\n }\n\n @Mutation\n setToken(token: string) {\n this.token = token\n }\n\n @Mutation\n setMessage(message: string) {\n this.message = message\n }\n\n @Mutation\n setUserID(userID: number) {\n this.userID = userID\n }\n\n @Mutation\n setRoles(roles: any) {\n this.roles = roles\n }\n\n @Mutation\n setUsername(username: string) {\n this.username = username\n }\n\n @Mutation\n setCompanyID(companyID: number | null) {\n this.companyID = companyID\n }\n\n @Action({ rawError: true })\n async login({ email, password }: loginArg) {\n // on simule une connexion 1s\n // await new Promise(resolve => {\n // setTimeout(resolve, 1000)\n // })\n\n try {\n const resp1 = await login(email, password)\n const data1 = resp1.data\n\n this.context.commit('setToken', data1.token)\n await this.getUser()\n if (includes(this.roles, 'ROLE_ADMIN')) {\n // On a pas le droit de se logger si c'est un admin\n await this.logout()\n throw new AdminError(\n `Impossible de se connecter en tant qu'administrateur`\n )\n } else {\n this.context.commit('setLogged', true)\n this.saveToLocalstorage()\n }\n } catch (e) {\n throw e\n }\n }\n\n @Action\n async autoLogin() {\n const currentURL = document.URL\n const url = new URL(currentURL)\n const token = url.searchParams.get('token')\n\n // Si le token est présent dans l'url on fait une auto connexion\n if (token && token !== this.token) {\n this.context.commit('setToken', token)\n await this.getUser()\n this.context.commit('setLogged', true)\n this.saveToLocalstorage()\n }\n\n if (token) {\n // On redirige pour virer le token de l'url\n const params = parseParams(url.search)\n // const params = queryString.parse(url.search)\n\n const newParams = omit(params, 'token')\n const newParamsStr = stringifyParams(newParams)\n // const newParamsStr = queryString.stringify(newParams)\n const newPath = newParamsStr\n ? `${url.pathname}?${newParamsStr}`\n : url.pathname\n\n router.replace({\n path: newPath,\n })\n }\n }\n\n @Action\n async getUser() {\n try {\n const resp = await getUser()\n const user = resp.data\n\n const userID = user.id\n const message = user.company ? user.company.loginMessage : null\n const roles = user.roles\n const username = user.username\n const companyID = user.company ? user.company.id : null\n\n this.context.commit('setUserID', userID)\n this.context.commit('setMessage', message)\n this.context.commit('setRoles', roles)\n this.context.commit('setUsername', username)\n this.context.commit('setCompanyID', companyID)\n\n if (!message) {\n this.context.commit('setMessageAccepted', true)\n } else {\n this.context.commit('setMessageAccepted', false)\n }\n } catch (e) {\n throw e\n }\n }\n\n @Action\n async acceptMessage() {\n this.context.commit('setMessageAccepted', true)\n this.saveToLocalstorage()\n }\n\n @Action\n async logout() {\n this.context.commit('setLogged', false)\n this.context.commit('setMessageAccepted', false)\n this.context.commit('setToken', '')\n this.context.commit('setMessage', '')\n this.context.commit('setUserID', -1)\n this.saveToLocalstorage()\n }\n\n @Action\n async init() {\n if (this.initialized) {\n return\n }\n this.context.commit('setInitialized')\n\n this.restoreFromLocalstorage()\n await this.autoLogin()\n\n console.log('Auth init')\n }\n\n @Action\n async ready() {\n await this.init()\n console.log('Auth ready')\n }\n\n @Action\n saveToLocalstorage() {\n const state: AuthState = {\n logged: this.logged,\n messageAccepted: this.messageAccepted,\n token: this.token,\n message: this.message,\n userID: this.userID,\n roles: this.roles,\n username: this.username,\n companyID: this.companyID,\n }\n localStorage.setItem('auth', JSON.stringify(state))\n }\n\n @Action\n restoreFromLocalstorage() {\n const stateStr = localStorage.getItem('auth')\n if (stateStr) {\n const state: AuthState = JSON.parse(stateStr)\n this.context.commit('setLogged', state.logged)\n this.context.commit('setMessageAccepted', state.messageAccepted)\n this.context.commit('setToken', state.token)\n this.context.commit('setMessage', state.message)\n this.context.commit('setUserID', state.userID)\n this.context.commit('setRoles', state.roles)\n this.context.commit('setUsername', state.username)\n this.context.commit('setCompanyID', state.companyID)\n }\n }\n}\n\nexport default getModule(Auth)\n","import axios from 'axios'\nimport { backendURL } from './http-constants'\nimport AuthModule from '@/store/modules/auth'\nimport router from '@/router'\nimport { User } from '@/models/User'\nimport { CompanyUser } from '@/models/CompanyUser'\nimport { Meeting } from '@/models/Meeting'\nimport { UserDocument } from '@/models/UserDocument'\nimport { Message } from '@/models/Message'\nimport { Campaign } from '@/models/Campaign'\nimport axiosRetry from 'axios-retry'\nimport RecurrentUnavailableRequest from '@/models/RecurrentUnavailableRequest'\nimport { OperatorParams } from '@/models/OperatorParams'\n\nconst DEV = !process.env.NODE_ENV || process.env.NODE_ENV === 'development'\n\nconst axiosInstance = axios.create({\n baseURL: backendURL + '/api',\n headers: {},\n})\n\naxiosRetry(axiosInstance, { retries: 3 })\n\naxiosInstance.interceptors.request.use(\n config => {\n const token = AuthModule.token\n config.headers.Authorization = `Bearer ${token}`\n return config\n },\n error => {\n return Promise.reject(error)\n }\n)\n\naxiosInstance.interceptors.response.use(\n response => {\n return response\n },\n error => {\n // si unauthorized\n if (!DEV && error.response.status === 401) {\n AuthModule.logout()\n router.push({ name: 'signin' })\n }\n return Promise.reject(error)\n }\n)\n\n/**\n * Auth\n */\nfunction login(username: string, password: string) {\n return axiosInstance.post(`/auth`, {\n username,\n password,\n })\n}\n\n/**\n * Company\n */\nfunction getCompanyUsers(companyID: number) {\n return axiosInstance.get(`/companies/${companyID}/users`)\n}\n\n/**\n * Document\n */\nfunction getDocuments() {\n return axiosInstance.get(`/documents`)\n}\n\n/**\n * Meeting\n */\nfunction getMeetings() {\n return axiosInstance.get(`/meetings`)\n}\n\nfunction postMeetingDefault(req: any) {\n return axiosInstance.post(`/meetings/default`, req)\n}\n\nfunction postMeetingNixxis(req: any) {\n return axiosInstance.post(`/meetings/nixxis`, req)\n}\n\nfunction postMeetingSeeasoftware(req: any) {\n return axiosInstance.post(`/meetings/seeasoftware`, req)\n}\n\nfunction putMeeting(meetingID: number, req: any) {\n return axiosInstance.put(`/meetings/${meetingID}`, req)\n}\n\nfunction deleteMeeting(meetingID: number) {\n return axiosInstance.delete(`/meetings/${meetingID}`)\n}\n\nfunction postUnavailable(req: any) {\n return axiosInstance.post(`/unavailabilities`, req)\n}\n\nfunction postRecurrentUnavailable(req: RecurrentUnavailableRequest) {\n return axiosInstance.post(`/recurrent_unavailabilities`, req)\n}\n\nfunction deleteRecurrentUnavailable(req: RecurrentUnavailableRequest) {\n return axiosInstance.post(`/delete_recurrent_unavailabilities`, req)\n}\n\nfunction putMeetingUpdateStatus(meetingID: number, req: any) {\n return axiosInstance.put(`/meetings/${meetingID}/update_status`, req)\n}\n\nfunction putMeetingMoove(meetingID: number, req: any) {\n return axiosInstance.put(`/meetings/${meetingID}/moove`, req)\n}\n\nfunction putMeetingUpdateInformation(meetingID: number, req: any) {\n return axiosInstance.put(`/meetings/${meetingID}/update_information`, req)\n}\n\nfunction putUnavailable(meetingID: number, req: any) {\n return axiosInstance.put(`/unavailabilities/${meetingID}`, req)\n}\n\nfunction getMeetingsAround(zipCode: string, userId: number) {\n return axiosInstance.get(`/meetings/around/${zipCode}/for_user/${userId}`)\n}\n\n/**\n * Notification\n */\nfunction getNotificationConfirmation() {\n return axiosInstance.get(`/notifications/confirmation`)\n}\n\nfunction getNotificationMove() {\n return axiosInstance.get(`/notifications/move`)\n}\n\n/**\n * User\n */\nfunction getUser() {\n return axiosInstance.get(`/user`)\n}\n\nfunction getUsers() {\n return axiosInstance.get(`/users`)\n}\n\nfunction getUserByID(userID: number) {\n return axiosInstance.get(`/users/${userID}`)\n}\n\nfunction getUserByHermesID(hermesID: string) {\n return axiosInstance.get(`/users/hermes/${hermesID}`)\n}\n\nfunction getNixxisObject(activityID: string, internalID: string) {\n return axiosInstance.get(`/users/nixxis/${activityID}/${internalID}`)\n}\n\nfunction postSeeasoftwareObject(req: {\n activityId: string\n internalId: string\n}) {\n return axiosInstance.post(`/users/seeasoftware`, req)\n}\n\nfunction getUsersDocuments(userID: number) {\n return axiosInstance.get(`/users/${userID}/documents`)\n}\n\nfunction getUsersMeetings(userID: number) {\n return axiosInstance.get(`/users/${userID}/meetings`)\n}\n\nfunction getUserGoogleSync(userID: number) {\n return axiosInstance.get(`/users/${userID}/meetings/google/sync`)\n}\n\n/**\n * Campaign\n */\nfunction getCampaign(campaignNumber: string) {\n return axiosInstance.get(`/campaigns/${campaignNumber}`)\n}\n\nexport {\n login,\n getCompanyUsers,\n getDocuments,\n getMeetings,\n postMeetingDefault,\n postMeetingNixxis,\n postMeetingSeeasoftware,\n putMeeting,\n putMeetingUpdateStatus,\n putMeetingMoove,\n putMeetingUpdateInformation,\n putUnavailable,\n getMeetingsAround,\n deleteMeeting,\n postUnavailable,\n postRecurrentUnavailable,\n deleteRecurrentUnavailable,\n getNotificationConfirmation,\n getNotificationMove,\n getUser,\n getUsers,\n getUserByID,\n getUserByHermesID,\n getNixxisObject,\n postSeeasoftwareObject,\n getUsersDocuments,\n getUsersMeetings,\n getUserGoogleSync,\n getCampaign\n}\n","import {\n Module,\n VuexModule,\n Mutation,\n Action,\n getModule,\n} from 'vuex-module-decorators'\nimport store from '@/store'\nimport Document from '@/models/Document'\nimport { getDocuments, getUsersDocuments } from '@/api/api'\nimport { backendURL } from '@/api/http-constants'\nimport AuthModule from './auth'\nimport { UserDocument } from '@/models/UserDocument'\nimport router from '@/router'\nimport { Route } from 'vue-router'\nimport includes from 'lodash/includes'\n\ninterface DocumentsState {\n documents: Document[]\n}\n\n@Module({ dynamic: true, store, name: 'documents', namespaced: true })\nclass Documents extends VuexModule implements DocumentsState {\n public documents: Document[] = []\n public loading: boolean = false\n\n private initialized = false\n\n @Mutation\n setInitialized(initialized: boolean) {\n this.initialized = initialized\n }\n\n @Mutation\n setDocuments(events: Document[]) {\n this.documents = events\n }\n\n @Mutation\n setLoading(loading: boolean) {\n this.loading = loading\n }\n\n @Action({ rawError: true })\n async load(id: number | null) {\n if (this.loading) {\n return\n }\n\n console.log('Documents loading')\n this.context.commit('setLoading', true)\n\n /**\n * Les documents peuvent être accédés uniquement par leur propre\n * utilisateur ainsi que l'administrateur\n */\n let data: UserDocument[] = []\n if (id === null) {\n const resp = await getDocuments()\n data = resp.data\n } else {\n if (includes(AuthModule.roles, 'ROLE_ADMIN')) {\n const resp = await getUsersDocuments(id)\n data = resp.data\n }\n }\n\n const documents: Document[] = data.map((element: any) => {\n const url = `${backendURL}/uploads/documents/users/${\n element.fileName\n }`\n const document: Document = {\n title: element.fileOriginalName,\n url: url,\n }\n return document\n })\n\n this.context.commit('setDocuments', documents)\n\n console.log('Documents loaded')\n this.context.commit('setLoading', false)\n }\n\n @Action\n async loadFromRoute(route: Route) {\n if (route.name === 'signin') {\n return\n }\n\n const userID: number | null = (() => {\n const _paramID = parseInt(route.params.id, 10)\n const paramID = !isNaN(_paramID) ? _paramID : null\n return paramID\n })()\n\n await this.cleanup()\n await this.load(userID)\n }\n\n @Action\n async init() {\n if (this.initialized) {\n return\n }\n this.context.commit('setInitialized', true)\n console.log('Documents init')\n\n const currentRoute = router.currentRoute\n router.beforeEach(async (to: Route, from: Route, next: Function) => {\n await this.loadFromRoute(to)\n next()\n })\n\n await this.loadFromRoute(currentRoute)\n }\n\n @Action\n async ready() {\n await this.init()\n console.log('Documents ready')\n }\n\n @Action\n async cleanup() {\n console.log('Documents cleanup')\n\n this.context.commit('setDocuments', [])\n }\n}\n\nexport default getModule(Documents)\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Vue } from 'vue-property-decorator'\nimport DocumentsModule from '@/store/modules/documents'\n\n@Component({})\nexport default class Documents extends Vue {\n get documents() {\n return DocumentsModule.documents\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Documents.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Documents.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Documents.vue?vue&type=template&id=0b41b502&\"\nimport script from \"./Documents.vue?vue&type=script&lang=ts&\"\nexport * from \"./Documents.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card-text',{staticClass:\"pa-4\",staticStyle:{\"display\":\"grid\",\"grid-gap\":\"2rem\"}},_vm._l((_vm.messages),function(message,index){return _c('div',{key:index},[_c('v-card',{staticStyle:{\"border-radius\":\"10px\"},attrs:{\"color\":\"grey lighten-3\"}},[_c('v-card-title',{staticClass:\"pa-4\"},[_vm._v(_vm._s(message.text))])],1),_c('div',{staticClass:\"ml-2 my-1 caption\"},[_vm._v(_vm._s(_vm._f(\"formatDate\")(message.date)))])],1)}),0)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Vue } from 'vue-property-decorator'\nimport dayjs from 'dayjs'\nimport 'dayjs/locale/fr'\n// @ts-ignore\nimport relativeTime from 'dayjs/plugin/relativeTime'\n\ndayjs.locale('fr')\ndayjs.extend(relativeTime)\n\n@Component({\n filters: {\n formatDate(value: Date): string {\n return (dayjs() as any).to(dayjs(value))\n },\n },\n})\nexport default class Messages extends Vue {\n messages: any[] = [...Array(5).keys()].map(x => {\n return {\n text:\n 'Lorem ipsum, dolor sit amet consectetur adipisicing elit. Deleniti amet sapiente saepe, assumenda labore voluptate, quaerat, minima est molestiae beatae debitis? Ipsam beatae suscipit corporis tempora reiciendis animi eveniet ratione?',\n date: new Date(),\n }\n })\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Messages.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Messages.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Messages.vue?vue&type=template&id=a3c5ae56&\"\nimport script from \"./Messages.vue?vue&type=script&lang=ts&\"\nexport * from \"./Messages.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import transform from 'lodash/transform'\nimport isEqual from 'lodash/isEqual'\nimport isObject from 'lodash/isObject'\nimport { Dictionary } from 'lodash'\n\nfunction differenceBetweenObjects(\n object: Dictionary<{}>,\n base: Dictionary<{}>\n) {\n function changes(object: Dictionary<{}>, base: Dictionary<{}>) {\n return transform(object, function(result, value, key) {\n if (!isEqual(value, base[key])) {\n result[key] =\n isObject(value) && isObject(base[key])\n ? changes(value, base[key])\n : value\n }\n })\n }\n return changes(object, base)\n}\n\nexport { differenceBetweenObjects }\n","import { OperatorParams } from '@/models/OperatorParams'\nimport cloneDeep from 'lodash/cloneDeep'\n\ninterface CustomWindow extends Window {\n operatorParams: OperatorParams\n}\n\nfunction cleanupNixxisObj(input: OperatorParams): OperatorParams {\n const output = cloneDeep(input)\n const keys = Object.keys(output)\n\n keys.forEach(key => {\n if (key.startsWith('_')) {\n delete output[key]\n }\n })\n\n return output\n}\n\nexport { cleanupNixxisObj, CustomWindow }\n","import { OperatorParams } from '@/models/OperatorParams'\nimport cloneDeep from 'lodash/cloneDeep'\n\n/**\n * Comme internalID a cette forme\n * INTERNAL_ID = 'GUID_CX@|@CLIENT_TABLE@|@INDICE@|@CALLBACK_URL_GETDATA@|@CALLBACK_URL_SETMEETING'\n * on check si @|@ existe dedans\n */\nfunction isSeeasoftware(internalID: string): boolean {\n return internalID.includes('@|@')\n}\n\n/**\n * INTERNAL_ID = 'GUID_CX@|@CLIENT_TABLE@|@INDICE@|@CALLBACK_URL_GETDATA@|@CALLBACK_URL_SETMEETING'\n */\nfunction parseIndiceFromSeeasoftwareInternalID(internalID: string) {\n const parts = internalID.split('@|@')\n return parts[2]\n}\n\nfunction cleanupSeeasoftwareObj(input: OperatorParams): OperatorParams {\n const output = cloneDeep(input)\n const keys = Object.keys(output)\n\n keys.forEach(key => {\n if (key === 'ContactID') {\n delete output[key]\n }\n })\n\n return output\n}\n\nexport {\n isSeeasoftware,\n parseIndiceFromSeeasoftwareInternalID,\n cleanupSeeasoftwareObj,\n}\n","import { HERMES_TOTAL_FIELDS } from '@/api/http-constants'\nimport { OperatorParams } from '@/models/OperatorParams'\n\nfunction isHermesFinished(): boolean {\n for (const x of [...Array(HERMES_TOTAL_FIELDS).keys()]) {\n const X = x + 1\n const keyEl = document.querySelector(`#var${X}`) as HTMLInputElement\n\n if (keyEl && keyEl.value === '==HERMES_TERMINE==') {\n return true\n }\n }\n return false\n}\n\nfunction getCompletedFieldsCount() {\n let total: number = 0\n for (const x of [...Array(HERMES_TOTAL_FIELDS).keys()]) {\n const X = x + 1\n const keyEl = document.querySelector(`#var${X}`) as HTMLInputElement\n\n if (keyEl && keyEl.value) {\n total++\n }\n }\n return total\n}\n\nfunction parseOperatorParamsFromURL() {\n const operatorParams: OperatorParams = {}\n\n const currentURL = document.URL\n const url = new URL(currentURL)\n\n url.searchParams.forEach((value, key) => {\n if (value.trim()) {\n operatorParams[key] = value\n }\n })\n\n return operatorParams\n}\n\nfunction parseOperatorParams() {\n const operatorParams: OperatorParams = {}\n for (const x of [...Array(HERMES_TOTAL_FIELDS / 2).keys()]) {\n const keyEl = document.querySelector(\n `#var${2 * x + 1}`\n ) as HTMLInputElement\n const valueEl = document.querySelector(\n `#var${2 * x + 2}`\n ) as HTMLInputElement\n\n if (keyEl && valueEl) {\n const key = keyEl.value\n const value = valueEl.value\n\n if (key && value) {\n operatorParams[key] = value\n }\n }\n }\n return operatorParams\n}\n\nfunction cleanupHermes() {\n for (const x of [...Array(HERMES_TOTAL_FIELDS).keys()]) {\n const el = document.querySelector(`#var${x + 1}`) as HTMLInputElement\n if (el) {\n el.value = ''\n }\n }\n}\n\nexport {\n isHermesFinished,\n getCompletedFieldsCount,\n parseOperatorParams,\n parseOperatorParamsFromURL,\n cleanupHermes,\n}\n","import {\n Module,\n VuexModule,\n Mutation,\n Action,\n getModule,\n} from 'vuex-module-decorators'\nimport store from '@/store'\nimport { CalendarEvent } from '@/models/CalendarEvent'\nimport {\n getMeetings,\n getUsersMeetings,\n postMeetingNixxis,\n postMeetingDefault,\n getUser,\n deleteMeeting,\n getUserByID,\n postUnavailable,\n putUnavailable,\n putMeetingUpdateStatus,\n putMeetingUpdateInformation,\n putMeetingMoove,\n getUserByHermesID,\n getNotificationMove,\n getNotificationConfirmation,\n getUserGoogleSync,\n getNixxisObject,\n postSeeasoftwareObject,\n postMeetingSeeasoftware,\n} from '@/api/api'\nimport { Constraints } from '@/models/Constraints'\nimport AuthModule from './auth'\nimport { MeetingRequest } from '@/models/Meeting'\nimport dayjs from 'dayjs'\nimport router from '@/router'\nimport { Route } from 'vue-router'\nimport intersection from 'lodash/intersection'\nimport { differenceBetweenObjects } from '@/utils/differenceBetweenObjects'\nimport get from 'lodash/get'\nimport { Message } from '@/models/Message'\nimport { OperatorParams } from '@/models/OperatorParams'\nimport includes from 'lodash/includes'\nimport difference from 'lodash/difference'\nimport { cleanupNixxisObj, CustomWindow } from '@/utils/nixxis'\nimport {\n isSeeasoftware,\n parseIndiceFromSeeasoftwareInternalID,\n cleanupSeeasoftwareObj,\n} from '@/utils/seeasoftware'\nimport cloneDeep from 'lodash/cloneDeep'\nimport {\n isHermesFinished,\n getCompletedFieldsCount,\n parseOperatorParams,\n cleanupHermes,\n parseOperatorParamsFromURL,\n} from '@/utils/hermes'\nimport { User } from '@/models/User'\nimport compact from 'lodash/compact'\n\ndeclare let window: CustomWindow\n\ninterface UserInfos {\n firstname: string\n lastname: string\n}\n\ninterface CalendarState {\n events: CalendarEvent[]\n constraints: Constraints | null\n userID: number | null\n userInfos: UserInfos | null\n startDate: Date | null\n meetingID: number | null\n autoValidationDelay: number | null\n moveMsg: Message | null\n confirmationMsg: Message | null\n}\n\n@Module({ dynamic: true, store, name: 'calendar', namespaced: true })\nclass Calendar extends VuexModule implements CalendarState {\n /**\n * WARNING: les events ne sont pas readonly, ce n'est pas propre met on\n * garde ce fonctionnement pour des raisons de performances.\n */\n public events: CalendarEvent[] = []\n public constraints: Constraints | null = null\n public userID: number | null = null\n public userInfos: UserInfos | null = null\n public startDate: Date | null = null\n public meetingID: number | null = null\n public autoValidationDelay: number | null = null\n public moveMsg: Message | null = null\n public confirmationMsg: Message | null = null\n public operatorErrorMessage: string | null = null\n public nixxisErrorMessage: string | null = null\n public seeasoftwareErrorMessage: string | null = null\n public pendingUpdate: CalendarEvent | null = null\n public syncingErrorMessage: string | null = null\n\n public operatorParams: OperatorParams = {}\n public hermesFinished: boolean = false\n public nixxisFinished: boolean = false\n public seeasoftwareFinished: boolean = false\n public seeasoftwareInternalID: string | null = null\n public completedFieldsCount: number = 0\n public operatorType: 'hermes' | 'nixxis' | 'seeasoftware' | null = null\n public operatorCommercials: User[] = []\n\n public loading: boolean = false\n private initialized = false\n\n @Mutation\n setInitialized(initialized: boolean) {\n this.initialized = initialized\n }\n\n @Mutation\n setEvents(events: CalendarEvent[]) {\n this.events = events\n }\n\n @Mutation\n setConstraints(constraints: Constraints | null) {\n this.constraints = constraints\n }\n\n @Mutation\n setUserID(userID: number | null) {\n this.userID = userID\n }\n\n @Mutation\n setUserInfos(userInfos: UserInfos | null) {\n this.userInfos = userInfos\n }\n\n @Mutation\n setLoading(loading: boolean) {\n this.loading = loading\n }\n\n @Mutation\n setOperatorParams(operatorParams: any) {\n this.operatorParams = operatorParams\n }\n\n @Mutation\n setStartDate(startDate: Date) {\n this.startDate = startDate\n }\n\n @Mutation\n setMeetingID(meetingID: number) {\n this.meetingID = meetingID\n }\n\n @Mutation\n setAutoValidationDelay(autoValidationDelay: number | null) {\n this.autoValidationDelay = autoValidationDelay\n }\n\n @Mutation\n setMoveMsg(moveMsg: Message | null) {\n this.moveMsg = moveMsg\n }\n\n @Mutation\n setConfirmationMsg(confirmationMsg: Message | null) {\n this.confirmationMsg = confirmationMsg\n }\n\n @Mutation\n setOperatorErrorMessage(errorMessage: string) {\n this.operatorErrorMessage = errorMessage\n }\n\n @Mutation\n setPendingUpdate(event: CalendarEvent | null) {\n this.pendingUpdate = event\n }\n\n @Mutation\n setSyncingErrorMessage(errorMessage: string | null) {\n this.syncingErrorMessage = errorMessage\n }\n\n @Mutation\n setHermesFinished(state: boolean) {\n this.hermesFinished = state\n }\n\n @Mutation\n setNixxisFinished(state: boolean) {\n this.nixxisFinished = state\n }\n\n @Mutation\n setNixxisErrorMessage(errorMessage: string | null) {\n this.nixxisErrorMessage = errorMessage\n }\n\n @Mutation\n setSeeasoftwareFinished(state: boolean) {\n this.seeasoftwareFinished = state\n }\n\n @Mutation\n setSeeasoftwareErrorMessage(errorMessage: string | null) {\n this.seeasoftwareErrorMessage = errorMessage\n }\n\n @Mutation\n setSeeasoftwareInternalID(internalID: string) {\n this.seeasoftwareInternalID = internalID\n }\n\n @Mutation\n setCompletedFieldsCount(count: number) {\n this.completedFieldsCount = count\n }\n\n @Mutation\n setOperatorType(operatorType: 'hermes' | 'nixxis' | 'seeasoftware') {\n this.operatorType = operatorType\n }\n\n @Mutation\n setOperatorCommercials(commercials: User[]) {\n this.operatorCommercials = commercials\n }\n\n @Action({ rawError: true })\n async loadEvents(id: number) {\n const resp =\n id === AuthModule.userID\n ? await getMeetings()\n : await getUsersMeetings(id)\n const meetings = resp.data\n\n const _events: CalendarEvent[] = meetings.map((element: any) => {\n const event: CalendarEvent = {\n id: element.id,\n backendID: element.id,\n text: element.memo,\n comment: element.comment,\n commercialComment: element.commercialComment,\n topage: element.topage,\n topfic: element.topfic,\n status: element.status,\n indice: element.indice,\n campaignNumber: element.campaign\n ? element.campaign.campaignNumber\n : null,\n unknownFields: element.unknownFields,\n reason: element.reason,\n start_date: new Date(element.startedAt),\n end_date: new Date(element.endedAt),\n prospect: element.prospect,\n eventId: element.eventId,\n }\n return event\n })\n\n const isOnlyCommercial =\n AuthModule.roles.includes('ROLE_COMMERCIAL') &&\n !AuthModule.roles.includes('ROLE_ADMIN') &&\n !AuthModule.roles.includes('ROLE_OPERATOR') &&\n !AuthModule.roles.includes('ROLE_SUPERVISOR')\n\n /**\n * Le commercial ne doit pas voir les RDV à repo et supprimés\n */\n const events = _events.filter(event => {\n if (isOnlyCommercial) {\n return !(\n event.status === 'repositioned' ||\n event.status === 'deleted'\n )\n }\n return true\n })\n\n this.context.commit('setEvents', events)\n }\n\n @Action({ rawError: true })\n async loadConstraints(id: number) {\n const data = await (async () => {\n if (\n includes(AuthModule.roles, 'ROLE_ADMIN') ||\n includes(AuthModule.roles, 'ROLE_OPERATOR')\n ) {\n const resp =\n id === AuthModule.userID\n ? await getUser()\n : await getUserByID(id)\n return resp.data\n } else {\n const resp = await getUser()\n return resp.data\n }\n })()\n\n const autoValidationDelay = get(\n data,\n 'company.autoValidationDelay',\n null\n )\n this.context.commit('setAutoValidationDelay', autoValidationDelay)\n\n const userInfos: UserInfos = {\n firstname: data.firstname,\n lastname: data.lastname,\n }\n\n this.context.commit('setUserInfos', userInfos)\n\n const constraints: Constraints = {\n durationMeeting: data.durationMeeting,\n durationTravel: data.durationTravel,\n maxWeeklyMeeting: data.maxWeeklyMeeting,\n }\n\n this.context.commit('setConstraints', constraints)\n }\n\n @Action({ rawError: true })\n async loadMessages() {\n const moveResp = await getNotificationMove()\n const moveMsg = moveResp.data\n\n const confirmationResp = await getNotificationConfirmation()\n const confirmationMsg = confirmationResp.data\n\n this.context.commit('setMoveMsg', moveMsg)\n this.context.commit('setConfirmationMsg', confirmationMsg)\n }\n\n @Action({ rawError: true })\n async load(userID: number) {\n if (this.loading) {\n return\n }\n\n console.log('Calendar loading...')\n this.context.commit('setLoading', true)\n\n await Promise.all([\n this.loadEvents(userID),\n this.loadConstraints(userID),\n this.loadMessages(),\n ])\n\n this.context.commit('setLoading', false)\n\n console.log(this.constraints)\n }\n\n @Action\n async loadStartDateAndMeetingID() {\n const currentURL = document.URL\n const url = new URL(currentURL)\n\n const startDateParam = url.searchParams.get('date')\n if (startDateParam) {\n // @ts-ignore\n const startDateDayJS = dayjs(startDateParam, 'DD/MM/YYYY')\n const startDate = startDateDayJS.toDate()\n\n this.context.commit('setStartDate', startDate)\n }\n\n const meetingIDParam = url.searchParams.get('meeting')\n if (meetingIDParam) {\n const meetingID = parseInt(meetingIDParam, 10)\n if (!isNaN(meetingID)) {\n this.context.commit('setMeetingID', meetingID)\n }\n }\n }\n\n @Action\n async loadFromRoute(route: Route) {\n if (route.name === 'signin') {\n return\n }\n\n const userID = await (async () => {\n const _paramID = parseInt(route.params.id, 10)\n const paramID = !isNaN(_paramID) ? _paramID : null\n\n if (paramID === null) {\n /**\n * Si operator : c'est là qu'on récupère l'id du commercial et\n * qu'on le renvoi.\n */\n if (route.name === 'operator') {\n const currentURL = document.URL\n const url = new URL(currentURL)\n const value = url.searchParams.get('COMMERCIAL_ID') || ''\n\n const hermesIDs = value.split(';')\n const _operatorCommercials = await Promise.all(\n hermesIDs.map(async id => {\n try {\n const { data: user } = await getUserByHermesID(\n id\n )\n return user\n } catch (e) {\n return null\n }\n })\n )\n const operatorCommercials = compact(_operatorCommercials)\n\n this.context.commit(\n 'setOperatorCommercials',\n operatorCommercials\n )\n\n if (operatorCommercials.length === 0) {\n this.context.commit(\n 'setOperatorErrorMessage',\n 'Identifiant inconnu'\n )\n\n return AuthModule.userID\n }\n\n return operatorCommercials[0].id\n }\n return AuthModule.userID\n }\n return paramID\n })()\n\n await this.cleanup()\n await this.load(userID)\n this.context.commit('setUserID', userID)\n }\n\n @Action({ rawError: true })\n async loadUser(userID: number) {\n await this.cleanup()\n await this.load(userID)\n this.context.commit('setUserID', userID)\n }\n\n @Action({ rawError: true })\n loadOperatorParamsHERMES() {\n console.log('loadOperatorParamsHERMES')\n\n const currentURL = document.URL\n const url = new URL(currentURL)\n const activityID = url.searchParams.get('activity')\n const internalID = url.searchParams.get('id')\n\n if (activityID && internalID) {\n this.context.commit('setHermesFinished', true)\n return\n }\n\n const interval = setInterval(() => {\n if (isHermesFinished()) {\n clearInterval(interval)\n this.context.commit('setHermesFinished', true)\n\n const operatorParamsFromURL = parseOperatorParamsFromURL()\n const operatorParams = parseOperatorParams()\n\n /**\n * On surcharge les infos rentrées par Hermes dans le DOM si\n * le numéro de campagne est renseigné dans l'URL\n */\n if (\n operatorParamsFromURL['NUM_CAMP_HERMES'] &&\n operatorParams['NUM_CAMP_HERMES']\n ) {\n operatorParams['NUM_CAMP_HERMES'] =\n operatorParamsFromURL['NUM_CAMP_HERMES']\n }\n\n window.operatorParams = cloneDeep(operatorParams)\n this.context.commit('setOperatorParams', operatorParams)\n this.context.commit('setOperatorType', 'hermes')\n\n cleanupHermes()\n }\n\n const completedFieldsCount = getCompletedFieldsCount()\n this.context.commit('setCompletedFieldsCount', completedFieldsCount)\n }, 100)\n }\n\n @Action({ rawError: true })\n async loadOperatorParamsFromNixxis() {\n const currentURL = document.URL\n const url = new URL(currentURL)\n const activityID = url.searchParams.get('activity')\n const internalID = url.searchParams.get('id')\n\n console.log(`activityID: ${activityID}`)\n console.log(`internalID: ${internalID}`)\n\n if (activityID && internalID && !isSeeasoftware(internalID)) {\n try {\n const resp = await getNixxisObject(activityID, internalID)\n const data = resp.data\n\n if (data.campaigndata) {\n const operatorParams = cleanupNixxisObj(data.campaigndata)\n\n // PORTABLE -> MOBILE\n if (operatorParams.PORTABLE) {\n operatorParams['MOBILE'] = operatorParams['PORTABLE']\n delete operatorParams['PORTABLE']\n }\n\n // On utilise les paramétres de Nixxis comme données\n operatorParams['NUM_CAMP_HERMES'] = activityID\n operatorParams['INDICE'] = internalID\n\n window.operatorParams = cloneDeep(operatorParams)\n this.context.commit('setOperatorParams', operatorParams)\n this.context.commit('setOperatorType', 'nixxis')\n } else {\n this.context.commit(\n 'setNixxisErrorMessage',\n 'Données Nixxis invalides'\n )\n }\n } catch (e) {\n console.warn(e)\n this.context.commit(\n 'setNixxisErrorMessage',\n 'Erreur lors de la récupération des données depuis Nixxis'\n )\n }\n }\n this.context.commit('setNixxisFinished', true)\n }\n\n @Action({ rawError: true })\n async loadOperatorParamsFromSeeasoftware() {\n const currentURL = document.URL\n const url = new URL(currentURL)\n const activityID = url.searchParams.get('activity')\n const internalID = url.searchParams.get('id')\n\n console.log(`activityID: ${activityID}`)\n console.log(`internalID: ${internalID}`)\n\n if (activityID && internalID && isSeeasoftware(internalID)) {\n const indice = parseIndiceFromSeeasoftwareInternalID(internalID)\n\n try {\n const resp = await postSeeasoftwareObject({\n activityId: activityID,\n internalId: internalID,\n })\n const data = resp.data\n\n if (data) {\n const operatorParams = cleanupSeeasoftwareObj(data)\n\n // PORTABLE -> MOBILE\n if (operatorParams.PORTABLE) {\n operatorParams['MOBILE'] = operatorParams['PORTABLE']\n delete operatorParams['PORTABLE']\n }\n\n // On utilise les paramétres de Seeasoftware comme données\n operatorParams['NUM_CAMP_HERMES'] = activityID\n operatorParams['INDICE'] = indice\n\n window.operatorParams = cloneDeep(operatorParams)\n this.context.commit('setOperatorParams', operatorParams)\n this.context.commit('setOperatorType', 'seeasoftware')\n } else {\n this.context.commit(\n 'setNixxisErrorMessage',\n 'Données Seeasoftware invalides'\n )\n }\n } catch (e) {\n console.warn(e)\n this.context.commit(\n 'setSeeasoftwareErrorMessage',\n 'Erreur lors de la récupération des données depuis Seeasoftware'\n )\n }\n\n this.context.commit('setSeeasoftwareInternalID', internalID)\n }\n this.context.commit('setSeeasoftwareFinished', true)\n }\n\n @Action\n async init() {\n if (this.initialized) {\n return\n }\n this.context.commit('setInitialized', true)\n console.log('Calendar init')\n\n this.loadOperatorParamsHERMES()\n this.loadOperatorParamsFromNixxis()\n this.loadOperatorParamsFromSeeasoftware()\n\n const currentRoute = router.currentRoute\n router.beforeEach(async (to: Route, from: Route, next: Function) => {\n await this.loadFromRoute(to)\n next()\n })\n\n console.log('Calendar loading')\n await this.loadStartDateAndMeetingID()\n await this.loadFromRoute(currentRoute)\n console.log('Calendar loaded')\n }\n\n @Action\n async ready() {\n await this.init()\n console.log('Calendar ready')\n }\n\n @Action\n async cleanup() {\n console.log('Calendar cleanup')\n\n this.context.commit('setUserID', null)\n this.context.commit('setUserInfos', null)\n this.context.commit('setEvents', [])\n this.context.commit('setConstraints', null)\n this.context.commit('setAutoValidationDelay', null)\n this.context.commit('setMoveMsg', null)\n this.context.commit('setConfirmationMsg', null)\n this.context.commit('setInitialized', false)\n this.context.commit('setLoading', false)\n }\n\n @Action({ rawError: true })\n async addEvent(args: {\n event: CalendarEvent\n userID?: number\n callback?: (newEvents: CalendarEvent[]) => void\n }) {\n if (!this.userID) {\n return\n }\n\n if (args.event.backendID) {\n return\n }\n\n console.log('Calendar add event')\n console.log(args.event)\n\n // base\n const __req: MeetingRequest = {\n startedAt: args.event.start_date.getTime() / 1000,\n endedAt: args.event.end_date.getTime() / 1000,\n comment: args.event.comment,\n commercialComment: args.event.commercialComment,\n topage: args.event.topage,\n topfic: args.event.topfic,\n memo: args.event.text,\n user: this.userID,\n }\n\n // status\n const req: MeetingRequest =\n args.event.status !== 'unavailable'\n ? {\n ...__req,\n indice: args.event.indice,\n campaignNumber: args.event.campaignNumber,\n unknownFields: JSON.stringify(args.event.unknownFields),\n status: String(args.event.status),\n reason: args.event.reason,\n prospect: args.event.prospect,\n }\n : __req\n\n try {\n const resp = await (async () => {\n if (args.event.status === 'unavailable') {\n return await postUnavailable(req)\n } else {\n const isOperator =\n AuthModule.roles.includes('ROLE_OPERATOR') &&\n router.currentRoute.name === 'operator'\n\n if (isOperator) {\n switch (this.operatorType) {\n case 'nixxis':\n return await postMeetingNixxis(req)\n case 'seeasoftware':\n return await postMeetingSeeasoftware({\n ...req,\n internalId: this.seeasoftwareInternalID,\n })\n case 'hermes':\n default:\n return await postMeetingDefault(req)\n }\n }\n\n return await postMeetingDefault(req)\n }\n })()\n\n const backendEvent = resp.data\n\n // On met à jour l'event avec les données du back\n args.event.backendID = backendEvent.id\n const updateEvent: CalendarEvent = {\n ...args.event,\n backendID: backendEvent.id,\n end_date: new Date(backendEvent.endedAt),\n }\n this.context.commit('setPendingUpdate', updateEvent)\n\n // si recurrent on recharge les events\n if (\n args.event.recurrence &&\n args.event.recurrence.occurrence &&\n ['days', 'weeks', 'months'].includes(args.event.recurrence.type)\n ) {\n try {\n await this.loadEvents(this.userID)\n } catch (e) {}\n }\n } catch (e) {\n throw e\n }\n }\n\n @Action({ rawError: true })\n async updateEvent(event: CalendarEvent) {\n if (!this.userID) {\n return\n }\n\n /**\n * Si il n'y a pas de lastEvent c'est que l'interdiction de mettre à\n * jour a échoué, dans ce cas on affiche un message d'erreur\n */\n if (!event.lastEvent) {\n throw new Error(\n `Vous n'êtes pas habilité à modifier ce rendez-vous`\n )\n }\n\n console.log('Calendar update event')\n console.log(JSON.parse(JSON.stringify(event)))\n\n const __req = {\n startedAt: event.start_date.getTime() / 1000,\n endedAt: event.end_date.getTime() / 1000,\n comment: event.comment,\n memo: event.text,\n user: this.userID,\n }\n\n const _req =\n event.status === 'unavailable'\n ? {\n ...__req,\n recurrentParent: event.recurrentParent,\n }\n : __req\n\n const req =\n event.status !== 'unavailable'\n ? {\n ..._req,\n indice: event.indice,\n campaignNumber: event.campaignNumber,\n unknownFields: JSON.stringify(event.unknownFields),\n commercialComment: event.commercialComment,\n topage: event.topage,\n topfic: event.topfic,\n status: event.status,\n reason: event.reason,\n prospect: event.prospect,\n }\n : _req\n\n if (event.backendID) {\n const diff = differenceBetweenObjects(\n event as any,\n event.lastEvent as any\n )\n const keys = Object.keys(diff)\n const diffKeys = intersection(keys, [\n 'id',\n 'text',\n 'comment',\n 'commercialComment',\n 'topage',\n 'topfic',\n 'indice',\n 'campaignNumber',\n 'unknownFields',\n 'start_date',\n 'end_date',\n 'status',\n 'location',\n 'notes',\n 'recurrence',\n 'prospect',\n 'recurrentParent',\n 'reason',\n 'eventId',\n ])\n\n console.log(keys)\n console.log(diffKeys)\n\n if (diffKeys.length === 0) {\n return\n }\n\n const isOnlyCommentOrMemo = (() => {\n const isOnlyCommentOrMemoKeys = [\n 'text',\n 'comment',\n 'commercialComment',\n ]\n\n const diff = difference(diffKeys, isOnlyCommentOrMemoKeys)\n const inter = intersection(diffKeys, isOnlyCommentOrMemoKeys)\n\n if (diff.length > 0) {\n return false\n }\n\n if (inter.length > 0) {\n return true\n }\n\n return false\n })()\n\n const isOnlyDates = (() => {\n if (\n diffKeys.length === 2 &&\n includes(diffKeys, 'start_date') &&\n includes(diffKeys, 'end_date')\n ) {\n return true\n }\n if (diffKeys.length === 1 && includes(diffKeys, 'start_date')) {\n return true\n }\n return false\n })()\n\n const reqOnlyMemoAndComment = {\n comment: event.comment,\n commercialComment: event.commercialComment,\n memo: event.text,\n }\n\n const reqOnlyDates = {\n startedAt: event.start_date.getTime() / 1000,\n endedAt: event.end_date.getTime() / 1000,\n }\n\n const resp = await (async () => {\n if (!event.backendID) {\n return\n }\n\n if (event.status === 'unavailable') {\n return await putUnavailable(event.backendID, req)\n } else if (isOnlyDates) {\n if (includes(AuthModule.roles, 'ROLE_OPERATOR')) {\n return await putMeetingUpdateStatus(\n event.backendID,\n req\n )\n } else {\n return await putMeetingMoove(\n event.backendID,\n reqOnlyDates\n )\n }\n } else if (isOnlyCommentOrMemo) {\n if (includes(AuthModule.roles, 'ROLE_OPERATOR')) {\n return await putMeetingUpdateStatus(\n event.backendID,\n req\n )\n } else {\n return await putMeetingUpdateInformation(\n event.backendID,\n reqOnlyMemoAndComment\n )\n }\n } else {\n return await putMeetingUpdateStatus(event.backendID, req)\n }\n })()\n\n if (resp) {\n const backendEvent = resp.data\n\n // On set le nouvel id de l'event en provenance du backend\n event.backendID = backendEvent.id\n event.status = backendEvent.status\n }\n } else {\n throw Error(\n `l'event ne dispose pas d'un id en provenance du backend`\n )\n }\n }\n\n @Action({ rawError: true })\n async removeEvent(event: CalendarEvent) {\n console.log('Calendar remove event')\n console.log(event)\n\n if (event.backendID) {\n await deleteMeeting(event.backendID)\n }\n }\n\n @Action({ rawError: true })\n async sync() {\n if (!this.userID) {\n this.context.commit('setSyncingErrorMessage', 'Utilisateur inconnu')\n return\n }\n\n try {\n await getUserGoogleSync(this.userID)\n } catch (error) {\n const errorMessage = get(\n error,\n 'response.data.message',\n get(\n error,\n 'response.data.error.exception[0].message',\n `Impossible d'effectuer la synchronisation`\n )\n )\n this.context.commit('setSyncingErrorMessage', errorMessage)\n return\n }\n\n try {\n await this.loadEvents(this.userID)\n } catch (e) {}\n }\n\n @Action({ rawError: true })\n async clearSyncingErrorMessage() {\n this.context.commit('setSyncingErrorMessage', null)\n }\n\n @Action({ rawError: true })\n async forceLoadEvents() {\n if (!this.userID) {\n return\n }\n\n await this.loadEvents(this.userID)\n }\n}\n\nexport default getModule(Calendar)\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-form',{on:{\"submit\":function($event){$event.preventDefault();}}},[(_vm.event)?_c('v-card-text',{staticClass:\"px-0 pb-0\"},[_c('v-container',{ref:\"meetingView\",staticClass:\"pa-4\",attrs:{\"grid-list-lg\":\"\"}},[_c('v-layout',{attrs:{\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-layout',{attrs:{\"wrap\":\"\"}},[_c('v-flex',{staticStyle:{\"font-weight\":\"bolder\",\"color\":\"#17639e\"}},[_vm._v(_vm._s(_vm._f(\"formatDate\")(_vm.event.start_date)))]),(!_vm.isOperator)?_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('span',{class:(_vm.statusPrefix + \"-\" + (_vm.event.status))},[_vm._v(_vm._s(_vm.status))])]):_vm._e()],1)],1),(_vm.event.prospect)?[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-layout',{attrs:{\"wrap\":\"\"}},[_c('v-flex',{staticStyle:{\"font-weight\":\"bolder\",\"color\":\"#17639e\"}},[_vm._v(_vm._s(_vm.event.prospect.civility)+\" \"+_vm._s(_vm.event.prospect.firstname)+\" \"+_vm._s(_vm.event.prospect.lastname))]),_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('div',{staticStyle:{\"text-align\":\"right\"}},[_c('div',[_c('a',{attrs:{\"href\":_vm.mapLink,\"target\":\"_blank\"}},[_vm._v(_vm._s(_vm.address))])]),_c('div',[_vm._v(_vm._s(_vm.event.prospect.address2))])])])],1)],1),_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('Table',{attrs:{\"items\":_vm.items,\"forceDesktop\":_vm.forceReadOnlyAndDesktop}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"md6\":!_vm.isOperator}},[_c('v-container',{staticClass:\"pa-0\",attrs:{\"grid-list-md\":\"\"}},[_c('v-layout',{attrs:{\"column\":\"\",\"wrap\":\"\"}},[_c('v-flex',[_c('v-subheader',{staticClass:\"pl-0 mb-2\",staticStyle:{\"height\":\"unset\"}},[_vm._v(\"Commentaire (Contact Media)\")]),_c('div',{staticClass:\"ma-0\",domProps:{\"innerHTML\":_vm._s(_vm.commentWithBR)}})],1)],1)],1)],1),(!_vm.isOperator)?_c('v-flex',{attrs:{\"xs12\":\"\",\"md6\":\"\"}},[_c('v-container',{staticClass:\"pa-0\",attrs:{\"grid-list-md\":\"\"}},[_c('v-layout',{attrs:{\"column\":\"\",\"wrap\":\"\"}},[_c('v-flex',[_c('v-subheader',{staticClass:\"pl-0 mb-2\",staticStyle:{\"height\":\"unset\"}},[_vm._v(\"Commentaire (Commercial)\")]),(_vm.isReadonly || _vm.event.status === 'validated')?_c('div',{staticClass:\"ma-0\",domProps:{\"innerHTML\":_vm._s(_vm.commentCommercialWithBR)}}):_c('v-textarea',{staticClass:\"textarea\",attrs:{\"auto-grow\":\"\",\"required\":\"\",\"hide-details\":\"\",\"box\":\"\"},on:{\"change\":function($event){_vm.commercialCommentWasEdited = true}},model:{value:(_vm.event.commercialComment),callback:function ($$v) {_vm.$set(_vm.event, \"commercialComment\", $$v)},expression:\"event.commercialComment\"}})],1)],1)],1)],1):_vm._e()]:_vm._e()],2)],1),(!_vm.isReadonly)?_c('v-container',{staticClass:\"px-2 pb-2 pt-0\",attrs:{\"grid-list-md\":\"\"}},[_c('v-layout',{attrs:{\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-layout',{attrs:{\"justify-center\":\"\",\"row\":\"\",\"wrap\":\"\"}},[(_vm.event.status === 'confirmed' || _vm.event.status === 'pending' || _vm.event.status === 'moove' || _vm.event.status === 'validated_qc' || (_vm.event.reason === 'off_target' || _vm.event.reason === 'refusal' || _vm.event.reason === 'absent'))?_c('v-btn',{attrs:{\"dark\":\"\",\"color\":\"green\"},on:{\"click\":_vm.onValidate}},[_vm._v(\"Valider le RDV\")]):_vm._e(),(_vm.event.status === 'confirmed' || _vm.event.status === 'pending' || _vm.event.status === 'moove' || _vm.event.status === 'validated_qc' || _vm.event.status === 'negative')?_c('v-menu',{attrs:{\"offset-y\":\"\"}},[_c('template',{slot:\"activator\"},[_c('v-btn',{attrs:{\"dark\":\"\",\"color\":\"red\"}},[_vm._v(\"Modifier le status\")])],1),_c('v-list',_vm._l((_vm.reasons),function(item,index){return _c('v-list-tile',{key:index,on:{\"click\":function($event){_vm.onReasonClick(item.value)}}},[_c('v-list-tile-title',[_vm._v(_vm._s(item.title))])],1)}),1)],2):_vm._e(),(_vm.event.status !== 'validated')?_c('v-btn',{attrs:{\"dark\":\"\",\"color\":\"primary\"},on:{\"click\":_vm.onSave}},[_vm._v(\"Enregistrer\")]):_vm._e()],1)],1),(_vm.event.status === 'confirmed' && _vm.autoValidationDelay !== null)?_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('p',{staticClass:\"ma-0 text-xs-center\"},[_vm._v(\"Sans action de votre part ce RDV sera automatiquement validé le \"+_vm._s(_vm._f(\"formatAutoValidationDate\")(_vm.event.start_date,_vm.autoValidationDelay)))])]):_vm._e()],1)],1):_vm._e()],1):_vm._e(),_c('v-dialog',{attrs:{\"persistent\":\"\",\"max-width\":\"700\"},model:{value:(_vm.validateDialog),callback:function ($$v) {_vm.validateDialog=$$v},expression:\"validateDialog\"}},[_c('v-card',{staticClass:\"pa-4\"},[_c('v-card-title',{staticClass:\"headline\"},[_vm._v(_vm._s(_vm.confirmationMessage ? _vm.confirmationMessage.title : 'Question'))]),_c('v-card-text',{domProps:{\"innerHTML\":_vm._s(_vm.confirmationMessage ? _vm.confirmationMessage.content : 'Contenu')}}),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"red\",\"dark\":\"\"},on:{\"click\":_vm.refuseMessage}},[_vm._v(\"Refuser\")]),_c('v-btn',{attrs:{\"color\":\"green\",\"dark\":\"\"},on:{\"click\":_vm.acceptMessage}},[_vm._v(\"Accepter\")])],1)],1)],1),_c('v-dialog',{ref:\"saveDialog\",attrs:{\"persistent\":\"\",\"max-width\":\"700\"},model:{value:(_vm.saveDialog),callback:function ($$v) {_vm.saveDialog=$$v},expression:\"saveDialog\"}},[_c('v-card',{staticClass:\"pa-4\"},[_c('v-card-title',{staticClass:\"headline\"},[_vm._v(\"Confirmation\")]),_c('v-card-text',[_vm._v(\"Avez vous bien pensé à modifier le statut de votre rapport avant d'enregistrer votre commentaire ?\")]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"red\",\"dark\":\"\"},on:{\"click\":_vm.refuseSaveDialog}},[_vm._v(\"Non, annuler\")]),_c('v-btn',{attrs:{\"color\":\"green\",\"dark\":\"\"},on:{\"click\":_vm.acceptSaveDialog}},[_vm._v(\"Oui, continuer\")])],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { Status } from '@/models/Status'\nimport { Reason } from '@/models/Reason'\nimport { status } from '@/data/status'\nimport { reasons } from '@/data/reasons'\nimport dayjs from 'dayjs'\n\nfunction formatStatus(_status: Status | null): string {\n const undefinedStatus = 'Status indisponible'\n\n if (_status === null) {\n return undefinedStatus\n }\n\n const statusObj = status.find(element => {\n return element.value === _status\n })\n if (statusObj) {\n return statusObj.title\n }\n return undefinedStatus\n}\n\nfunction formatReason(_reason: Reason | null): string {\n const undefinedReason = 'Raison indisponible'\n\n if (_reason === null) {\n return undefinedReason\n }\n\n const reasonObj = reasons.find(element => {\n return element.value === _reason\n })\n if (reasonObj) {\n return reasonObj.title\n }\n return undefinedReason\n}\n\nfunction formatStatusAdvanced(\n _status: Status | null,\n _reason: Reason | undefined\n): string {\n if (_status === 'negative' && _reason) {\n const reason = formatReason(_reason)\n\n return `CQ (${reason})`\n }\n\n if (_status && _reason) {\n const status = formatStatus(_status)\n const reason = formatReason(_reason)\n\n return `${status} (${reason})`\n }\n\n return formatStatus(_status)\n}\n\nfunction formatDate(date: Date): string {\n const dateDayjs = dayjs(date)\n return dateDayjs.format('DD/MM/YYYY à HH[h]mm')\n}\n\nfunction formatAutoValidationDate(date: Date, delay: number): string {\n const dateDayjs = dayjs(date).add(delay, 'day')\n return dateDayjs.format('DD/MM/YYYY à HH[h]mm')\n}\n\nexport {\n formatStatus,\n formatReason,\n formatStatusAdvanced,\n formatDate,\n formatAutoValidationDate,\n}\n","function getAllCSS() {\n const _stylesTags = document.getElementsByTagName('style')\n const stylesTags = Array.prototype.slice.call(_stylesTags)\n const styles = stylesTags.map(tag => tag.innerHTML)\n\n return styles.join('\\n')\n}\n\nexport { getAllCSS }\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * On offre la possibilité de changer le status pour validé ou négatif, ainsi\n * que laisser un commentaire, uniquement si le status de l'event est confirmé\n * (cf: Cahier des charges)\n */\n\nimport { Component, Prop, Watch, Vue } from 'vue-property-decorator'\nimport { CalendarEvent } from '@/models/CalendarEvent'\nimport { status } from '@/data/status'\nimport Prospect from '@/models/Prospect'\nimport { Reason, ReasonObject } from '@/models/Reason'\nimport { reasons } from '@/data/reasons'\nimport {\n formatStatus,\n formatStatusAdvanced,\n formatDate,\n formatAutoValidationDate,\n} from '@/utils/format'\nimport CalendarModule from '@/store/modules/calendar'\nimport { Message } from '../models/Message'\nimport compact from 'lodash/compact'\nimport Table from '@/components/Table.vue'\nimport AuthModule from '../store/modules/auth'\nimport { Printd } from 'printd'\nimport { getAllCSS } from '@/utils/css'\nimport { HIDDEN_UNKNOWN_FIELDS } from '@/api/http-constants'\n\n@Component({\n filters: {\n formatDate,\n formatAutoValidationDate,\n },\n components: {\n Table,\n },\n})\nexport default class CommercialEditForm extends Vue {\n @Prop() event!: CalendarEvent | null\n @Prop() isOpen!: boolean\n validateDialog: boolean = false\n saveDialog: boolean = false\n commercialCommentWasEdited: boolean = false\n\n // Utilisé pour forcer un certain rendu lors de l'impression\n forceReadOnlyAndDesktop: boolean = false\n\n @Watch('isOpen')\n onIsOpenChanged(val: boolean, oldVal: boolean) {\n this.commercialCommentWasEdited = false\n }\n\n get statusPrefix() {\n if (this.forceReadOnlyAndDesktop) {\n return 'status-outline'\n } else {\n return 'status'\n }\n }\n\n get isReadonly(): boolean {\n if (this.forceReadOnlyAndDesktop) {\n return true\n }\n\n return !(\n AuthModule.roles.includes('ROLE_COMMERCIAL') &&\n this.$route.name === 'planning'\n )\n }\n\n get isOperator(): boolean {\n return (\n AuthModule.roles.includes('ROLE_OPERATOR') &&\n this.$route.name === 'operator'\n )\n }\n\n get commentCommercialWithBR() {\n if (!this.event || !this.event.commercialComment) {\n return ''\n }\n\n return this.event.commercialComment.replace(/\\n/g, '
')\n }\n\n get commentWithBR() {\n if (!this.event || !this.event.comment) {\n return ''\n }\n\n return this.event.comment.replace(/\\n/g, '
')\n }\n\n get items() {\n if (!this.event) {\n return []\n }\n\n // On ajoute les champs connus\n const _items = []\n _items.push({\n key: 'Mail',\n value: this.event.prospect.email,\n })\n _items.push({\n key: 'RS',\n value: this.event.prospect.rs,\n })\n _items.push({\n key: 'Typers',\n value: this.event.prospect.typers,\n })\n _items.push({\n key: 'Siret',\n value: this.event.prospect.siret,\n })\n _items.push({\n key: 'Tel',\n value: this.event.prospect.phone,\n })\n _items.push({\n key: 'Tel (bis)',\n value: this.event.prospect.phoneBis,\n })\n _items.push({\n key: 'Mobile',\n value: this.event.prospect.mobile,\n })\n _items.push({\n key: 'Indice',\n value: this.event.indice,\n })\n _items.push({\n key: 'Numéro de campagne',\n value: this.event.campaignNumber,\n })\n _items.push({\n key: 'Topage',\n value: this.event.topage,\n })\n _items.push({\n key: 'Topfic',\n value: this.event.topfic,\n })\n\n // Ainsi que les champs inconnus\n const data: any = this.event.unknownFields\n for (const key in data) {\n _items.push({\n key: key,\n value: data[key],\n })\n }\n\n const items = _items.filter(x => x.value)\n\n // on masque certaines valeurs pour l'opérateur et le commercial\n const pItems = items.filter(x => {\n return !HIDDEN_UNKNOWN_FIELDS.includes(x.key)\n })\n\n return pItems\n }\n\n get confirmationMessage(): Message | null {\n return CalendarModule.confirmationMsg\n }\n\n get autoValidationDelay() {\n return CalendarModule.autoValidationDelay\n }\n\n get reasons(): ReasonObject[] {\n return reasons\n }\n\n get status() {\n if (!this.event) {\n return\n }\n\n return formatStatusAdvanced(this.event.status, this.event.reason)\n }\n\n rules = {\n select: [\n (v: string) => !!v || 'Vous devez spécifier un nouveau status',\n ],\n reason: [(v: string) => !!v || 'Vous devez spécifier une raison'],\n }\n\n onValidate() {\n if (!this.event) {\n return\n }\n\n console.log('validate')\n this.validateDialog = true\n }\n\n refuseMessage() {\n this.validateDialog = false\n }\n\n acceptMessage() {\n if (!this.event) {\n return\n }\n\n this.validateDialog = false\n\n const event: CalendarEvent = {\n ...this.event,\n status: 'validated',\n }\n\n this.$emit('save', event)\n }\n\n onReasonClick(reason: Reason) {\n if (!this.event) {\n return\n }\n\n console.log(reason)\n\n const status = (() => {\n switch (reason) {\n case 'sale':\n case 'hot_contact':\n case 'failure':\n case 'meeting':\n return 'validated'\n default:\n case 'absent':\n case 'refusal':\n case 'off_target':\n return 'negative'\n }\n })()\n\n const event: CalendarEvent = {\n ...this.event,\n status,\n reason,\n }\n\n this.$emit('save', event)\n }\n\n save() {\n if (!this.event) {\n return\n }\n console.log('save')\n\n const event: CalendarEvent = {\n ...this.event,\n }\n\n this.$emit('save', event)\n }\n\n onSave() {\n if (this.commercialCommentWasEdited) {\n this.saveDialog = true\n\n } else {\n this.save()\n }\n }\n\n acceptSaveDialog() {\n this.save()\n this.saveDialog = false\n }\n\n refuseSaveDialog() {\n this.saveDialog = false\n }\n\n async onPrint() {\n const d = new Printd()\n const $meetingView = this.$refs.meetingView as any\n\n const printCSS = `\n @page {\n margin: 0;\n padding: 0;\n }\n body {\n font-family: sans-serif;\n }\n .flex.xs12.sm6.md4 {\n max-width: 33% !important;\n }\n .flex.xs12.md6 {\n max-width: 50% !important;\n }\n `\n const allCSS = getAllCSS()\n const css = [printCSS, allCSS]\n\n this.forceReadOnlyAndDesktop = true\n await this.$nextTick()\n d.print($meetingView, css, undefined, args => {\n this.forceReadOnlyAndDesktop = false\n args.launchPrint()\n })\n }\n\n get address(): string {\n if (!this.event) {\n return ''\n }\n const _infos = [\n this.event.prospect.address,\n this.event.prospect.zip,\n this.event.prospect.city,\n ]\n const infos = compact(_infos)\n return infos.join(', ')\n }\n\n get mapLink(): string | null {\n if (!this.event || !this.event.prospect) {\n return null\n }\n\n const encodedAddress = encodeURIComponent(this.address)\n return `https://www.google.com/maps/search/?api=1&query=${encodedAddress}`\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CommercialShowEvent.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CommercialShowEvent.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CommercialShowEvent.vue?vue&type=template&id=86117bea&scoped=true&\"\nimport script from \"./CommercialShowEvent.vue?vue&type=script&lang=ts&\"\nexport * from \"./CommercialShowEvent.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./CommercialShowEvent.vue?vue&type=style&index=0&id=86117bea&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"86117bea\",\n null\n \n)\n\nexport default component.exports","import orderBy from 'lodash/orderBy'\nimport contact from 'lodash/concat'\nimport dayjs from 'dayjs'\nimport 'dayjs/locale/fr'\nimport { formatStatus } from './format'\nimport { CalendarEvent } from '@/models/CalendarEvent'\n\ndayjs.locale('fr')\n\nfunction formatDuration(diff: number): string {\n const hours = Math.floor(diff / 60)\n const minutes = diff % 60\n let duration = ''\n if (hours > 0) {\n duration += `${hours}h`\n }\n if (hours > 0 && minutes > 0) {\n duration += ' '\n }\n if (minutes > 0) {\n duration += `${minutes}m`\n }\n return duration\n}\n\nfunction dataToArray(events: CalendarEvent[]): any[] {\n const filteredEvents = events.filter(\n event => event.status !== 'unavailable'\n )\n const orderedEvents = orderBy(filteredEvents, 'start_date')\n\n const headers = [\n 'ID',\n 'Date',\n 'Heure de début',\n 'Heure de fin',\n 'Durée',\n 'Status',\n 'Numéro de campagne',\n 'Indice',\n // prospect\n 'RS',\n 'Typers',\n 'Civilité',\n 'Siret',\n 'Nom',\n 'Prénom',\n 'Téléphone',\n 'Téléphone (bis)',\n 'Mobile',\n 'Email',\n 'Adresse',\n 'Adresse 2',\n 'Code postal',\n 'Ville',\n // others\n 'Champs supplémentaires',\n 'Commentaire (Contact Media)',\n 'Commentaire (Commercial)',\n ]\n\n const rows = orderedEvents.map(event => {\n const diff = dayjs(event.end_date).diff(\n dayjs(event.start_date),\n 'minute'\n )\n const duration = formatDuration(diff)\n const unknownFields = (() => {\n // Si c'est un tableau on renvoi null\n if (\n event.unknownFields instanceof Array &&\n event.unknownFields.length === 0\n ) {\n return null\n }\n\n // On échape les double quotes en en ajoutant un (notamment présents dans un JSON)\n return JSON.stringify(event.unknownFields, null, ' ').replace(\n /\"/g,\n '\"\"'\n )\n })()\n return [\n event.backendID,\n dayjs(event.start_date).format('DD-MM-YYYY'),\n dayjs(event.start_date).format('HH:mm'),\n dayjs(event.end_date).format('HH:mm'),\n duration,\n formatStatus(event.status),\n event.campaignNumber,\n event.indice,\n // prospect\n event.prospect ? event.prospect.rs : '',\n event.prospect ? event.prospect.typers : '',\n event.prospect ? event.prospect.civility : '',\n event.prospect ? event.prospect.siret : '',\n event.prospect ? event.prospect.lastname : '',\n event.prospect ? event.prospect.firstname : '',\n event.prospect ? event.prospect.phone : '',\n event.prospect ? event.prospect.phoneBis : '',\n event.prospect ? event.prospect.mobile : '',\n event.prospect ? event.prospect.email : '',\n event.prospect ? event.prospect.address : '',\n event.prospect ? event.prospect.address2 : '',\n event.prospect ? event.prospect.zip : '',\n event.prospect ? event.prospect.city : '',\n // others\n unknownFields,\n event.comment ? event.comment.replace(/\"/g, '\"\"') : '',\n event.commercialComment\n ? event.commercialComment.replace(/\"/g, '\"\"')\n : '',\n ]\n })\n\n return contact([headers], rows)\n}\n\nfunction arrayToCSV(rows: any[]): string {\n const csv = rows.reduce((accu, row) => {\n const escapedRow = row.map((value: string) => {\n if (value === null) {\n return ''\n }\n\n // permet d'utiliser une virgule dans le texte\n return `\"${value}\"`\n })\n accu += escapedRow.join(';')\n accu += '\\r\\n'\n return accu\n }, '')\n return csv\n}\n\nexport { dataToArray, arrayToCSV }\n","function downloadFile(filename: string, header: string, content: string) {\n const blob = new Blob([content], { type: 'text/csv;charset=utf-8;' })\n\n const isIE =\n navigator.appName == 'Microsoft Internet Explorer' ||\n !!(\n navigator.userAgent.match(/Trident/) ||\n navigator.userAgent.match(/rv:11/)\n )\n\n if (isIE) {\n navigator.msSaveBlob(blob, filename)\n } else {\n const url = URL.createObjectURL(blob)\n\n const element = document.createElement('a')\n element.setAttribute('href', url)\n element.setAttribute('download', filename)\n\n element.style.display = 'none'\n document.body.appendChild(element)\n\n element.click()\n\n document.body.removeChild(element)\n }\n}\n\nexport { downloadFile }\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.onSave($event)}},model:{value:(_vm.valid),callback:function ($$v) {_vm.valid=$$v},expression:\"valid\"}},[_c('v-card-text',{staticClass:\"px-0 pb-0\"},[_c('v-container',{staticClass:\"px-4 py-0\",attrs:{\"grid-list-lg\":\"\"}},[_c('v-layout',{attrs:{\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"label\":\"Titre\",\"hide-details\":\"\"},model:{value:(_vm.titre),callback:function ($$v) {_vm.titre=$$v},expression:\"titre\"}})],1),_c('v-flex',[_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\"}},[_c('v-dialog',{ref:\"startDialog\",attrs:{\"return-value\":_vm.startTime,\"persistent\":\"\",\"lazy\":\"\",\"full-width\":\"\",\"width\":\"290px\"},on:{\"update:returnValue\":function($event){_vm.startTime=$event}},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c('v-text-field',_vm._g({attrs:{\"label\":\"Heure de début\",\"prepend-icon\":\"access_time\",\"readonly\":\"\"},model:{value:(_vm.startTime),callback:function ($$v) {_vm.startTime=$$v},expression:\"startTime\"}},on))]}}]),model:{value:(_vm.startDialog),callback:function ($$v) {_vm.startDialog=$$v},expression:\"startDialog\"}},[(_vm.startDialog)?_c('v-time-picker',{attrs:{\"full-width\":\"\",\"format\":\"24hr\",\"allowed-minutes\":function (v) { return v % 15 === 0; },\"allowed-hours\":function (v) { return v >= 8 && v <= 20; }},model:{value:(_vm.startTime),callback:function ($$v) {_vm.startTime=$$v},expression:\"startTime\"}},[_c('v-spacer'),_c('v-btn',{attrs:{\"flat\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.startDialog = false}}},[_vm._v(\"Cancel\")]),_c('v-btn',{attrs:{\"flat\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.$refs.startDialog.save(_vm.startTime)}}},[_vm._v(\"OK\")])],1):_vm._e()],1)],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\"}},[_c('v-dialog',{ref:\"endDialog\",attrs:{\"return-value\":_vm.endTime,\"persistent\":\"\",\"lazy\":\"\",\"full-width\":\"\",\"width\":\"290px\"},on:{\"update:returnValue\":function($event){_vm.endTime=$event}},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c('v-text-field',_vm._g({attrs:{\"label\":\"Heure de fin\",\"prepend-icon\":\"access_time\",\"readonly\":\"\"},model:{value:(_vm.endTime),callback:function ($$v) {_vm.endTime=$$v},expression:\"endTime\"}},on))]}}]),model:{value:(_vm.endDialog),callback:function ($$v) {_vm.endDialog=$$v},expression:\"endDialog\"}},[(_vm.endDialog)?_c('v-time-picker',{attrs:{\"full-width\":\"\",\"format\":\"24hr\",\"allowed-minutes\":function (v) { return v % 15 === 0; },\"allowed-hours\":function (v) { return v >= 8 && v <= 20; }},model:{value:(_vm.endTime),callback:function ($$v) {_vm.endTime=$$v},expression:\"endTime\"}},[_c('v-spacer'),_c('v-btn',{attrs:{\"flat\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.endDialog = false}}},[_vm._v(\"Cancel\")]),_c('v-btn',{attrs:{\"flat\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.$refs.endDialog.save(_vm.endTime)}}},[_vm._v(\"OK\")])],1):_vm._e()],1)],1)],1)],1)],1)],1)],1),_c('v-card-actions',{attrs:{\"wrap\":\"\"}},[_c('v-layout',{attrs:{\"wrap\":\"\",\"justify-space-between\":\"\"}},[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"primary\",\"disabled\":!_vm.valid,\"type\":\"submit\"}},[_vm._v(\"Enregistrer\")])],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Prop, Watch, Vue } from 'vue-property-decorator'\nimport { CalendarEvent } from '@/models/CalendarEvent'\nimport SmoothReflow from '@/components/SmoothReflow.vue'\nimport dayjs from 'dayjs'\nimport 'dayjs/locale/fr'\n// @ts-ignore\nimport customParseFormat from 'dayjs/plugin/customParseFormat'\n\ndayjs.extend(customParseFormat)\ndayjs.locale('fr')\n\n@Component({\n components: {\n SmoothReflow,\n },\n filters: {\n plurializeOccurence(value: string) {\n const count = parseInt(value, 10)\n if (count > 0) {\n return 'répétitions'\n }\n return 'répétition'\n },\n },\n})\nexport default class UnavailableForm extends Vue {\n @Prop() event!: CalendarEvent\n valid = true\n titre: string = ''\n smoothReflowSettings = {\n transitionEvent: {\n selector: 'div',\n propertyName: 'opacity',\n },\n }\n startTime: string = ''\n endTime: string = ''\n startDialog: boolean = false\n endDialog: boolean = false\n\n onSave() {\n const event = {\n ...this.event,\n comment: this.titre,\n }\n this.$emit('save', event)\n }\n\n @Watch('event')\n onEvent() {\n this.startTime = dayjs(this.event.start_date).format('HH:mm')\n this.endTime = dayjs(this.event.end_date).format('HH:mm')\n }\n\n @Watch('startTime')\n @Watch('endTime')\n onTime() {\n const start_date = dayjs(\n dayjs(this.event.start_date).format('YYYY-MM-DD') +\n ' ' +\n this.startTime,\n // @ts-ignore\n 'YYYY-MM-DD HH:mm'\n )\n\n const end_date = dayjs(\n dayjs(this.event.end_date).format('YYYY-MM-DD') +\n ' ' +\n this.endTime,\n // @ts-ignore\n 'YYYY-MM-DD HH:mm'\n )\n\n this.event.start_date = start_date.toDate()\n this.event.end_date = end_date.toDate()\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnavailableForm.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnavailableForm.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./UnavailableForm.vue?vue&type=template&id=1cc45ccb&scoped=true&\"\nimport script from \"./UnavailableForm.vue?vue&type=script&lang=ts&\"\nexport * from \"./UnavailableForm.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./UnavailableForm.vue?vue&type=style&index=0&id=1cc45ccb&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1cc45ccb\",\n null\n \n)\n\nexport default component.exports","import {\n Module,\n VuexModule,\n Mutation,\n Action,\n getModule,\n} from 'vuex-module-decorators'\nimport store from '@/store'\nimport { Commercial } from '@/models/Commercial'\nimport AuthModule from './auth'\nimport { getCompanyUsers, getUsers } from '@/api/api'\nimport filter from 'lodash/filter'\nimport includes from 'lodash/includes'\n\ninterface CommercialsState {\n commercials: Commercial[]\n}\n\n@Module({ dynamic: true, store, name: 'commercials', namespaced: true })\nclass CommercialsModule extends VuexModule implements CommercialsState {\n public commercials: Commercial[] = []\n\n public loading: boolean = false\n private initialized = false\n\n @Mutation\n setInitialized(initialized: boolean) {\n this.initialized = initialized\n }\n\n @Mutation\n setCommercials(commercials: Commercial[]) {\n this.commercials = commercials\n }\n\n @Mutation\n setLoading(loading: boolean) {\n this.loading = loading\n }\n\n @Action({ rawError: true })\n async load() {\n if (this.loading) {\n return\n }\n\n await AuthModule.init()\n\n console.log('Commercials loading')\n this.context.commit('setLoading', true)\n\n if (includes(AuthModule.roles, 'ROLE_ADMIN')) {\n await this.loadAllCommercials()\n } else if (includes(AuthModule.roles, 'ROLE_SUPERVISOR')) {\n await this.loadCompanyCommercials()\n }\n\n console.log('Commercials loaded')\n this.context.commit('setLoading', false)\n }\n\n @Action({ rawError: true })\n async loadAllCommercials() {\n const usersResp = await getUsers()\n const users = usersResp.data\n\n const _commercials = filter(users, user => {\n return includes(user.roles, 'ROLE_COMMERCIAL')\n })\n\n const commercials: Commercial[] = _commercials.map(user => {\n const commercial: Commercial = {\n id: user.id,\n firstname: user.firstname,\n lastname: user.lastname,\n }\n return commercial\n })\n\n this.context.commit('setCommercials', commercials)\n }\n\n @Action({ rawError: true })\n async loadCompanyCommercials() {\n if (AuthModule.companyID) {\n const usersResp = await getCompanyUsers(AuthModule.companyID)\n const users = usersResp.data\n\n const commercials: Commercial[] = users.map((element: any) => {\n const commercial: Commercial = {\n id: element.id,\n firstname: element.firstname,\n lastname: element.lastname,\n }\n return commercial\n })\n\n this.context.commit('setCommercials', commercials)\n }\n }\n\n @Action\n async init() {\n if (this.initialized) {\n return\n }\n this.context.commit('setInitialized', true)\n console.log('Commercials init')\n\n await this.load()\n }\n\n @Action\n async cleanup() {\n console.log('Commercials cleanup')\n\n this.context.commit('setCommercials', [])\n this.context.commit('setInitialized', false)\n }\n}\n\nexport default getModule(CommercialsModule)\n","import { CalendarEvent } from '@/models/CalendarEvent'\nimport dayjs from 'dayjs'\nimport inRange from 'lodash/inRange'\nimport filter from 'lodash/filter'\n\nfunction getCountOfEventsPerWeek(events: CalendarEvent[], date: Date): number {\n const first = dayjs(date)\n .startOf('week')\n .toDate()\n const last = dayjs(date)\n .endOf('week')\n .toDate()\n\n const filteredEvents = filter(events, event => {\n return event.status !== 'unavailable'\n })\n\n const filteredEventsBis = filter(filteredEvents, event => {\n return inRange(\n event.start_date.getTime(),\n first.getTime(),\n last.getTime()\n )\n })\n\n return filteredEventsBis.length\n}\n\nexport { getCountOfEventsPerWeek }\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-autocomplete',{attrs:{\"dark\":\"\",\"flat\":\"\",\"color\":\"white\",\"items\":_vm.suggestedCommercials,\"persistent-hint\":\"\",\"item-text\":\"title\",\"item-value\":\"id\",\"browser-autocomplete\":\"foo\",\"search-input\":_vm.search,\"no-filter\":\"\",\"clearable\":\"\"},on:{\"update:searchInput\":function($event){_vm.search=$event},\"blur\":_vm.onBlur},model:{value:(_vm.selectedCommercialID),callback:function ($$v) {_vm.selectedCommercialID=$$v},expression:\"selectedCommercialID\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Vue, Watch } from 'vue-property-decorator'\nimport CalendarModule from '@/store/modules/calendar'\nimport CommercialsModule from '@/store/modules/commercials'\nimport { Commercial } from '@/models/Commercial'\nimport router from '@/router'\nimport removeAccents from 'remove-accents'\nimport filter from 'lodash/filter'\nimport includes from 'lodash/includes'\n\ninterface Item {\n title: string\n id: number\n}\n\n@Component({})\nexport default class AdminSelectCommercial extends Vue {\n selectedCommercialID: number | null = null\n search: string | null = null\n\n async onBlur() {\n const id = this.selectedCommercialID || CalendarModule.userID\n\n this.selectedCommercialID = null\n await this.$nextTick()\n this.selectedCommercialID = id\n }\n\n get suggestedCommercials(): Item[] {\n return filter(this.commercials, commercial => {\n if (!this.search) {\n return true\n }\n\n const search = removeAccents(this.search).toLocaleLowerCase()\n const title = removeAccents(commercial.title).toLocaleLowerCase()\n\n return includes(title, search)\n })\n }\n\n @Watch('selectedCommercialID')\n onSelectedCommercialID(val: number | undefined, oldVal: number) {\n if (val === null) {\n return\n }\n\n if (val === undefined) {\n this.selectedCommercialID = oldVal\n return\n }\n\n if (CalendarModule.userID === this.selectedCommercialID) {\n return\n }\n\n router.push({\n name: 'commercial',\n params: {\n id: String(this.selectedCommercialID),\n },\n query: this.$route.query,\n })\n }\n\n get userID() {\n return CalendarModule.userID\n }\n\n @Watch('userID')\n onUserID() {\n this.selectedCommercialID = CalendarModule.userID\n }\n\n get commercials(): Item[] {\n return CommercialsModule.commercials.map(commercial => ({\n title: `${commercial.firstname} ${commercial.lastname}`,\n id: commercial.id,\n }))\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminSelectCommercial.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminSelectCommercial.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AdminSelectCommercial.vue?vue&type=template&id=86a18a20&scoped=true&\"\nimport script from \"./AdminSelectCommercial.vue?vue&type=script&lang=ts&\"\nexport * from \"./AdminSelectCommercial.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./AdminSelectCommercial.vue?vue&type=style&index=0&id=86a18a20&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"86a18a20\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-form',{ref:\"form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.onSubmit($event)}},model:{value:(_vm.valid),callback:function ($$v) {_vm.valid=$$v},expression:\"valid\"}},[(_vm.currentEvent)?_c('v-card-text',{staticClass:\"px-0\"},[_c('v-container',{staticClass:\"pa-4\",attrs:{\"grid-list-md\":\"\"}},[_c('v-layout',{attrs:{\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-layout',{attrs:{\"wrap\":\"\"}},[_c('v-flex',{staticStyle:{\"font-weight\":\"bolder\",\"color\":\"#17639e\"}},[_vm._v(_vm._s(_vm._f(\"formatDate\")(_vm.currentEvent.start_date)))])],1)],1)],1)],1),_c('v-container',{staticClass:\"px-4 py-0\",attrs:{\"grid-list-lg\":\"\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"label\":\"Numéro de campagne\",\"hide-details\":\"\",\"required\":\"\",\"rules\":_vm.rules.campaign},on:{\"change\":_vm.refreshCampaign},model:{value:(_vm.currentEvent.campaignNumber),callback:function ($$v) {_vm.$set(_vm.currentEvent, \"campaignNumber\", $$v)},expression:\"currentEvent.campaignNumber\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0 indice\",attrs:{\"label\":\"Indice\",\"hide-details\":\"\",\"rules\":_vm.rules.indice,\"disabled\":\"\"},model:{value:(_vm.currentEvent.indice),callback:function ($$v) {_vm.$set(_vm.currentEvent, \"indice\", $$v)},expression:\"currentEvent.indice\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"label\":\"RS\",\"hide-details\":\"\"},model:{value:(_vm.currentEvent.prospect.rs),callback:function ($$v) {_vm.$set(_vm.currentEvent.prospect, \"rs\", $$v)},expression:\"currentEvent.prospect.rs\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"label\":\"Typers\",\"hide-details\":\"\"},model:{value:(_vm.currentEvent.prospect.typers),callback:function ($$v) {_vm.$set(_vm.currentEvent.prospect, \"typers\", $$v)},expression:\"currentEvent.prospect.typers\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"label\":\"Civilité\",\"hide-details\":\"\"},model:{value:(_vm.currentEvent.prospect.civility),callback:function ($$v) {_vm.$set(_vm.currentEvent.prospect, \"civility\", $$v)},expression:\"currentEvent.prospect.civility\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"label\":\"Siret\",\"hide-details\":\"\"},model:{value:(_vm.currentEvent.prospect.siret),callback:function ($$v) {_vm.$set(_vm.currentEvent.prospect, \"siret\", $$v)},expression:\"currentEvent.prospect.siret\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"label\":\"Nom\",\"hide-details\":\"\"},model:{value:(_vm.currentEvent.prospect.lastname),callback:function ($$v) {_vm.$set(_vm.currentEvent.prospect, \"lastname\", $$v)},expression:\"currentEvent.prospect.lastname\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"label\":\"Prénom\",\"hide-details\":\"\"},model:{value:(_vm.currentEvent.prospect.firstname),callback:function ($$v) {_vm.$set(_vm.currentEvent.prospect, \"firstname\", $$v)},expression:\"currentEvent.prospect.firstname\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"label\":\"Téléphone\",\"hide-details\":\"\"},model:{value:(_vm.currentEvent.prospect.phone),callback:function ($$v) {_vm.$set(_vm.currentEvent.prospect, \"phone\", $$v)},expression:\"currentEvent.prospect.phone\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"label\":\"Téléphone (bis)\",\"hide-details\":\"\"},model:{value:(_vm.currentEvent.prospect.phoneBis),callback:function ($$v) {_vm.$set(_vm.currentEvent.prospect, \"phoneBis\", $$v)},expression:\"currentEvent.prospect.phoneBis\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"label\":\"Mobile\",\"hide-details\":\"\"},model:{value:(_vm.currentEvent.prospect.mobile),callback:function ($$v) {_vm.$set(_vm.currentEvent.prospect, \"mobile\", $$v)},expression:\"currentEvent.prospect.mobile\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"label\":\"Email\",\"hide-details\":\"\"},model:{value:(_vm.currentEvent.prospect.email),callback:function ($$v) {_vm.$set(_vm.currentEvent.prospect, \"email\", $$v)},expression:\"currentEvent.prospect.email\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"label\":\"Topage\",\"hide-details\":\"\"},model:{value:(_vm.currentEvent.topage),callback:function ($$v) {_vm.$set(_vm.currentEvent, \"topage\", $$v)},expression:\"currentEvent.topage\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"label\":\"Topfic\",\"hide-details\":\"\"},model:{value:(_vm.currentEvent.topfic),callback:function ($$v) {_vm.$set(_vm.currentEvent, \"topfic\", $$v)},expression:\"currentEvent.topfic\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"label\":\"Adresse\",\"hide-details\":\"\"},model:{value:(_vm.currentEvent.prospect.address),callback:function ($$v) {_vm.$set(_vm.currentEvent.prospect, \"address\", $$v)},expression:\"currentEvent.prospect.address\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"label\":\"Adresse 2\",\"hide-details\":\"\"},model:{value:(_vm.currentEvent.prospect.address2),callback:function ($$v) {_vm.$set(_vm.currentEvent.prospect, \"address2\", $$v)},expression:\"currentEvent.prospect.address2\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"label\":\"Code postal\",\"hide-details\":\"\"},model:{value:(_vm.currentEvent.prospect.zip),callback:function ($$v) {_vm.$set(_vm.currentEvent.prospect, \"zip\", $$v)},expression:\"currentEvent.prospect.zip\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md8\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"label\":\"Ville\",\"hide-details\":\"\"},model:{value:(_vm.currentEvent.prospect.city),callback:function ($$v) {_vm.$set(_vm.currentEvent.prospect, \"city\", $$v)},expression:\"currentEvent.prospect.city\"}})],1),_vm._l((_vm.EDITABLE_UNKNOWN_FIELDS),function(item){return _c('v-flex',{key:item,attrs:{\"xs12\":\"\",\"sm6\":\"\"}},[_c('v-text-field',{staticClass:\"pa-0 ma-0\",attrs:{\"label\":item,\"hide-details\":\"\"},model:{value:(_vm.currentEvent.unknownFields[item]),callback:function ($$v) {_vm.$set(_vm.currentEvent.unknownFields, item, $$v)},expression:\"currentEvent.unknownFields[item]\"}})],1)}),_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('Table',{attrs:{\"items\":_vm.items}})],1),_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-textarea',{attrs:{\"auto-grow\":\"\",\"label\":\"Commentaire\",\"box\":\"\",\"hide-details\":\"\"},model:{value:(_vm.currentEvent.comment),callback:function ($$v) {_vm.$set(_vm.currentEvent, \"comment\", $$v)},expression:\"currentEvent.comment\"}})],1)],2)],1)],1):_vm._e(),_c('v-card-actions',[_c('v-container',{staticClass:\"px-4 py-3\",attrs:{\"grid-list-lg\":\"\"}},[_c('v-layout',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"primary\",\"type\":\"submit\",\"disabled\":_vm.disabled}},[_vm._v(\"\\n Enregistrer\\n \"),(_vm.campaign)?_c('span',[_vm._v(\" pour la campagne \\\"\"+_vm._s(_vm.campaign.name)+\"\\\"\")]):_vm._e()])],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Prop, Watch, Vue } from 'vue-property-decorator'\nimport { CalendarEvent } from '@/models/CalendarEvent'\nimport { status } from '@/data/status'\nimport Prospect from '@/models/Prospect'\nimport { Reason, ReasonObject } from '@/models/Reason'\nimport { reasons } from '@/data/reasons'\nimport { formatStatusAdvanced, formatDate } from '@/utils/format'\nimport CalendarModule from '@/store/modules/calendar'\nimport { Message } from '../models/Message'\nimport { OperatorParams } from '../models/OperatorParams'\nimport { Field, CamelCaseField } from '@/models/OperatorFields'\nimport { Campaign } from '@/models/Campaign'\nimport { operatorFields } from '@/data/operatorFields'\nimport { fieldToCamelCase } from '@/utils/operatorFieldUtils'\nimport Table from '@/components/Table.vue'\nimport {\n HERMES_TOTAL_FIELDS,\n EDITABLE_UNKNOWN_FIELDS,\n} from '../api/http-constants'\nimport { getCampaign } from '@/api/api'\n\ninterface Keys {\n [index: string]: string\n}\n\nconst keyTranslations: Keys = {\n // prospect\n RS: 'rs',\n TYPERS: 'typers',\n SIRET: 'siret',\n EMAIL: 'email',\n CIVILITE: 'civility',\n NOM: 'lastname',\n PRENOM: 'firstname',\n ADR1: 'address',\n ADR2: 'address2',\n CP: 'zip',\n VILLE: 'city',\n TEL: 'phone',\n TEL2: 'phoneBis',\n MOBILE: 'mobile',\n // meeting\n COMMENTAIRES: 'comment',\n INDICE: 'indice',\n NUM_CAMP_HERMES: 'campaignNumber',\n TOPAGE: 'topage',\n TOPFIC: 'topfic',\n}\n\n@Component({\n filters: {\n formatDate,\n },\n components: {\n Table,\n },\n})\nexport default class OperatorForm extends Vue {\n @Prop() event!: CalendarEvent | null\n @Prop() show!: boolean\n @Prop({ default: false }) disabled!: boolean\n campaign: Campaign | null = null\n\n valid = false\n rules = {\n campaign: [(v: string) => !!v || 'Le champ campagne ne peut être vide'],\n indice: [(v: string) => !!v || 'Le champ indice ne peut être vide'],\n // indice: [\n // (v: string) =>\n // v === undefined ||\n // v === null ||\n // (v && v.trim && v.trim().length === 0) ||\n // !isNaN(v as any) ||\n // 'Le champ campagne ne peut être vide',\n // ],\n }\n\n headers = [\n { text: 'Clé', value: 'key' },\n { text: 'Valeur', value: 'value' },\n ]\n\n currentEvent = new CalendarEvent()\n\n @Watch('event', { deep: true, immediate: true })\n onEvent() {\n if (!this.event) {\n return\n }\n\n this.currentEvent = new CalendarEvent()\n this.currentEvent = {\n ...this.event,\n prospect: {\n ...this.event.prospect,\n },\n unknownFields: {\n ...this.event.unknownFields,\n },\n }\n }\n\n get items() {\n if (!this.currentEvent) {\n return []\n }\n\n // On ajoute les champs inconnus\n const _items = []\n const data: any = this.currentEvent.unknownFields\n for (const key in data) {\n _items.push({\n key: key,\n value: data[key],\n })\n }\n\n const items = _items.filter(x => x.value)\n\n // on masque les champs inconnus éditables\n const pItems = items.filter(item => {\n return !EDITABLE_UNKNOWN_FIELDS.includes(item.key)\n })\n\n return pItems\n }\n\n get EDITABLE_UNKNOWN_FIELDS() {\n return EDITABLE_UNKNOWN_FIELDS\n }\n\n async refreshCampaign() {\n if (this.currentEvent.campaignNumber !== null && this.currentEvent.campaignNumber.length > 0) {\n getCampaign(this.currentEvent.campaignNumber)\n .then(resp => {\n this.campaign = resp.data\n }).catch(() => {\n this.campaign = null\n })\n\n } else {\n this.campaign = null\n }\n }\n\n @Watch('show')\n async onShow() {\n if (!this.show || !this.currentEvent) {\n return\n }\n\n const operatorParams: OperatorParams = {\n ...CalendarModule.operatorParams,\n }\n\n const event = this.currentEvent\n const keys = Object.keys(operatorParams)\n\n // on parse les champs de l'opérateur\n keys.forEach(key => {\n const translatedKey = keyTranslations[key]\n if (translatedKey) {\n const value = operatorParams[key]\n if (value) {\n if (\n translatedKey === 'comment' ||\n translatedKey === 'indice' ||\n translatedKey === 'campaignNumber' ||\n translatedKey === 'topage' ||\n translatedKey === 'topfic'\n ) {\n event[translatedKey] = value\n } else {\n //@ts-ignore\n event.prospect[translatedKey] = value\n }\n }\n }\n })\n\n // on nettoie le mémo en supprimant les champs parsés\n keys.forEach(key => {\n const translatedKey = keyTranslations[key]\n if (translatedKey) {\n const value = operatorParams[key]\n if (value) {\n delete operatorParams[key]\n }\n }\n })\n\n if (operatorParams['COMMERCIAL_ID']) {\n delete operatorParams['COMMERCIAL_ID']\n }\n\n // unknownFields\n Object.keys(operatorParams).forEach(key => {\n if (!event.unknownFields[key]) {\n event.unknownFields[key] = operatorParams[key]\n }\n })\n\n this.refreshCampaign()\n\n // Petit trick pour s'assurer que le form est bien rempli\n const text = event.text || ''\n event.text = ' '\n await this.$nextTick()\n event.text = text\n }\n\n get status() {\n if (!this.event) {\n return\n }\n\n return formatStatusAdvanced(this.event.status, this.event.reason)\n }\n\n onSubmit() {\n const $form = this.$refs.form as any\n if (!$form.validate()) {\n return\n }\n\n this.$emit('save', this.currentEvent)\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OperatorForm.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OperatorForm.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./OperatorForm.vue?vue&type=template&id=24d3a42f&scoped=true&\"\nimport script from \"./OperatorForm.vue?vue&type=script&lang=ts&\"\nexport * from \"./OperatorForm.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./OperatorForm.vue?vue&type=style&index=0&id=24d3a42f&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"24d3a42f\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-form',{ref:\"form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.onSave($event)}},model:{value:(_vm.valid),callback:function ($$v) {_vm.valid=$$v},expression:\"valid\"}},[_c('v-container',{staticClass:\"pt-0\"},[_c('v-layout',{attrs:{\"column\":\"\"}},[_c('v-flex',[_c('v-container',{staticClass:\"pa-0\",attrs:{\"grid-list-xl\":\"\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\",\"sm7\":\"\"}},[_c('div',[_c('v-subheader',{staticClass:\"pl-0\"},[_vm._v(\"Type d'action\")]),_c('v-radio-group',{staticClass:\"mt-0\",attrs:{\"hide-details\":\"\",\"mandatory\":true},model:{value:(_vm.action),callback:function ($$v) {_vm.action=$$v},expression:\"action\"}},[_c('v-radio',{attrs:{\"color\":\"primary\",\"label\":\"Ajouter des indisponibilités\",\"value\":\"add\"}}),_c('v-radio',{attrs:{\"color\":\"primary\",\"label\":\"Supprimer des indisponibilités\",\"value\":\"remove\"}})],1)],1),_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs6\":_vm.action === 'add'}},[_c('v-dialog',{ref:\"startDateDialog\",attrs:{\"return-value\":_vm.startDate,\"persistent\":\"\",\"lazy\":\"\",\"full-width\":\"\",\"width\":\"290px\"},on:{\"update:returnValue\":function($event){_vm.startDate=$event}},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c('v-text-field',_vm._g({attrs:{\"label\":\"Du\",\"prepend-icon\":\"event\",\"readonly\":\"\",\"required\":\"\",\"hide-details\":\"\",\"rules\":_vm.rules.startDate},on:{\"blur\":function($event){_vm.startDate = _vm.parseDate(_vm.startDateFormated)}},model:{value:(_vm.startDateFormated),callback:function ($$v) {_vm.startDateFormated=$$v},expression:\"startDateFormated\"}},on))]}}]),model:{value:(_vm.startDateDialog),callback:function ($$v) {_vm.startDateDialog=$$v},expression:\"startDateDialog\"}},[_c('v-date-picker',{attrs:{\"scrollable\":\"\",\"locale\":\"fr\",\"first-day-of-week\":\"1\"},model:{value:(_vm.startDate),callback:function ($$v) {_vm.startDate=$$v},expression:\"startDate\"}},[_c('v-spacer'),_c('v-btn',{attrs:{\"flat\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.startDateDialog = false}}},[_vm._v(\"Annuler\")]),_c('v-btn',{attrs:{\"flat\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.$refs.startDateDialog.save(_vm.startDate)}}},[_vm._v(\"OK\")])],1)],1),_c('v-dialog',{ref:\"endDateDialog\",staticClass:\"mt-3\",attrs:{\"return-value\":_vm.endDate,\"persistent\":\"\",\"lazy\":\"\",\"full-width\":\"\",\"width\":\"290px\"},on:{\"update:returnValue\":function($event){_vm.endDate=$event}},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c('v-text-field',_vm._g({attrs:{\"label\":\"Au\",\"prepend-icon\":\"event\",\"readonly\":\"\",\"required\":\"\",\"hide-details\":\"\",\"rules\":_vm.rules.endDate},on:{\"blur\":function($event){_vm.endDate = _vm.parseDate(_vm.endDateFormated)}},model:{value:(_vm.endDateFormated),callback:function ($$v) {_vm.endDateFormated=$$v},expression:\"endDateFormated\"}},on))]}}]),model:{value:(_vm.endDateDialog),callback:function ($$v) {_vm.endDateDialog=$$v},expression:\"endDateDialog\"}},[_c('v-date-picker',{attrs:{\"scrollable\":\"\",\"locale\":\"fr\",\"first-day-of-week\":\"1\"},model:{value:(_vm.endDate),callback:function ($$v) {_vm.endDate=$$v},expression:\"endDate\"}},[_c('v-spacer'),_c('v-btn',{attrs:{\"flat\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.endDateDialog = false}}},[_vm._v(\"Annuler\")]),_c('v-btn',{attrs:{\"flat\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.$refs.endDateDialog.save(_vm.endDate)}}},[_vm._v(\"OK\")])],1)],1)],1),(_vm.action === 'add')?_c('v-flex',{attrs:{\"xs6\":\"\"}},[_c('v-dialog',{ref:\"startHourDialog\",attrs:{\"return-value\":_vm.startHour,\"persistent\":\"\",\"lazy\":\"\",\"full-width\":\"\",\"width\":\"290px\"},on:{\"update:returnValue\":function($event){_vm.startHour=$event}},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c('v-text-field',_vm._g({attrs:{\"label\":\"De\",\"prepend-icon\":\"access_time\",\"readonly\":\"\",\"required\":\"\",\"hide-details\":\"\",\"rules\":_vm.rules.startHour},model:{value:(_vm.startHour),callback:function ($$v) {_vm.startHour=$$v},expression:\"startHour\"}},on))]}}]),model:{value:(_vm.startHourDialog),callback:function ($$v) {_vm.startHourDialog=$$v},expression:\"startHourDialog\"}},[(_vm.startHourDialog)?_c('v-time-picker',{attrs:{\"full-width\":\"\",\"format\":\"24hr\",\"allowed-minutes\":function (v) { return v % 15 === 0; },\"allowed-hours\":function (v) { return v >= 8 && v <= 20; }},model:{value:(_vm.startHour),callback:function ($$v) {_vm.startHour=$$v},expression:\"startHour\"}},[_c('v-spacer'),_c('v-btn',{attrs:{\"flat\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.startHourDialog = false}}},[_vm._v(\"Annuler\")]),_c('v-btn',{attrs:{\"flat\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.$refs.startHourDialog.save(_vm.startHour)}}},[_vm._v(\"OK\")])],1):_vm._e()],1),_c('v-dialog',{ref:\"endHourDialog\",staticClass:\"mt-3\",attrs:{\"return-value\":_vm.endHour,\"persistent\":\"\",\"lazy\":\"\",\"full-width\":\"\",\"width\":\"290px\"},on:{\"update:returnValue\":function($event){_vm.endHour=$event}},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c('v-text-field',_vm._g({attrs:{\"label\":\"À\",\"prepend-icon\":\"access_time\",\"readonly\":\"\",\"required\":\"\",\"hide-details\":\"\",\"rules\":_vm.rules.endHour},model:{value:(_vm.endHour),callback:function ($$v) {_vm.endHour=$$v},expression:\"endHour\"}},on))]}}]),model:{value:(_vm.endHourDialog),callback:function ($$v) {_vm.endHourDialog=$$v},expression:\"endHourDialog\"}},[(_vm.endHourDialog)?_c('v-time-picker',{attrs:{\"full-width\":\"\",\"format\":\"24hr\",\"allowed-minutes\":function (v) { return v % 15 === 0; },\"allowed-hours\":function (v) { return v >= 8 && v <= 20; }},model:{value:(_vm.endHour),callback:function ($$v) {_vm.endHour=$$v},expression:\"endHour\"}},[_c('v-spacer'),_c('v-btn',{attrs:{\"flat\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.endHourDialog = false}}},[_vm._v(\"Annuler\")]),_c('v-btn',{attrs:{\"flat\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.$refs.endHourDialog.save(_vm.endHour)}}},[_vm._v(\"OK\")])],1):_vm._e()],1)],1):_vm._e()],1)],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"sm5\":\"\"}},[_c('v-subheader',{staticClass:\"pl-0\"},[_vm._v(\"Jours(s) choisi(s)\")]),_c('v-layout',{attrs:{\"wrap\":\"\",\"row\":\"\"}},[_c('v-flex',{attrs:{\"xs6\":\"\"}},_vm._l((_vm.daysArr),function(item,index){return _c('v-checkbox',{key:index,staticClass:\"mt-0\",attrs:{\"label\":item.text,\"hide-details\":\"\",\"error\":_vm.checkboxError},model:{value:(_vm.days[item.value]),callback:function ($$v) {_vm.$set(_vm.days, item.value, $$v)},expression:\"days[item.value]\"}})}),1),_c('v-flex',{attrs:{\"xs6\":\"\"}},[_c('v-layout',{staticClass:\"mt-0\",attrs:{\"column\":\"\",\"align-end\":\"\"}},[_c('v-btn',{attrs:{\"color\":\"primary\",\"round\":\"\",\"outline\":\"\",\"small\":\"\"},on:{\"click\":_vm.selectAllDays}},[_vm._v(\"Tous les jours\")]),_c('v-btn',{attrs:{\"color\":\"primary\",\"round\":\"\",\"outline\":\"\",\"small\":\"\"},on:{\"click\":_vm.unselectAllDays}},[_vm._v(\"Aucun jour\")])],1)],1)],1)],1)],1)],1)],1),_c('v-flex',[_c('v-layout',{attrs:{\"wrap\":\"\",\"justify-space-between\":\"\"}},[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"primary\",\"type\":\"submit\"}},[_vm._v(\"Enregistrer\")])],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Vue, Watch } from 'vue-property-decorator'\nimport calendar from '../store/modules/calendar'\nimport { postRecurrentUnavailable, deleteRecurrentUnavailable } from '@/api/api'\nimport get from 'lodash/get'\nimport Day from '@/models/Day'\nimport RecurrentUnavailableRequest from '@/models/RecurrentUnavailableRequest'\n\ninterface DaysObj {\n monday: boolean\n tuesday: boolean\n wednesday: boolean\n thursday: boolean\n friday: boolean\n saturday: boolean\n sunday: boolean\n}\n\nconst days = {\n monday: 'Lundi',\n tuesday: 'Mardi',\n wednesday: 'Mercredi',\n thursday: 'Jeudi',\n friday: 'Vendredi',\n saturday: 'Samedi',\n sunday: 'Dimanche',\n}\n\n@Component({})\nexport default class UnavailableRecurrenceForm extends Vue {\n valid: boolean = false\n action: 'add' | 'remove' = 'add'\n startDateDialog: boolean = false\n startDate: string = ''\n startDateFormated: string = ''\n endDateDialog: boolean = false\n endDate: string = ''\n endDateFormated: string = ''\n startHourDialog: boolean = false\n startHour: string = ''\n endHourDialog: boolean = false\n endHour: string = ''\n days: DaysObj = Object.keys(days).reduce((accu: any, key) => {\n accu[key] = false\n return accu\n }, {})\n rules = {\n startDate: [(v: string) => !!v || 'Le champ est obligatoire'],\n endDate: [(v: string) => !!v || 'Le champ est obligatoire'],\n startHour: [(v: string) => !!v || 'Le champ est obligatoire'],\n endHour: [(v: string) => !!v || 'Le champ est obligatoire'],\n }\n checkboxError: boolean = false\n\n @Watch('days', { deep: true })\n onDays() {\n this.checkboxError = false\n }\n\n validateCheckbox() {\n const selected = Object.keys(this.days).filter(\n key => (this.days as any)[key]\n )\n\n if (selected.length === 0) {\n this.checkboxError = true\n }\n\n return selected.length > 0\n }\n\n async onSave() {\n const $form = this.$refs.form as any\n const isCheckboxValid = this.validateCheckbox()\n if (!$form.validate() || !isCheckboxValid) {\n return\n }\n\n const days = Object.keys(this.days).reduce((accu, key) => {\n if ((this.days as any)[key]) {\n accu.push(key as Day)\n }\n return accu\n }, [])\n\n const request: RecurrentUnavailableRequest = {\n startDate: new Date(this.startDate).getTime() / 1000,\n endDate: new Date(this.endDate).getTime() / 1000,\n startHour: this.startHour,\n endHour: this.endHour,\n days: days,\n user: calendar.userID || -1,\n comment: null,\n memo: null,\n }\n\n try {\n let resp\n if (this.action === 'add') {\n resp = await postRecurrentUnavailable(request)\n } else {\n resp = await deleteRecurrentUnavailable(request)\n }\n\n const message = get(\n resp,\n 'data.message',\n this.action === 'add'\n ? 'Indisponibilités enregistrées avec succès'\n : 'Indisponibilités supprimées avec succès'\n )\n\n await calendar.forceLoadEvents()\n this.$emit('showSnackbar', {\n status: 'success',\n message,\n })\n this.$emit('save')\n } catch (error) {\n const message = get(\n error,\n 'message',\n get(\n error,\n 'response.data.message',\n this.action === 'add'\n ? \"Une erreur est survenue lors de l'enregistrement des indisponibilités\"\n : 'Une erreur est survenue lors de la suppression des indisponibilités'\n )\n )\n\n this.$emit('showSnackbar', {\n status: 'error',\n message,\n })\n }\n }\n\n @Watch('startDate')\n onStartDate() {\n this.startDateFormated = this.formatDate(this.startDate) || ''\n }\n\n @Watch('endDate')\n onEndDate() {\n this.endDateFormated = this.formatDate(this.endDate) || ''\n }\n\n formatDate(date: string) {\n if (!date) return null\n\n const [year, month, day] = date.split('-')\n return `${day}/${month}/${year}`\n }\n\n parseDate(date: string) {\n if (!date) return null\n\n const [day, month, year] = date.split('/')\n return `${year}-${month.padStart(2, '0')}-${day.padStart(2, '0')}`\n }\n\n get daysArr() {\n return Object.keys(days).map(key => ({\n text: (days as any)[key],\n value: key,\n }))\n }\n\n selectAllDays() {\n Object.keys(this.days).forEach(key => {\n ;(this.days as any)[key] = true\n })\n }\n\n unselectAllDays() {\n Object.keys(this.days).forEach(key => {\n ;(this.days as any)[key] = false\n })\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnavailableRecurrenceForm.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnavailableRecurrenceForm.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./UnavailableRecurrenceForm.vue?vue&type=template&id=5d7afb94&\"\nimport script from \"./UnavailableRecurrenceForm.vue?vue&type=script&lang=ts&\"\nexport * from \"./UnavailableRecurrenceForm.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-select',{staticClass:\"fix-select-height fix-select-width\",attrs:{\"items\":_vm.operatorCommercials,\"item-text\":\"name\",\"item-value\":\"id\",\"label\":\"Commercial\",\"solo-inverted\":\"\",\"flat\":\"\"},model:{value:(_vm.commercialID),callback:function ($$v) {_vm.commercialID=$$v},expression:\"commercialID\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Vue, Watch } from 'vue-property-decorator'\nimport CalendarModule from '@/store/modules/calendar'\n\n@Component({})\nexport default class OperatorSelectCommercial extends Vue {\n commercialID: number | null = null\n\n get userID() {\n return CalendarModule.userID\n }\n\n @Watch('userID')\n onUserID() {\n if (this.userID !== null) {\n this.commercialID = CalendarModule.userID\n }\n }\n\n @Watch('commercialID')\n onCommercialID() {\n this.$emit('id', this.commercialID)\n }\n\n get operatorCommercials() {\n return CalendarModule.operatorCommercials.map(commercial => ({\n id: commercial.id,\n name: `${commercial.firstname} ${commercial.lastname}`,\n }))\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OperatorSelectCommercial.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OperatorSelectCommercial.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./OperatorSelectCommercial.vue?vue&type=template&id=5c23168a&scoped=true&\"\nimport script from \"./OperatorSelectCommercial.vue?vue&type=script&lang=ts&\"\nexport * from \"./OperatorSelectCommercial.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./OperatorSelectCommercial.vue?vue&type=style&index=0&id=5c23168a&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5c23168a\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card-text',[_c('h3',[_vm._v(\"RDV à proximité\")]),(_vm.events.length == 0)?_c('div',{staticClass:\"no-results\"},[_vm._v(\"Il n'y a pas de rdv à proximité\")]):_vm._e(),_c('ul',_vm._l((_vm.events),function(event){return _c('li',{key:event['0'].id,on:{\"click\":function($event){_vm.onClick(event['0'])}}},[_c('div',[_c('span'),_c('div',[_c('b',[_vm._v(_vm._s(_vm._f(\"formatName\")(event['0'].prospect)))]),_c('span',[_vm._v(\"\\n le \"+_vm._s(_vm._f(\"formatDate\")(event['0'].startedAt))+\"\\n \"),_c('b',[_vm._v(_vm._s(_vm._f(\"formatHour\")(event['0'].startedAt)))])])]),_c('div',[_c('span',[_vm._v(_vm._s(event['0'].prospect.city)+\" - \"+_vm._s(event.distance_km ? event.distance_km : '0')+\" km\")]),_c('span',[_vm._v(\"\\n \"+_vm._s(_vm._f(\"formatStatus\")(event['0'].status))+\"\\n \"),_c('v-avatar',{class:(\"colors-\" + (event['0'].status)),attrs:{\"size\":\"12\"}})],1)])])])}),0)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Prop, Watch, Vue } from 'vue-property-decorator'\nimport CalendarModule from '@/store/modules/calendar'\nimport { getMeetingsAround } from '@/api/api'\nimport dayjs from 'dayjs'\nimport { status } from '@/data/status'\n\n@Component({\n filters: {\n formatDate(value: string) {\n return dayjs(value).format('DD/MM/YY')\n },\n formatHour(value: string) {\n return dayjs(value).format('HH:mm')\n },\n formatStatus(value: string) {\n const out = status.find(s => s.value == value)\n return out ? out.title : value\n },\n formatName(value: any) {\n let out = value.firstname ? value.firstname + ' ' : ''\n out += value.lastname ? value.lastname : ''\n return out.length > 0 ? out : 'Infos indisponibles'\n },\n },\n})\nexport default class ClosestEvents extends Vue {\n @Prop() event: any\n @Prop() commercialId: number | null = null\n @Prop() visible: boolean = false\n @Prop() navigateToEvent: any\n\n currentEvent: any = null\n events: any = []\n\n get zipCode() {\n return CalendarModule.operatorParams.CP\n }\n\n @Watch('visible')\n async onVisibleChange(val: boolean) {\n if (val && this.commercialId) {\n const eventsData = await getMeetingsAround(\n this.zipCode,\n this.commercialId\n )\n this.events = eventsData.data\n }\n }\n\n onClick(event: any) {\n if (this.navigateToEvent) {\n this.navigateToEvent(event)\n this.$emit('close')\n }\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ClosestEvents.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ClosestEvents.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ClosestEvents.vue?vue&type=template&id=7f5acf56&scoped=true&\"\nimport script from \"./ClosestEvents.vue?vue&type=script&lang=ts&\"\nexport * from \"./ClosestEvents.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ClosestEvents.vue?vue&type=style&index=0&id=7f5acf56&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7f5acf56\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Watch, Vue } from 'vue-property-decorator'\nimport { CalendarEvent } from '@/models/CalendarEvent'\nimport AdminEditForm from '@/components/AdminEditForm.vue'\nimport CommercialEditForm from '@/components/CommercialEditForm.vue'\nimport Documents from '@/components/Documents.vue'\nimport Messages from '@/components/Messages.vue'\nimport 'dhtmlx-scheduler'\nimport 'dhtmlx-scheduler/codebase/locale/locale_fr'\nimport 'dhtmlx-scheduler/codebase/ext/dhtmlxscheduler_limit.js'\nimport dayjs, { UnitType } from 'dayjs'\nimport 'dayjs/locale/fr'\nimport AuthModule from '@/store/modules/auth'\nimport CalendarModule from '@/store/modules/calendar'\nimport DocumentsModule from '@/store/modules/documents'\nimport CommercialShowEvent from '@/components/CommercialShowEvent.vue'\nimport { dataToArray, arrayToCSV } from '@/utils/csv'\nimport { downloadFile } from '@/utils/download'\nimport { getID } from '@/utils/getID'\nimport memoize from 'lodash/memoize'\nimport debounce from 'lodash/debounce'\nimport UnavailableForm from '@/components/UnavailableForm.vue'\nimport CommercialsModule from '@/store/modules/commercials'\nimport { Commercial } from '@/models/Commercial'\nimport router from '@/router'\nimport { getCountOfEventsPerWeek } from '@/utils/events'\nimport store from '@/store'\nimport findIndex from 'lodash/findIndex'\nimport find from 'lodash/find'\nimport get from 'lodash/get'\nimport AdminSelectCommercial from '@/components/AdminSelectCommercial.vue'\nimport {\n formatStatus,\n formatReason,\n formatStatusAdvanced,\n} from '@/utils/format'\nimport { Message } from '../models/Message'\nimport OperatorForm from '@/components/OperatorForm.vue'\nimport { Field, CamelCaseField } from '@/models/OperatorFields'\nimport { operatorFields } from '@/data/operatorFields'\nimport { fieldToCamelCase } from '@/utils/operatorFieldUtils'\nimport compact from 'lodash/compact'\nimport { HERMES_TOTAL_FIELDS } from '../api/http-constants'\nimport UnavailableRecurrenceForm from '@/components/UnavailableRecurrenceForm.vue'\nimport OperatorSelectCommercial from '@/components/OperatorSelectCommercial.vue'\nimport ClosestEvents from '@/components/ClosestEvents.vue'\n\ndayjs.locale('fr')\n\ntype Role = 'admin' | 'supervisor' | 'commercial' | 'operator'\n\ninterface Snackbar {\n opened: boolean\n status: 'success' | 'error'\n message: string\n duration: number\n}\n\n@Component({\n components: {\n AdminEditForm,\n CommercialEditForm,\n CommercialShowEvent,\n Documents,\n Messages,\n UnavailableForm,\n AdminSelectCommercial,\n OperatorForm,\n UnavailableRecurrenceForm,\n OperatorSelectCommercial,\n ClosestEvents,\n },\n filters: {\n formatRole: (\n role: Role\n ): 'Admin' | 'Superviseur' | 'Commercial' | 'Téléopérateur' => {\n switch (role) {\n case 'admin':\n return 'Admin'\n case 'supervisor':\n return 'Superviseur'\n case 'commercial':\n return 'Commercial'\n case 'operator':\n return 'Téléopérateur'\n }\n },\n },\n})\nexport default class Planning extends Vue {\n snackbar: Snackbar = {\n opened: false,\n status: 'error',\n message: 'foo',\n duration: 6000,\n }\n selectedCommercialID: number | null = null\n showMessages = false\n showDocuments = false\n showMooveComMessage = false\n fullscreen = false\n deleteDialog = false\n editDialog = false\n currentEventID: number = -1\n currentEvent: any = null\n periods = [\n { title: 'Jour', value: 'day' },\n { title: 'Semaine', value: 'week' },\n { title: 'Mois', value: 'month' },\n ]\n view = 'week'\n date = new Date()\n scheduler = (window as any).scheduler\n zoomLevel = 1\n zoomMin = 1\n zoomMax = 5\n paramID: number | null = null\n operatorEventCreatedID = new Map()\n operatorFormDisabled = false\n eventType:\n | 'normal'\n | 'unavailable'\n | 'operator'\n | 'unavailable-recurrence'\n | null = null\n pendingEvents: CalendarEvent[] = []\n eventToAccept: { id: number | null; event: CalendarEvent | null } = {\n id: null,\n event: null,\n }\n showSaving: boolean = false\n mailContactMedia: string =\n 'mailto:f.ledoux@contactmedia.fr; s.ledoux@contactmedia.fr; qualite@contactmedia.fr; e.mirabella@contactmedia.fr'\n showClosestEvents: boolean = false\n\n /**\n * On utilise ça pour forcer l'ouverture d'un nouvel onglet\n */\n contact(event: MouseEvent) {\n window.open(this.mailContactMedia, 'Mail')\n }\n\n toIAgendaV1() {\n window.open('http://iagenda.contactmedia.fr/', '_blank')\n }\n\n syncing: boolean = false\n async onSync() {\n this.syncing = true\n\n setTimeout(() => {\n this.syncing = false\n }, 2000)\n\n await CalendarModule.sync()\n if (CalendarModule.syncingErrorMessage) {\n this.snackbar = {\n opened: true,\n status: 'error',\n message: CalendarModule.syncingErrorMessage,\n duration: 6000,\n }\n await CalendarModule.clearSyncingErrorMessage()\n } else {\n await this.loadEvents()\n this.snackbar = {\n opened: true,\n status: 'success',\n message: 'Les nouveaux rendez-vous ont été synchronisés',\n duration: 6000,\n }\n }\n this.syncing = false\n }\n\n // dragging\n dragging = false\n lastClientX: number | null = null\n mouseDirection: 'left' | 'right' | null = null\n\n showOperatorErrorMessage: boolean = false\n canShowNixxisDialog: boolean = false\n canShowSeeasoftwareDialog: boolean = false\n canShowHermesDialog: boolean = false\n totalFields: number = HERMES_TOTAL_FIELDS\n\n get showHermesDialog() {\n return this.canShowHermesDialog && !CalendarModule.hermesFinished\n }\n\n get completedFields() {\n return CalendarModule.completedFieldsCount\n }\n\n get nixxisErrorMessage() {\n return CalendarModule.nixxisErrorMessage\n }\n\n get showNixxisErrorMessage() {\n return (\n router.currentRoute.name === 'operator' && this.nixxisErrorMessage\n )\n }\n\n get showNixxisDialog() {\n return this.canShowNixxisDialog && !CalendarModule.nixxisFinished\n }\n\n get seeasoftwareErrorMessage() {\n return CalendarModule.seeasoftwareErrorMessage\n }\n\n get showSeeasoftwareErrorMessage() {\n return (\n router.currentRoute.name === 'operator' &&\n this.seeasoftwareErrorMessage\n )\n }\n\n get showSeeasoftwareDialog() {\n return (\n this.canShowSeeasoftwareDialog &&\n !CalendarModule.seeasoftwareFinished\n )\n }\n\n get operatorErrorMessage() {\n return CalendarModule.operatorErrorMessage\n }\n\n get moveMessage(): Message | null {\n return CalendarModule.moveMsg\n }\n\n get planningCSSClass() {\n return {\n commercial: this.profil === 'commercial',\n supervisor: this.profil === 'supervisor',\n admin: this.profil === 'admin',\n operator: this.profil === 'operator',\n }\n }\n\n get loggedAs(): string | null {\n if (AuthModule.roles.includes('ROLE_ADMIN')) {\n return `Connecté en tant qu'administrateur`\n }\n if (AuthModule.roles.includes('ROLE_OPERATOR')) {\n return `Connecté en tant qu'opérateur`\n }\n return null\n }\n\n get currentCommercial() {\n if (!CalendarModule.userInfos) {\n return null\n }\n return `${CalendarModule.userInfos.firstname} ${CalendarModule.userInfos.lastname}`\n }\n\n get username() {\n return AuthModule.username\n }\n\n get cssRules() {\n const durationTravel = CalendarModule.constraints\n ? CalendarModule.constraints.durationTravel\n : 1\n\n const pxPerMinute = 0.733333333\n const _pixels = pxPerMinute * durationTravel * this.zoomLevel\n const pixels = Math.floor(_pixels)\n\n const operatorEventCreatedID = CalendarModule.userID\n ? this.operatorEventCreatedID.get(CalendarModule.userID)\n : -1\n\n return `\n \n `\n }\n\n duration = 10\n setLoading(loading: boolean) {\n this.loading = loading\n }\n debouncedSetLoading = debounce(this.setLoading, this.duration)\n loading: boolean = false\n\n /**\n * route +---+\n * +------> profil\n * role +---+\n */\n get role(): Role {\n if (AuthModule.roles.includes('ROLE_ADMIN')) {\n return 'admin'\n }\n if (AuthModule.roles.includes('ROLE_SUPERVISOR')) {\n return 'supervisor'\n }\n if (AuthModule.roles.includes('ROLE_OPERATOR')) {\n return 'operator'\n }\n return 'commercial'\n }\n\n get route(): 'agenda' | 'compagny' | 'operator' {\n if (this.$route.name === 'compagny') {\n return 'compagny'\n }\n if (this.$route.name === 'operator') {\n return 'operator'\n }\n return 'agenda'\n }\n\n get profil(): 'commercial' | 'supervisor' | 'admin' | 'operator' {\n switch (this.$route.name) {\n case 'operator':\n return 'operator'\n case 'commercial':\n return this.role === 'admin' ? 'admin' : 'supervisor'\n default:\n case 'planning':\n return 'commercial'\n }\n }\n\n get commercials() {\n return CommercialsModule.commercials.map(commercial => {\n const name = `${commercial.firstname} ${commercial.lastname}`\n return {\n name: AuthModule.userID === commercial.id ? 'Mon Agenda' : name,\n id: commercial.id,\n }\n })\n }\n\n @Watch('selectedCommercialID')\n async onSelectedCommercialID() {\n await AuthModule.init()\n\n if (AuthModule.userID === this.selectedCommercialID) {\n if (this.$route.name === 'commercial') {\n router.push({\n name: 'planning',\n query: this.$route.query,\n })\n }\n } else {\n router.push({\n name: 'commercial',\n params: {\n id: String(this.selectedCommercialID),\n },\n query: this.$route.query,\n })\n }\n }\n\n onConfig() {\n this.scheduler.config.cascade_event_display = true\n this.scheduler.config.cascade_event_margin = 10\n this.scheduler.config.cascade_event_count = 4\n\n if (this.profil === 'commercial' || this.profil === 'supervisor') {\n this.scheduler.config.details_on_create = true\n this.scheduler.config.edit_on_create = true\n return\n }\n\n if (this.profil === 'operator') {\n this.scheduler.config.details_on_create = true\n this.scheduler.config.edit_on_create = true\n\n this.scheduler.config.limit_start = new Date()\n this.scheduler.config.limit_end = new Date(8640000000000000)\n return\n }\n\n if (this.profil === 'admin') {\n this.scheduler.config.details_on_create = true\n this.scheduler.config.edit_on_create = true\n return\n }\n }\n\n get editType():\n | 'admin'\n | 'show'\n | 'unavailable'\n | 'operator'\n | 'unavailable-recurrence'\n | null {\n if (this.profil === 'operator') {\n if (this.eventType === 'normal') {\n return 'show'\n }\n if (this.eventType === 'operator') {\n return 'operator'\n }\n }\n\n if (this.eventType === 'unavailable') {\n return 'unavailable'\n }\n\n if (this.eventType === 'unavailable-recurrence') {\n return 'unavailable-recurrence'\n }\n\n if (this.profil === 'operator') {\n return 'operator'\n }\n\n if (this.profil === 'supervisor') {\n return 'show'\n }\n\n if (this.profil === 'admin') {\n return 'admin'\n }\n\n return 'show'\n }\n\n addUnavailableRecurrent() {\n this.eventType = 'unavailable-recurrence'\n this.editDialog = true\n }\n\n showLogout: boolean = false\n showLogoutTimeout: number = -1\n\n @Watch('loadingDialog')\n onLoadingDialog() {\n clearTimeout(this.showLogoutTimeout)\n this.showLogout = false\n\n if (this.loadingDialog) {\n this.showLogoutTimeout = setTimeout(() => {\n this.showLogout = true\n }, 5000)\n } else {\n if (CalendarModule.operatorErrorMessage !== null) {\n setTimeout(() => {\n this.showOperatorErrorMessage =\n CalendarModule.operatorErrorMessage !== null\n }, 700)\n } else if (this.$route.name === 'operator') {\n setTimeout(() => {\n if (!CalendarModule.seeasoftwareFinished) {\n this.canShowSeeasoftwareDialog = true\n }\n if (!CalendarModule.nixxisFinished) {\n this.canShowNixxisDialog = true\n }\n if (!CalendarModule.hermesFinished) {\n this.canShowHermesDialog = true\n }\n }, 700)\n }\n }\n }\n\n get loadingDialog() {\n return (\n CalendarModule.loading ||\n DocumentsModule.loading ||\n CommercialsModule.loading ||\n this.loading\n )\n }\n\n zoomOut() {\n this.zoomLevel = Math.max(this.zoomMin, this.zoomLevel - 1)\n }\n\n zoomIn() {\n this.zoomLevel = Math.min(this.zoomMax, this.zoomLevel + 1)\n }\n\n @Watch('zoomLevel')\n onZoomLevel() {\n this.scheduler.config.hour_size_px = this.zoomLevel * 44\n this.scheduler.updateView()\n }\n\n async logout() {\n await AuthModule.logout()\n this.$router.push({ name: 'signin' })\n }\n\n get title() {\n switch (this.view) {\n case 'day':\n return dayjs(this.date).format('DD MMM YYYY')\n case 'week':\n const first = dayjs(this.date)\n .startOf('week')\n .format('DD MMM')\n const second = dayjs(this.date)\n .endOf('week')\n .format('DD MMM YYYY')\n\n return first + ' - ' + second\n case 'month':\n return dayjs(this.date).format('MMMM YYYY')\n }\n }\n\n get calendarUserId() {\n return CalendarModule.userID\n }\n\n onPrev() {\n this.date = dayjs(this.date)\n .add(-1, this.view as UnitType)\n .toDate()\n this.scheduler.setCurrentView(this.date, this.view)\n }\n\n onNext() {\n this.date = dayjs(this.date)\n .add(1, this.view as UnitType)\n .toDate()\n this.scheduler.setCurrentView(this.date, this.view)\n }\n\n onToday() {\n this.date = new Date()\n this.scheduler.setCurrentView(this.date, this.view)\n }\n\n @Watch('date')\n async onDate() {\n await this.focusMeeting()\n }\n\n @Watch('view')\n onView() {\n this.scheduler.setCurrentView(this.date, this.view)\n }\n\n /**\n * Gestion de la modal de suppression\n */\n @Watch('deleteDialog')\n onDeleteDialog(deleteDialog: boolean) {\n if (deleteDialog) {\n return\n }\n if (!this.editDialog) {\n this.currentEventID = -1\n }\n }\n\n onDeleteEvent() {\n this.scheduler.deleteEvent(this.currentEventID)\n this.deleteDialog = false\n this.editDialog = false\n }\n\n /**\n * Gestion de la modale d'édition\n */\n @Watch('editDialog')\n onEditDialog(editDialog: boolean) {\n if (editDialog) {\n clearTimeout(this.limitationTimeout)\n\n const event = this.scheduler.getEvent(this.currentEventID)\n\n this.currentEvent = {\n ...event,\n }\n\n this.scheduler.startLightbox(this.currentEventID, null)\n } else {\n this.scheduler.endLightbox(false, null)\n setTimeout(() => {\n this.eventType = 'normal'\n }, 300)\n }\n }\n\n onSave(eventResult: CalendarEvent) {\n const event: CalendarEvent = this.scheduler.getEvent(\n this.currentEventID\n )\n\n const lastEvent: CalendarEvent = {\n ...event,\n }\n\n if (event.backendID) {\n this.pendingEvents.push(lastEvent)\n }\n\n event.text = eventResult.text\n event.comment = eventResult.comment\n event.commercialComment = eventResult.commercialComment\n event.topage = eventResult.topage\n event.topfic = eventResult.topfic\n event.location = eventResult.location\n event.notes = eventResult.notes\n event.status = eventResult.status\n event.reason = eventResult.reason\n event.start_date = eventResult.start_date\n event.end_date = eventResult.end_date\n event.indice = eventResult.indice\n event.campaignNumber = eventResult.campaignNumber\n event.unknownFields = eventResult.unknownFields\n event.prospect = {\n rs: '',\n typers: '',\n civility: '',\n lastname: '',\n firstname: '',\n address: '',\n address2: '',\n zip: '',\n city: '',\n phone: '',\n phoneBis: '',\n mobile: '',\n email: '',\n siret: '',\n ...eventResult.prospect,\n }\n event.recurrence = eventResult.recurrence || undefined\n event.lastEvent = lastEvent\n this.scheduler.updateEvent(this.currentEventID)\n this.scheduler.endLightbox(true, null)\n\n this.editDialog = false\n }\n\n showDeleteDialog(id: number) {\n this.currentEventID = id\n this.deleteDialog = true\n }\n\n getCurrentID() {\n const _id = this.$route.params.id\n const id = parseInt(_id, 10)\n\n if (isNaN(id)) {\n return AuthModule.userID\n } else {\n return id\n }\n }\n\n /**\n * Ce hack est là pour éviter que la modal s'ouvre lorsque l'on clique sur\n * un lien dans l'event\n */\n linkHandlerName: string | null = null\n link: string | null = null\n setupLinkHandler() {\n this.linkHandlerName = 'd' + Math.floor(Math.random() * 1000001)\n const $window = window as any\n $window[this.linkHandlerName] = this.openLink\n }\n\n openLink(link: string) {\n this.link = link\n }\n\n async showEditDialog(id: number) {\n setTimeout(async () => {\n if (this.link) {\n window.open(this.link, '_blank')\n this.link = null\n } else {\n this.currentEventID = id\n setTimeout(() => {\n this.editDialog = true\n }, this.duration)\n }\n }, 1)\n }\n\n get weekNumber() {\n const dateToWeekNum_func = this.scheduler.date.date_to_str('%W')\n return dateToWeekNum_func(this.date)\n }\n\n downloadMeetings() {\n const events = CalendarModule.events\n const array = dataToArray(events)\n const csv = arrayToCSV(array)\n downloadFile('rendez-vous.csv', 'text/csv;charset=utf-8', csv)\n }\n\n destroyed() {\n this.unsetupDragAndDropBetweenWeeks()\n\n this.scheduler.clearAll()\n try {\n this.scheduler.detachAllEvents()\n } catch (e) {\n // console.log(e)\n }\n }\n\n async loadCurrentCommercial() {\n await AuthModule.init()\n\n if (this.$route.name === 'commercial') {\n const commercialID = this.$route.params.id\n this.selectedCommercialID = parseInt(commercialID, 10)\n } else {\n this.selectedCommercialID = AuthModule.userID\n }\n }\n\n async init() {\n this.onConfig()\n await this.loadCurrentCommercial()\n\n await Promise.all([\n await CalendarModule.init(),\n await DocumentsModule.init(),\n await CommercialsModule.init(),\n ])\n\n if (CalendarModule.startDate) {\n this.date = CalendarModule.startDate\n }\n\n this.scheduler.init('scheduler_here', this.date, this.view)\n\n // On remplace les events si l'user change\n store.watch(\n (state: any) => (state.calendar ? state.calendar.userID : null),\n async userID => {\n if (userID === null) {\n return\n }\n\n await this.loadEvents()\n }\n )\n await this.loadEvents()\n }\n\n async navigateToEvent(event: any) {\n this.scheduler.init('scheduler_here', event.startedAt, this.view)\n\n const $meetingElement = document.querySelector(\n `[event_id=\"${event.id}\"]`\n ) as HTMLElement\n\n if ($meetingElement) {\n $meetingElement.style.border = '3px solid #1976d2'\n }\n }\n\n async focusMeeting() {\n if (CalendarModule.meetingID === null) {\n return\n }\n\n const $meetingElement = document.querySelector(\n `[event_id=\"${CalendarModule.meetingID}\"]`\n ) as HTMLElement\n\n if ($meetingElement) {\n $meetingElement.style.zIndex = '2'\n $meetingElement.classList.add('animated', 'heartBeat', 'infinite')\n }\n }\n\n async loadEvents() {\n this.scheduler.clearAll()\n this.scheduler.parse(CalendarModule.events, 'json')\n }\n\n async mounted() {\n this.setupDragAndDropBetweenWeeks()\n this.setupLinkHandler()\n await this.setupScheduler()\n await this.init()\n\n await this.onSync()\n\n if (this.$vuetify.breakpoint.name === 'xs') {\n this.view = 'day'\n } else {\n this.view = 'week'\n }\n }\n\n setupDragAndDropBetweenWeeks() {\n const $leftZone = this.$refs.leftZone as HTMLElement\n const $rightZone = this.$refs.rightZone as HTMLElement\n\n $leftZone.addEventListener('mouseenter', this.onMouseEnterLeft)\n $rightZone.addEventListener('mouseenter', this.onMouseEnterRight)\n\n window.addEventListener('mousemove', this.onMouseMove)\n }\n\n unsetupDragAndDropBetweenWeeks() {\n const $leftZone = this.$refs.leftZone as HTMLElement\n const $rightZone = this.$refs.rightZone as HTMLElement\n\n if ($leftZone) {\n $leftZone.removeEventListener('mouseenter', this.onMouseEnterLeft)\n }\n if ($rightZone) {\n $rightZone.removeEventListener('mouseenter', this.onMouseEnterRight)\n }\n\n window.removeEventListener('mousemove', this.onMouseMove)\n }\n\n onMouseMove(event: MouseEvent) {\n if (this.lastClientX !== null) {\n const diff = event.clientX - this.lastClientX\n if (diff > 0) {\n this.mouseDirection = 'right'\n }\n\n if (diff < 0) {\n this.mouseDirection = 'left'\n }\n }\n this.lastClientX = event.clientX\n }\n\n onMouseEnterLeft() {\n if (this.dragging && this.mouseDirection === 'left') {\n this.onPrev()\n }\n }\n\n onMouseEnterRight() {\n if (this.dragging && this.mouseDirection === 'right') {\n this.onNext()\n }\n }\n\n getEventContent(event: CalendarEvent) {\n const prospect = (() => {\n if (event.prospect) {\n const _infos = [\n event.prospect.civility,\n event.prospect.firstname,\n event.prospect.lastname,\n ]\n const infos = compact(_infos)\n return infos.join(' ')\n } else {\n return ''\n }\n })()\n\n const comment =\n event.comment !== null && event.comment !== undefined\n ? event.comment\n : ''\n\n const content =\n event.status !== 'unavailable'\n ? prospect || 'Infos indisponibles'\n : comment\n return content\n }\n\n async setupScheduler() {\n this.scheduler.config.time_step = 15\n this.scheduler.config.drag_resize = true\n this.scheduler.config.drag_create = true\n this.scheduler.config.drag_move = true\n this.scheduler.config.dblclick_create = false\n\n // plage horaire visible\n this.scheduler.config.first_hour = 8\n this.scheduler.config.last_hour = 21\n\n this.scheduler.locale.labels = {\n ...this.scheduler.locale.labels,\n drag_to_move: 'Glisser pour déplacer',\n drag_to_create: 'Glisser pour créer',\n }\n this.scheduler.templates.event_header = (\n start: Date,\n end: Date,\n event: CalendarEvent\n ) => {\n const heure = this.scheduler.templates.event_date(start)\n const status = formatStatusAdvanced(event.status, event.reason)\n const content = this.getEventContent(event)\n\n // Si operateur on affiche pas le status\n if (this.profil === 'operator') {\n return `\n
${heure}
\n
${content}
\n `\n } else {\n return `\n
${heure}
\n
${content}
\n
${status}
\n `\n }\n }\n this.scheduler.templates.event_bar_text = (\n start: Date,\n end: Date,\n event: CalendarEvent\n ) => {\n return this.getEventContent(event)\n }\n this.scheduler.templates.event_class = (\n start: Date,\n end: Date,\n event: CalendarEvent\n ) => {\n let css = ''\n\n if (event.status) {\n css += 'event_' + event.status\n }\n\n if (event.eventId && event.status === 'unavailable') {\n css += ' no_move'\n css += ' no_resize'\n css += ' no_click'\n }\n\n if (event.id == this.scheduler.getState().select_id) {\n css += ' selected'\n }\n return css\n }\n // scroll à l'heure actuelle\n this.scheduler.config.scroll_hour = new Date().getHours()\n // augmente la taille des heures\n this.scheduler.config.hour_size_px = this.zoomLevel * 44\n this.scheduler.templates.event_text = (\n start: Date,\n end: Date,\n event: CalendarEvent\n ) => {\n return ''\n }\n this.scheduler.templates.month_day = (date: Date) => {\n const dateToStr_func = this.scheduler.date.date_to_str(\n this.scheduler.config.month_day\n )\n const dateToWeekNum_func = this.scheduler.date.date_to_str('%W')\n\n const weekNumber = dateToWeekNum_func(date)\n const day = dateToStr_func(date)\n\n const weekDay = dayjs(date).day()\n const isMonday = weekDay === 1\n\n const weekNumberTemplate = isMonday\n ? `${weekNumber}`\n : ''\n\n return `${weekNumberTemplate} ${day}`\n }\n this.scheduler.attachEvent('onClick', this.onClick)\n this.scheduler.attachEvent('onEventAdded', this.onEventAdded)\n this.scheduler.attachEvent('onEventChanged', this.onEventChanged)\n this.scheduler.attachEvent('onEventDeleted', this.onEventDeleted)\n this.scheduler.attachEvent('onEventCreated', this.onEventCreated)\n this.scheduler.attachEvent('onBeforeDrag', this.onBeforeDrag)\n this.scheduler.attachEvent(\n 'onBeforeEventChanged',\n this.onBeforeEventChanged\n )\n this.scheduler.attachEvent('onDragEnd', this.onDragEnd)\n this.scheduler.attachEvent('onDragEnd', this.onDragEnd)\n this.scheduler.attachEvent('onLimitViolation', this.onLimitViolation)\n /**\n * Utilisé pour customiser la modal d'édition\n */\n this.scheduler.showLightbox = this.showLightbox\n }\n\n onClick(_id: string, ev: MouseEvent) {\n const id = parseInt(_id)\n const event: CalendarEvent = this.scheduler.getEvent(id)\n\n if (event.eventId && event.status === 'unavailable') {\n return false\n }\n\n if (event.status === 'unavailable') {\n if (this.profil === 'operator') {\n return false\n }\n\n if (this.profil === 'admin') {\n this.showEditDialog(id)\n return false\n }\n\n this.showDeleteDialog(id)\n } else {\n if (this.profil === 'operator') {\n if (\n CalendarModule.userID &&\n id ===\n this.operatorEventCreatedID.get(CalendarModule.userID)\n ) {\n this.eventType = 'operator'\n } else {\n this.eventType = 'normal'\n }\n }\n\n this.showEditDialog(id)\n }\n return false\n }\n\n async onEventAdded(_id: string, ev: CalendarEvent) {\n const id = parseInt(_id, 10)\n const commercialID = this.getCurrentID()\n\n /**\n * On empêche la création d'un event canceled\n */\n const originalEvent = find(this.pendingEvents, {\n id,\n })\n if (originalEvent) {\n this.removePendingEvent(id)\n return\n }\n\n this.showSaving = true\n try {\n await CalendarModule.addEvent({\n event: ev,\n userID: commercialID,\n callback: async (newEvents: CalendarEvent[]) => {\n console.log(newEvents)\n newEvents.forEach(event => {\n this.scheduler.addEvent(event)\n })\n },\n })\n this.showSnackbar({\n status: 'success',\n duration: 3000,\n message: 'Rendez-vous créé avec succès',\n opened: true,\n })\n this.approveEvent(id)\n\n if (CalendarModule.pendingUpdate) {\n const event: CalendarEvent = this.scheduler.getEvent(ev.id)\n event.backendID = CalendarModule.pendingUpdate.backendID\n event.end_date = CalendarModule.pendingUpdate.end_date\n\n this.scheduler.updateEvent(ev.id)\n this.scheduler.updateView()\n\n // si recurent on recharge la vue\n if (\n event.recurrence &&\n event.recurrence.occurrence &&\n ['days', 'weeks', 'months'].includes(event.recurrence.type)\n ) {\n this.loadEvents()\n }\n }\n\n if (this.profil === 'operator' && CalendarModule.userID && ev.id) {\n this.operatorEventCreatedID.set(CalendarModule.userID, ev.id)\n }\n } catch (error) {\n const message = get(\n error,\n 'response.data.error.exception[0].message',\n get(\n error,\n 'response.data.message',\n 'Une erreur est survenue lors de la création du rendez-vous'\n )\n )\n\n this.showSnackbar({\n status: 'error',\n duration: 6000,\n message,\n opened: true,\n })\n this.cancelEvent(id, 'add')\n }\n this.showSaving = false\n }\n\n onCancelMoove() {\n console.log('onCancelMoove')\n this.showMooveComMessage = false\n\n if (this.eventToAccept.id) {\n this.cancelEvent(this.eventToAccept.id, 'update')\n }\n this.eventToAccept = {\n id: null,\n event: null,\n }\n }\n\n async onAcceptMoove() {\n console.log('onAcceptMoove')\n this.showMooveComMessage = false\n\n if (this.eventToAccept.id && this.eventToAccept.event) {\n await this.continueMoove(\n this.eventToAccept.id,\n this.eventToAccept.event\n )\n }\n this.eventToAccept = {\n id: null,\n event: null,\n }\n }\n\n async continueMoove(id: number, event: CalendarEvent) {\n this.showSaving = true\n try {\n await CalendarModule.updateEvent(event)\n this.showSnackbar({\n status: 'success',\n duration: 3000,\n message: 'Rendez-vous modifié avec succès',\n opened: true,\n })\n this.approveEvent(id)\n this.scheduler.updateView()\n } catch (error) {\n const message = get(\n error,\n 'response.data.error.exception[0].message',\n get(\n error,\n 'response.data.message',\n 'Une erreur est survenue lors de la mise à jour du rendez-vous'\n )\n )\n\n this.showSnackbar({\n status: 'error',\n duration: 6000,\n message,\n opened: true,\n })\n this.cancelEvent(id, 'update')\n }\n this.showSaving = false\n }\n\n onEventChanged(_id: string, ev: CalendarEvent) {\n const id = parseInt(_id, 10)\n\n const isMove = (() => {\n if (ev && ev.lastEvent) {\n return ev.start_date !== ev.lastEvent.start_date\n }\n\n return false\n })()\n\n if (isMove && this.profil === 'commercial') {\n if (\n ev.status === 'pending' ||\n ev.status === 'moove' ||\n ev.status === 'validated_qc' ||\n ev.status === 'confirmed' ||\n ev.status === 'validated' ||\n ev.status === 'moove_com'\n ) {\n this.showMooveComMessage = true\n this.eventToAccept = {\n id: id,\n event: ev,\n }\n return\n }\n }\n\n this.continueMoove(id, ev)\n }\n\n async onEventDeleted(_id: string, ev: CalendarEvent) {\n const id = parseInt(_id, 10)\n // empêche l'envoi d'une suppression d'un event pas encore créé\n if (this.scheduler.getState().new_event) {\n return\n }\n\n // On stocke l'event à supprimer\n this.pendingEvents.push(ev)\n\n this.showSaving = true\n try {\n await CalendarModule.removeEvent(ev)\n if (ev.backendID) {\n this.showSnackbar({\n status: 'success',\n duration: 3000,\n message: 'Rendez-vous supprimé avec succès',\n opened: true,\n })\n }\n this.approveEvent(id)\n } catch (error) {\n const message = get(\n error,\n 'response.data.error.exception[0].message',\n get(\n error,\n 'response.data.message',\n `Une erreur est survenue lors de la suppression d'un rendez-vous`\n )\n )\n\n this.showSnackbar({\n status: 'error',\n duration: 6000,\n message,\n opened: true,\n })\n this.cancelEvent(id, 'delete', true)\n }\n this.showSaving = false\n }\n\n onEventCreated(id: number, ev: MouseEvent) {\n const event: CalendarEvent = this.scheduler.getEvent(id)\n\n /**\n * Cette partie sert à ajouter les données lors de la création du rdv\n * par un opérateur\n */\n if (this.profil === 'operator') {\n event.prospect = {\n rs: '',\n typers: '',\n civility: '',\n lastname: '',\n firstname: '',\n address: '',\n address2: '',\n zip: '',\n city: '',\n phone: '',\n phoneBis: '',\n mobile: '',\n email: '',\n siret: '',\n }\n event.status = 'pending'\n event.text = ''\n this.eventType = 'operator'\n } else if (this.profil === 'commercial') {\n event.status = 'unavailable'\n event.text = 'Indisponible'\n this.eventType = 'unavailable'\n } else {\n event.text = ''\n this.eventType = 'normal'\n }\n return true\n }\n\n limitationTimeout: number = -1\n\n onLimitViolation(id: string, obj: Object) {\n clearTimeout(this.limitationTimeout)\n this.limitationTimeout = setTimeout(() => {\n this.showLimitation()\n }, 300)\n\n return false\n }\n\n showLimitation() {\n const _today = new Date()\n const today = dayjs(_today).format('DD MMM YYYY')\n this.showSnackbar({\n status: 'error',\n duration: 6000,\n message: `Vous ne pouvez pas poser de rendez-vous avant le ${today}`,\n opened: true,\n })\n }\n\n async onBeforeDrag(\n id: number,\n mode: 'move' | 'resize' | 'create',\n ev: MouseEvent\n ) {\n const event: CalendarEvent =\n mode !== 'create' ? this.scheduler.getEvent(id) : null\n switch (mode) {\n case 'create':\n if (this.profil === 'operator') {\n const isAuthorized =\n CalendarModule.userID &&\n !this.operatorEventCreatedID.get(CalendarModule.userID)\n\n if (!isAuthorized) {\n this.showSnackbar({\n status: 'error',\n duration: 6000,\n message: 'Vous ne pouvez plus poser de rendez-vous',\n opened: true,\n })\n }\n\n return isAuthorized\n }\n\n // donne le nombre rdv dans la semaine\n const count = getCountOfEventsPerWeek(\n CalendarModule.events,\n this.date\n )\n console.log(count)\n\n return this.profil === 'admin' || this.profil === 'commercial'\n case 'resize': {\n const canResize = (() => {\n if (event.status === 'unavailable') {\n if (event.eventId) {\n return false\n }\n\n if (\n this.profil === 'admin' ||\n this.profil === 'commercial'\n ) {\n return true\n }\n }\n\n return false\n })()\n\n if (canResize) {\n const lastEvent: CalendarEvent = {\n ...event,\n lastEvent: undefined,\n }\n event.lastEvent = lastEvent\n }\n\n return canResize\n }\n\n case 'move': {\n const canMove = (() => {\n if (event.eventId && event.status === 'unavailable') {\n return false\n }\n\n if (this.profil === 'operator' && CalendarModule.userID) {\n return (\n event.id ===\n this.operatorEventCreatedID.get(\n CalendarModule.userID\n )\n )\n }\n\n if (this.profil === 'commercial') {\n return (\n event.status === 'pending' ||\n event.status === 'confirmed' ||\n event.status === 'validated' ||\n event.status === 'unavailable' ||\n event.status === 'moove_com' ||\n event.status === 'moove' ||\n event.status === 'validated_qc'\n )\n }\n\n if (this.profil === 'admin') {\n return true\n }\n })()\n\n if (canMove) {\n console.log('Start dragging')\n this.dragging = true\n\n const lastEvent: CalendarEvent = {\n ...event,\n lastEvent: undefined,\n }\n event.lastEvent = lastEvent\n }\n\n return canMove\n }\n }\n return false\n }\n\n onDragEnd() {\n console.log('End dragging')\n this.dragging = false\n }\n\n /**\n * Fonctions utilisées pour canceler la modification d'un event\n */\n onBeforeEventChanged(\n ev: CalendarEvent,\n e: MouseEvent,\n is_new: boolean,\n original: CalendarEvent\n ) {\n if (!is_new) {\n this.pendingEvents.push(original)\n }\n return true\n }\n\n cancelEvent(\n id: number,\n origin: 'add' | 'update' | 'delete',\n restore: boolean = false\n ) {\n console.log(`Cancel ${id}`)\n\n const originalEvent = find(this.pendingEvents, {\n id,\n })\n\n if (restore) {\n this.scheduler.addEvent(originalEvent)\n this.scheduler.updateView()\n\n // On ne supprime pas l'event des pendings\n return\n } else {\n if (originalEvent) {\n const event: CalendarEvent = this.scheduler.getEvent(id)\n\n event.start_date = new Date(originalEvent.start_date)\n event.end_date = new Date(originalEvent.end_date)\n\n this.scheduler.updateEvent(id)\n this.scheduler.updateView()\n } else if (origin === 'add') {\n this.scheduler.deleteEvent(id)\n this.scheduler.updateView()\n }\n\n this.removePendingEvent(id)\n }\n\n this.focusMeeting()\n }\n\n approveEvent(id: number) {\n console.log(`Approve ${id}`)\n\n this.removePendingEvent(id)\n }\n\n removePendingEvent(id: number) {\n const index = findIndex(this.pendingEvents, {\n id,\n })\n\n if (index !== -1) {\n this.pendingEvents.splice(index, 1)\n }\n }\n\n showLightbox(id: number) {\n this.showEditDialog(id)\n }\n\n async showSnackbar(snackbar: Snackbar) {\n this.snackbar.opened = false\n await this.$nextTick()\n\n this.snackbar = snackbar\n }\n\n onShowSnackbar(arg: any) {\n const { message, status } = arg\n\n this.snackbar = {\n status,\n message,\n opened: true,\n duration: 6000,\n }\n }\n\n onRecurrentSave() {\n this.editDialog = false\n this.loadEvents()\n }\n\n async onOperatorCommercialID(id: number) {\n if (id !== null) {\n await CalendarModule.loadUser(id)\n await this.loadEvents()\n }\n\n this.updateOperatorFormDisabled()\n }\n\n updateOperatorFormDisabled() {\n const userID = CalendarModule.userID || -1\n if (userID !== -1 && this.operatorEventCreatedID.get(userID)) {\n this.operatorFormDisabled = true\n return\n }\n\n this.operatorFormDisabled = false\n return\n }\n\n onClosestEvents() {\n this.showClosestEvents = true\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Planning.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Planning.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Planning.vue?vue&type=template&id=0ed05441&\"\nimport script from \"./Planning.vue?vue&type=script&lang=ts&\"\nexport * from \"./Planning.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Planning.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{staticClass:\"blue-grey lighten-5\",attrs:{\"fluid\":\"\",\"bg\":\"\",\"fill-height\":\"\",\"grid-list-md\":\"\",\"text-xs-center\":\"\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\",\"align-center\":\"\",\"justify-center\":\"\"}},[_c('v-flex',{attrs:{\"sm6\":\"\",\"md5\":\"\",\"lg4\":\"\",\"xl3\":\"\"}},[_c('v-card',[_c('v-form',{ref:\"form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.login($event)}},model:{value:(_vm.valid),callback:function ($$v) {_vm.valid=$$v},expression:\"valid\"}},[_c('v-card-title',[_c('v-layout',[_c('v-flex',[_c('v-avatar',{attrs:{\"color\":\"primary\"}},[_c('v-icon',{attrs:{\"dark\":\"\"}},[_vm._v(\"lock\")])],1),_c('h3',{staticClass:\"headline mt-2\"},[_vm._v(\"Connexion\")])],1)],1)],1),_c('smooth-reflow',{attrs:{\"options\":_vm.smoothReflowSettings}},[_c('transition',{attrs:{\"name\":\"fade\",\"tag\":\"div\"}},[(_vm.alert)?_c('v-card-text',[_c('v-alert',{attrs:{\"value\":\"true\",\"type\":\"error\"}},[_vm._v(_vm._s(_vm.alert))])],1):_vm._e()],1)],1),_c('v-card-text',[_c('v-text-field',{attrs:{\"label\":\"Courriel\",\"rules\":_vm.rules.email,\"required\":\"\",\"autofocus\":\"\",\"autocomplete\":\"username\"},model:{value:(_vm.email),callback:function ($$v) {_vm.email=$$v},expression:\"email\"}}),_c('v-text-field',{attrs:{\"label\":\"Mot de passe\",\"rules\":_vm.rules.password,\"type\":_vm.showPassword ? 'text' : 'password',\"append-icon\":_vm.showPassword ? 'visibility_off' : 'visibility',\"required\":\"\",\"autocomplete\":\"current-password\"},on:{\"click:append\":function($event){_vm.showPassword = !_vm.showPassword}},model:{value:(_vm.password),callback:function ($$v) {_vm.password=$$v},expression:\"password\"}})],1),_c('v-card-actions',[_c('v-btn',{staticStyle:{\"width\":\"100%\"},attrs:{\"disabled\":!_vm.valid || _vm.loading,\"color\":\"primary\",\"type\":\"submit\",\"loading\":_vm.loading}},[_vm._v(\"Se connecter\")])],1)],1)],1)],1)],1),_c('v-dialog',{attrs:{\"persistent\":\"\",\"max-width\":\"290\"},model:{value:(_vm.showMessage),callback:function ($$v) {_vm.showMessage=$$v},expression:\"showMessage\"}},[_c('v-card',[_c('v-card-title',{staticClass:\"headline\"},[_vm._v(\"Information importante\")]),_c('v-card-text',[_vm._v(_vm._s(_vm.message))]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{ref:\"acceptButton\",attrs:{\"color\":\"primary\"},on:{\"keypress\":_vm.accept,\"click\":_vm.accept}},[_vm._v(\"Continuer\")])],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Vue, Watch } from 'vue-property-decorator'\nimport SmoothReflow from '@/components/SmoothReflow.vue'\nimport AuthModule from '@/store/modules/auth'\nimport { AdminError } from '@/models/AdminError'\n\n@Component({\n components: {\n SmoothReflow,\n },\n})\nexport default class SignIn extends Vue {\n smoothReflowSettings = {\n transitionEvent: {\n selector: 'div',\n propertyName: 'opacity',\n },\n }\n rules = {\n email: [\n (v: string) => !!v || 'Votre courriel est requis',\n (v: string) =>\n /.+@.+\\..+/.test(v) || 'Votre courriel doit être valide',\n ],\n password: [(v: string) => !!v || 'Votre mot de passe est requis'],\n }\n\n showPassword = false\n loading = false\n valid = false\n alert: string = ''\n email = ''\n password = ''\n\n get showMessage(): boolean {\n return AuthModule.logged && !AuthModule.messageAccepted\n }\n\n get message() {\n return AuthModule.message\n }\n\n async login() {\n const $form: any = this.$refs.form\n if (!$form.validate()) {\n return\n }\n\n console.log('login')\n this.alert = ''\n this.loading = true\n\n await AuthModule.ready()\n\n try {\n await AuthModule.login({\n email: this.email,\n password: this.password,\n })\n if (AuthModule.messageAccepted) {\n this.redirect()\n }\n } catch (err) {\n if (err instanceof AdminError) {\n this.alert = err.message\n } else {\n this.alert =\n 'Votre courriel ou votre mot de passe est incorrect'\n }\n } finally {\n this.loading = false\n }\n }\n\n @Watch('showMessage')\n onShowMessage() {\n if (!this.showMessage) {\n return\n }\n\n requestAnimationFrame(() => {\n const $acceptButton = this.$refs.acceptButton as any\n $acceptButton.$el.focus()\n })\n }\n\n async accept() {\n await AuthModule.acceptMessage()\n this.redirect()\n }\n\n async redirect() {\n const redirect_to = this.$route.query.redirect_to\n if (redirect_to && typeof redirect_to === 'string') {\n this.$router.push({ path: redirect_to })\n } else {\n this.$router.push({ name: 'planning', query: this.$route.query })\n }\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SignIn.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SignIn.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SignIn.vue?vue&type=template&id=6adf9d34&scoped=true&\"\nimport script from \"./SignIn.vue?vue&type=script&lang=ts&\"\nexport * from \"./SignIn.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./SignIn.vue?vue&type=style&index=0&id=6adf9d34&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6adf9d34\",\n null\n \n)\n\nexport default component.exports","import Vue from 'vue'\nimport Router from 'vue-router'\nimport Planning from './views/Planning.vue'\nimport SignIn from './views/SignIn.vue'\nimport AuthModule from '@/store/modules/auth'\nimport includes from 'lodash/includes'\n\nVue.use(Router)\n\nasync function siginInGuard(to: any, from: any, next: any) {\n await AuthModule.ready()\n if (AuthModule.logged && AuthModule.messageAccepted) {\n next({ name: 'planning', query: to.query })\n } else {\n next()\n }\n}\n\nasync function authGuard(to: any, from: any, next: any) {\n await AuthModule.ready()\n if (!AuthModule.logged || !AuthModule.messageAccepted) {\n next({ name: 'signin', query: to.query })\n } else {\n next()\n }\n}\n\nasync function commercialGuard(to: any, from: any, next: any) {\n await AuthModule.init()\n if (!AuthModule.logged || !AuthModule.messageAccepted) {\n // next({ name: 'signin' })\n router.push({\n name: 'signin',\n query: {\n redirect_to: decodeURIComponent(to.fullPath),\n },\n })\n } else {\n // si non admin, redirige vers planning\n if (\n includes(AuthModule.roles, 'ROLE_ADMIN') ||\n includes(AuthModule.roles, 'ROLE_SUPERVISOR')\n ) {\n next()\n } else {\n next({ name: 'planning' })\n }\n }\n}\n\nasync function operatorGuard(to: any, from: any, next: any) {\n console.log(to)\n\n await AuthModule.init()\n if (!AuthModule.logged || !AuthModule.messageAccepted) {\n // next({ name: 'signin' })\n router.push({\n name: 'signin',\n query: {\n redirect_to: decodeURIComponent(to.fullPath),\n },\n })\n } else {\n if (\n includes(AuthModule.roles, 'ROLE_ADMIN') ||\n includes(AuthModule.roles, 'ROLE_OPERATOR')\n ) {\n next()\n } else {\n next({ name: 'planning' })\n }\n }\n}\n\nconst router = new Router({\n mode: 'history',\n base: process.env.BASE_URL,\n routes: [\n {\n path: '/',\n name: 'signin',\n component: SignIn,\n beforeEnter: siginInGuard,\n },\n {\n path: '/agenda',\n name: 'planning',\n component: Planning,\n beforeEnter: authGuard,\n },\n {\n path: '/commercial/:id',\n name: 'commercial',\n component: Planning,\n beforeEnter: commercialGuard,\n },\n {\n path: '/operateur',\n name: 'operator',\n component: Planning,\n beforeEnter: operatorGuard,\n },\n {\n path: '/entreprise',\n name: 'compagny',\n component: Planning,\n beforeEnter: authGuard,\n },\n ],\n})\n\nexport default router\n","/* tslint:disable:no-console */\n\nimport { register } from 'register-service-worker'\n\nif (process.env.NODE_ENV === 'production') {\n register(`${process.env.BASE_URL}service-worker.js`, {\n ready() {\n console.log(\n 'App is being served from cache by a service worker.\\n' +\n 'For more details, visit https://goo.gl/AFskqB'\n )\n },\n registered() {\n console.log('Service worker has been registered.')\n },\n cached() {\n console.log('Content has been cached for offline use.')\n },\n updatefound() {\n console.log('New content is downloading.')\n },\n updated() {\n console.log('New content is available; please refresh.')\n },\n offline() {\n console.log(\n 'No internet connection found. App is running in offline mode.'\n )\n },\n error(error) {\n console.error('Error during service worker registration:', error)\n },\n })\n}\n","// polyfill ie11 pour vuetify\nimport 'babel-polyfill'\n// polyfill ie11 pour 'new URL()'\nimport 'url-polyfill'\nimport 'promise-polyfill'\n\nimport Vue from 'vue'\nimport Vuetify from 'vuetify'\nimport fr from 'vuetify/src/locale/fr'\n\nimport App from './App.vue'\nimport router from './router'\nimport store from '@/store'\nimport './registerServiceWorker'\n\nimport './assets/scss/main.scss'\n\nVue.config.productionTip = false\n\nVue.use(Vuetify, {\n lang: {\n locales: {\n fr,\n },\n current: 'fr',\n },\n})\n\nnew Vue({\n router,\n store,\n render: h => h(App),\n}).$mount('#app')\n","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CommercialEditForm.vue?vue&type=style&index=0&id=0b69f2d8&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CommercialEditForm.vue?vue&type=style&index=0&id=0b69f2d8&lang=scss&scoped=true&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CommercialShowEvent.vue?vue&type=style&index=0&id=86117bea&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CommercialShowEvent.vue?vue&type=style&index=0&id=86117bea&lang=scss&scoped=true&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Planning.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Planning.vue?vue&type=style&index=0&lang=scss&\""],"sourceRoot":""}